Class ISPublisher
java.lang.Object
org.gcube.vremanagement.executor.ispublisher.ISPublisher
- Direct Known Subclasses:
GCoreISPublisher,RestISPublisher
Abstract base class for Information System publishers.
This class manages the publishing and unpublishing of plugins to the gCube Information System.
- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.gcube.smartgears.context.application.ApplicationContextThe application context.protected static List<ISPublisher>List of available IS publishers. -
Constructor Summary
ConstructorsConstructorDescriptionISPublisher(org.gcube.smartgears.context.application.ApplicationContext applicationContext) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionstatic List<ISPublisher>getISPublishers(org.gcube.smartgears.context.application.ApplicationContext applicationContext) Get the list of available IS publishers.abstract voidpublishPlugins(Map<String, Class<? extends org.gcube.vremanagement.executor.plugin.Plugin>> availablePlugins) Publish the available plugins to the Information System.abstract voidunpublishPlugins(boolean force) Unpublish plugins from the Information System.
-
Field Details
-
isPublishers
List of available IS publishers. -
applicationContext
protected org.gcube.smartgears.context.application.ApplicationContext applicationContextThe application context.
-
-
Constructor Details
-
ISPublisher
public ISPublisher(org.gcube.smartgears.context.application.ApplicationContext applicationContext) Constructor.- Parameters:
applicationContext- the application context
-
-
Method Details
-
getISPublishers
public static List<ISPublisher> getISPublishers(org.gcube.smartgears.context.application.ApplicationContext applicationContext) Get the list of available IS publishers.- Parameters:
applicationContext- the application context- Returns:
- the list of IS publishers
-
publishPlugins
public abstract void publishPlugins(Map<String, Class<? extends org.gcube.vremanagement.executor.plugin.Plugin>> availablePlugins) throws ExceptionPublish the available plugins to the Information System.- Parameters:
availablePlugins- map of available plugins- Throws:
Exception- if the publishing fails
-
unpublishPlugins
Unpublish plugins from the Information System.- Parameters:
force- whether to force the unpublishing even if some plugins are still running- Throws:
Exception- if the unpublishing fails
-