Esta página no está disponible actualmente en Español. Si lo necesita, póngase en contacto con el servicio de asistencia de Icon (correo electrónico)

Example Refresh Scenarios

Below are some example refresh scenarios based on the static configurations.

In this example, below processing entities exist.

  1. BANK_ENTITY_1

  2. BANK_ENTITY_2

  3. UNKNOWN (Global)

The rules designer model has below variables that are declared "dynamic".

Model Variable

test-model1

limitCheckEnabled

test-model2

limitCheckEnabled

The static configurations on the dynamic config adapter are as below:

ipf.dynamic-config-adapter {
  # Dynamic Configuration Types supported by the dynamic config adapter
  dynamic-config-types: ["customProcessingSettings"]

  # the period at which the values are refreshed automatically
  value-refresh-period: 1m

  # list of setting categories to be retrieved upon refresh
  setting-categories: ["InitiationSettings", "FXSettings"]

  # Correlation Entries map dynamic configuration values to the variables used by external systems
  correlation-entries: [
    {
      # variable key
      # For IPF studio, variable keys are made of the model name and variable name
      destination-variable-key: "test-model1.limitCheckEnabled"
      # the type of the variable used on the registry; Currently supported types:
      # string
      # stringArray
      # number
      # numberArray
      # boolean
      variable-value-type: boolean
      # dynamic configs to be used to source values to be refreshed into the dynamic variables
      source-dynamic-config: {
        # the type of dynamic configuration
        config-type: "customProcessingSettings"
        # the name of dynamic configuration
        config-name: "limitCheckAllowed"
      }
    }
  ]
}

Below are representative dynamic expression registry values based on the values of the dynamic configurations. Please note that this scenario does not take into account another provider (e.g. Hocon provider). If the same variables are sourced from multiple providers, then precedence levels should be considered between the providers.

# Scenario CPS Values Action Expected Global Registry Entry Values Expected Entity Scoped Registry Entry Values

1

Service restart refreshes all latest values to dynamic configurations.

PE: UNKNOWN, limitCheckAllowed = true

PE: BANK_ENTITY_1, limitCheckAllowed = false

Service start up / restart

test-model1.limitCheckEnabled = true

BANK_ENTITY_1: test-model1.limitCheckEnabled = false

2

A new entry to CPS is reflected on registry based on the processing entity value

PE: UNKNOWN, limitCheckAllowed = true

PE: BANK_ENTITY_1, limitCheckAllowed = false

New CPS Value added

PE: BANK_ENTITY_2, limitCheckAllowed = false

test-model1.limitCheckEnabled = true

BANK_ENTITY_1: test-model1.limitCheckEnabled = false

BANK_ENTITY_2: test-model1.limitCheckEnabled = false

3

Changed values of dynamic configurations are reflected on dynamic expression registry

PE: UNKNOWN, limitCheckAllowed = true

PE: BANK_ENTITY_1, limitCheckAllowed = false

PE: BANK_ENTITY_2, limitCheckAllowed = false

CPS value updated

PE: UNKNOWN: test-model1.limitCheckEnabled = false

PE: BANK_ENTITY_1, limitCheckAllowed = true

PE: BANK_ENTITY_2, limitCheckAllowed = true

test-model1.limitCheckEnabled = false

BANK_ENTITY_1: test-model1.limitCheckEnabled = true

BANK_ENTITY_2: test-model1.limitCheckEnabled = true

4

Deletion of CPS values is reflected on dynamic expression registry

PE: UNKNOWN: test-model1.limitCheckEnabled = false

PE: BANK_ENTITY_1, limitCheckAllowed = true

PE: BANK_ENTITY_2, limitCheckAllowed = true

CPS value deleted

PE: UNKNOWN: test-model1.limitCheckEnabled = false

PE: BANK_ENTITY_2, limitCheckAllowed = true

 — 

BANK_ENTITY_1: test-model1.limitCheckEnabled = true

5

Addition of CPS value us reflected on dynamic expression registry

PE: BANK_ENTITY_1, limitCheckAllowed = true

CPS value added

PE: UNKNOWN: test-model1.limitCheckEnabled = false

test-model1.limitCheckEnabled = false

BANK_ENTITY_1: test-model1.limitCheckEnabled = true

6

Deletion of entity scoped CPS value is reflected on dynamic expression registry

UNKNOWN: test-model1.limitCheckEnabled = false

BANK_ENTITY_1: test-model1.limitCheckEnabled = true

CPS value deleted

BANK_ENTITY_1: test-model1.limitCheckEnabled = true

test-model1.limitCheckEnabled = false

 —