org.gcube.dir.master.contexts
Class PluginManager

java.lang.Object
  extended by org.gcube.dir.master.contexts.PluginManager

public class PluginManager
extends java.lang.Object

Manages the storage and installation of service plugins.

Author:
Fabio Simeoni (University of Strathclyde)

Field Summary
static java.lang.String MANIFEST_ENTRYPOINT
          JAR Property for Plugin main class
static java.lang.String PLUGINS_DIRECTORY_NAME
          Plugin directory name
 
Constructor Summary
PluginManager()
           
 
Method Summary
static Plugin activate(java.net.URL url)
          Loads and activates a plugin from its URL.
static void deploy(java.io.InputStream stream)
          Deploys a new plugin for the service, activating it.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MANIFEST_ENTRYPOINT

public static final java.lang.String MANIFEST_ENTRYPOINT
JAR Property for Plugin main class

See Also:
Constant Field Values

PLUGINS_DIRECTORY_NAME

public static final java.lang.String PLUGINS_DIRECTORY_NAME
Plugin directory name

See Also:
Constant Field Values
Constructor Detail

PluginManager

public PluginManager()
Method Detail

deploy

public static void deploy(java.io.InputStream stream)
                   throws java.lang.Exception
Deploys a new plugin for the service, activating it.

Parameters:
stream - a stream open over the plugin jar.
Throws:
java.lang.Exception - if the plugin could not be stored or activated.

activate

public static Plugin activate(java.net.URL url)
                       throws java.lang.Exception
Loads and activates a plugin from its URL.

Parameters:
url - the URL.
Throws:
java.lang.Exception - if the plugin could not be loaded.