蓝图Osgi - 服务创建/销毁监听器

时间:2015-01-26 14:22:18

标签: osgi blueprint-osgi eclipse-gemini

是否可以添加一个监听器来了解何时创建具有特定接口的Bean服务。当具有相同接口的bean被破坏时

最好的方法是什么?阅读注射服务清单

<reference-list
        id="javoraiConceptProcessList"
        interface="com.api.MyTask"
        availability="optional"
        ></reference-list>

知道列表值何时更改的方法是什么?

我正在使用Gemini Blueprint(Spring)

1 个答案:

答案 0 :(得分:1)

请参阅blueprint documentation at IBM

这是怎么做的(下面)。因此,您将在将要调用的bean上指定bind和unbind方法。

  public class ReferenceListener {
       public void bind(ServiceReference reference) {
           ...
       }
       public void bind(Serializable service) {
           ...
       }
       public void unbind(ServiceReference reference) {
           ...
       }       
   }

   <reference-list id=”serviceReferenceListTwo” interface=”java.io.Serializable”
              availability=”optional”>
      <reference-listener 
              bind-method=”bind” unbind-method=”unbind”>
          <bean class=“org.apache.geronimo.osgi.ReferenceListener”/>        
      </reference-listener>
   </reference-list>