Class AccessServiceAdmin


  • public abstract class AccessServiceAdmin
    extends java.lang.Object
    AccessServiceAdmin is the interface that an access service implements to receive its configuration. The java class that implements this interface is created with a default constructor and then the initialize method is called. It is configured in the AccessServiceDescription enumeration.
    • Field Detail

      • supportedZonesPropertyName

        protected java.lang.String supportedZonesPropertyName
      • defaultZonesPropertyName

        protected java.lang.String defaultZonesPropertyName
      • publishZonesPropertyName

        protected java.lang.String publishZonesPropertyName
      • karmaPointPlateauPropertyName

        protected java.lang.String karmaPointPlateauPropertyName
      • karmaPointIncrementPropertyName

        protected java.lang.String karmaPointIncrementPropertyName
    • Constructor Detail

      • AccessServiceAdmin

        public AccessServiceAdmin()
    • Method Detail

      • initialize

        @Deprecated
        public void initialize​(AccessServiceConfig accessServiceConfigurationProperties,
                               OMRSTopicConnector enterpriseOMRSTopicConnector,
                               OMRSRepositoryConnector enterpriseOMRSRepositoryConnector,
                               OMRSAuditLog auditLog,
                               java.lang.String serverUserName)
                        throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Deprecated.
        Initialize the access service.
        Parameters:
        accessServiceConfigurationProperties - specific configuration properties for this access service.
        enterpriseOMRSTopicConnector - connector for receiving OMRS Events from the cohorts
        enterpriseOMRSRepositoryConnector - connector for querying the cohort repositories
        auditLog - audit log component for logging messages.
        serverUserName - user id to use on OMRS calls where there is no end user.
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - invalid parameters in the configuration properties.
      • initialize

        public void initialize​(AccessServiceConfig accessServiceConfigurationProperties,
                               OMRSTopicConnector enterpriseOMRSTopicConnector,
                               OMRSRepositoryConnector enterpriseOMRSRepositoryConnector,
                               AuditLog auditLog,
                               java.lang.String serverUserName)
                        throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Initialize the access service.
        Parameters:
        accessServiceConfigurationProperties - specific configuration properties for this access service.
        enterpriseOMRSTopicConnector - connector for receiving OMRS Events from the cohorts
        enterpriseOMRSRepositoryConnector - connector for querying the cohort repositories
        auditLog - audit log component for logging messages.
        serverUserName - user id to use on OMRS calls where there is no end user.
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - invalid parameters in the configuration properties.
      • getFullServiceName

        public java.lang.String getFullServiceName()
        Return the cached service name.
        Returns:
        string name
      • setFullServiceName

        public void setFullServiceName​(java.lang.String fullServiceName)
        Set up the cached service name.
        Parameters:
        fullServiceName - string name
      • shutdown

        public abstract void shutdown()
        Shutdown the access service.
      • extractSupportedZones

        protected java.util.List<java.lang.String> extractSupportedZones​(java.util.Map<java.lang.String,​java.lang.Object> accessServiceOptions,
                                                                         java.lang.String accessServiceFullName,
                                                                         AuditLog auditLog)
                                                                  throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Extract the supported zones property from the access services option.
        Parameters:
        accessServiceOptions - options passed to the access service.
        accessServiceFullName - name of calling service
        auditLog - audit log for error messages
        Returns:
        null or list of zone names
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - the supported zones property is not a list of zone names.
      • extractPublishZones

        protected java.util.List<java.lang.String> extractPublishZones​(java.util.Map<java.lang.String,​java.lang.Object> accessServiceOptions,
                                                                       java.lang.String accessServiceFullName,
                                                                       AuditLog auditLog)
                                                                throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Extract the publish zones property from the access services option.
        Parameters:
        accessServiceOptions - options passed to the access service.
        accessServiceFullName - name of calling service
        auditLog - audit log for error messages
        Returns:
        null or list of zone names
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - the supported zones property is not a list of zone names.
      • extractDefaultZones

        protected java.util.List<java.lang.String> extractDefaultZones​(java.util.Map<java.lang.String,​java.lang.Object> accessServiceOptions,
                                                                       java.lang.String accessServiceFullName,
                                                                       AuditLog auditLog)
                                                                throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Extract the default zones property from the access services option.
        Parameters:
        accessServiceOptions - options passed to the access service.
        accessServiceFullName - name of calling service
        auditLog - audit log for error messages
        Returns:
        null or list of zone names
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - the supported zones property is not a list of zone names.
      • extractKarmaPointIncrement

        protected int extractKarmaPointIncrement​(java.util.Map<java.lang.String,​java.lang.Object> accessServiceOptions,
                                                 java.lang.String accessServiceFullName,
                                                 AuditLog auditLog)
                                          throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Extract the karma point plateau property from the access services option.
        Parameters:
        accessServiceOptions - options passed to the access service.
        accessServiceFullName - name of calling service
        auditLog - audit log for error messages
        Returns:
        null or list of zone names
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - the supported zones property is not a list of zone names.
      • extractKarmaPointPlateau

        protected int extractKarmaPointPlateau​(java.util.Map<java.lang.String,​java.lang.Object> accessServiceOptions,
                                               java.lang.String accessServiceFullName,
                                               AuditLog auditLog)
                                        throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Extract the karma point plateau property from the access services option.
        Parameters:
        accessServiceOptions - options passed to the access service.
        accessServiceFullName - name of calling service
        auditLog - audit log for error messages
        Returns:
        null or list of zone names
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - the supported zones property is not a list of zone names.
      • registerWithEnterpriseTopic

        protected void registerWithEnterpriseTopic​(java.lang.String accessServiceFullName,
                                                   java.lang.String serverName,
                                                   OMRSTopicConnector omrsTopicConnector,
                                                   OMRSTopicListener omrsTopicListener,
                                                   AuditLog auditLog)
                                            throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Register a listener with the enterprise topic connector.
        Parameters:
        accessServiceFullName - name of calling access service
        serverName - name of OMAG Server instance
        omrsTopicConnector - topic connector to register with
        omrsTopicListener - listener to register
        auditLog - audit log to record messages
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - problem with topic connection
      • getTopicName

        protected java.lang.String getTopicName​(Connection connection)
        Return the name of the topic extracted from the endpoint of the topic's Connection.
        Parameters:
        connection - connection object
        Returns:
        topic name
      • getInTopicEventBusConnector

        protected OpenMetadataTopicConnector getInTopicEventBusConnector​(Connection inTopicConnection,
                                                                         java.lang.String accessServiceFullName,
                                                                         AuditLog parentAuditLog)
                                                                  throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Create the connector for this access services' In Topic.
        Parameters:
        inTopicConnection - connection from the configuration properties
        accessServiceFullName - name of the calling access service
        parentAuditLog - audit log from the admin component
        Returns:
        connector to access the topic
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - problem creating connector
      • getOutTopicEventBusConnector

        protected OpenMetadataTopicConnector getOutTopicEventBusConnector​(Connection outTopicEventBusConnection,
                                                                          java.lang.String accessServiceName,
                                                                          AuditLog parentAuditLog)
                                                                   throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Create the event bus connector for this access services' Out Topic.
        Parameters:
        outTopicEventBusConnection - connection from the configuration properties - the event bus
        accessServiceName - name of the calling access service
        parentAuditLog - audit log from the admin component
        Returns:
        connector to access the topic
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - problem creating connector
      • getOutTopicConnection

        protected Connection getOutTopicConnection​(Connection outTopicEventBusConnection,
                                                   java.lang.String accessServiceFullName,
                                                   java.lang.String accessServiceConnectorProviderClassName,
                                                   AuditLog auditLog)
                                            throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Create the connector for this access services' Out Topic.
        Parameters:
        outTopicEventBusConnection - connection from the configuration properties - the event bus
        accessServiceFullName - name of the calling access service
        accessServiceConnectorProviderClassName - class name of connector provider
        auditLog - audit log from the admin component
        Returns:
        connector to access the topic
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - problem creating connector
      • throwUnexpectedInitializationException

        protected void throwUnexpectedInitializationException​(java.lang.String actionDescription,
                                                              java.lang.String fullAccessServiceName,
                                                              java.lang.Throwable error)
                                                       throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Log that an unexpected exception was received during start up.
        Parameters:
        actionDescription - calling method
        fullAccessServiceName - name of the access service
        error - exception that was caught
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - wrapped exception
      • getTopicConnector

        public <T> T getTopicConnector​(Connection topicConnection,
                                       java.lang.Class<T> topicConnectorClass,
                                       AuditLog auditLog,
                                       java.lang.String accessServiceFullName,
                                       java.lang.String methodName)
                                throws org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException
        Create an instance of an open metadata topic connector using the supplied connection.
        Type Parameters:
        T - type name
        Parameters:
        topicConnection - connection needed to create the connector
        topicConnectorClass - class to cast to
        accessServiceFullName - name of the calling access service
        auditLog - audit log for this connector
        methodName - calling method
        Returns:
        connector to access the topic
        Throws:
        org.odpi.openmetadata.adminservices.ffdc.exception.OMAGConfigurationErrorException - problem creating connector