Class GovernanceActionServiceConnector
java.lang.Object
org.odpi.openmetadata.frameworks.connectors.Connector
org.odpi.openmetadata.frameworks.connectors.ConnectorBase
org.odpi.openmetadata.frameworks.governanceaction.GovernanceActionServiceConnector
- All Implemented Interfaces:
AuditLoggingComponent
,SecureConnectorExtension
,VirtualConnectorExtension
,GovernanceActionService
- Direct Known Subclasses:
GeneralGovernanceActionService
,ProvisioningGovernanceActionService
,RemediationGovernanceActionService
,TriageGovernanceActionService
,VerificationGovernanceActionService
,WatchdogGovernanceActionService
public abstract class GovernanceActionServiceConnector
extends ConnectorBase
implements GovernanceActionService, AuditLoggingComponent
GovernanceActionServiceConnector describes the base class for a specific type of connector that is responsible for preforming
specific governance actions on demand. There are six types of governance action service:
- WatchdogGovernanceActionService - monitors for changes to the metadata elements and initiates other governance actions depending on the nature of the change.
- VerificationGovernanceActionService - tests values in the metadata elements to detect errors or to classify the status of the metadata elements.
- TriageGovernanceActionService - manages the choices on how to resolve a situation, often involving a human decision maker.
- RemediationGovernanceActionService - maintains the metadata elements.
- ProvisioningGovernanceActionService - provisions resources in the digital landscape and maintains lineage.
- GeneralGovernanceActionService - combines all of the capability of the specialist services above.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
ConnectorBase.ProtectedConnection
-
Field Summary
Fields inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
connectedAssetProperties, connectionBean, connectionProperties, connectorInstanceId, embeddedConnectors, messageFormatter, secretsStoreConnectorMap
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Free up any resources held since the connector is no longer needed.getArrayRequestParameter
(String propertyName, Map<String, String> requestParameters, List<String> defaultValue) Retrieve a request parameter that is a comma-separated list of strings.protected boolean
getBooleanRequestParameter
(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is a boolean.Return the component description that is used by this connector in the audit log.protected int
getIntRequestParameter
(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is an integer.protected long
getLongRequestParameter
(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is a long.protected String
getStringRequestParameter
(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is a string or null if not set.protected void
handleUnexpectedException
(String methodName, Throwable error) Provide a common exception for unexpected errors.void
setAuditLog
(AuditLog auditLog) Receive an audit log object that can be used to record audit log messages.abstract void
setGovernanceContext
(GovernanceActionContext governanceContext) Set up details of the governance action request and access to the metadata store.void
setGovernanceServiceName
(String governanceServiceName) Set up the governance action service name.void
validateContext
(GovernanceContext governanceContext) Verify that the context has been set up in the subclassMethods inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
combineConfigurationProperties, disconnectConnectors, equals, getArrayConfigurationProperty, getAssetTypeName, getBooleanConfigurationProperty, getConnectedAssetProperties, getConnection, getConnectorInstanceId, getDateConfigurationProperty, getIntConfigurationProperty, getLongConfigurationProperty, getNetworkAddresses, getStringConfigurationProperty, getSuppliedPlaceholderProperties, hashCode, initialize, initializeConnectedAssetProperties, initializeEmbeddedConnectors, initializeSecretsStoreConnector, isActive, logExceptionRecord, logRecord, logRecord, start, throwMissingConfigurationProperty, throwMissingResource, throwNoAsset, throwWrongTypeOfAsset, throwWrongTypeOfResource, throwWrongTypeOfRootSchema, toString
Methods inherited from class org.odpi.openmetadata.frameworks.connectors.Connector
clearStatisticProperty, clearStatisticTimestamp, getConnectorStatistics, getStatisticCounter, getStatisticProperty, getStatisticTimestamp, incrementStatisticCounter, initializeStatisticCounter, setStatisticProperty, setStatisticTimestamp
-
Field Details
-
governanceServiceName
-
auditLog
-
propertyHelper
-
-
Constructor Details
-
GovernanceActionServiceConnector
public GovernanceActionServiceConnector()
-
-
Method Details
-
setAuditLog
Receive an audit log object that can be used to record audit log messages. The caller has initialized it with the correct component description and log destinations.- Specified by:
setAuditLog
in interfaceAuditLoggingComponent
- Parameters:
auditLog
- audit log object
-
getConnectorComponentDescription
Return the component description that is used by this connector in the audit log.- Specified by:
getConnectorComponentDescription
in interfaceAuditLoggingComponent
- Returns:
- id, name, description, wiki page URL.
-
setGovernanceServiceName
Set up the governance action service name. This is used in error messages.- Parameters:
governanceServiceName
- name of the service
-
handleUnexpectedException
protected void handleUnexpectedException(String methodName, Throwable error) throws ConnectorCheckedException Provide a common exception for unexpected errors.- Parameters:
methodName
- calling methoderror
- caught exception- Throws:
GovernanceServiceException
- wrapped exceptionConnectorCheckedException
-
setGovernanceContext
Set up details of the governance action request and access to the metadata store. This method is called before start and should not be null- Parameters:
governanceContext
- specialist context for this type of governance action.
-
validateContext
Verify that the context has been set up in the subclass- Parameters:
governanceContext
- context from the subclass- Throws:
ConnectorCheckedException
- error to say that the connector (governance action service) is not able to proceed because it has not been set up correctly.
-
getArrayRequestParameter
protected List<String> getArrayRequestParameter(String propertyName, Map<String, String> requestParameters, List<String> defaultValue) Retrieve a request parameter that is a comma-separated list of strings.- Parameters:
propertyName
- name of propertyrequestParameters
- request parametersdefaultValue
- value to use if the property is not specified.- Returns:
- list of strings or null if not set
-
getBooleanRequestParameter
protected boolean getBooleanRequestParameter(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is a boolean. If any non-null value is set it returns true unless the value is set to FALSE, False or false.- Parameters:
propertyName
- name of propertyrequestParameters
- request parameter- Returns:
- boolean flag or false if not set
-
getIntRequestParameter
Retrieve a request parameter that is an integer.- Parameters:
propertyName
- name of propertyrequestParameters
- request parameter- Returns:
- integer value or zero if not supplied
-
getLongRequestParameter
Retrieve a request parameter that is a long.- Parameters:
propertyName
- name of propertyrequestParameters
- request parameter- Returns:
- long value or zero if not supplied
-
getStringRequestParameter
protected String getStringRequestParameter(String propertyName, Map<String, String> requestParameters) Retrieve a request parameter that is a string or null if not set.- Parameters:
propertyName
- name of propertyrequestParameters
- request parameter- Returns:
- string value of property or null if not supplied
-
disconnect
Free up any resources held since the connector is no longer needed.- Overrides:
disconnect
in classConnectorBase
- Throws:
ConnectorCheckedException
- there is a problem within the connector.
-