CPS - Dynamic Configurations
Dynamic Configuration Properties
| Name | Description |
|---|---|
processingEntity |
1) The processing entity to which the instance of custom processing entity value belongs. 2) When the value "UNKNOWN" is assigned to the processing entity, the value is deemed global on IPF and applies to all processing entities. If another dynamic configuration with the same settingName exists with a specified processing entity, then the value applies to the specified processing entity while the global value applies to all other processing entities. |
settingCategory |
The Category of the settings as defined by the client implementations. This allows multiple settings to be grouped into a category and be queried together using the domain API. E.g. InitiationSettings, OrchestrationSettings, SEPASettings, CrossBorderSettings, FXSettings |
settingName |
Setting name assigned to an individual setting. Combined with a processingEntity from DPS Setting structure, represents a unique identifier for the setting. |
settingFormat |
Format of the value assigned to settingValue. This helps in ensuring the type safety of the values is maintained. This is particularly important when the custom processing setting is used for sourcing dynamic values into IPF studio variables. Possible values: BOOLEAN STRING NUMBER STRING_ARRAY NUMBER_ARRAY |
settingValue |
The value assigned to the custom processing setting. The value can be one of the types supported on IPF. This is a nested object of a type that depends on the settingFormat property. Has a value property that contains the actual setting value of the given type. Possible types: BooleanSettingValue StringSettingValue NumberSettingValue StringArraySettingValue NumberArraySettingValue |
- Note
-
DPSv2 also provides other attributes to the dynamic configurations out of the box. Refer Dynamic Processing Settings
DPS v2 Setting Type: SETTING_TYPE = "customprocessingsettings"
Searchable Fields
Searchable fields for Custom Processing Settings are:
-
status
-
processingEntity
-
settingName
-
settingCategory
Indexes
DPS v2 provides an option to configure indexes for each setting. Default indexes for Custom Processing Settings are:
ipf.dps.mongodb.index-config.customprocessingsettings {
index-1 = ["status:ASC"]
index-2 = ["processingEntity:ASC"]
index-3 = ["payload.settingName:ASC"]
index-4 = ["payload.settingCategory:ASC"]
}
This can be overridden or updated. Just note that when the field is under payload, you need to provide an index like: index-x = ["values.payload.fieldX:ASC"]. Field processingEntity is added in to the setting search so for better performance it is recommended that an index for processingEntity is created.
Clients that use Cosmos database need to add lastUpdatedAt as index for custom processing settings collection, as well as approvals collection. There is also a need to switch off automatic creation of indexes by setting the following property: ipf.mongodb.create-indexes = false.
|
Setting Examples
Boolean Setting Value
{
"settingName": "enableFeatureX",
"settingCategory": "FeatureFlagSettings",
"settingFormat": "BOOLEAN",
"settingValue": {
"value": true
}
}
String Setting Value
{
"settingName": "notificationEmail",
"settingCategory": "NotificationSettings",
"settingFormat": "STRING",
"settingValue": {
"value": "admin@example.com"
}
}
Number Setting Value
{
"settingName": "maxRetryAttempts",
"settingCategory": "RetrySettings",
"settingFormat": "NUMBER",
"settingValue": {
"value": 3
}
}