Верблюд в OSGi Container: применить InterceptStrategy ко всем контекстам верблюда

У меня есть несколько пакетов (A, B и C), развернутых в контейнере OSGi, каждый из которых содержитCamelContext и некоторые маршруты. У меня есть еще одна связка (M) сCamelContext с маршрутом (для сбора данных мониторинга) иInterceptStrategy боб. Я хотел быInterceptStrategy боб из M, чтобы автоматически применить ко всем остальнымCamelContexts в контейнере (т. е. в A, B и C), без необходимости изменения других пакетов.

В конечном счете, цель состоит в том, чтобы прослушать данные от каждогоCamelContext в маршрут в M, без необходимости вносить какие-либо изменения в A, B или C для явной маршрутизацииExchange, Этот подход или подобный подход выполним?

ВсеCamelContexts настроены с использованием Spring XML.

Обновить: Дополнительный контекст

Пакеты A, B и C содержат основной продукт, отвечающий за обработку данных. Пакет M содержит дополнительный инструмент мониторинга, предназначенный для измерения определенных параметров данных, проходящих через A, B и C. В настоящее время добавление дополнительного инструмента требует изменения маршрутов в A, B и C, чтобы добавить дополнительныеProcessors, чтобы обогатитьExchange с данными мониторинга и читать данные мониторинга до<to /> конечные точки.

Цель состоит в том, чтобы иметь возможность включить Bundle M в уже проверенную работающую систему с A, B и C; и автоматически применять его к существующим маршрутам, не изменяя конфигурацию существующих и работающих комплектов. Этоявляется допустимо вносить изменения в A, B и C, чтобы поддержать это, при условии, что изменения не заставляют A, B и C полагаться на работу M (т. е. ABC все еще должен работать без M).

Если есть лучший способ сделать это, чем использовать перехватчики, я открыт для этого. Основными целями являются:

Держите A, B и C отделенными от M (особенно во время разработки)Убедитесь, что интеграция M с A, B и C максимально простаРазрешить интеграцию M без необходимости вручную менять A, B или C

Ответы на вопрос(3)

Ваш ответ на вопрос