I think that we need at least one more to be able to find interface
registered in OSGI registry but using the filter. In this class, we need
Class and filter

lookupByTypeAndFilter(Class<T> type, String Filter)


On Fri, Nov 23, 2012 at 8:18 AM, Claus Ibsen <claus.ib...@gmail.com> wrote:

> On Thu, Nov 22, 2012 at 9:51 PM, Christian Müller
> <christian.muel...@gmail.com> wrote:
> > +1
> > I'm fine with this changes. I'm only wondering what is the intention for
> > "lookupByNameAndType"? Throwing an exception if the type is different? Or
> > returning null? Or ...?
> >
>
> I also suggest cutting down on the number of methods. Currently we have 3.
> If we can keep a sensible balance. IMHO adding +3 new methods may be
> overkill.
>
>
> > Best,
> > Christian
> >
> > On Tue, Nov 20, 2012 at 6:16 PM, Łukasz Dywicki <l...@code-house.org>
> wrote:
> >
> >> Dear all,
> >> During my work on camel-cdi component and cdi itself I realized that
> beans
> >> don't have to be named. They have qualifiers, which are more generic
> >> approach. To put some name on bean user must use @Named qualifier.
> >>
> >> This model doesn't fit very well to current camel registry SPI. For
> >> example if component developer is interested in returning all instances
> of
> >> given type he must name them. Next thing is Injector stuff, which allows
> >> usage of type to create instance. It's overlaps in some places same
> logic
> >> as most popular integration we have (Spring) uses ApplicationContext in
> >> both.
> >> I know that logically Registry and Injector are different ideas, however
> >> in 99.9% people use same Registry and Injector provider. Why we support
> >> that then?
> >>
> >> The proposal I bring here is following:
> >> interface Registry {
> >>     // named lookups
> >>     lookupByName(String name) : Object
> >>     lookupByNameAndType(String name, Class<T> type) : T
> >>
> >>     // typed lookups
> >>     lookupByType(Class<T> type) : T
> >>     lookupByType(Class<T> type, boolean createIfNotFound) : T
> >>
> >>     // find calls
> >>     findByTypeWithName(Class<T> type) : Map<String, T>
> >>     findByType(Class<T> type) : Set<T>
> >> }
> >>
> >> I reviewed usage of current lookupByType which returns map and in most
> >> places key from returned map is not used at all.
> >> WDYT?
> >> --
> >> Łukasz Dywicki
> >> l...@code-house.org
> >> Twitter: ldywicki
> >> Blog: http://dywicki.pl
> >> Code-House - http://code-house.org
> >
> >
> >
> >
> > --
>
>
>
> --
> Claus Ibsen
> -----------------
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Email: cib...@redhat.com
> Web: http://fusesource.com
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen
>



-- 
Charles Moulliard
Apache Committer / Sr. Enterprise Architect (RedHat)
Twitter : @cmoulliard | Blog : http://cmoulliard.blogspot.com

Reply via email to