Компоненты
Компоненты используются для подключения маршрутов к внешним системам и сервисам.
Подробнее: Apache Camel Components
EcosRecordsSync camel component
EcosRecordsSyncComponent — компонент camel, созданный для перебора/обновления записей через RecordsAPI. Ключ для использования компонента в camel-контексте: ecos-records-sync
Компонент включает в себя как потребителя EcosRecordsSyncConsumer, так и производителя EcosRecordsSyncProducer по терминологии camel.
Ниже будут примеры регистрации компонента в yaml формате, например, при регистрации через Camel DSL.
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
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