С OSGI, как передать параметры от хоста во встроенный пакет - PullRequest
2 голосов
/ 30 ноября 2009

В конце я, возможно, предоставлю помощника, чтобы активатор мог импортировать и экспортировать сервисы и другие типы метаданных о системе.

Под параметрами я подразумеваю объекты в целом, возможно, через карту. было бы здорово, если бы один пакет при установке другого имел механизм для отправки параметров в начальный пакет. Я полагаю, что я мог бы включить службу в более позднюю связку и использовать ее в качестве службы конфигурации, но это выглядит немного нелегко.

Ответы [ 2 ]

5 голосов
/ 05 декабря 2009

Если вы хотите «отправить» некоторые параметры конфигурации в начальный комплект, вы можете использовать стандартные службы OSGi, такие как Служба конфигурации Configuration . Если вы хотите передать произвольные объекты, вам, вероятно, следует использовать реестр служб OSGi.

Не могли бы вы уточнить ваш вопрос? Что вы подразумеваете под "хостом" и "встроенным" пакетом? Какой «помощник» вы хотите предоставить? Самое главное, какие параметры вы хотите передать из одного пакета в другой?

0 голосов
/ 08 декабря 2009

Чтобы выполнить (предварительную) настройку пакета во время выполнения, вы должны использовать Configuration Admin Service. Для pojos и т. Д. Вы можете следовать этому шаблону:

  • Bundle A устанавливает и запускает Bundle B
  • Пакет B регистрирует услугу «конфигурирования», например, с интерфейсом acme.ConfigureB .
  • Bundle A отслеживает сервисы с интерфейсом acme.ConfigureB .
  • Всякий раз, когда А получает обратный вызов трекера для acme.ConfigureB , он выполняет все необходимые конфигурации.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...