]> git.argeo.org Git - gpl/argeo-slc.git/commitdiff
Start introducing OSGi commands
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 5 Oct 2008 15:54:20 +0000 (15:54 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 5 Oct 2008 15:54:20 +0000 (15:54 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@1707 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/admin/FelixShellCommand.java [new file with mode: 0644]

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 (file)
index 0000000..1b6ab0b
--- /dev/null
@@ -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.");
+       }
+}