Class XTDBOMRSRepositoryConnectorProvider

All Implemented Interfaces:
AuditLoggingComponent

public class XTDBOMRSRepositoryConnectorProvider extends OMRSRepositoryConnectorProviderBase
In the Open Connector Framework (OCF), a ConnectorProvider is a factory for a specific type of connector. The XTDBOMRSRepositoryConnectorProvider is the connector provider for the XTDBOMRSRepositoryConnector. It extends OMRSRepositoryConnectorProviderBase which in turn extends the OCF ConnectorProviderBase. ConnectorProviderBase supports the creation of connector instances.

The XTDBOMRSRepositoryConnectorProvider must initialize ConnectorProviderBase with the Java class name of the OMRS Connector implementation (by calling super.setConnectorClassName(className)). Then the connector provider will work.

The configurationProperties can contain the following keys:

  • xtdbConfig: a XTDB configuration document that follows the JSON structure documented on XTDB's site: https://xtdb.com/reference/1.19.0-beta1/configuration.html
  • syncIndex: a boolean indicating whether writes should be done synchronously (true, default) to ensure the index is up-to-date before returning, or asynchronously (false) to ensure that the transaction is recorded but that the index can be eventually consistent (faster writes)
  • luceneRegexes: a boolean indicating whether any unquoted regexes (those not surrounded by \Q and \E) should be treated as Lucene regexes (true) or not (false). Technically the search interfaces are meant to take Java regexes; however, if usage of the connector is only expected to pass fairly simple regexes that are also supported by Lucene, enabling this should significantly improve the performance of queries against text data that involves regexes that are unquoted. (Regexes that are quoted will be handled appropriately irrespective of this setting.) Note that this will have no impact if Lucene itself is not configured.

For example: { "class": "Connection", "connectorType": { "class": "ConnectorType", "connectorProviderClassName": "org.odpi.openmetadata.adapters.repositoryservices.xtdb.repositoryconnector.XTDBOMRSRepositoryConnectorProvider" }, "configurationProperties": { "xtdbConfig": { "xtdb/index-store": { "kv-store": { "xtdb/module": "xtdb.rocksdb/->kv-store", "db-dir": "data/servers/xtdb/rdb-index" } }, "xtdb/document-store": { "kv-store": { "xtdb/module": "xtdb.rocksdb/->kv-store", "db-dir": "data/servers/xtdb/rdb-docs" } }, "xtdb/tx-log": { "xtdb/module": "xtdb.kafka/->tx-log", "kafka-config": { "bootstrap-servers": "localhost:9092" }, "tx-topic-opts": { "topic-name": "xtdb-tx-log" }, "poll-wait-duration": "PT1S" } }, "syncIndex": false, "luceneRegexes": true } }
  • Field Details

  • Constructor Details

    • XTDBOMRSRepositoryConnectorProvider

      public XTDBOMRSRepositoryConnectorProvider()
      Constructor used to initialize the ConnectorProviderBase with the Java class name of the specific OMRS Connector implementation.