Class FederationControlBase
java.lang.Object
org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.control.FederationControlBase
- All Implemented Interfaces:
FederationControl
- Direct Known Subclasses:
ParallelFederationControl
,SequentialFederationControl
FederationControlBase provides the base class for control logic that manages a federated query
across the repositories registered with the enterprise connector manager.
An instance of the federation control class is created for each query. It is passed an
executor object that is able to issue the appropriate query and handle the response.
The federation control class calls the executor repeatedly, passing in the metadata collection
until the executor tells it to stop, or it runs out of registered repositories.
The caller (enterprise connector) then requests the response from the executor.
-
Field Summary
Modifier and TypeFieldDescriptionprotected AuditLog
protected List<OMRSRepositoryConnector>
protected String
protected String
-
Constructor Summary
ConstructorDescriptionFederationControlBase
(String userId, List<OMRSRepositoryConnector> cohortConnectors, AuditLog auditLog, String methodName) Constructor for a federated query -
Method Summary
Modifier and TypeMethodDescriptionabstract void
executeCommand
(RepositoryExecutor executor) Issue the federated command
-
Field Details
-
userId
-
cohortConnectors
-
auditLog
-
methodName
-
-
Constructor Details
-
FederationControlBase
public FederationControlBase(String userId, List<OMRSRepositoryConnector> cohortConnectors, AuditLog auditLog, String methodName) Constructor for a federated query- Parameters:
userId
- calling usercohortConnectors
- list of connectors to callauditLog
- logging destinationmethodName
- calling method
-
-
Method Details
-
executeCommand
Issue the federated command- Specified by:
executeCommand
in interfaceFederationControl
- Parameters:
executor
- command to execute- Throws:
RepositoryErrorException
- problem with the state of one of the repositories. This is probably a logic error rather than an outage
-