From 2754847972def0aadf73b4a0d4f8c5847034a85a Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Sun, 5 Oct 2008 15:54:20 +0000 Subject: [PATCH] Start introducing OSGi commands git-svn-id: https://svn.argeo.org/slc/trunk@1707 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../slc/detached/admin/FelixShellCommand.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/admin/FelixShellCommand.java diff --git a/org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/admin/FelixShellCommand.java b/org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/admin/FelixShellCommand.java new file mode 100644 index 000000000..1b6ab0bae --- /dev/null +++ b/org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/admin/FelixShellCommand.java @@ -0,0 +1,30 @@ +package org.argeo.slc.detached.admin; + +import org.argeo.slc.detached.DetachedAdminCommand; +import org.argeo.slc.detached.DetachedAnswer; +import org.argeo.slc.detached.DetachedException; +import org.argeo.slc.detached.DetachedRequest; +import org.osgi.framework.BundleContext; +import org.osgi.framework.ServiceReference; + +public class FelixShellCommand implements DetachedAdminCommand { + public final static String PROP_FELIX_CMDLINE = "slc.detached.felix.cmdline"; + + public DetachedAnswer execute(DetachedRequest request, + BundleContext bundleContext) { + ServiceReference ref = bundleContext + .getServiceReference("org.apache.felix.shell.ShellService"); + if (ref == null) + throw new DetachedException("Felix shell service not found."); + + String cmdLine = request.getProperties() + .getProperty(PROP_FELIX_CMDLINE); + if (cmdLine == null) + throw new DetachedException("Property " + PROP_FELIX_CMDLINE + + " must be defined."); + + // TODO: check were to put Felix dependency + // see http://felix.apache.org/site/apache-felix-shell-service.html + throw new DetachedException("Not yet implemented."); + } +} -- 2.39.2