Interface ServiceManager

All Superinterfaces:
ServiceOperations
All Known Implementing Classes:
AbstractServiceManager

public interface ServiceManager extends ServiceOperations
A service provider interface for managing services in the IIP-Ecosphere platform. Service implementations shall be bound by code generation to a specific (stream) service computing approach, e.g., Spring Cloud Streams. The management of such services happens via this interface, which shall utilize the respective management capabilites of the underlying service computing approach. The interface is rather simple as it shall be usable through an AAS. The id of a service used here must not be identical to the name in ServiceDescriptor.getName(), e.g., it may contain the version. Implementations shall call the notify methods in ServicesAas.
Author:
Holger Eichelberger, SSE
  • Field Details

  • Method Details

    • cloneArtifact

      void cloneArtifact(String artifactId, URI location) throws ExecutionException
      Clones the artifact. As services belong to artifacts, it is not possible to migrate a single service (except for if the artifact consists of a single service). [adaptation]
      Parameters:
      artifactId - the id of the service
      location - the target location, e.g., a device
      Throws:
      ExecutionException - if migration fails
    • getParameters

      List<TypedDataDescriptor> getParameters(String serviceId)
      Returns all information about parameter for the given serviceId. [adaptation]
      Parameters:
      serviceId - the serviceId of the service
      Returns:
      the descriptors for all supported parameters
    • getInputDataConnectors

      List<TypedDataConnectorDescriptor> getInputDataConnectors(String serviceId)
      Returns all input connector information for the given serviceId.
      Parameters:
      serviceId - the serviceId of the service
      Returns:
      the descriptors for all input data connectors
    • getOutputDataConnectors

      List<TypedDataConnectorDescriptor> getOutputDataConnectors(String serviceId)
      Returns all output connector information for the given serviceId.
      Parameters:
      serviceId - the serviceId of the service
      Returns:
      the descriptors for all output data connectors
    • getArtifactIds

      Set<String> getArtifactIds()
      Returns the ids of all available artifacts.
      Returns:
      the ids
    • getServiceIds

      Set<String> getServiceIds()
      Returns the ids of all available services.
      Returns:
      the ids
    • getArtifacts

      Collection<? extends ArtifactDescriptor> getArtifacts()
      Returns the available (installed) artifacts.
      Returns:
      the services
    • getServices

      Collection<? extends ServiceDescriptor> getServices()
      Returns the available (installed) services in all artifacts.
      Returns:
      the services
    • getArtifact

      ArtifactDescriptor getArtifact(String artifactId)
      Returns an artifact descriptor.
      Parameters:
      artifactId - the id of the service (may be null or invalid)
      Returns:
      the related artifact descriptor or null if the artifact does not exist
    • getService

      ServiceDescriptor getService(String serviceId)
      Returns a service descriptor.
      Parameters:
      serviceId - the id of the service (may be null or invalid)
      Returns:
      the related service descriptor or null if the service does not exist