public class InjectorImpl extends Object implements Injector
Constructor and Description |
---|
InjectorImpl(Configuration c) |
Modifier and Type | Method and Description |
---|---|
<T> void |
bindAspect(Aspect a)
Binds a TANG Aspect to this injector.
|
<T> void |
bindVolatileInstance(Class<T> c,
T o)
Binds the given object to the class.
|
<T> void |
bindVolatileParameter(Class<? extends Name<T>> c,
T o) |
Injector |
forkInjector() |
Injector |
forkInjector(Configuration... configurations)
Create a copy of this Injector that inherits the instances that were already
created by this Injector, but reflects additional Configuration objects.
|
Aspect |
getAspect()
Allows InjectionFuture to tell the aspect when get() is invoked.
|
<T> InjectionPlan<T> |
getInjectionPlan(Class<T> name) |
InjectionPlan<?> |
getInjectionPlan(Node n)
Return an injection plan for the given class / parameter name.
|
InjectionPlan<?> |
getInjectionPlan(String name) |
<U> U |
getInstance(Class<U> clazz)
Gets an instance of iface, or the implementation that has been bound to it.
|
<U> U |
getInstance(String clazz) |
<T> T |
getNamedInstance(Class<? extends Name<T>> clazz)
Gets the value stored for the given named parameter.
|
<T> T |
getNamedParameter(Class<? extends Name<T>> clazz) |
boolean |
isInjectable(Class<?> clazz) |
boolean |
isInjectable(String name)
Returns true if this Injector is able to instantiate the object named by
name.
|
boolean |
isParameterSet(Class<? extends Name<?>> name) |
boolean |
isParameterSet(String name) |
public InjectorImpl(Configuration c) throws BindException
BindException
public InjectionPlan<?> getInjectionPlan(Node n)
n
- The name of an injectable class or interface, or a NamedParameter.NameResolutionException
public InjectionPlan<?> getInjectionPlan(String name) throws NameResolutionException
getInjectionPlan
in interface Injector
NameResolutionException
public <T> InjectionPlan<T> getInjectionPlan(Class<T> name)
getInjectionPlan
in interface Injector
public boolean isInjectable(String name) throws NameResolutionException
Injector
isInjectable
in interface Injector
NameResolutionException
public boolean isInjectable(Class<?> clazz)
isInjectable
in interface Injector
public boolean isParameterSet(String name) throws NameResolutionException
isParameterSet
in interface Injector
NameResolutionException
public boolean isParameterSet(Class<? extends Name<?>> name) throws BindException
isParameterSet
in interface Injector
BindException
public <U> U getInstance(Class<U> clazz) throws InjectionException
Injector
getInstance
in interface Injector
InjectionException
public <U> U getInstance(String clazz) throws InjectionException, NameResolutionException
getInstance
in interface Injector
InjectionException
NameResolutionException
public <T> T getNamedInstance(Class<? extends Name<T>> clazz) throws InjectionException
Injector
getNamedInstance
in interface Injector
InjectionException
public <T> T getNamedParameter(Class<? extends Name<T>> clazz) throws InjectionException
InjectionException
public <T> void bindVolatileInstance(Class<T> c, T o) throws BindException
Injector
bindVolatileInstance
in interface Injector
BindException
public <T> void bindVolatileParameter(Class<? extends Name<T>> c, T o) throws BindException
bindVolatileParameter
in interface Injector
BindException
public Injector forkInjector()
forkInjector
in interface Injector
public Injector forkInjector(Configuration... configurations) throws BindException
Injector
forkInjector
in interface Injector
BindException
- If any of the configurations conflict with each other, or the
existing Injector's Configuration.public <T> void bindAspect(Aspect a) throws BindException
Injector
bindAspect
in interface Injector
BindException
Copyright © 2015 The Apache Software Foundation. All rights reserved.