Получение спецификации службы и фильтра службы ссылки OSGI

Допустим, у меня есть пакет OSGI, содержащий класс X. Допустим, этот класс содержит ссылку OSGI на конкретную службу. Что-то вроде этого:

ServiceReference[] references = context.getServiceReferences (serviceSpecification,someFilter);

Есть ли способ динамически определить спецификацию службы, к которой привязана ссылка? Есть ли способ также определить фильтр службы (второй параметр выше)?

Например, что-то вроде этого:

System.out.println(references[0].getServiceSpecification);
System.out.println(references[0].getServiceFilter);

Мне нужно узнать эти значения в коде вне пакета.

Проделанная работа:

Я использовал iPOJO, чтобы получить атрибут ссылки, создав экземпляр компонента iPOJO пакета, а затем получив описание его свойства, как показано ниже:

ComponentInstance  componentInstance = factory.createComponentInstance(configuration);
instanceDescription= (PrimitiveInstanceDescription) componentInstance.getInstanceDescription();
PropertyDescription[] propertyDescription = instanceDescription.getProperties();

Я могу получить имя ссылки, тип, значение, используя propertyDescription выше, но значение возвращается как объект, и я не могу получить то, что мне нужно. Кто-нибудь может помочь? Спасибо.


person Traveling Salesman    schedule 20.05.2014    source источник


Ответы (1)