Local CSV Source

This source is for loading data from CSV files stored locally.

The DLC ensures that only files within that source can be loaded.

Configuration Properties

Properties for a Local CSV Source are defined by name in the dlc.csv.local.sources namespace, and are picked up as configurations for the DLC.

Key Required Type Description
root-base-dir Y String Root base directory. Can include scope parameters.
Example #{SCOPE_PARAM}
source-properties CsvSourceProperties CSV Source Properties
topics-to-include Set<String> Topics to include.
topics-to-exclude Set<String> Topics to exclude.
accepts-topic-overrides Boolean Whether this source is allowed to accept Topic Overrides in the DLC Load Request.

YAML Example

dlc:
  csv:
    local:
      sources:
        localCsvSource:
          root-base-dir: data
        datedSource:
          root-base-dir: data/#{AS_OF_DATE}

Java Configuration

LocalCsvSourceDescription Spring Beans are picked up as configurations for the DLC.

Parameter Required Type Description
name Y String Name of the source.
rootBaseDir Y String Root base directory.
sourceConfiguration CsvSourceConfiguration CSV Source Configuration
topicsToInclude Set<String> Topics to include.
topicsToExclude Set<String> Topics to exclude.
acceptsTopicOverrides Boolean Whether this source is allowed to accept Topic Overrides in the DLC Load Request.

Java Example

@Bean
LocalCsvSourceDescription source() {
    return LocalCsvSourceDescription.builder("localCsvSource", "data")
            .build();
}

@Bean
LocalCsvSourceDescription datedSource() {
    return LocalCsvSourceDescription.builder("datedSource", "data/#{AS_OF_DATE}")
            .build();
}