Class OMAGServerServiceInstanceHandler

java.lang.Object
org.odpi.openmetadata.commonservices.multitenant.OMAGServerServiceInstanceHandler
Direct Known Subclasses:
AuditableServerServiceInstanceHandler, OMAGServerOperationalInstanceHandler, OMRSRepositoryServicesInstanceHandler

public abstract class OMAGServerServiceInstanceHandler extends Object
OMAGServerServiceInstanceHandler retrieves information from the instance map for an OMAG server service instance. The instance map is thread-safe. Instances are added and removed during server initialization and termination.
  • Field Details

  • Constructor Details

    • OMAGServerServiceInstanceHandler

      public OMAGServerServiceInstanceHandler(String serviceName)
      Constructor passes the service name that is used on all calls to this instance.
      Parameters:
      serviceName - unique identifier for this service with a human meaningful value
  • Method Details

    • getServiceName

      public String getServiceName()
      Return the service's official name
      Returns:
      String name
    • isServerActive

      public boolean isServerActive(String userId, String serverName) throws UserNotAuthorizedException
      Return whether a particular server is registered with the platform. This is used by the admin services when finding no instance is not an error.
      Parameters:
      userId - calling user or null if it is an anonymous request
      serverName - name of the server
      Returns:
      boolean
      Throws:
      UserNotAuthorizedException - the user is not authorized to issue the request.
    • getServerSecurityVerifier

      public OpenMetadataServerSecurityVerifier getServerSecurityVerifier(String userId, String serverName) throws InvalidParameterException
      Return the security verifier for the server.
      Parameters:
      userId - calling user or null if it is an anonymous request
      serverName - name of the server
      Returns:
      OpenMetadataServerSecurityVerifier object - never null
      Throws:
      InvalidParameterException - the server name is not known
    • getServerServiceInstance

      protected OMAGServerServiceInstance getServerServiceInstance(String userId, String serverName, String serviceOperationName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Get the object containing the properties for this server.
      Parameters:
      userId - calling user
      serverName - name of this server
      serviceOperationName - name of the REST API call (typically the top-level methodName)
      Returns:
      specific service instance
      Throws:
      InvalidParameterException - the server name is not known
      UserNotAuthorizedException - the user is not authorized to issue the request.
      PropertyServerException - the service name is not known - indicating a logic error
    • removeServerServiceInstance

      public void removeServerServiceInstance(String serverName)
      Remove the instance for this server.
      Parameters:
      serverName - name of the server