# Configuration Properties Reference

Property Type Default Description
rosetta.transform.glyphs Glyph[] [] The list of glyphs available to the properties-based entity config source.
rosetta.transform.timeout Duration 1s The maximum amount of time allowed for a single glyph to execute a transformation before a timeout exception is thrown.
rosetta.profile.profiles Profile[] [ Default Profile ] The list of profiles available to the properties-based entity config source.
rosetta.provider.providers Provider[] [] The list of providers available to the properties-based entity config source.
rosetta.provider.global_timeout Duration 8s The maximum amount of time allowed for all providers to execute before a timeout exception is thrown.
rosetta.provider.timeout Duration 4s The maximum amount of time allowed for a single provider to execute before a timeout exception is thrown.
rosetta.provider.use_id_generator Boolean true Determines whether the configured id generator will be used to generate an id in the case that a result's id is not specified after the domain phase.
rosetta.view.views View[] [] The list of views available to the properties-based entity config source.
rosetta.entity_source.properties.enabled Boolean true Enables the properties-based entity config source, which loads entity config from Spring properties (e.g. from the application.yml file).
rosetta.entity_source.properties.priority Integer -2^31 The priority of the properties-based entity config source. The priority is used to deduplicate entities with the same name from difference sources, where the entity whose source has lower priority takes precedence.
rosetta.entity_source.timeout Duration 1m The global timeout for refreshing Rosetta entities. Applied on a per-entity-kind basis.
rosetta.entity_source.file.enabled Boolean false Enables the file-based entity config source, which recursively scans a number of configurable directories for JSON entity config files.
rosetta.entity_source.file.base_directory String config/entities The base directory for the file-based entity config source. Used as a common prefix for the subdirectories containing config for each kind of entity.
rosetta.entity_source.file.providers_directory String providers The path to the provider-specific base config directory relative to the common base directory.
rosetta.entity_source.file.glyphs_directory String glyphs The path to the glyph-specific base config directory relative to the common base directory.
rosetta.entity_source.file.profiles_directory String profiles The path to the profile-specific base config directory relative to the common base directory.
rosetta.entity_source.file.views_directory String views The path to the view-specific base config directory relative to the common base directory.
rosetta.entity_source.file.max_depth Integer 2^31 - 1 The maximum directory depth to which the file-based entity config source will scan from the specific entity base directory.
rosetta.entity_source.file.priority Integer 0 The priority of the file-based entity config source. The priority is used to deduplicate entities with the same name from difference sources, where the entity whose source has lower priority takes precedence.
rosetta.file_contents.cache String file_contents_cache The name of the cache to use for the file contents service.
rosetta.id_generator.type Enum (IdGeneratorType) DEFAULT The type of id generator to make available to the application context. See IdGeneratorType for description of allowed values.
rosetta.cache.enabled Boolean true Enables caching if true. Caching must be enabled for CacheManager and CacheService to be available in the application context.
rosetta.cache.service.enabled Boolean true Enables the cache service if true, which allows caches to be cleared, either periodically or by API request.
rosetta.cache.cache_ttl_millis Long 180000 (30 mins) The time period between automatic cache clear events in milliseconds.
rosetta.cache.clear_on_refresh Boolean true If true, all caches will be cleared whenever entities are refreshed (e.g. by using the POST /rosetta-admin/entities/refresh endpoint).
rosetta.cache.manager.enabled Boolean true Enables the default (Caffeine-based) cache manager if true, which will be used if no other cache manager can provide a cache for the given name.
rosetta.cache.manager.priority Integer 0 The priority of the default cache manager. The priority is used to determine the order that each cache manager attempts to retrieve a named cache where lower values are tried first.
rosetta.cache.manager.initial_capacity Integer null The minimum total size for the internal data structures. Providing a large enough estimate at construction time avoids the need for expensive resizing operations later, but setting this value unnecessarily high wastes memory.
rosetta.cache.manager.maximum_size Long 100 The maximum number of entries the cache may contain.
rosetta.cache.manager.expire_after_write Duration 5m Specifies that each entry should be automatically removed from the cache once a fixed duration has elapsed after the entry's creation, or the most recent replacement of its value.
rosetta.cache.manager.expire_after_access Duration null Specifies that each entry should be automatically removed from the cache once a fixed duration has elapsed after the entry's creation, the most recent replacement of its value, or its last access.

# Default Profile

name: default
profiles:
  policy: all
providers:
  policy: all
transforms:
  data:
    - glyphs:
        policy: all

# IdGeneratorType

Value Description
DEFAULT Generates a name UUID based on the startup time combined with an atomic counter. Ensures uniqueness across restarts.
SIMPLE Generates a UUID from an atomic counter starting at zero. Ids are likely to recur after a restart.