Class AbstractGenericServicePluginDescriptor<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.AbstractGenericServicePluginDescriptor<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 AbstractGenericServicePluginDescriptor<S extends Service> extends AbstractServicePluginDescriptor<S>
A basic implementation of the ServicePluginDescriptor delegating to the ServiceDescriptor for SISO generic services (legacy).
Author:
Holger Eichelberger, SSE
  • Constructor Details

    • AbstractGenericServicePluginDescriptor

      public AbstractGenericServicePluginDescriptor(String id, List<String> ids)
      Creates an instance.
      Parameters:
      id - the plugin id
      ids - optional secondary ids, may be null or empty
    • AbstractGenericServicePluginDescriptor

      public AbstractGenericServicePluginDescriptor(String id, String secId)
      Creates an instance with a single secondary id.
      Parameters:
      id - the plugin id
      secId - the secondary id
    • AbstractGenericServicePluginDescriptor

      public AbstractGenericServicePluginDescriptor(String id, Class<?> secCls)
      Creates an instance with a class determining the single secondary id.
      Parameters:
      id - the plugin id
      secCls - the class determining the secondary id (by its qualified name)
  • Method Details

    • createService

      public S createService(String serviceId, InputStream ymlFile)
      Description copied from interface: ServiceDescriptor
      Creates a specific service from a service id and a YAML artifact.
      Parameters:
      serviceId - the service id
      ymlFile - 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

      public S createService(String serviceId)
      Description copied from interface: ServiceDescriptor
      Creates 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

      public S createService()
      Description copied from interface: ServiceDescriptor
      Creates a specific service, second fallback.
      Returns:
      the service instance, may be null if creation/casting is not possible
    • createService

      public S createService(YamlService yaml, Object... args)
      Description copied from interface: ServiceDescriptor
      Creates a generic service (still to be wrapped) from a YAML service description.
      Parameters:
      yaml - the YAML service description
      args - generic arguments to be passed to and interpreted by the service
      Returns:
      the service instance, may be null if creation/casting is not possible