Class LaunchParameter
java.lang.Object
org.gcube.vremanagement.executor.api.types.LaunchParameter
- All Implemented Interfaces:
Comparable<LaunchParameter>
- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
FieldsModifier and TypeFieldDescriptionInputs to provide to the plugin instance which have to be executed.static final StringJSON property name for plugin namestatic final StringJSON property name for plugin versionThe Plugin Capabilities which has to be satisfied to launch the plugin instance execution.protected StringThe name of the plugin to launchPlugin State Notification to be used and inputs to be provided when instantiatedprotected StringThe version of the plugin to launch.protected SchedulingScheduling parameters. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedProtected default constructor for serialization purposes.LaunchParameter(String pluginName, String pluginVersion, Map<String, String> pluginCapabilities, Map<String, Object> inputs, Scheduling scheduling) Full constructor with all parameters.LaunchParameter(String pluginName, Map<String, Object> inputs) Constructor with plugin name and inputs.LaunchParameter(String pluginName, Map<String, Object> inputs, Scheduling scheduling) Constructor with plugin name, inputs and scheduling.LaunchParameter(String pluginName, Map<String, String> pluginCapabilities, Map<String, Object> inputs) Constructor with plugin name, capabilities and inputs.LaunchParameter(String pluginName, Map<String, String> pluginCapabilities, Map<String, Object> inputs, Scheduling scheduling) Constructor with plugin name, capabilities, inputs and scheduling.LaunchParameter(LaunchParameter launchParameter) Copy constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddPluginStateNotifications(Class<? extends PluginStateNotification> pluginStateNotification, Map<String, String> inputs) Adds a plugin state notification configuration.intcompareTo(LaunchParameter launchParameter) Gets all configured plugin state notifications.voidsetPluginCapabilities(Map<String, String> pluginCapabilities) voidSets the plugin state notifications configuration.voidsetScheduling(Scheduling scheduling) toString()
-
Field Details
-
PLUGIN_NAME
JSON property name for plugin name- See Also:
-
PLUGIN_VERSION
JSON property name for plugin version- See Also:
-
pluginName
The name of the plugin to launch -
pluginVersion
The version of the plugin to launch. Version can be null, this means that no specific version is required. In other words, null means any version. -
pluginCapabilities
The Plugin Capabilities which has to be satisfied to launch the plugin instance execution. The SmartExectuor Service check that this capabilities match the capabilities declared from the discovered plugin. If the capabilities does not match the service will not launch the execution. Plugin Capabilities can be null, this means that no capabilities have to be satisfied. In other words, null means that no constraint are required to launch the execution -
inputs
Inputs to provide to the plugin instance which have to be executed. -
pluginStateNotifications
Plugin State Notification to be used and inputs to be provided when instantiated -
scheduling
Scheduling parameters. See {#Scheduling} for further details
-
-
Constructor Details
-
LaunchParameter
protected LaunchParameter()Protected default constructor for serialization purposes. -
LaunchParameter
Copy constructor.- Parameters:
launchParameter- the LaunchParameter to copy
-
LaunchParameter
Constructor with plugin name and inputs.- Parameters:
pluginName- the name of the plugin to launchinputs- the input parameters for the plugin
-
LaunchParameter
public LaunchParameter(String pluginName, Map<String, String> pluginCapabilities, Map<String, Object> inputs) Constructor with plugin name, capabilities and inputs.- Parameters:
pluginName- the name of the plugin to launchpluginCapabilities- the required plugin capabilitiesinputs- the input parameters for the plugin
-
LaunchParameter
Constructor with plugin name, inputs and scheduling.- Parameters:
pluginName- the name of the plugin to launchinputs- the input parameters for the pluginscheduling- the scheduling parameters
-
LaunchParameter
public LaunchParameter(String pluginName, Map<String, String> pluginCapabilities, Map<String, Object> inputs, Scheduling scheduling) Constructor with plugin name, capabilities, inputs and scheduling.- Parameters:
pluginName- the name of the plugin to launchpluginCapabilities- the required plugin capabilitiesinputs- the input parameters for the pluginscheduling- the scheduling parameters
-
LaunchParameter
public LaunchParameter(String pluginName, String pluginVersion, Map<String, String> pluginCapabilities, Map<String, Object> inputs, Scheduling scheduling) Full constructor with all parameters.- Parameters:
pluginName- the name of the plugin to launchpluginVersion- the specific version of the plugin (can be null)pluginCapabilities- the required plugin capabilitiesinputs- the input parameters for the pluginscheduling- the scheduling parameters
-
-
Method Details
-
getPluginName
- Returns:
- the name
-
getPluginCapabilities
- Returns:
- the pluginCapabilities
-
setPluginCapabilities
- Parameters:
pluginCapabilities- the pluginCapabilities to set
-
getInputs
- Returns:
- the inputs
-
getScheduling
- Returns:
- the scheduling
-
setScheduling
- Parameters:
scheduling- the scheduling
-
addPluginStateNotifications
public void addPluginStateNotifications(Class<? extends PluginStateNotification> pluginStateNotification, Map<String, String> inputs) Adds a plugin state notification configuration.- Parameters:
pluginStateNotification- the notification class to addinputs- the configuration inputs for the notification
-
getPluginStateNotifications
Gets all configured plugin state notifications.- Returns:
- map of notification class names to their configuration inputs
-
setPluginStateNotifications
Sets the plugin state notifications configuration.- Parameters:
pluginStateNotifications- map of notification configurations
-
toString
-
compareTo
- Specified by:
compareToin interfaceComparable<LaunchParameter>
-