Adding Custom Data Loading

The initial load of Atoti Limits data allows you to bulk load limits and incidents when the application first starts and connects to your Atoti Server instance. The loading process can be customized to fit your needs through configuration properties or by implementing your own custom service.

Initial load configuration properties

How to customize the initial load data location

By default, Atoti Limits will attempt to load the data from CSV files located in the directory specified by the limits.initial-load.root-dir property. When Atoti Limits starts and connects to your Atoti Server instance, it will look in the location specified by this property for a subdirectory with the name of your Atoti Server instance which is specified by the limits.autoconfiguration.server-name property.

info

The limits.autoconfiguration.server-name property is autoconfigured by default, but you can set it explicitly in the configuration for your Atoti Server if needed.

The default directory for Atoti Limits data is ./src/main/resources/data. If you need to change this location, set the limits.initial-load.root-dir property to the desired path in your application.yml file.

How to customize the initial load data file patterns

Within the directory specified by the limits.initial-load.root-dir property, Atoti Limits will look for files that match the patterns specified by the limits.initial-load.file-path-matchers.* properties. The default patterns are:

Property Name Default Value Description
limits.initial-load.file-path-matchers.limits glob:**/*limits_approve*.csv Pattern to match limit files
limits.initial-load.file-path-matchers.limit-structures glob:**/*limit_structures*.csv Pattern to match limit structure files
limits.initial-load.file-path-matchers.incidents glob:**/incident/**/*incident*.csv Pattern to match incident files
limits.initial-load.file-path-matchers.as-of-date glob:**/*as_of_date*.csv Pattern to match AsOfDate files

To customize these patterns, set these properties accordingly in your application.yml file. If you only wish to customize the pattern for some of the file types, you can set only those specific properties, and the others will use the default values.

How to customize the file loading service

If you need to customize the initial load process beyond what is possible with the configuration properties, you can implement your own file loading service by creating a custom ILimitsFileLoadingService implementation to replace the default DefaultLimitsFileLoadingService.

ILimitsFileLoadingService

Once you have created your custom implementation, expose it as a Spring bean in your project and Spring will use it instead of the default implementation.