Class TypeListenerBinding

All Implemented Interfaces:

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);
  • 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
      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
      binder - to apply configuration element to