java.lang.Object
com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>
ru.vyarus.dropwizard.guice.debug.report.guice.util.visitor.GuiceScopingVisitor
All Implemented Interfaces:
com.google.inject.spi.BindingScopingVisitor<Class<? extends Annotation>>

public class GuiceScopingVisitor extends com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>
Guice binding scope analyzer. Does not support custom scopes. Works correctly only on bindings from injector (for module element only manually declared scopes are visible and not annotations).
  • Constructor Details

    • GuiceScopingVisitor

      public GuiceScopingVisitor()
  • Method Details

    • performDetection

      public Class<? extends Annotation> performDetection(com.google.inject.Binding binding)
      Method to call DIRECTLY on visitor instead of "normal" visitor appliance. Required for more accurate scope resolution.
      Parameters:
      binding - binding to analyze
      Returns:
      resolved scope (or proposed prototype scope when scope not detected)
    • visitEagerSingleton

      public Class<? extends Annotation> visitEagerSingleton()
      Specified by:
      visitEagerSingleton in interface com.google.inject.spi.BindingScopingVisitor<Class<? extends Annotation>>
      Overrides:
      visitEagerSingleton in class com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>
    • visitScope

      public Class<? extends Annotation> visitScope(com.google.inject.Scope scope)
      Specified by:
      visitScope in interface com.google.inject.spi.BindingScopingVisitor<Class<? extends Annotation>>
      Overrides:
      visitScope in class com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>
    • visitScopeAnnotation

      public Class<? extends Annotation> visitScopeAnnotation(Class scopeAnnotation)
      Specified by:
      visitScopeAnnotation in interface com.google.inject.spi.BindingScopingVisitor<Class<? extends Annotation>>
      Overrides:
      visitScopeAnnotation in class com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>
    • visitNoScoping

      public Class<? extends Annotation> visitNoScoping()
      Specified by:
      visitNoScoping in interface com.google.inject.spi.BindingScopingVisitor<Class<? extends Annotation>>
      Overrides:
      visitNoScoping in class com.google.inject.spi.DefaultBindingScopingVisitor<Class<? extends Annotation>>