All Classes and Interfaces
Class
Description
Base class used to create a new binding with the Guice EDSL described in
Binder
.Guarantees that processing of Binding elements happens in a sane way.
Support code for generating enhancer/fast-class glue.
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()
.AbstractModule is a helper class used to add bindings to the Guice injector.
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.
ClassDefiner
that defines classes using sun.misc.Unsafe#defineAnonymousClass
.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
to the strategy for getting instances of the type.Error reported by Guice when a key is bound at multiple places the injector.
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.
Contains abstractions for enforcing
RestrictedBindingSource
.Mapping between an element source and its permit annotations.
Builds the map from each module to all the permit annotations on its module stack.
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 circular proxies, faster reflection, and method interception.
Builder of enhanced classes.
Utility methods to generate common bytecode tasks.
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
methods.
HasDependencies
can be implemented when using
the
invalid reference
SecondaryBinder#using
Annotates methods of a
Module
to create a CheckedProvider
method binding that can throw exceptions.Utilities for the throwing provider module.
Error reported by Guice when a key is already bound in one or more child injectors or private
modules.
ClassDefiner
that defines classes using child ClassLoader
s.Custom class loader that grants access to defineClass
Entry-point for building enhanced classes and 'fast-class' invocation.
Defines dynamically generated classes.
Entry-point for defining dynamically generated classes.
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 continuously timing stopwatch that is used for simple performance monitoring.
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.
A
ConstructionProxy
that uses bytecode generation to invoke the constructor.Default edge creator.
invalid reference
BindingTargetVisitor
Binding
.No-op visitor for subclassing.
This default pipeline simply dispatches to web.xml's servlet pipeline.
Default node creator.
invalid reference
BindingTargetVisitor
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 invalid input: '&' put into the bindings map invalid input: '&' then initialized later.
A variable that can be resolved by an injector.
Edge from a class or
InjectionPoint
to the interface node that will satisfy the
dependency.A request to disable circular proxies.
Error reported by Guice when duplicate elements are found in a
that does not
permit duplicates.
invalid reference
Multibinder
Error reported by Guice when a duplicate key is found in a
that does not permit
duplicates.
invalid reference
MapBinder
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.
Generates enhanced classes.
Builder of enhancers that provide method interception via bytecode generation.
Details about a single Guice error and supports formatting itself in the context of other Guice
errors.
Helper for formatting Guice errors.
Handles errors in the Injector.
Enum used to identify a specific Guice error.
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.
The newer implementation of factory provider.
All the data necessary to perform an assisted inject.
Holder for the appropriate kind of method lookup to use.
A placeholder which enables us to swap in the real factory once the injector is created.
Lazily creates (and caches) values for keys.
Generates fast-classes.
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.
ClassDefiner
that defines classes using a generated access function.Generic error message representing a Guice internal error.
Thrown when errors occur defining enhancer/fast-class glue.
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.
Class used for restricting APIs in other packages to only be used by this package.
As of Guice 2.0 you can still use (your subclasses of)
GuiceServletContextListener
class
as a logical place to create and configure your injector.ClassDefiner
that defines classes using MethodHandles.Lookup#defineHiddenClass
.Immutable space-efficient trie that provides a quick lookup index for a sorted set of non empty
strings.
Immutable trie that delegates searches that lie outside its range to an overflow trie.
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.
A container that stores an injector's binding data.
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 container for most just-in-time (JIT) binding data corresponding to an Injector.
A processor to gather injector options.
InjectorShell is used by
InternalInjectorCreator
to recursively create a tree of
uninitialized Injector
s.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.
Registration of interceptors for matching methods of matching classes.
Handles
Binder.bindInterceptor
commands.Intercepts a method with a stack of interceptors.
Node for an interface type that has been bound to an implementation class or instance.
Internal context.
Represents an error created by Guice as opposed to custom error added to the binder from
application code.
Creates objects which will be injected.
Adapts
ProviderInstanceBinding
providers, ensuring circular proxies fail (or proxy)
properly.Contains flags for Guice.
Options for controlling whether Guice uses bytecode generation at runtime.
Options for enable or disable using ansi color in error messages.
The options for Guice custom class loading.
The options for Guice stack trace collection.
Options for handling nullable parameters used in provides methods.
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.
Guice uses Key objects to identify a dependency that can be resolved by the Guice
Injector
.Class to conditionally load support for Kotlin features.
Interface for accessing information about Kotlin code.
Looks up line numbers for classes and their members.
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.
An interface in a different package, so that AssistedInject's main package can't see it.
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
objectsTies a matcher to a method interceptor.
Accumulates methods with the same name and number of parameters.
Error reported when Guice can't find an useable constructor to create objects.
Error reported by Guice when a key is not bound in the injector.
Helper class to find hints for
MissingImplementationError
.A 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.Munges an error message to remove/shorten package names and adds a legend at the end.
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 invalid input: '&' 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 uses bytecode generation to invoke the provider
method.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 invalid input: '&' binding but uses just key for equality/hashcode.
Intercepts provisions with a stack of listeners.
Builds a construction proxy that can participate in AOP.
Constructs instances that participate in AOP.
An implementation of Element.
The actual mapbinder plays several roles:
The BindingSelection contains some of the core state and logic for the MapBinder.
Implementation of a provider instance for the map that also exposes details about the MapBinder
using the extension SPI, delegating to another provider instance for non-extension (e.g, the
actual provider instance info) data.
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:
Base implement of
InternalProviderInstanceBindingImpl.Factory
that works based on a
RealMultibinder.BindingSelection
, allowing provider instances for various bindings to be implemented
with less duplication.Implementation of BaseFactory that exposes details about the multibinder through the extension
SPI.
We install the permit duplicates configuration as its own binding, all by itself.
Implementation of BaseFactory that exposes a collection of providers of the values in the set.
Provider instance implementation that provides the actual set of values.
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.Optionalinvalid input: '<'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 Optionalinvalid input: '<'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.
Annotation restricting the binding of the target type to permitted sources.
Meta-annotation indicating that the target annotation is a permit for binding restricted
bindings.
Level of restriction.
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
.Error reported by Guice when a scope annotation is not bound to any scope implementation.
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
.Formatting a single source in Guice error message.
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.
A request to inject the static fields and methods of a type.
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
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.
ClassDefiner
that defines classes using sun.misc.Unsafe
.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.
FactoryModuleBuilder
instead.