在 iPOJO 元数据中动态"from"更改



我有一个与iPOJO有关的问题,例如:

  1. 我定义并部署了一个组件a,它提供了一个"HelloService"服务(接口)。组件A的一个名为"instance_A"的实例

  2. 我还在a中定义了一个需要"HelloService"服务的组件B。B的实现声明了一个依赖项:

    HelloService你好;

在metadata.xml中,我声明:

<ipojo>
     <component classname="B_class" name="B" immediate="true">
     <requires field=" hello" from="instance_A">
     </requires>
     </component>
     <instance component="B" name="call"/>
</ipojo>
  1. 现在,我想要实现一个组件C来动态控制元数据中的更改(from="instance_a")到另一个(例如from="stance_D")

我该如何做(组件C)来更改这个"from"?

提前感谢

请参阅我关于在iPOJO中更新动态目标提供程序以动态更改依赖项过滤器的回答。

然而,在您的情况下,拦截器似乎会给您更多的控制权:http://felix.apache.org/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/ipojo-advanced-topics/service-binding-interceptors.html

  1. 创建一个处理依赖关系的排名拦截器
  2. 当一个新的提供程序到达时,请按所需顺序对提供程序集进行排序。这将调整服务绑定

相关内容

  • 没有找到相关文章

最新更新