Merge tag 'v2.3.15' into testing
[gpl/argeo-slc.git] / org.argeo.api.slc / src / org / argeo / api / slc / deploy / ModulesManager.java
diff --git a/org.argeo.api.slc/src/org/argeo/api/slc/deploy/ModulesManager.java b/org.argeo.api.slc/src/org/argeo/api/slc/deploy/ModulesManager.java
new file mode 100644 (file)
index 0000000..5654acb
--- /dev/null
@@ -0,0 +1,26 @@
+package org.argeo.api.slc.deploy;
+
+import java.util.List;
+
+import org.argeo.api.slc.NameVersion;
+
+/** Provides access to deployed modules */
+public interface ModulesManager {
+       /** @return a full fledged module descriptor. */
+       public ModuleDescriptor getModuleDescriptor(String moduleName,
+                       String version);
+
+       /**
+        * @return a list of minimal module descriptors of the deployed modules
+        */
+       public List<ModuleDescriptor> listModules();
+
+       /** Synchronously upgrades the module referenced by this name version */
+       public void upgrade(NameVersion nameVersion);
+
+       /** Starts the module */
+       public void start(NameVersion nameVersion);
+
+       /** Stops the module */
+       public void stop(NameVersion nameVersion);
+}