@Singleton public final class DefaultBeanLocator extends Object implements MutableBeanLocator
MutableBeanLocator
that locates qualified beans across a dynamic group of BindingPublisher
s.Constructor and Description |
---|
DefaultBeanLocator() |
Modifier and Type | Method and Description |
---|---|
boolean |
add(BindingPublisher publisher,
int rank)
Adds the given ranked
BindingPublisher and distributes its Binding s. |
void |
add(com.google.inject.Injector injector,
int rank)
Adds the given ranked
Injector and distributes its Binding s. |
void |
clear()
Removes all known
BindingPublisher s and their Binding s. |
Iterable<BeanEntry> |
locate(com.google.inject.Key key)
Finds bean implementations that match the given qualified binding
Key . |
Iterable<BindingPublisher> |
publishers()
Snapshot of currently registered
BindingPublisher s. |
boolean |
remove(BindingPublisher publisher)
Removes the given
BindingPublisher and its Binding s. |
void |
remove(com.google.inject.Injector injector)
Removes the given
Injector and its Binding s. |
void |
watch(com.google.inject.Key key,
Mediator mediator,
Object watcher)
Tracks bean implementations that match the given qualified binding
Key . |
public Iterable<BeanEntry> locate(com.google.inject.Key key)
BeanLocator
Key
.locate
in interface BeanLocator
key
- The qualified keypublic void watch(com.google.inject.Key key, Mediator mediator, Object watcher)
BeanLocator
Key
.
Uses the Mediator
pattern to send events to an arbitrary watcher object.
watch
in interface BeanLocator
key
- The qualified keymediator
- The event mediatorwatcher
- The bean watcherpublic boolean add(BindingPublisher publisher, int rank)
MutableBeanLocator
BindingPublisher
and distributes its Binding
s.add
in interface MutableBeanLocator
publisher
- The new publisherrank
- The assigned rank; should reflect BindingPublisher.maxBindingRank()
true
if the publisher was added; otherwise false
public boolean remove(BindingPublisher publisher)
MutableBeanLocator
BindingPublisher
and its Binding
s.remove
in interface MutableBeanLocator
publisher
- The old publishertrue
if the publisher was removed; otherwise false
public Iterable<BindingPublisher> publishers()
MutableBeanLocator
BindingPublisher
s.publishers
in interface MutableBeanLocator
BindingPublisher
spublic void clear()
MutableBeanLocator
BindingPublisher
s and their Binding
s.clear
in interface MutableBeanLocator
public void add(com.google.inject.Injector injector, int rank)
MutableBeanLocator
Injector
and distributes its Binding
s. Marked as deprecated because most
clients should not call this method; any injector with an instance binding to a BeanLocator
is
automatically added to that locator as part of the bootstrapping process.add
in interface MutableBeanLocator
injector
- The new injectorrank
- The assigned rank; should reflect the injector's RankingFunction.maxRank()
public void remove(com.google.inject.Injector injector)
MutableBeanLocator
Injector
and its Binding
s.remove
in interface MutableBeanLocator
injector
- The old injectorCopyright © 2014. All rights reserved.