Class DatabaseOptions.Datasources

java.lang.Object
org.keycloak.config.DatabaseOptions.Datasources
Enclosing class:
DatabaseOptions

public static final class DatabaseOptions.Datasources extends Object
  • Field Details

    • OPTIONS_DATASOURCES

      public static final List<Option<?>> OPTIONS_DATASOURCES
      Options that have their sibling for a named datasource Example: for `db-dialect`, `db-dialect-` is created
  • Constructor Details

    • Datasources

      public Datasources()
  • Method Details

    • getDatasourceOption

      public static <T> Optional<Option<T>> getDatasourceOption(Option<T> parentOption)
      Get datasource option containing named datasource mapped to parent DB options.

      We map DB options to named datasource options like:

      • db-url-host --> db-url-host-<datasource>
      • db-username --> db-username-<datasource>
      • db --> db-kind-<datasource>
    • getKeyForDatasource

      public static Optional<String> getKeyForDatasource(Option<?> option)
      Get mapped datasource key based on DB option
    • getKeyForDatasource

      public static Optional<String> getKeyForDatasource(String option)
      Get mapped datasource key based on DB option
    • getNamedKey

      public static Optional<String> getNamedKey(Option<?> option, String namedProperty)
      Returns datasource option based on DB option option with actual wildcard value. It replaces the <datasource> with actual value in namedProperty.

      f.e. Consider option=DatabaseOptions.DB_DRIVER, and namedProperty=my-store.

      Result: db-driver-my-store