java - OSGi - should I create service tracker for every bundle? -


i have 10 bundles (a,b,c..). , in bundle want create service tracker track services implement interface. these osgi services can in bundle (a,b,c..). thought should create 1 service tracker , start it. however, confuses me it's necessary pass reference bundlecontext constructor (of bundle???)

 public class myservicetracker extends servicetracker{  public myservicetracker(bundlecontext context){         super(context, someinterface.class.getname(), null);         open();     }   ....  } 

and in javadoc says (about constructor)

context - bundlecontext against tracking done.

the question - why should pass bundlecontext, bundlecontext should pass or should create instance of tracker every bundle (a,b,c..)?

each bundle uses service need own servicetracker. servicetracker use bundle's context find , bind services. not want use context of bundle track services bundle since many things not work such service hooks since services appear used 1 bundle context used servicetracker.

better yet, don't use servicetrackers @ all. use declarative services!


Comments

Popular posts from this blog

Java 3D LWJGL collision -

spring - SubProtocolWebSocketHandler - No handlers -

methods - python can't use function in submodule -