Class IntegrationGroupConfigurationClient
java.lang.Object
org.odpi.openmetadata.accessservices.governanceengine.client.IntegrationGroupConfigurationClient
- All Implemented Interfaces:
IntegrationGroupConfiguration
public class IntegrationGroupConfigurationClient
extends Object
implements IntegrationGroupConfiguration
IntegrationGroupConfigurationClient supports the configuration of integration group and integration connectors.
-
Constructor Summary
ConstructorDescriptionIntegrationGroupConfigurationClient
(String serverName, String serverPlatformURLRoot) Create a new client with no authentication embedded in the HTTP request.IntegrationGroupConfigurationClient
(String serverName, String serverPlatformURLRoot, String userId, String password) Create a new client that passes userId and password in each HTTP request.IntegrationGroupConfigurationClient
(String serverName, String serverPlatformURLRoot, GovernanceEngineRESTClient restClient, int maxPageSize, AuditLog auditLog) Create a new client that passes userId and password in each HTTP request. -
Method Summary
Modifier and TypeMethodDescriptionaddCatalogTarget
(String userId, String integrationConnectorGUID, String metadataElementGUID, CatalogTargetProperties properties) Add a catalog target to an integration connector.createIntegrationConnector
(String userId, IntegrationConnectorProperties properties) Create an integration connector definition.createIntegrationGroup
(String userId, IntegrationGroupProperties properties) Create a new integration group definition.void
deleteIntegrationConnector
(String userId, String guid, String qualifiedName) Remove the properties of the integration connector.void
deleteIntegrationGroup
(String userId, String guid, String qualifiedName) Remove the properties of the integration group.getAllIntegrationConnectors
(String userId, int startingFrom, int maximumResults) Return the list of integration connectors definitions that are stored.getAllIntegrationGroups
(String userId, int startingFrom, int maximumResults) Return the list of integration group definitions that are stored.getCatalogTarget
(String userId, String relationshipGUID) Retrieve a specific catalog target associated with an integration connector.getCatalogTargets
(String userId, String integrationConnectorGUID, int startingFrom, int maximumResults) Retrieve the identifiers of the metadata elements identified as catalog targets with an integration connector.Return the name of the server where configuration is supposed to be stored.getIntegrationConnectorByGUID
(String userId, String guid) Return the properties from an integration connector definition.getIntegrationConnectorByName
(String userId, String name) Return the properties from an integration connector definition.getIntegrationConnectorRegistrations
(String userId, String integrationConnectorGUID) Return the list of integration groups that a specific integration connector is registered with.getIntegrationGroupByGUID
(String userId, String guid) Return the properties from an integration group definition.getIntegrationGroupByName
(String userId, String name) Return the properties from an integration group definition.getRegisteredIntegrationConnector
(String userId, String integrationGroupGUID, String integrationConnectorGUID) Retrieve a specific integration connector registered with an integration group.getRegisteredIntegrationConnectors
(String userId, String integrationGroupGUID, int startingFrom, int maximumResults) Retrieve the identifiers of the integration connectors registered with an integration group.void
registerIntegrationConnectorWithGroup
(String userId, String integrationGroupGUID, String integrationConnectorGUID, RegisteredIntegrationConnectorProperties properties) Register an integration connector with a specific integration group.void
removeCatalogTarget
(String userId, String relationshipGUID) Unregister a catalog target from the integration connector.void
unregisterIntegrationConnectorFromGroup
(String userId, String integrationGroupGUID, String integrationConnectorGUID) Unregister an integration connector from the integration group.void
updateCatalogTarget
(String userId, String relationshipGUID, CatalogTargetProperties properties) Update a catalog target for an integration connector.void
updateIntegrationConnector
(String userId, String guid, boolean isMergeUpdate, IntegrationConnectorProperties properties) Update the properties of an existing integration connector definition.void
updateIntegrationGroup
(String userId, String guid, boolean isMergeUpdate, IntegrationGroupProperties properties) Update the properties of an existing integration group definition.
-
Constructor Details
-
IntegrationGroupConfigurationClient
public IntegrationGroupConfigurationClient(String serverName, String serverPlatformURLRoot) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- 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.
-
IntegrationGroupConfigurationClient
public IntegrationGroupConfigurationClient(String serverName, String serverPlatformURLRoot, 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 toserverPlatformURLRoot
- 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.
-
IntegrationGroupConfigurationClient
public IntegrationGroupConfigurationClient(String serverName, String serverPlatformURLRoot, GovernanceEngineRESTClient restClient, int maxPageSize, 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 toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesrestClient
- pre-initialized REST clientmaxPageSize
- pre-initialized parameter limitauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem with the information about the remote OMAS
-
-
Method Details
-
getConfigurationServerName
Return the name of the server where configuration is supposed to be stored.- Returns:
- server name
-
createIntegrationGroup
public String createIntegrationGroup(String userId, IntegrationGroupProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a new integration group definition.- Specified by:
createIntegrationGroup
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userproperties
- values that will be associated with this integration group.- Returns:
- unique identifier (guid) of the integration group definition. This is for use on other requests.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem storing the integration group definition.
-
getIntegrationGroupByGUID
public IntegrationGroupElement getIntegrationGroupByGUID(String userId, String guid) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the properties from an integration group definition.- Specified by:
getIntegrationGroupByGUID
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier (guid) of the integration group definition.- Returns:
- properties from the integration group definition.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration group definition.
-
getIntegrationGroupByName
public IntegrationGroupElement getIntegrationGroupByName(String userId, String name) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the properties from an integration group definition.- Specified by:
getIntegrationGroupByName
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling username
- qualified name or display name (if unique).- Returns:
- properties from the integration group definition.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration group definition.
-
getAllIntegrationGroups
public List<IntegrationGroupElement> getAllIntegrationGroups(String userId, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of integration group definitions that are stored.- Specified by:
getAllIntegrationGroups
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userstartingFrom
- initial position in the stored list.maximumResults
- maximum number of definitions to return on this call.- Returns:
- list of integration group definitions.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration group definitions.
-
updateIntegrationGroup
public void updateIntegrationGroup(String userId, String guid, boolean isMergeUpdate, IntegrationGroupProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the properties of an existing integration group definition. Use the current value to keep a property value the same, or use the new value. Null means remove the property from the definition.- Specified by:
updateIntegrationGroup
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier of the integration group - used to locate the definition.isMergeUpdate
- should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?properties
- new values for integration group.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem storing the integration group definition.
-
deleteIntegrationGroup
public void deleteIntegrationGroup(String userId, String guid, String qualifiedName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the properties of the integration group. Both the guid and the qualified name is supplied to validate that the correct integration group is being deleted.- Specified by:
deleteIntegrationGroup
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier of the integration group - used to locate the definition.qualifiedName
- unique name for the integration group.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration group definition.
-
createIntegrationConnector
public String createIntegrationConnector(String userId, IntegrationConnectorProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create an integration connector definition. The same integration connector can be associated with multiple integration groups.- Specified by:
createIntegrationConnector
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userproperties
- values that will be associated with this integration connector - including the connection.- Returns:
- unique identifier of the integration connector.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem storing the integration connector definition.
-
getIntegrationConnectorByGUID
public IntegrationConnectorElement getIntegrationConnectorByGUID(String userId, String guid) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the properties from an integration connector definition.- Specified by:
getIntegrationConnectorByGUID
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier (guid) of the integration connector definition.- Returns:
- properties of the integration connector.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definition.
-
getIntegrationConnectorByName
public IntegrationConnectorElement getIntegrationConnectorByName(String userId, String name) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the properties from an integration connector definition.- Specified by:
getIntegrationConnectorByName
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling username
- qualified name or display name (if unique).- Returns:
- properties from the integration group definition.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration group definition.
-
getAllIntegrationConnectors
public List<IntegrationConnectorElement> getAllIntegrationConnectors(String userId, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of integration connectors definitions that are stored.- Specified by:
getAllIntegrationConnectors
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userstartingFrom
- initial position in the stored list.maximumResults
- maximum number of definitions to return on this call.- Returns:
- list of integration connector definitions.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definitions.
-
getIntegrationConnectorRegistrations
public List<String> getIntegrationConnectorRegistrations(String userId, String integrationConnectorGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of integration groups that a specific integration connector is registered with.- Specified by:
getIntegrationConnectorRegistrations
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userintegrationConnectorGUID
- integration connector to search for.- Returns:
- list of integration group unique identifiers (guids)
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector and/or integration group definitions.
-
updateIntegrationConnector
public void updateIntegrationConnector(String userId, String guid, boolean isMergeUpdate, IntegrationConnectorProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the properties of an existing integration connector definition. Use the current value to keep a property value the same, or use the new value. Null means remove the property from the definition.- Specified by:
updateIntegrationConnector
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier of the integration connector - used to locate the definition.isMergeUpdate
- should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?properties
- values that will be associated with this integration connector - including the connection.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definition.
-
deleteIntegrationConnector
public void deleteIntegrationConnector(String userId, String guid, String qualifiedName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the properties of the integration connector. Both the guid and the qualified name is supplied to validate that the correct integration connector is being deleted. The integration connector is also unregistered from its integration groups.- Specified by:
deleteIntegrationConnector
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userguid
- unique identifier of the integration connector - used to locate the definition.qualifiedName
- unique name for the integration connector.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definition.
-
registerIntegrationConnectorWithGroup
public void registerIntegrationConnectorWithGroup(String userId, String integrationGroupGUID, String integrationConnectorGUID, RegisteredIntegrationConnectorProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Register an integration connector with a specific integration group.- Specified by:
registerIntegrationConnectorWithGroup
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userintegrationGroupGUID
- unique identifier of the integration group.integrationConnectorGUID
- unique identifier of the integration connector.properties
- list of parameters that are used to control to the integration connector.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector and/or integration group definitions.
-
getRegisteredIntegrationConnector
public RegisteredIntegrationConnectorElement getRegisteredIntegrationConnector(String userId, String integrationGroupGUID, String integrationConnectorGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve a specific integration connector registered with an integration group.- Specified by:
getRegisteredIntegrationConnector
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userintegrationGroupGUID
- unique identifier of the integration group.integrationConnectorGUID
- unique identifier of the integration connector.- Returns:
- details of the integration connector and the asset types it is registered for.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector and/or integration group definitions.
-
getRegisteredIntegrationConnectors
public List<RegisteredIntegrationConnectorElement> getRegisteredIntegrationConnectors(String userId, String integrationGroupGUID, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the identifiers of the integration connectors registered with an integration group.- Specified by:
getRegisteredIntegrationConnectors
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userintegrationGroupGUID
- unique identifier of the integration group.startingFrom
- initial position in the stored list.maximumResults
- maximum number of definitions to return on this call.- Returns:
- list of registered services
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector and/or integration group definitions.
-
unregisterIntegrationConnectorFromGroup
public void unregisterIntegrationConnectorFromGroup(String userId, String integrationGroupGUID, String integrationConnectorGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Unregister an integration connector from the integration group.- Specified by:
unregisterIntegrationConnectorFromGroup
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling userintegrationGroupGUID
- unique identifier of the integration group.integrationConnectorGUID
- unique identifier of the integration connector.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector and/or integration group definitions.
-
addCatalogTarget
public String addCatalogTarget(String userId, String integrationConnectorGUID, String metadataElementGUID, CatalogTargetProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Add a catalog target to an integration connector.- Specified by:
addCatalogTarget
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling user.integrationConnectorGUID
- unique identifier of the integration service.metadataElementGUID
- unique identifier of the metadata element that is a catalog target.properties
- properties for the relationship.- Returns:
- catalog target GUID
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem storing the catalog target definition.
-
updateCatalogTarget
public void updateCatalogTarget(String userId, String relationshipGUID, CatalogTargetProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update a catalog target for an integration connector.- Specified by:
updateCatalogTarget
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling user.relationshipGUID
- unique identifier of the relationship.properties
- properties for the relationship.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem storing the catalog target definition.
-
getCatalogTarget
public CatalogTarget getCatalogTarget(String userId, String relationshipGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve a specific catalog target associated with an integration connector.- Specified by:
getCatalogTarget
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling user.relationshipGUID
- unique identifier of the integration service.- Returns:
- details of the integration connector and the elements it is to catalog
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definition.
-
getCatalogTargets
public List<CatalogTarget> getCatalogTargets(String userId, String integrationConnectorGUID, int startingFrom, int maximumResults) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the identifiers of the metadata elements identified as catalog targets with an integration connector.- Specified by:
getCatalogTargets
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling user.integrationConnectorGUID
- unique identifier of the integration connector.startingFrom
- initial position in the stored list.maximumResults
- maximum number of definitions to return on this call.- Returns:
- list of unique identifiers
- Throws:
InvalidParameterException
- one of the parameters is null or invalid,UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem retrieving the integration connector definition.
-
removeCatalogTarget
public void removeCatalogTarget(String userId, String relationshipGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Unregister a catalog target from the integration connector.- Specified by:
removeCatalogTarget
in interfaceIntegrationGroupConfiguration
- Parameters:
userId
- identifier of calling user.relationshipGUID
- unique identifier of the integration connector.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.UserNotAuthorizedException
- user not authorized to issue this request.PropertyServerException
- problem accessing/updating the integration connector definition.
-