У меня есть маршрут Camel, использующий план и Camel PropertiesComponent для настройки, я могу запустить его автономно через «mvn camel: run» или установить его в контейнер Karaf. Оба прекрасно работают и обнаруживают свойства и внедряют их в маршрут.
Чего я не могу понять, так это того, как сохранять свойства, когда они изменяются во время выполнения (например, я хочу установить маркер, когда маршрут останавливается/выключается, а затем считывать его обратно, когда маршрут начинается) .
Я читал об OSGi ConfigAdmin, но, похоже, он не поддерживает постоянные свойства. Я также читал о службе настроек OSGi (которая поддерживает сохраняемость) - но, как мне реализовать это, чтобы я мог запускать его автономно или в контейнере? который потребует ли маршрут Camel иметь ссылку на службу, таким образом, в зависимости от OSGi?
Есть ли способ абстрагировать службу предпочтений таким образом, чтобы она не зависела от службы контейнера?
заранее спасибо.