Компоненты

Компоненты используются для подключения маршрутов к внешним системам и сервисам.

Подробнее: Apache Camel Components

EcosRecordsSync camel component

EcosRecordsSyncComponent — компонент camel, созданный для перебора/обновления записей через RecordsAPI. Ключ для использования компонента в camel-контексте: ecos-records-sync

Компонент включает в себя как потребителя EcosRecordsSyncConsumer, так и производителя EcosRecordsSyncProducer по терминологии camel.

Ниже будут примеры регистрации компонента в yaml формате, например, при регистрации через Camel DSL.

  1. EcosRecordsSyncConsumer. Расширяет стандартный ScheduledBatchPollingConsumer, реализует перебор записей по ECOS типу + sourceId. Возможные настройки для ecos-records-sync консьюмера:

Key

Value

syncId

уникальное значение в рамках инстанса приложения, на котором запускаются camel контексты. На основе этого значения создается стейт для периодического пуллинга из sourceId
см: journalId=ecos-sync-state

syncMode

DEFAULT | CREATE | UPDATE
DEFAULT, UPDATE — перебор записей по дате обновления
CREATE — перебор записей по дате создания

sourceId

sourceId типа

typeRef

ecos тип

batchSize

размер батча при пуллинге

Пример использования:

- route:
    from:
      uri: ecos-records-sync:testEcosRecordsSync
      parameters:
        delay: 15000
        sourceId: emodel/test-type-mig-from
        typeRef: emodel/type@test-type-mig-from
        batchSize: 5
      steps:
      - to: log:ers-test
  1. EcosRecordsSyncProducer. Расширяет DefaultProducer, реализует обновление записи через RecordsAPI. Данные для обновления берётся из тела сообщения (id из тела из проперти сообщения — CamelEcosRecordsSyncEntityRef). Возможные настройки для ecos-records-sync продюсера:

Key

Value

syncId

любое значение, скорее информационное

sourceId

sourceId типа

Пример использования:

- route:
    from:
      uri: .....
      steps:
      - to:
          uri: ecos-records-sync:test-type-mig-to
          parameters:
            sourceId: emodel/test-type-mig-to