Class AbstractGenericMultiServicePluginDescriptor<S extends Service>
java.lang.Object
de.iip_ecosphere.platform.support.plugins.DefaultPluginDescriptor<ServiceDescriptor<S>>
de.iip_ecosphere.platform.support.plugins.SingletonPluginDescriptor<ServiceDescriptor<S>>
de.iip_ecosphere.platform.services.environment.AbstractServicePluginDescriptor<S>
de.iip_ecosphere.platform.services.environment.AbstractGenericMultiServicePluginDescriptor<S>
- Type Parameters:
S- the actual type of service being created
- All Implemented Interfaces:
ServiceDescriptor<S>,ServicePluginDescriptor<S>,de.iip_ecosphere.platform.support.plugins.PluginDescriptor<ServiceDescriptor<S>>,de.iip_ecosphere.platform.support.plugins.PluginInstanceDescriptor<ServiceDescriptor<S>>
public abstract class AbstractGenericMultiServicePluginDescriptor<S extends Service>
extends AbstractServicePluginDescriptor<S>
A basic implementation of the
ServicePluginDescriptor delegating to the ServiceDescriptor for MIMO
generic services.- Author:
- Holger Eichelberger, SSE
-
Nested Class Summary
Nested classes/interfaces inherited from class de.iip_ecosphere.platform.support.plugins.DefaultPluginDescriptor
de.iip_ecosphere.platform.support.plugins.DefaultPluginDescriptor.PluginSupplier<T> -
Field Summary
Fields inherited from interface de.iip_ecosphere.platform.services.environment.ServicePluginDescriptor
PLUGIN_ID_PREFIX, PLUGIN_TEST_ID_PREFIX -
Constructor Summary
ConstructorsConstructorDescriptionAbstractGenericMultiServicePluginDescriptor(String id, Class<?> secCls) Creates an instance with a class determining the single secondary id.Creates an instance with a single secondary id.Creates an instance. -
Method Summary
Modifier and TypeMethodDescriptionCreates a specific service, second fallback.<I,O> S createService(de.iip_ecosphere.platform.transport.serialization.TypeTranslator<I, String> inTrans, de.iip_ecosphere.platform.transport.serialization.TypeTranslator<String, O> outTrans, de.iip_ecosphere.platform.transport.connectors.ReceptionCallback<O> callback, YamlService yaml, Object... args) Creates a generic service (still to be wrapped) from type translators, callback and YAML service description.createService(String serviceId) Creates a specific service from a service id, fallback.createService(String serviceId, InputStream ymlFile) Creates a specific service from a service id and a YAML artifact.Methods inherited from class de.iip_ecosphere.platform.services.environment.AbstractServicePluginDescriptor
create, initPluginClass, initPluginSupplierMethods inherited from class de.iip_ecosphere.platform.support.plugins.SingletonPluginDescriptor
createPluginMethods inherited from class de.iip_ecosphere.platform.support.plugins.DefaultPluginDescriptor
createPlugin, getFurtherIds, getId, getType, initId, initIdsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.iip_ecosphere.platform.services.environment.ServiceDescriptor
createService
-
Constructor Details
-
AbstractGenericMultiServicePluginDescriptor
Creates an instance.- Parameters:
id- the plugin idids- optional secondary ids, may be null or empty
-
AbstractGenericMultiServicePluginDescriptor
Creates an instance with a single secondary id.- Parameters:
id- the plugin idsecId- the secondary id
-
AbstractGenericMultiServicePluginDescriptor
Creates an instance with a class determining the single secondary id.- Parameters:
id- the plugin idsecCls- the class determining the secondary id (by its qualified name)
-
-
Method Details
-
createService
Description copied from interface:ServiceDescriptorCreates a specific service from a service id and a YAML artifact.- Parameters:
serviceId- the service idymlFile- the YML file containing the YAML artifact with the service descriptor- Returns:
- the service instance, may be null if creation/casting is not possible
-
createService
Description copied from interface:ServiceDescriptorCreates a specific service from a service id, fallback.- Parameters:
serviceId- the service id- Returns:
- the service instance, may be null if creation/casting is not possible
-
createService
Description copied from interface:ServiceDescriptorCreates a specific service, second fallback.- Returns:
- the service instance, may be null if creation/casting is not possible
-
createService
public <I,O> S createService(de.iip_ecosphere.platform.transport.serialization.TypeTranslator<I, String> inTrans, de.iip_ecosphere.platform.transport.serialization.TypeTranslator<String, O> outTrans, de.iip_ecosphere.platform.transport.connectors.ReceptionCallback<O> callback, YamlService yaml, Object... args) Description copied from interface:ServiceDescriptorCreates a generic service (still to be wrapped) from type translators, callback and YAML service description.- Type Parameters:
I- input typeO- output type- Parameters:
inTrans- the input translatoroutTrans- the output translatorcallback- called when a processed item is received from the serviceyaml- the YAML service descriptionargs- generic arguments to be passed to and interpreted by the service- Returns:
- the service instance, may be null if creation/casting is not possible
-