All Classes and Interfaces
Class
Description
Bind a value or constant.
Guarantees that processing of Binding elements happens in a sane way.
Abstract injector grapher that builds the dependency graph but doesn't render it.
Parameters used to override default settings of the grapher.
Implements
and()
and or()
.A support class for
Module
s which reduces repetition and results in a more readable
configuration.Abstract base class for creating an injector from module elements.
Abstract implementation for all servlet module bindings
Alias between two nodes.
Creator of node aliases.
See the EDSL examples at
Binder
.See the EDSL examples at
Binder
.See the EDSL examples at
Binder
.Annotation utilities.
Checks for the presence of annotations.
Arrow symbols that are available from Graphviz.
Annotates an injected parameter or field whose value comes from an argument to a factory method.
Internal respresentation of a constructor annotated with
AssistedInject
When used in tandem with
FactoryModuleBuilder
, constructors annotated with
@AssistedInject
indicate that multiple constructors can be injected, each with different
parameters.A binding for a factory created by FactoryModuleBuilder.
A visitor for the AssistedInject extension.
Details about how a method in an assisted inject factory will be assisted.
Collects configuration information (primarily bindings) which will be used to create an
Injector
.A mapping from a key (type and optional annotation) to the strategy for getting instances of the
type.
Annotates annotations which are used for binding.
Bind a non-constant key.
Utility class for collecting factory bindings.
Edge that connects an interface to the type or instance that is bound to implement it.
Classification for what kind of binding this edge represents.
Handles
Binder.bind(com.google.inject.Key<T>)
and Binder.bindConstant()
elements.Visits each of the strategies used to scope an injection.
Visits each of the strategies used to find an instance to satisfy an injection.
Delegates to a custom factory which is also bound in the injector.
Utility methods for runtime code generation and class loading.
Loader for Guice-generated classes.
The required visibility of a user's class from a Guice-generated class.
Alternative to the Guice
Provider
that throws a checked Exception.A provider that invokes a method and returns its result.
Creates bindings to methods annotated with @
CheckedProvides
.A provider that returns a logger based on the method name.
Static utility methods for creating and working with instances of
CheckedProvider
.A checked provider with dependencies, so
HasDependencies
can be implemented when using
the SecondaryBinder#using
methods.Annotates methods of a
Module
to create a CheckedProvider
method binding that can throw exceptions.Utilities for the throwing provider module.
Class utilities.
Allows @
ProvidesIntoMap
to specify a class map key.Enum for the "compass point" values used to control where edge end points appear on the graph.
Thrown when a programming error such as a misplaced annotation, illegal binding, or unsupported
scope is found.
Binds to a constant value.
Bind a constant.
Context of a dependency construction.
Proxies calls to a
Constructor
for a class T
.Creates
ConstructionProxy
instances.A binding to the constructor of a concrete clss.
Creates instances using an injectable constructor.
Constructor injectors by type.
A wrapper for requests that makes requests immutable, taking a snapshot of the original request.
A binding created from converting a bound instance to a new type.
Thrown when errors occur while creating a
Injector
.Something that is notified upon creation.
Simplified version of
Lock
that is special due to how it handles deadlocks detection.Wraps locks so they would never cause a deadlock.
The implementation for
CycleDetectingLock
.Utility class for retrieving declared fields or methods in a particular order, because the JVM
doesn't guarantee ordering for listing declared methods.
No-op visitor for subclassing.
No-op visitor for subclassing.
Produces construction proxies that invoke the class constructor.
Default edge creator.
BindingTargetVisitor
that adds edges to the graph based on the visited Binding
.No-op visitor for subclassing.
This default pipeline simply dispatches to web.xml's servlet pipeline.
Default node creator.
BindingTargetVisitor
that adds nodes to the graph based on the visited Binding
.Root key set creator that starts with all types that are not Guice internal types or the
Logger
type.Returns providers and members injectors that haven't yet been initialized.
Something that needs some delayed initialization, typically a binding or internal factory that
needs to be created & put into the bindings map & then initialized later.
A variable that can be resolved by an injector.
Deprecated.
Edge from a class or
InjectionPoint
to the interface node that will satisfy the
dependency.A request to disable circular proxies.
Edge in a guice dependency graph.
Creator of graph edges to render.
Styles for edges.
An internal binding annotation applied to each element in a multibinding.
A core component of a module or injector.
Exposes elements of a module so they can be inspected, validated or
rewritten
.Contains information about where and how an
element
was bound.Visit elements.
Handles errors in the Injector.
A collection of error messages.
Indicates that a result could not be returned while preparing or resolving a binding.
Acccompanies a @
Provides
method annotation in a
private module to indicate that the provided binding is exposed.A binding to a key exposed from an enclosed private environment.
This factory exists in a parent injector.
For private binder's expose() method.
Provides a factory that combines the caller's arguments with injector-supplied values to
construct objects.
Deprecated.
use
FactoryModuleBuilder
instead.The newer implementation of factory provider.
All the data necessary to perform an assisted inject.
A placeholder which enables us to swap in the real factory once the injector is created.
Lazily creates (and caches) values for keys.
A Filter chain impl which basically passes itself to the "current" filter and iterates the chain
on
doFilter()
.An internal representation of a filter definition against a particular URI pattern.
An internal dispatcher for guice-servlet registered servlets and filters.
Builds the guice module that binds configured filters, with their wrapper FilterDefinitions.
Annotation for types used by the graphviz grapher.
Data object to encapsulate the attributes of Graphviz edges that we're interested in drawing.
InjectorGrapher
implementation that writes out a Graphviz DOT
file of the graph.Module that provides classes needed by
GraphvizGrapher
.Data object to encapsulate the attributes of Graphviz nodes that we're interested in drawing.
The entry point to the Guice framework.
Apply this filter in web.xml above all other filters (typically), to all requests where you plan
to use servlet scopes.
As of Guice 2.0 you can still use (your subclasses of)
GuiceServletContextListener
class
as a logical place to create and configure your injector.Node for types that have
Dependency
s and are bound to InterfaceNode
s.A pointer to the default implementation of a type.
Visits bindings to return a
IndexedBinding
that can be used to emulate the binding
deduplication that Guice internally performs.Holds a reference that requires initialization to be performed before it can be used.
Manages and injects instances at injector-creation time.
Annotates members of your implementation class (constructors, methods and fields) into which the
Injector
should inject values.Listens for injections into instances of type
I
.A constructor, field or method that can receive injections.
Node in the doubly-linked list of injectable members (fields and methods).
Linked list of injectable members.
Keeps track of injectable methods so we can remove methods that get overridden in O(1) time.
Position in type hierarchy.
A method signature.
A request to inject the instance fields and methods of an instance.
Handles
Binder.requestInjection
and Binder.requestStaticInjection
commands.Builds the graphs of objects that make up your application.
Guice injector grapher.
Default
Injector
implementation.Options that control how the injector behaves.
some limitations on what just in time bindings are allowed.
Invokes a method.
A framework-created JIT Provider binding.
A processor to gather injector options.
A partially-initialized injector.
A binding to a single instance.
A binding to a single instance of a filter.
Default implementation of InstanceFilterBinding.
Node for instances.
A binding to a single instance of a servlet.
Default implementation of InstanceServletBinding.
Node for an interface type that has been bound to an implementation class or instance.
Internal context.
Creates objects which will be injected.
Adapts
ProviderInstanceBinding
providers, ensuring circular proxies fail (or proxy)
properly.Contains flags for Guice.
The options for Guice custom class loading.
The options for Guice stack trace collection.
Builds a tree of injectors.
Injector
exposed to users in Stage.TOOL
.A
ProviderInstanceBindingImpl
for implementing 'native' guice extensions.An base factory implementation that can be extended to provide a specialized implementation of
a
ProviderWithExtensionVisitor
and also implements InternalFactory
A base factory implementation.
A checked exception for provisioning errors.
This is a left-factoring of all ServletModules installed in the system.
Special Provider that tries to obtain an injected servlet context, specific to the current
injector, failing which, it falls back to the static singleton instance that is available in
the legacy Guice Servlet.
Integrates Guice with JNDI.
Binding key consisting of an injection type and an optional annotation.
See the EDSL examples at
Binder
.A linked binding to a filter.
Default implementation of LinkedFilterBinding.
A binding to a linked key.
A linked binding to a servlet.
Default implementation of LinkedServletBinding.
Handles
Binder#bindListener
commands.Handles
Binder.getProvider
and Binder.getMembersInjector(TypeLiteral)
commands.Accessors for providers and members injectors.
JMX interface to bindings.
Central routing/dispatch class handles lifecycle of managed filters, and delegates to the servlet
pipeline.
A wrapping dispatcher for servlets, in much the same way as
ManagedFilterPipeline
is for
filters.Provides a JMX interface to Guice.
An API to bind multiple map entries separately, only to later inject them as a complete map.
A binding for a MapBinder.
Allows users define customized key type annotations for map bindings by annotating an annotation
of a
Map
's key type.Returns
true
or false
for a given input.Matcher implementations.
Injects dependencies into the fields and methods on instances of type
T
.Injects members of instances of a given type.
A lookup of the members injector for a type.
Members injectors by type.
An error message and the context in which it occured.
Handles
Binder.addError
commands.Utility methods for
Message
objectsA module contributes configuration information, typically interface bindings, which will be used
to create an
Injector
.Allows extensions to scan modules for annotated methods and bind those methods as providers,
similar to
@Provides
methods.Represents a call to
Binder.scanModulesForAnnotatedMethods(com.google.inject.spi.ModuleAnnotatedMethodScanner)
in a module.Handles
Binder.scanModulesForAnnotatedMethods
commands.Static utility methods for creating and working with instances of
Module
.See the EDSL example at
override()
.Associated to a
module
, provides the module class name, the parent module source
, and the call stack that ends just before the module configure(Binder)
method invocation.Static methods for working with types that we aren't publishing in the public
Types
API.A type formed from other types, such as arrays, parameterized types or wildcard types
The WildcardType interface supports multiple upper bounds and multiple lower bounds.
An API to bind multiple values separately, only to later inject them as a complete collection.
A binding for a Multibinder.
Deprecated.
This functionality is installed by default.
A visitor for the multibinder extension.
Annotates named things.
Utility methods for use with
@
Named
.Node in a guice dependency graph.
Creator of graph nodes.
ID of a node in the graph.
Type of node.
Enum for the shapes that are most interesting for Guice graphing.
Styles for nodes.
Whether a member supports null values injected.
An API to bind optional values, optionally with a default value.
A binding for a OptionalBinder.
Thrown from
Provider.get()
when an attempt is made to access a scoped object while the
scope in question is not currently active.Models a method or constructor parameter.
A list of
TypeLiteral
s to match an injectable Constructor's assited parameter types to
the corresponding factory method.Interface for a service that returns Graphviz port IDs, used for naming the rows in
ImplementationNode
-displaying GraphvizNode
s.Implementation of
PortIdFactory
.Returns a binder whose configuration information is hidden from its environment by default.
Handles
Binder.newPrivateBinder()
elements.A private collection of elements that are hidden from the enclosing injector or module by
default.
A module whose configuration information is hidden from its environment by default.
Keeps track of creation listeners & uninitialized bindings, so they can be processed after
bindings are recorded.
A pointer to the default provider type for a type.
An
InternalFactory
for @ProvidedBy
bindings.An object capable of providing instances of type
T
.Alias creator that creates an alias for each
ProviderBinding
.A binding to a
Provider
that delegates to the binding for the provided type.Helper methods to verify the correctness of CheckedProvider interfaces.
A binding to a provider instance.
Base class for InternalFactories that are used by Providers, to handle circular dependencies.
A binding to a provider key.
A lookup of the provider for a type.
A provider that invokes a method and returns its result.
A
ProviderMethod
implementation that invokes the method using normal java reflection.Creates bindings to methods annotated with @
Provides
.Static utility methods for creating and working with instances of
Provider
.A provider with dependencies on other injected types.
A Provider that is part of an extension which supports a custom BindingTargetVisitor.
Annotates methods of a
Module
to create a provider method binding.Annotates methods of a
Module
to add items to a Multibinder
.Annotates methods of a
Module
to add items to a Multibinder
.An @
Provides
binding or binding produced by a ModuleAnnotatedMethodScanner
.A
ModuleAnnotatedMethodScanner
that handles the , ProvidesIntoSet
,
ProvidesIntoMap
and ProvidesIntoOptional
annotations.A visitor for the @
Provides
bindings.Indicates that there was a runtime failure while providing an instance.
Listens for provisioning of objects.
Encapsulates a single act of provisioning.
Binds keys (picked using a Matcher) to a provision listener.
ProvisionListenerStackCallback
for each key.A struct that holds key & binding but uses just key for equality/hashcode.
Intercepts provisions with a stack of listeners.
An implementation of Element.
The actual mapbinder plays several roles:
The BindingSelection contains some of the core state and logic for the MapBinder.
Binds
Map<K, Set<V>>
and {Map<K, Set<Provider<V>>>
.A simple class to hold a key and the associated bindings as an array.
A factory for a
Map.Entry<K, Provider<V>>
.A base class for ProviderWithDependencies that need equality based on a specific object.
A base class for ProviderWithDependencies that need equality based on a specific object.
The actual multibinder plays several roles:
We install the permit duplicates configuration as its own binding, all by itself.
The actual OptionalBinder plays several roles.
A helper object that implements the core logic for deciding what the implementation of the
binding will be.
Provides the binding for java.util.Optional.
Provides the binding for java.util.Optional<Provider>.
Provides the binding for T, conditionally installed by calling setBinding/setDefault.
A base class for ProviderWithDependencies that need equality based on a specific object.
Provides the binding for Optional.
Provides the binding for Optional<Provider>.
Apply this to field or parameters of type
Map<String, String[]>
when you want the HTTP
request parameter map to be injected.Apply this to implementation classes when you want one instance per request.
Object that can be used to apply a request scope to a block of code.
Closeable subclass that does not throw any exceptions from close.
A request to require explicit @
Inject
annotations on constructors.A request to require exact binding annotations.
A request to require explicit bindings.
Creator of the default starting set of keys to graph.
A scope is a level of visibility that instances provided by Guice may have.
Annotates annotations which are used for scoping.
Registration of a scope annotation with the scope that implements it.
Handles
Binder.bindScope
commands.See the EDSL examples at
Binder
.Built-in scope implementations.
References a scope, either directly (as a scope instance), or indirectly (as a scope annotation).
Exception thrown when there was a failure entering request scope.
Annotates a
GuiceFilter
that provides scope functionality, but doesn't dispatch to ServletModule
bound servlets or filters.An internal representation of a servlet definition mapped to a particular URI pattern.
Configures the servlet scopes and creates bindings for the servlet API objects so you can inject
the request, response, session, etc.
See the EDSL examples at
ServletModule.configureServlets()
See the EDSL examples at
ServletModule.configureServlets()
A binding created by
ServletModule
.A visitor for the servlet extension.
Servlet scopes.
A sentinel attribute value representing null.
Builds the guice module that binds configured servlets, with their wrapper ServletDefinitions.
Some servlet utility methods.
Accumulates byte sequences while decoding strings, and encodes them into a StringBuilder.
Apply this to implementation classes when you want one instance per session.
Reasonable implementation for
NameFactory
.Sets an injectable field.
Injects a field or method of a given object.
Invokes an injectable method.
Resolves a single parameter, to be used in a constructor or method invocation.
Apply this to implementation classes when you want only one instance (per
Injector
) to be
reused for all injections for that binding.One instance per
Injector
.Provides access to the calling line of code.
Creates stack trace elements for members.
In-Memory version of
StackTraceElement
that does not store the file name.The stage we're running in.
The inheritable data within an injector.
A request to inject the static fields and methods of a type.
Enables simple performance monitoring.
Allows @
ProvidesIntoMap
to specify a string map key.A version of @
Inject
designed for ThrowingProviders.Deprecated.
use
CheckedProvider
instead.Builds a binding for a
CheckedProvider
.Represents the returned value from a call to
CheckedProvider.get()
.RuntimeException class to wrap exceptions from the checked provider.
Instructs an
Injector
running in Stage.TOOL
that a method should be injected.Converts constant string values to a different type.
Registration of type converters for matching target types.
Handles
Binder.convertToTypes
commands.Context of an injectable type encounter.
Listens for Guice to encounter injectable types.
Binds types (picked using a Matcher) to an type listener.
Represents a generic type
T
.Static methods for working with types.
An untargetted binding.
Processes just UntargettedBindings.
A general interface for matching a URI against a URI pattern.
An enumeration of the available URI-pattern matching styles
Matches URIs using a regular expression.
Matches URIs using the pattern grammar of the Servlet API and web.xml.
Minimal set that doesn't hold strong references to the contained keys.
ProvisionListener.ProvisionInvocation.getDependencyChain()
which is also deprecated.