|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.opensymphony.xwork2.ObjectFactory
public class ObjectFactory
ObjectFactory is responsible for building the core framework objects. Users may register their own implementation of the ObjectFactory to control instantiation of these Objects.
This default implementation uses thebuildBean
method to create all classes (interceptors, actions, results, etc).
Nested Class Summary | |
---|---|
(package private) static class |
ObjectFactory.ContinuationsClassLoader
|
Field Summary | |
---|---|
private ClassLoader |
ccl
|
private Container |
container
|
private static Logger |
LOG
|
protected ReflectionProvider |
reflectionProvider
|
Constructor Summary | |
---|---|
ObjectFactory()
|
|
ObjectFactory(ReflectionProvider prov)
|
Method Summary | |
---|---|
Object |
buildAction(String actionName,
String namespace,
ActionConfig config,
Map extraContext)
Build an instance of the action class to handle a particular request (eg. |
Object |
buildBean(Class clazz,
Map extraContext)
Build a generic Java object of the given type. |
Object |
buildBean(String className,
Map extraContext)
Build a generic Java object of the given type. |
Object |
buildBean(String className,
Map extraContext,
boolean injectInternal)
Build a generic Java object of the given type. |
Interceptor |
buildInterceptor(InterceptorConfig interceptorConfig,
Map interceptorRefParams)
Builds an Interceptor from the InterceptorConfig and the Map of parameters from the interceptor reference. |
Result |
buildResult(ResultConfig resultConfig,
Map extraContext)
Build a Result using the type in the ResultConfig and set the parameters in the ResultConfig. |
Validator |
buildValidator(String className,
Map params,
Map extraContext)
Build a Validator of the given type and set the parameters on it |
Class |
getClassInstance(String className)
Utility method to obtain the class matched to className. |
static ObjectFactory |
getObjectFactory()
Deprecated. Since 2.1 |
protected Object |
injectInternalBeans(Object obj)
|
boolean |
isNoArgConstructorRequired()
Allows for ObjectFactory implementations that support Actions without no-arg constructors. |
void |
setClassLoader(ClassLoader cl)
|
void |
setContainer(Container container)
|
void |
setReflectionProvider(ReflectionProvider prov)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final Logger LOG
private transient ClassLoader ccl
private Container container
protected ReflectionProvider reflectionProvider
Constructor Detail |
---|
public ObjectFactory()
public ObjectFactory(ReflectionProvider prov)
Method Detail |
---|
public void setClassLoader(ClassLoader cl)
public void setReflectionProvider(ReflectionProvider prov)
public void setContainer(Container container)
public static ObjectFactory getObjectFactory()
public boolean isNoArgConstructorRequired()
public Class getClassInstance(String className) throws ClassNotFoundException
className
- The fully qualified name of the class to return
ClassNotFoundException
public Object buildAction(String actionName, String namespace, ActionConfig config, Map extraContext) throws Exception
actionName
- the name the action configuration is set up with in the configurationnamespace
- the namespace the action is configured inconfig
- the action configuration found in the config for the actionName / namespaceextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
public Object buildBean(Class clazz, Map extraContext) throws Exception
clazz
- the type of Object to buildextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
protected Object injectInternalBeans(Object obj)
obj
- public Object buildBean(String className, Map extraContext) throws Exception
className
- the type of Object to buildextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
public Object buildBean(String className, Map extraContext, boolean injectInternal) throws Exception
className
- the type of Object to buildextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
public Interceptor buildInterceptor(InterceptorConfig interceptorConfig, Map interceptorRefParams) throws ConfigurationException
interceptorConfig
- the InterceptorConfig from the configurationinterceptorRefParams
- a Map of params provided in the Interceptor reference in the
Action mapping or InterceptorStack definition
ConfigurationException
public Result buildResult(ResultConfig resultConfig, Map extraContext) throws Exception
resultConfig
- the ResultConfig found for the action with the result code returnedextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
public Validator buildValidator(String className, Map params, Map extraContext) throws Exception
className
- the type of Validator to buildparams
- property name -> value Map to set onto the Validator instanceextraContext
- a Map of extra context which uses the same keys as the ActionContext
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |