Skip to content

Writing Repository Governance Services

An repository governance service is a specialized connector that performs governance on open metadata repository such as maintaining an open metadata archive. It is hosted in the Repository Governance OMES which is, in turn, running in an engine host OMAG server.

Repository Governance Services

Figure 1: Repository Governance Services

A repository governance service can:

  • Register a listener with the Enterprise OMAS Topic to receive notifications from any of the repositories connected via Open Metadata Repository Cohorts.
  • Issue requests to find and retrieve metadata instances from any of the repositories connected via Open Metadata Repository Cohorts.
  • Incrementally build and store an open metadata archive.

Interface

The interface that all repository governance services must implement is defined by RepositoryGovernanceService :

Figure 1

Figure 1: Methods implemented by an archive service

  • initialize is a standard method for all connectors that is called by the connector broker when the connector is created. The connector is passed the connection object from the configuration and a unique identifier for this instance of the connector.
  • setAuditLog provides a logging destination (see Audit Log Framework (ALF)).
  • setContext sets up the archive context. This provides an interface to the repository services (OMRS) that provide access to the open metadata.
    • The ability to register a listener to receive events from the Enterprise OMRS Topic.
    • The ability to retrieve metadata instances from any connected open metadata repository.
  • start indicates that the archive service is completely configured and can begin processing. This call can be used to register a listener with the Enterprise OMRS Topic through the context and to update the archive store with the current state of the metadata in the repositories.
  • disconnect is called when the server is shutting down. The archive service should free up any resources that it holds since it is not needed any more.
Further information

Raise an issue or comment below