Class TypeListenerBinding

java.lang.Object
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
  • Method Details

    • 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