public class Scopes extends Object
Modifier and Type | Field and Description |
---|---|
static Scope |
NO_SCOPE
No scope; the same as not applying any scope at all.
|
static Scope |
SINGLETON
One instance per
Injector . |
Modifier and Type | Method and Description |
---|---|
static boolean |
isCircularProxy(Object object)
Returns true if the object is a proxy for a circular dependency,
constructed by Guice because it encountered a circular dependency.
|
static boolean |
isScoped(Binding<?> binding,
Scope scope,
Class<? extends Annotation> scopeAnnotation)
Returns true if
binding has the given scope. |
static boolean |
isSingleton(Binding<?> binding)
Returns true if
binding is singleton-scoped. |
public static final Scope SINGLETON
public static final Scope NO_SCOPE
This exists only in case a class has been annotated with a scope
annotation such as @Singleton
, and you need to override
this to "no scope" in your binding.
public static boolean isSingleton(Binding<?> binding)
binding
is singleton-scoped. If the binding is a linked key binding
and belongs to an injector (ie. it
was retrieved via Injector.getBinding()
), then this method will
also true if the target binding is singleton-scoped.public static boolean isScoped(Binding<?> binding, Scope scope, Class<? extends Annotation> scopeAnnotation)
binding
has the given scope. If the binding is a linked key binding
and belongs to an injector (ie. it
was retrieved via Injector.getBinding()
), then this method will
also true if the target binding has the given scope.binding
- binding to checkscope
- scope implementation instancescopeAnnotation
- scope annotation classpublic static boolean isCircularProxy(Object object)