public final class

DefaultBeanLocator

extends Object
implements MutableBeanLocator
java.lang.Object
   ↳ org.eclipse.sisu.inject.DefaultBeanLocator

Class Overview

Default MutableBeanLocator that locates qualified beans across a dynamic group of BindingPublishers.

Summary

Public Constructors
DefaultBeanLocator()
Public Methods
void add(Injector injector, int rank)
Adds the given ranked Injector and distributes its Bindings.
synchronized boolean add(BindingPublisher publisher)
Adds the given ranked BindingPublisher and distributes its Bindings.
synchronized void clear()
Removes all known BindingPublishers and their Bindings.
Iterable<BeanEntry> locate(Key key)
Iterable<BindingPublisher> publishers()
Snapshot of currently registered BindingPublishers.
synchronized boolean remove(BindingPublisher publisher)
Removes the given BindingPublisher and its Bindings.
void remove(Injector injector)
Removes the given Injector and its Bindings.
synchronized void watch(Key key, Mediator mediator, Object watcher)
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.eclipse.sisu.inject.BeanLocator
From interface org.eclipse.sisu.inject.MutableBeanLocator

Public Constructors

public DefaultBeanLocator ()

Public Methods

public void add (Injector injector, int rank)

Adds the given ranked Injector and distributes its Bindings. 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.

Parameters
injector The new injector
rank The assigned rank; should reflect the injector's maxRank()

public synchronized boolean add (BindingPublisher publisher)

Adds the given ranked BindingPublisher and distributes its Bindings.

Parameters
publisher The new publisher
Returns
  • true if the publisher was added; otherwise false

public synchronized void clear ()

Removes all known BindingPublishers and their Bindings.

public Iterable<BeanEntry> locate (Key key)

public Iterable<BindingPublisher> publishers ()

Snapshot of currently registered BindingPublishers.

Returns

public synchronized boolean remove (BindingPublisher publisher)

Removes the given BindingPublisher and its Bindings.

Parameters
publisher The old publisher
Returns
  • true if the publisher was removed; otherwise false

public void remove (Injector injector)

Removes the given Injector and its Bindings.

Parameters
injector The old injector

public synchronized void watch (Key key, Mediator mediator, Object watcher)