Class ConnectorProviderBase
java.lang.Object
org.odpi.openmetadata.frameworks.connectors.ConnectorProvider
org.odpi.openmetadata.frameworks.connectors.ConnectorProviderBase
- All Implemented Interfaces:
AuditLoggingComponent
- Direct Known Subclasses:
ApacheAtlasRESTProvider
,ApacheKafkaAdminProvider
,AssetConsumerOutTopicClientProvider
,AssetConsumerOutTopicServerProvider
,AssetManagerOutTopicClientProvider
,AssetManagerOutTopicServerProvider
,AssetOwnerOutTopicClientProvider
,AssetOwnerOutTopicServerProvider
,BasicFileStoreProvider
,BasicFolderProvider
,CommunityProfileOutTopicClientProvider
,CommunityProfileOutTopicServerProvider
,CSVFileStoreProvider
,DataFolderProvider
,DataManagerOutTopicClientProvider
,DataManagerOutTopicServerProvider
,DigitalArchitectureOutTopicClientProvider
,DigitalArchitectureOutTopicServerProvider
,EngineHostProvider
,EnvVarSecretsStoreProvider
,GovernanceEngineOutTopicClientProvider
,GovernanceEngineOutTopicServerProvider
,GovernanceServerOutTopicClientProvider
,GovernanceServerOutTopicServerProvider
,GovernanceServiceProviderBase
,IntegrationConnectorProvider
,IntegrationDaemonProvider
,IsolatedConnectorProviderBase
,ITInfrastructureOutTopicClientProvider
,ITInfrastructureOutTopicServerProvider
,JDBCResourceConnectorProvider
,MetadataAccessServerProvider
,OMAGServerConfigStoreProviderBase
,OMAGServerPlatformProvider
,OMAGServerProvider
,OMRSAuditLogStoreProviderBase
,OMRSCohortRegistryStoreProviderBase
,OMRSRepositoryConnectorProviderBase
,OMRSRepositoryEventMapperProviderBase
,OMRSTopicProvider
,OpenMetadataArchiveStoreProviderBase
,OpenMetadataPlatformSecurityProvider
,OpenMetadataServerSecurityProvider
,OpenMetadataTopicProvider
,OSSUnityCatalogResourceProvider
,RESTClientConnectorProvider
,SecurityManagerOutTopicClientProvider
,SecurityManagerOutTopicServerProvider
,StewardshipActionOutTopicClientProvider
,StewardshipActionOutTopicServerProvider
,ViewServerProvider
,YAMLSecretsStoreProvider
public abstract class ConnectorProviderBase
extends ConnectorProvider
implements AuditLoggingComponent
ConnectorProviderBase is a base class for a connector provider. It manages all the class loading
for subclass implementations of the connector provider along with the generation of new connector guids.
ConnectorProviderBase creates a connector instance with the class name from the private variable called
connectorClassName. This class name is initialized to null. If the getConnector method is called when
the connectorClassName is null, it throws ConnectorCheckedException.
This is its default behaviour.
To use the ConnectorProviderBase, create a new class that extends the ConnectorProviderBase class
and in the constructor call super.setConnectorClassName("your connector's class name");
-
Field Summary
Fields inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorProvider
supportedConfigurationProperties, supportedTechnologyTypes, supportedTemplateTypes
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Provide a common implementation of equals for all OCF Connector Provider objects.protected Class<?>
Use the standard class loader to retrieve the class for the connector.getConnector
(Connection connection) Creates a new instance of a connector using the name of the connector provider in the supplied connection.getConnector
(ConnectionProperties connection) Creates a new instance of a connector based on the information in the supplied connection.Return the class name for the connector that the connector provider generates.Return the component description that is used by this connector in the audit log.Returns the properties about the type of connector that this ConnectorProvider supports.Returns the properties about the type of connector that this Connector Provider supports.protected String
Each connector has a guid to make it easier to correlate log messages from the various components that serve it.int
hashCode()
Provide a common implementation of hashCode for all OCF Connector Provider objects.void
setAuditLog
(AuditLog auditLog) Receive an audit log object that can be used to record audit log messages.protected void
setConnectorClassName
(String newConnectorClassName) Update the class name for this connector provider.protected void
setConnectorComponentDescription
(ComponentDescription connectorComponentDescription) Update the component name to use in the creation of the connector's audit log.protected void
setConnectorTypeProperties
(ConnectorType connectorTypeBean) Setter method to enable a subclass to set up the connector type properties that are added to a connection properties object.toString()
Standard toString method.Methods inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorProvider
getSupportedConfigurationProperties, getSupportedTechnologyTypes, getSupportedTemplateTypes
-
Field Details
-
connectorInterfaces
-
auditLog
-
connectorTypeBean
-
-
Constructor Details
-
ConnectorProviderBase
public ConnectorProviderBase()Typical constructor
-
-
Method Details
-
getNewConnectorGUID
Each connector has a guid to make it easier to correlate log messages from the various components that serve it. It uses a type 4 (pseudo randomly generated) UUID. The UUID is generated using a cryptographically strong pseudo random number generator.- Returns:
- guid for a new connector instance
-
getConnectorClassName
Return the class name for the connector that the connector provider generates.- Returns:
- connectorClassName will be null initially.
-
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.
-
setConnectorClassName
Update the class name for this connector provider.- Parameters:
newConnectorClassName
- this must be a valid Java class name for a class that implements the org.odpi.openmetadata.Connector interface.
-
setConnectorComponentDescription
Update the component name to use in the creation of the connector's audit log.- Parameters:
connectorComponentDescription
- component description.
-
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
-
getConnectorTypeProperties
Returns the properties about the type of connector that this Connector Provider supports.- Specified by:
getConnectorTypeProperties
in classConnectorProvider
- Returns:
- properties including the name of the connector type, the connector provider class and any specific connection properties that are recognized by this connector.
-
getConnectorType
Returns the properties about the type of connector that this ConnectorProvider supports.- Specified by:
getConnectorType
in classConnectorProvider
- Returns:
- properties including the name of the connector type, the connector provider class and any specific connection properties that are recognized by this connector.
-
setConnectorTypeProperties
Setter method to enable a subclass to set up the connector type properties that are added to a connection properties object. The connector type properties guide the ConnectorBroker and ConnectorProvider on how to create and configure a Connector instance.- Parameters:
connectorTypeBean
- default properties for this type of connector
-
getConnector
public Connector getConnector(Connection connection) throws ConnectionCheckedException, ConnectorCheckedException Creates a new instance of a connector using the name of the connector provider in the supplied connection.- Specified by:
getConnector
in classConnectorProvider
- Parameters:
connection
- properties for the connector and connector provider.- Returns:
- new connector instance.
- Throws:
ConnectionCheckedException
- an error with the connection.ConnectorCheckedException
- an error initializing the connector.
-
getConnector
public Connector getConnector(ConnectionProperties connection) throws ConnectionCheckedException, ConnectorCheckedException Creates a new instance of a connector based on the information in the supplied connection.- Specified by:
getConnector
in classConnectorProvider
- Parameters:
connection
- connection that should have all the properties needed by the Connector Provider to create a connector instance.- Returns:
- Connector instance of the connector.
- Throws:
ConnectionCheckedException
- if there are missing or invalid properties in the connectionConnectorCheckedException
- if there are issues instantiating or initializing the connector
-
getClassForConnector
Use the standard class loader to retrieve the class for the connector.- Returns:
- class
- Throws:
ClassNotFoundException
- unable to locate a class by that name on the class path
-
hashCode
public int hashCode()Provide a common implementation of hashCode for all OCF Connector Provider objects. The UUID is unique and is randomly assigned and so its hashCode is as good as anything to describe the hash code of the properties object. -
equals
Provide a common implementation of equals for all OCF Connector Provider objects. The UUID is unique and is randomly assigned and so its hashCode is as good as anything to evaluate the equality of the connector provider object. -
toString
Standard toString method.
-