Repository List

Cadenza requires at least one repository database schema, see Configuring Repository Database Schemas.

For use cases in which Classic layers are still required, the XML repositories and the repository database schema must be defined in the the repositoryList.xml file.

The repositoryList.xml file is ignored if repository database schemas are configured in the databaserepository configuration.

Configuring a Repository List

The repositoryList.xml file must be stored in the Cadenza configuration directory, see Configuration Path.

repositoryList.xml
<?xml version="1.0" encoding="UTF-8"?>
<repositoryList>
  <mainRepository printName="Main">
    <systemUrl>$VAR{REPOSITORY_BASE_PATH}/repository_main</systemUrl>
    <publicUrl>$VAR{REPOSITORY_BASE_PATH}/repository_main</publicUrl>
  </mainRepository>
  <repository printName="Geodata">
    <systemUrl>$VAR{REPOSITORY_BASE_PATH}/repository_geodata</systemUrl>
    <publicUrl>$VAR{REPOSITORY_BASE_PATH}/repository_geodata</publicUrl>
  </repository>
  ...

  <databaseRepository name="repository1" printName="Repository 1">
    <driverName>oracle.jdbc.OracleDriver</driverName>
    <jdbcURL>jdbc:oracle:thin:@//example.oracle.server:1521/my_repositoryDB</jdbcURL>
    <user>USER</user>
    <password>the_disy_encoded_password</password>
    <connectionPoolSize>10</connectionPoolSize>
  </databaseRepository>
  ...
</repositoryList>

The following applies:

  • <mainRepository>, <repository>: If XML repositories are used, there must be exactly one <mainRepository>, optionally followed by a mix of <repository> and <databaseRepository> declarations. printName is the name of the XML repository as it should be displayed (in the audit log).

    For both <mainRepository> and <repository>, which define XML repositories, the content is:

    • <systemUrl>: Path to the repository directory

    • <publicUrl>: Path to the repository directory, duplicated for historic reasons

  • <databaseRepository>: This is the element that introduces a new repository database schema. At least one is required, but you can also have more.

    • name: Unique technical ID of the repository

    • printName: Name of the repository schema as it should be displayed on the user interface, e.g. when creating or importing new repositories in the Management Center.

  • <driverName>: Name of the JDBC driver used. Environment variables, system properties and Cadenza variables can be used.

  • <jdbcURL>: JDBC URL of the database. Environment variables, system properties and Cadenza variables can be used. The JDBC URL may be parameterized, for example with a schema.

  • <user>: Database user to use when connecting to the database. Environment variables, system properties and Cadenza variables can be used.

  • <password>: Password of the database user to use when connecting to the database. Environment variables, system properties and Cadenza variables can be used. As a secret, the password is usually expected to be encoded, see also Secrets in Configuration.

  • <connectionPoolSize> (optional): Number of concurrent connections to the database (default value is 10). Monitoring the available connections helps to find a good value for this parameter (see Database Connection Pools). Variables like $SYSTEM{CONNECTION_POOL_SIZE} can be used.

  • <properties> (optional): Database-specific connection parameters, for example for the secure database connection with Oracle Advanced Security (OAS). Environment variables, system properties and Cadenza variables can be used.

Changing the Configuration File Name

The default name of the configuration file is repositoryList.xml. If you want to use a different name, you must configure it. To do this, define the repositoryListFile setting in the core configuration, as shown in the following example:

myConfig.yaml
cadenzaconfig:
  ...
  settings:
    ...
    core:
      ...
      repositoryListFile:'myRepositoryList.xml'
As Enviroment Variable
cadenzaconfig_settings_core_repositoryListFile=myRepositoryList.xml
core-config.xml
<repositoryListFile>myRepositoryList.xml</repositoryListFile>