org.elasticsearch.common.inject.spi
Class TypeListenerBinding

java.lang.Object
  extended by org.elasticsearch.common.inject.spi.TypeListenerBinding
All Implemented Interfaces:
Element

public final class TypeListenerBinding
extends Object
implements Element

Binds types (picked using a Matcher) to an type listener. Registrations are created explicitly in a module using Binder.bindListener(Matcher, TypeListener) statements:

     register(only(new TypeLiteral<PaymentService<CreditCard>>() {}), listener);

Since:
2.0
Author:
jessewilson@google.com (Jesse Wilson)

Method Summary
<T> T
acceptVisitor(ElementVisitor<T> visitor)
          Accepts an element visitor.
 void applyTo(Binder binder)
          Writes this module element to the given binder (optional operation).
 TypeListener getListener()
          Returns the registered listener.
 Object getSource()
          Returns an arbitrary object containing information about the "place" where this element was configured.
 Matcher<? super TypeLiteral<?>> getTypeMatcher()
          Returns the type matcher which chooses which types the listener should be notified of.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getListener

public TypeListener getListener()
Returns the registered listener.


getTypeMatcher

public Matcher<? super TypeLiteral<?>> getTypeMatcher()
Returns the type matcher which chooses which types the listener should be notified of.


getSource

public Object getSource()
Description copied from interface: Element
Returns an arbitrary object containing information about the "place" where this element was configured. Used by Guice in the production of descriptive error messages.

Tools might specially handle types they know about; StackTraceElement is a good example. Tools should simply call toString() on the source object if the type is unfamiliar.

Specified by:
getSource in interface Element

acceptVisitor

public <T> T acceptVisitor(ElementVisitor<T> visitor)
Description copied from interface: Element
Accepts an element visitor. Invokes the visitor method specific to this element's type.

Specified by:
acceptVisitor in interface Element
Parameters:
visitor - to call back on

applyTo

public void applyTo(Binder binder)
Description copied from interface: Element
Writes this module element to the given binder (optional operation).

Specified by:
applyTo in interface Element
Parameters:
binder - to apply configuration element to


Copyright © 2009-2012. All Rights Reserved.