Class IntegrationDaemon
java.lang.Object
org.odpi.openmetadata.governanceservers.integrationdaemonservices.client.IntegrationDaemon
- All Implemented Interfaces:
IntegrationDaemonAPI
IntegrationDaemon is the client library for the Integration Daemon's REST API. The integration daemon is an OMAG Server.
It runs one-to-many integration services that in turn manage one-to-many integration connectors. Each integration service
focuses on a particular type of third party technology and is paired with an appropriate OMAS.
The refresh commands are used to instruct the connectors running in the integration daemon to verify the consistency
of the metadata in the third party technology against the values in open metadata. All connectors are requested
to refresh when the integration daemon first starts. Then refresh is called on the schedule defined in the configuration
and lastly as a result of calls to this API.
-
Constructor Summary
ConstructorDescriptionIntegrationDaemon
(String serverName, String serverPlatformRootURL) Create a new client with no authentication embedded in the HTTP request.IntegrationDaemon
(String serverName, String serverPlatformRootURL, String userId, String password) Create a new client that passes userId and password in each HTTP request.IntegrationDaemon
(String serverName, String serverPlatformRootURL, String userId, String password, AuditLog auditLog) Create a new client that passes userId and password in each HTTP request.IntegrationDaemon
(String serverName, String serverPlatformRootURL, AuditLog auditLog) Create a new client with no authentication embedded in the HTTP request. -
Method Summary
Modifier and TypeMethodDescriptiongetConfigurationProperties
(String userId, String connectorName) Retrieve the configuration properties of the named connector.getIntegrationDaemonStatus
(String userId) Return a summary of each of the integration services' and integration groups' status.getIntegrationGroupSummaries
(String userId) Retrieve the description and status of each integration group assigned to the Integration Daemon.getIntegrationGroupSummary
(String userId, String integrationGroupName) Retrieve the description and status of the requested integration group.Return a summary of each of the integration services' status.void
refreshConfig
(String userId, String integrationGroupName) Request that the integration group refresh its configuration by calling the metadata server.void
refreshConnector
(String userId, String connectorName) Issue a refresh() request on a specific connectorvoid
refreshConnectors
(String userId) Issue a refresh() request on a connector running in the integration daemon.void
refreshService
(String userId, String serviceURLMarker, String connectorName) Refresh the requested connectors running in the requested integration service.void
restartConnector
(String userId, String connectorName) Issue a restart() request on a specific connectorvoid
restartConnectors
(String userId) Issue a restart() request on a connector running in the integration daemon.void
restartService
(String userId, String serviceURLMarker, String connectorName) Request that the integration service shutdown and recreate its integration connectors.void
updateConfigurationProperties
(String userId, String connectorName, boolean isMergeUpdate, Map<String, Object> configurationProperties) Update the configuration properties of the connectors, or specific connector if a connector name is supplied.void
updateConnectorConnection
(String userId, String connectorName, Connection connection) Update the configuration properties of the connectors, or specific connector if a connector name is supplied.void
updateEndpointNetworkAddress
(String userId, String connectorName, String networkAddress) Update the configuration properties of the connectors, or specific connector if a connector name is supplied.
-
Constructor Details
-
IntegrationDaemon
public IntegrationDaemon(String serverName, String serverPlatformRootURL, AuditLog auditLog) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName
- name of the server to connect toserverPlatformRootURL
- the network address of the server running the OMAS REST servicesauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
IntegrationDaemon
public IntegrationDaemon(String serverName, String serverPlatformRootURL) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName
- name of the server to connect toserverPlatformRootURL
- the network address of the server running the OMAS REST services- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
IntegrationDaemon
public IntegrationDaemon(String serverName, String serverPlatformRootURL, String userId, String password, AuditLog auditLog) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformRootURL
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requestsauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
IntegrationDaemon
public IntegrationDaemon(String serverName, String serverPlatformRootURL, String userId, String password) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformRootURL
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requests- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
-
Method Details
-
getConfigurationProperties
public Map<String,Object> getConfigurationProperties(String userId, String connectorName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the configuration properties of the named connector.- Specified by:
getConfigurationProperties
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling userconnectorName
- name of a specific connector or null for all connectors- Returns:
- property map
- Throws:
InvalidParameterException
- the connector name is not recognizedUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
updateConfigurationProperties
public void updateConfigurationProperties(String userId, String connectorName, boolean isMergeUpdate, Map<String, Object> configurationProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionUpdate the configuration properties of the connectors, or specific connector if a connector name is supplied.- Specified by:
updateConfigurationProperties
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling userconnectorName
- name of a specific connector or null for all connectorsisMergeUpdate
- should the properties be merged into the existing properties or replace themconfigurationProperties
- new configuration properties- Throws:
InvalidParameterException
- the connector name is not recognizedUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
updateEndpointNetworkAddress
public void updateEndpointNetworkAddress(String userId, String connectorName, String networkAddress) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the configuration properties of the connectors, or specific connector if a connector name is supplied.- Parameters:
userId
- calling userconnectorName
- name of a specific connector or null for all connectorsnetworkAddress
- new address- Throws:
InvalidParameterException
- the connector name is not recognizedUserNotAuthorizedException
PropertyServerException
-
updateConnectorConnection
public void updateConnectorConnection(String userId, String connectorName, Connection connection) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the configuration properties of the connectors, or specific connector if a connector name is supplied.- Parameters:
userId
- calling userconnectorName
- name of a specific connector or null for all connectorsconnection
- new address- Throws:
InvalidParameterException
- the connector name is not recognizedUserNotAuthorizedException
PropertyServerException
-
refreshConnector
public void refreshConnector(String userId, String connectorName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Issue a refresh() request on a specific connector- Parameters:
userId
- calling user- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
refreshConnectors
public void refreshConnectors(String userId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Issue a refresh() request on a connector running in the integration daemon.- Parameters:
userId
- calling user- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
restartConnector
public void restartConnector(String userId, String connectorName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Issue a restart() request on a specific connector- Parameters:
userId
- calling user- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
restartConnectors
public void restartConnectors(String userId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Issue a restart() request on a connector running in the integration daemon.- Parameters:
userId
- calling user- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
refreshService
public void refreshService(String userId, String serviceURLMarker, String connectorName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Refresh the requested connectors running in the requested integration service.- Specified by:
refreshService
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling userserviceURLMarker
- integration service identifierconnectorName
- optional name of the connector to target - if no connector name is specified, all connectors managed by this integration service are refreshed.- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
restartService
public void restartService(String userId, String serviceURLMarker, String connectorName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Request that the integration service shutdown and recreate its integration connectors. If a connector name is provided, only that connector is restarted.- Specified by:
restartService
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling userserviceURLMarker
- integration service identifierconnectorName
- optional name of the connector to target - if no connector name is specified, all connectors managed by this integration service are restarted.- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
getIntegrationDaemonStatus
public IntegrationDaemonStatus getIntegrationDaemonStatus(String userId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return a summary of each of the integration services' and integration groups' status.- Specified by:
getIntegrationDaemonStatus
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling user- Returns:
- list of statuses - one for each assigned integration service or integration group
- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
getIntegrationServicesSummaries
public List<IntegrationServiceSummary> getIntegrationServicesSummaries(String userId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return a summary of each of the integration services' status.- Specified by:
getIntegrationServicesSummaries
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling user- Returns:
- list of statuses - one for each assigned integration services or
- Throws:
InvalidParameterException
- one of the parameters is null or invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- there was a problem detected by the integration daemon
-
getIntegrationGroupSummary
public IntegrationGroupSummary getIntegrationGroupSummary(String userId, String integrationGroupName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the description and status of the requested integration group.- Specified by:
getIntegrationGroupSummary
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling userintegrationGroupName
- qualifiedName of the integration group to target- Returns:
- integration group summary
- Throws:
InvalidParameterException
- no available instance for the requested serverUserNotAuthorizedException
- user does not have access to the requested serverPropertyServerException
- the service name is not known - indicating a logic error
-
getIntegrationGroupSummaries
public List<IntegrationGroupSummary> getIntegrationGroupSummaries(String userId) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the description and status of each integration group assigned to the Integration Daemon.- Specified by:
getIntegrationGroupSummaries
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- calling user- Returns:
- list of integration group summaries
- Throws:
InvalidParameterException
- no available instance for the requested serverUserNotAuthorizedException
- user does not have access to the requested serverPropertyServerException
- the service name is not known - indicating a logic error
-
refreshConfig
public void refreshConfig(String userId, String integrationGroupName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Request that the integration group refresh its configuration by calling the metadata server. This request is useful if the metadata server has an outage, particularly while the integration daemon is initializing. This request just ensures that the latest configuration is in use.- Specified by:
refreshConfig
in interfaceIntegrationDaemonAPI
- Parameters:
userId
- identifier of calling userintegrationGroupName
- qualifiedName of the integration group to target- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- there was a problem detected by the integration group.
-