Class RepositoryGovernanceService
- java.lang.Object
-
- org.odpi.openmetadata.frameworks.connectors.Connector
-
- org.odpi.openmetadata.frameworks.connectors.ConnectorBase
-
- org.odpi.openmetadata.engineservices.repositorygovernance.connector.RepositoryGovernanceService
-
- All Implemented Interfaces:
AuditLoggingComponent,VirtualConnectorExtension
public abstract class RepositoryGovernanceService extends ConnectorBase implements AuditLoggingComponent, VirtualConnectorExtension
RepositoryGovernanceService describes a specific type of connector that is responsible for managing the content of a specific open metadata archive. Information about the available metadata is passed in the archive context. The returned archive context also contains the status of this service.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
ConnectorBase.ProtectedConnection
-
-
Field Summary
Fields Modifier and Type Field Description protected AuditLogauditLogprotected List<Connector>embeddedConnectorsprotected RepositoryGovernanceContextrepositoryGovernanceContextprotected StringrepositoryGovernanceServiceName-
Fields inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
connectedAssetProperties, connectionBean, connectionProperties, connectorInstanceId, securedProperties
-
-
Constructor Summary
Constructors Constructor Description RepositoryGovernanceService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ComponentDescriptiongetConnectorComponentDescription()Return the component description that is used by this connector in the audit log.RepositoryGovernanceContextgetRepositoryGovernanceContext()Return the archive context for this archive service.protected voidhandleUnexpectedException(String methodName, Exception error)Provide a common exception for unexpected errors.voidinitializeEmbeddedConnectors(List<Connector> embeddedConnectors)Set up the list of connectors that this virtual connector will use to support its interface.voidsetAuditLog(AuditLog auditLog)Receive an audit log object that can be used to record audit log messages.voidsetRepositoryGovernanceContext(RepositoryGovernanceContext repositoryGovernanceContext)Set up access to the open metadata ecosystem.voidsetRepositoryGovernanceServiceName(String archiveServiceName)Set up the archive service name.voidstart()Indicates that the archive service is completely configured and can begin processing.protected voidvalidateContext(RepositoryGovernanceContext governanceContext)Verify that the context has been set up for the subclass-
Methods inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
disconnect, equals, getConnectedAssetProperties, getConnection, getConnectorInstanceId, hashCode, initialize, initializeConnectedAssetProperties, isActive, toString
-
Methods inherited from class org.odpi.openmetadata.frameworks.connectors.Connector
clearStatisticProperty, clearStatisticTimestamp, getConnectorStatistics, getStatisticCounter, getStatisticProperty, getStatisticTimestamp, incrementStatisticCounter, initializeStatisticCounter, setStatisticProperty, setStatisticTimestamp
-
-
-
-
Field Detail
-
repositoryGovernanceServiceName
protected String repositoryGovernanceServiceName
-
repositoryGovernanceContext
protected RepositoryGovernanceContext repositoryGovernanceContext
-
auditLog
protected AuditLog auditLog
-
-
Method Detail
-
setAuditLog
public void setAuditLog(AuditLog auditLog)
Receive an audit log object that can be used to record audit log messages. The caller has initialized it with the correct component description and log destinations.- Specified by:
setAuditLogin interfaceAuditLoggingComponent- Parameters:
auditLog- audit log object
-
getConnectorComponentDescription
public ComponentDescription getConnectorComponentDescription()
Return the component description that is used by this connector in the audit log.- Specified by:
getConnectorComponentDescriptionin interfaceAuditLoggingComponent- Returns:
- id, name, description, wiki page URL.
-
initializeEmbeddedConnectors
public void initializeEmbeddedConnectors(List<Connector> embeddedConnectors)
Set up the list of connectors that this virtual connector will use to support its interface. The connectors are initialized waiting to start. When start() is called on the virtual connector, it needs to pass start() to each of the embedded connectors. Similarly for disconnect().- Specified by:
initializeEmbeddedConnectorsin interfaceVirtualConnectorExtension- Parameters:
embeddedConnectors- list of connectors
-
setRepositoryGovernanceContext
public void setRepositoryGovernanceContext(RepositoryGovernanceContext repositoryGovernanceContext)
Set up access to the open metadata ecosystem.- Parameters:
repositoryGovernanceContext- interface to the enterprise repository services and the ability to register a listener to the enterprise OMRS topic.
-
setRepositoryGovernanceServiceName
public void setRepositoryGovernanceServiceName(String archiveServiceName)
Set up the archive service name. This is used in error messages.- Parameters:
archiveServiceName- name of the archive service
-
getRepositoryGovernanceContext
public RepositoryGovernanceContext getRepositoryGovernanceContext()
Return the archive context for this archive service. This is typically called after the disconnect() method is called. If called before disconnect(), it may only contain partial results.- Returns:
- archive context containing the results discovered (so far) by the archive service.
-
start
public void start() throws ConnectorCheckedExceptionIndicates that the archive service is completely configured and can begin processing. Any embedded connectors are started. This is the method where the function of the archive service is implemented in the subclass. This is a standard method from the Open Connector Framework (OCF) so be sure to call super.start() in your version.- Overrides:
startin classConnectorBase- Throws:
ConnectorCheckedException- there is a problem within the archive service.
-
handleUnexpectedException
protected void handleUnexpectedException(String methodName, Exception error) throws ConnectorCheckedException
Provide a common exception for unexpected errors.- Parameters:
methodName- calling methoderror- caught exception- Throws:
ConnectorCheckedException- wrapped exception
-
validateContext
protected void validateContext(RepositoryGovernanceContext governanceContext) throws ConnectorCheckedException
Verify that the context has been set up for the subclass- Parameters:
governanceContext- context from the subclass- Throws:
ConnectorCheckedException- error to say that the connector (governance action service) is not able to proceed because it has not been set up correctly.
-
-