Enum Class DuckDBConfigurationProperty

java.lang.Object
java.lang.Enum<DuckDBConfigurationProperty>
org.odpi.openmetadata.adapters.connectors.duckdb.controls.DuckDBConfigurationProperty
All Implemented Interfaces:
Serializable, Comparable<DuckDBConfigurationProperty>, Constable

public enum DuckDBConfigurationProperty extends Enum<DuckDBConfigurationProperty>
DuckDBConfigurationProperty provides definitions for the configuration properties used with the DuckDB connectors. DuckDB is embedded, so the database itself typically needs neither a userId nor a password - DATABASE_USER_ID and DATABASE_PASSWORD are retained here for consistency with the other database connector suites, and because they may be needed to supply credentials for sources that are attached to the DuckDB database using its federation ("ATTACH") capability.
  • Enum Constant Details

    • DATABASE_PATH

      public static final DuckDBConfigurationProperty DATABASE_PATH
      The path to the DuckDB database file being catalogued - or the literal value ":memory:" for an in-memory session.
    • DATABASE_NAME

      public static final DuckDBConfigurationProperty DATABASE_NAME
      The name of the database being catalogued.
    • DATABASE_USER_ID

      public static final DuckDBConfigurationProperty DATABASE_USER_ID
      The userId to store in the userId attribute of the connection. DuckDB itself does not need this, but it is kept for consistency with the other database connector suites, and it may be used to authenticate to a data source that has been ATTACH-ed to the DuckDB database.
    • DATABASE_PASSWORD

      public static final DuckDBConfigurationProperty DATABASE_PASSWORD
      The password to store in the clearPassword attribute of the connection. DuckDB itself does not need this, but it is kept for consistency with the other database connector suites, and it may be used to authenticate to a data source that has been ATTACH-ed to the DuckDB database.
    • ATTACH_STATEMENTS

      public static final DuckDBConfigurationProperty ATTACH_STATEMENTS
      DuckDB's ATTACH statements needed to reconnect this database's federation relationships. DuckDB does not persist ATTACH-ed data sources in the database file between sessions - each new connection must re-issue the ATTACH statements itself (see https://duckdb.org/docs/sql/statements/attach) - so, without this configuration property, a survey or catalog connector opening its own fresh connection would never see any of the federation relationships that were set up in a different session. Each entry is a complete SQL statement, for example "ATTACH 'host=myhost dbname=mydb user=myuser password=mypassword' AS mypg (TYPE POSTGRES, READ_ONLY)" - including any INSTALL/LOAD statements needed for the relevant DuckDB extension.
    • FRIENDSHIP_GUID

      public static final DuckDBConfigurationProperty FRIENDSHIP_GUID
      Unique identifier of the integration connector that is able to catalog the contents of a JDBC database.
  • Field Details

    • name

      public final String name
    • description

      public final String description
    • dataType

      public final String dataType
    • example

      public final String example
    • isPlaceholder

      public final boolean isPlaceholder
  • Method Details

    • values

      public static DuckDBConfigurationProperty[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static DuckDBConfigurationProperty valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getName

      public String getName()
      Return the name of the request parameter.
      Returns:
      string name
    • getDescription

      public String getDescription()
      Return the description of the configuration property.
      Returns:
      text
    • getDataType

      public String getDataType()
      Return the data type for the configuration property.
      Returns:
      data type name
    • getExample

      public String getExample()
      Return an example of the configuration property to help users understand how to set it up.
      Returns:
      example
    • isPlaceholder

      public boolean isPlaceholder()
      Return whether this value is also used as a placeholder property.
      Returns:
      boolean
    • getDuckDBDatabaseIntegrationConnectorNames

      public static List<String> getDuckDBDatabaseIntegrationConnectorNames()
      Get recognizedConfigurationProperties for the DuckDB Database Integration connector. This includes the three generic file system properties (fileSystemName, localMountPoint, canonicalMountPoint) defined in FileSystemConfigurationProperty, since the connector reuses the files-integration-connector's FileClassifier to determine the canonical (masked) path of the DuckDB database file and of any files that it discovers through DuckDB's federation capabilities.
      Returns:
      list of property names
    • getDuckDBDatabaseConfigurationPropertyTypes

      public static List<ConfigurationPropertyType> getDuckDBDatabaseConfigurationPropertyTypes()
      Retrieve the defined configuration properties for the DuckDB Database Integration connector. This includes the three generic file system properties defined in FileSystemConfigurationProperty - see getDuckDBDatabaseIntegrationConnectorNames() for more details on why these are needed.
      Returns:
      list of configuration property types
    • getConfigurationPropertyTypes

      public static List<ConfigurationPropertyType> getConfigurationPropertyTypes()
      Retrieve all the defined configuration properties for this enum (not including the FileSystemConfigurationProperty entries - see getDuckDBDatabaseConfigurationPropertyTypes() for the full list used by the provider).
      Returns:
      list of configuration property types
    • getConfigurationPropertyType

      public ConfigurationPropertyType getConfigurationPropertyType()
      Return a summary of this enum to use in a connector provider.
      Returns:
      request parameter type
    • toString

      public String toString()
      Output of this enum class and main value.
      Overrides:
      toString in class Enum<DuckDBConfigurationProperty>
      Returns:
      string showing enum value