Class CatalogIntegratorContext
java.lang.Object
org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
org.odpi.openmetadata.integrationservices.catalog.connector.CatalogIntegratorContext
CatalogIntegratorContext provides a wrapper around the Asset Manager OMAS client.
It provides the simplified interface to open metadata needed by the CatalogIntegratorConnector.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Service for working with feedback elements.static final String
Service for building and maintaining connections, connector types and endpoints.static final String
Service for creating connector instances.static final String
Service for working with data stores, data sets, data feeds and APIs.static final String
Services for maintaining links to external references.static final String
Service for maintaining glossaries and their contentsstatic final String
Service for maintaining governance definitions such as policies and rules.static final String
Service for maintaining models of infrastructure.static final String
Service for maintaining lineage relationships.static final String
Service for handing actions for stewards.static final String
Service for maintaining reference data (valid values).Fields inherited from class org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
actionControlInterface, connectorName, externalSourceGUID, externalSourceIsHome, externalSourceName, fileClassifier, governanceConfiguration, integrationConnectorGUID, integrationReportWriter, maxPageSize, openIntegrationClient, openMetadataStoreClient, permittedSynchronization, propertyHelper, userId
-
Constructor Summary
ConstructorDescriptionCatalogIntegratorContext
(String connectorId, String connectorName, String connectorUserId, String serverName, OpenIntegrationClient openIntegrationClient, GovernanceConfiguration governanceConfiguration, OpenMetadataClient openMetadataStoreClient, ActionControlInterface actionControlInterface, ExternalAssetManagerClient assetManagerClient, AssetManagerEventClient eventClient, ConnectedAssetClient connectedAssetClient, CollaborationExchangeClient collaborationExchangeClient, ConnectionExchangeClient connectionExchangeClient, DataAssetExchangeClient dataAssetExchangeClient, ExternalReferenceExchangeClient externalReferenceExchangeClient, GlossaryExchangeClient glossaryExchangeClient, GovernanceExchangeClient governanceExchangeClient, InfrastructureExchangeClient infrastructureExchangeClient, LineageExchangeClient lineageExchangeClient, StewardshipExchangeClient stewardshipExchangeClient, ValidValuesExchangeClient validValuesExchangeClient, boolean generateIntegrationReport, PermittedSynchronization permittedSynchronization, String integrationConnectorGUID, String assetManagerGUID, String assetManagerName, String integrationServiceName, List<String> disabledExchangeServices, int maxPageSize, AuditLog auditLog) Create a new context for a connector. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addExternalIdentifier
(String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) Add a new external identifier to an existing open metadata element.void
addExternalIdentifier
(String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) Add a new external identifier to an existing open metadata element.void
confirmSynchronization
(String openMetadataGUID, String openMetadataElementTypeName, String externalIdentifier) Confirm that the values of a particular metadata element have been synchronized.void
confirmSynchronization
(String externalScopeGUID, String externalScopeName, String openMetadataGUID, String openMetadataElementTypeName, String externalIdentifier) Confirm that the values of a particular metadata element have been synchronized.Return the unique identifier for the asset manager element with a qualifiedName matching the assetManagerName.Return the qualified name of the asset manager that is supplied in the configuration as metadataSourceQualifiedName.Return the interface for exchanging collaboration information (comments, likes, reviews, tags).Return the interface for exchanging connection information (connections, connector types, endpoints).Return the interface for working with connectors to digital resources.Return the interface for exchanging data asset information (assets, schemas, connections).Return the interface for exchanging data asset information (assets, schemas, connections).Return the interface for exchanging glossary information (glossaries, with categories, terms and relationships)Return the interface for exchanging governance information (policies, rules, ...)Return the interface for exchanging infrastructure information (servers, applications, hosts etc).Return the interface for exchanging lineage information (processes, ports, schemas, lineage linkage etc).getMetadataCorrelationHeader
(CorrelatedMetadataElement retrievedElement) Retrieve the correlation header from the retrieved element that matches this asset manager.Return the interface for exchanging stewardship information.Return the interface for exchanging valid values and reference data information.boolean
Return a flag indicating whether a listener has been registered or not.void
registerListener
(AssetManagerEventListener listener) Register a listener object that will be passed each of the events published by the Asset Manager OMAS.void
removeExternalIdentifier
(String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier) Remove a new external identifier from an existing open metadata element.void
updateExternalIdentifier
(String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) Update the description of a specific external identifier.Methods inherited from class org.odpi.openmetadata.frameworks.integration.context.IntegrationContext
addCatalogTarget, addCatalogTarget, disconnect, elementShouldBeCatalogued, getAnchorGUID, getAnchorGUID, getCatalogTarget, getCatalogTargets, getCatalogTargets, getConnectedAssetContext, getExternalSourceIsHome, getFileClassifier, getIntegrationGovernanceContext, getMaxPageSize, getMetadataSourceGUID, getMetadataSourceQualifiedName, getMyUserId, getPermittedSynchronization, isRefreshInProgress, isTypeOf, isTypeOf, registerDirectoryListener, registerDirectoryTreeListener, registerFileListener, removeCatalogTarget, reportAnchorGUID, reportAnchorGUID, reportElementCreation, reportElementDelete, reportElementUpdate, reportParentGUID, setActiveReportPublishing, setExternalSourceIsHome, setMetadataSourceQualifiedName, setMetadataSourceQualifiedName, unregisterDirectoryListener, unregisterDirectoryTreeListener, unregisterFileListener, updateCatalogTarget
-
Field Details
-
connectorFactoryServiceName
Service for creating connector instances.- See Also:
-
collaborationExchangeServiceName
Service for working with feedback elements.- See Also:
-
connectionExchangeServiceName
Service for building and maintaining connections, connector types and endpoints.- See Also:
-
dataAssetExchangeServiceName
Service for working with data stores, data sets, data feeds and APIs.- See Also:
-
externalReferenceExchangeServiceName
Services for maintaining links to external references.- See Also:
-
glossaryExchangeServiceName
Service for maintaining glossaries and their contents- See Also:
-
governanceExchangeServiceName
Service for maintaining governance definitions such as policies and rules.- See Also:
-
infrastructureExchangeServiceName
Service for maintaining models of infrastructure.- See Also:
-
lineageExchangeServiceName
Service for maintaining lineage relationships.- See Also:
-
stewardshipExchangeServiceName
Service for handing actions for stewards.- See Also:
-
validValuesExchangeServiceName
Service for maintaining reference data (valid values).- See Also:
-
-
Constructor Details
-
CatalogIntegratorContext
public CatalogIntegratorContext(String connectorId, String connectorName, String connectorUserId, String serverName, OpenIntegrationClient openIntegrationClient, GovernanceConfiguration governanceConfiguration, OpenMetadataClient openMetadataStoreClient, ActionControlInterface actionControlInterface, ExternalAssetManagerClient assetManagerClient, AssetManagerEventClient eventClient, ConnectedAssetClient connectedAssetClient, CollaborationExchangeClient collaborationExchangeClient, ConnectionExchangeClient connectionExchangeClient, DataAssetExchangeClient dataAssetExchangeClient, ExternalReferenceExchangeClient externalReferenceExchangeClient, GlossaryExchangeClient glossaryExchangeClient, GovernanceExchangeClient governanceExchangeClient, InfrastructureExchangeClient infrastructureExchangeClient, LineageExchangeClient lineageExchangeClient, StewardshipExchangeClient stewardshipExchangeClient, ValidValuesExchangeClient validValuesExchangeClient, boolean generateIntegrationReport, PermittedSynchronization permittedSynchronization, String integrationConnectorGUID, String assetManagerGUID, String assetManagerName, String integrationServiceName, List<String> disabledExchangeServices, int maxPageSize, AuditLog auditLog) Create a new context for a connector.- Parameters:
connectorId
- unique identifier of the connector (used to configure the event listener)connectorName
- name of connector from configconnectorUserId
- userId for the connectorserverName
- name of the integration daemonopenIntegrationClient
- client for calling the metadata servergovernanceConfiguration
- client for managing catalog targetsopenMetadataStoreClient
- client for calling the metadata serveractionControlInterface
- client for initiating governance actionsassetManagerClient
- common client to map requests toeventClient
- client to register for eventsconnectedAssetClient
- client for connectorscollaborationExchangeClient
- client for collaboration requestsconnectionExchangeClient
- client for connection requestsdataAssetExchangeClient
- client for asset requestsexternalReferenceExchangeClient
- client for data asset requestsglossaryExchangeClient
- client for glossary requestsgovernanceExchangeClient
- client for governance requestsinfrastructureExchangeClient
- client for infrastructure requestslineageExchangeClient
- client for lineage requestsstewardshipExchangeClient
- client for stewardship requestsvalidValuesExchangeClient
- client for valid values requestsassetManagerGUID
- unique identifier of the software server capability for the asset managerassetManagerName
- unique name of the software server capability for the asset managergenerateIntegrationReport
- should the connector generate an integration reports?permittedSynchronization
- the direction of integration permitted by the integration connectorintegrationConnectorGUID
- unique identifier for the integration connector if it is started via an integration group (otherwise it is null).disabledExchangeServices
- option from the integration service's configurationintegrationServiceName
- name of this servicemaxPageSize
- max number of elements that can be returned on a queryauditLog
- logging destination
-
-
Method Details
-
getAssetManagerGUID
Return the unique identifier for the asset manager element with a qualifiedName matching the assetManagerName.- Returns:
- string guid
-
getAssetManagerName
Return the qualified name of the asset manager that is supplied in the configuration as metadataSourceQualifiedName.- Returns:
- string name
-
registerListener
public void registerListener(AssetManagerEventListener listener) throws InvalidParameterException, ConnectionCheckedException, ConnectorCheckedException, PropertyServerException, UserNotAuthorizedException Register a listener object that will be passed each of the events published by the Asset Manager OMAS.- Parameters:
listener
- listener object- Throws:
InvalidParameterException
- one of the parameters is null or invalid.ConnectionCheckedException
- there are errors in the configuration of the connection which is preventing the creation of a connector.ConnectorCheckedException
- there are errors in the initialization of the connector.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
isListenerRegistered
public boolean isListenerRegistered()Return a flag indicating whether a listener has been registered or not.- Returns:
- true means the listener has been successfully registered
-
addExternalIdentifier
public void addExternalIdentifier(String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Add a new external identifier to an existing open metadata element.- Parameters:
openMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifierProperties
- optional properties used to define an external identifier- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
addExternalIdentifier
public void addExternalIdentifier(String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Add a new external identifier to an existing open metadata element.- Parameters:
externalScopeGUID
- unique identifier of the software capability that owns this collectionexternalScopeName
- unique name of the software capability that owns this collectionexternalScopeTypeName
- type name of the software capability describing the manager for the external identifieropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifierProperties
- optional properties used to define an external identifier- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
updateExternalIdentifier
public void updateExternalIdentifier(String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the description of a specific external identifier.- Parameters:
openMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifierProperties
- optional properties used to define an external identifier- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
removeExternalIdentifier
public void removeExternalIdentifier(String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove a new external identifier from an existing open metadata element. The open metadata element is not affected.- Parameters:
openMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifier
- unique identifier of this element in the third party asset manager- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
confirmSynchronization
public void confirmSynchronization(String openMetadataGUID, String openMetadataElementTypeName, String externalIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Confirm that the values of a particular metadata element have been synchronized. This is important from an audit point of view, and to allow bidirectional updates of metadata using optimistic locking.- Parameters:
openMetadataGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifier
- unique identifier of this element in the external asset manager- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
confirmSynchronization
public void confirmSynchronization(String externalScopeGUID, String externalScopeName, String openMetadataGUID, String openMetadataElementTypeName, String externalIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Confirm that the values of a particular metadata element have been synchronized. This is important from an audit point of view, and to allow bidirectional updates of metadata using optimistic locking.- Parameters:
externalScopeGUID
- unique identifier for the owning scope (typically a catalog)externalScopeName
- unique name for the owning scope (typically a catalog)openMetadataGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifier
- unique identifier of this element in the external asset manager- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
getConnectorFactoryService
Return the interface for working with connectors to digital resources.- Returns:
- collaboration exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getCollaborationExchangeService
public CollaborationExchangeService getCollaborationExchangeService() throws UserNotAuthorizedExceptionReturn the interface for exchanging collaboration information (comments, likes, reviews, tags).- Returns:
- collaboration exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getConnectionExchangeService
Return the interface for exchanging connection information (connections, connector types, endpoints).- Returns:
- connection exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getDataAssetExchangeService
Return the interface for exchanging data asset information (assets, schemas, connections).- Returns:
- data asset exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getExternalReferenceService
public ExternalReferenceExchangeService getExternalReferenceService() throws UserNotAuthorizedExceptionReturn the interface for exchanging data asset information (assets, schemas, connections).- Returns:
- data asset exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getGlossaryExchangeService
Return the interface for exchanging glossary information (glossaries, with categories, terms and relationships)- Returns:
- glossary exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getGovernanceExchangeService
Return the interface for exchanging governance information (policies, rules, ...)- Returns:
- governance exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getInfrastructureExchangeService
public InfrastructureExchangeService getInfrastructureExchangeService() throws UserNotAuthorizedExceptionReturn the interface for exchanging infrastructure information (servers, applications, hosts etc).- Returns:
- infrastructure exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getLineageExchangeService
Return the interface for exchanging lineage information (processes, ports, schemas, lineage linkage etc).- Returns:
- lineage exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getStewardshipExchangeService
Return the interface for exchanging stewardship information.- Returns:
- stewardship exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-
getValidValuesExchangeService
Return the interface for exchanging valid values and reference data information.- Returns:
- valid values exchange service
- Throws:
UserNotAuthorizedException
- this option is not enabled in the configuration
-