Are you sure you want to implement this yourself from scratch? There is already an implementation at Aries which you could simply reuse or help enhance. See http://aries.apache.org/modules/jndiproject.html
Christian 2016-03-31 6:10 GMT+02:00 Nipuni Piyabasi Perera <nipuni880...@gmail.com>: > Hi all, > > Thanks for the replies. (I received replies through the osgi-digest mail). > > Seems my second question is not much clear. Hence adding the same question > with more details below: > > 2. As per the specification, listBindings() and list() methods will return > NamingEnumeration objects. Do both "service" and "servicelist" paths need > to support aforementioned methods? > a. eg: context.list("osgi:service/<query>") is this a valid statement ? > b. eg: context.list("osgi:servicelist/<query>") is this a valid > statement ? > c. If this(above (b)) is a valid scenario, does the Context object > need to obtain first, before doing list() and listbinding() queries? > (Please find a sample code below) > > Context context = jndiContextManager.newInitialContext(); > Context listContext = > context.lookup("osgi:servicelist/org.my.jndi.osgi.services.FooService") > > - In a scenario as above, is it valid to pass two different names to > list() and lookup() methods (i.e > context.lookup("osgi:servicelist/SERVICE-A") and do a > context.list(osgi:servicelist/SERVICE-B)) ? > NamingEnumeration<NameClassPair> namingEnumeration = > listContext.list("osgi:service/org.my.jndi.osgi.services.FooService"); > > - In a scenario as above say we received a context object with lookup > method. > Context listContext = > context.lookup("osgi:servicelist/<service-name>"); > > We should be able to do lookup() calls with this received context > object. In such cases what should pass as the URL. > eg: is it "listContext.lookup("osgi:servicelist/<service-name>") or > listContext.lookup("<service-name>|<service-id>")" > > (I also have raised the queries in OSGi public Bugzilla) > > Thanks, > Nipuni > > On Wed, Mar 30, 2016 at 9:37 AM, Nipuni Piyabasi Perera < > nipuni880...@gmail.com> wrote: > >> Hi all, >> >> Appreciate any response on the above questions. >> >> Thanks, >> Nipuni >> >> On Thu, Mar 24, 2016 at 8:05 PM, Nipuni Piyabasi Perera < >> nipuni880...@gmail.com> wrote: >> >>> Hi all, >>> >>> I am trying to implement OSGI URL scheme support for JNDI following the >>> OSGI service specification[1]. While implementing the OSGI URL scheme I >>> encountered following issues. >>> As per the specification, Following are the confusions I have: >>> >>> 1. A lookup with osgi:service path will return a service while a >>> servicelist path returns an context object. Does a query >>> "osgi:servicelist/" is valid? Or is it mandatory to have a query followed >>> by the osgi:servicelist/ ? >>> 2. As per the specification, listBindings() and list() methods will >>> return NamingEnumeration objects. Do both "service" and "servicelist" >>> paths >>> need to support aforementioned methods? >>> 1. context.list("osgi:service/<qname>") is this a valid URL ? >>> 2. context.list(osgi:servicelist/<qname>) is this a valid URL ? >>> 1. If this is a valid scenario, does the Context object need >>> to obtain first before doing list() and listbinding() queries? >>> (Please find >>> a sample code below) >>> 2. >>> >>> Context context = jndiContextManager.newInitialContext(); >>> >>> Context listContext = >>> context.lookup("osgi:servicelist/org.my.jndi.osgi.services.FooService") >>> >>> NamingEnumeration<NameClassPair> namingEnumeration = >>> >>> >>> listContext.list("osgi:service/org.wso2.carbon.jndi.osgi.services.FooService"); >>> >>> 3. >>> >>> In a scenario as above, is it valid to pass two different names to >>> list() and lookup() methods (i.e >>> context.lookup("osgi:servicelist/SERVICE-A") and do a >>> context.list(osgi:servicelist/SERVICE-B)) ? >>> >>> 3. As per the specification we mainly support list(), >>> listbindings(), and lookup() methods. Can we consider the other methods >>> such as bind(), rebind() , unbind() , rename() as operations that are >>> not >>> supported with the provider? >>> >>> Appreciate any input on above queries. >>> >>> [1] https://osgi.org/download/r6/osgi.enterprise-6.0.0.pdf >>> <https://www.osgi.org/developer/downloads/release-6/release-6-download/> >>> >>> Thanks, >>> Nipuni >>> >>> -- >>> Nipuni Perera >>> Software Engineer; WSO2 Inc.; http://wso2.com >>> Email: nip...@wso2.com >>> Git hub profile: https://github.com/nipuni >>> Blog : http://nipunipererablog.blogspot.com/ >>> Mobile: +94 (71) 5626680 >>> >> >> >> >> -- >> Nipuni Perera >> Software Engineer; WSO2 Inc.; http://wso2.com >> Email: nip...@wso2.com >> Git hub profile: https://github.com/nipuni >> Blog : http://nipunipererablog.blogspot.com/ >> Mobile: +94 (71) 5626680 >> > > > > -- > Nipuni Perera > Software Engineer; WSO2 Inc.; http://wso2.com > Email: nip...@wso2.com > Git hub profile: https://github.com/nipuni > Blog : http://nipunipererablog.blogspot.com/ > Mobile: +94 (71) 5626680 > > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev > -- -- Christian Schneider http://www.liquid-reality.de <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.liquid-reality.de> Open Source Architect http://www.talend.com <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.talend.com>
_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev