public interface PlasticProxyFactory extends PlasticClassListenerHub
Modifier and Type | Method and Description |
---|---|
void |
clearCache()
Clears any cached information stored by the proxy factory; this is useful in Tapestry development mode
when a class loader may have been discarded (because the proxy factory may indirectly keep references
to classes loaded by the old class loader).
|
<T> T |
createProxy(Class<T> interfaceType,
Class<? extends T> implementationType,
ObjectCreator<T> creator,
String description)
Creates a proxy instance that delegates all methods through a corresponding
ObjectCreator.
|
<T> ClassInstantiator<T> |
createProxy(Class<T> interfaceType,
Class<? extends T> implementationType,
PlasticClassTransformer callback)
Same as
createProxy(interfacetype, implementationType, callback, true) |
<T> ClassInstantiator<T> |
createProxy(Class<T> interfaceType,
Class<? extends T> implementationType,
PlasticClassTransformer callback,
boolean introduceInterface)
Creates a proxy object that implements the indicated interface and indicated service implementation type,
then invokes the callback to further configure the proxy.
|
<T> T |
createProxy(Class<T> interfaceType,
ObjectCreator<T> creator,
String description)
Creates a proxy instance that delegates all methods through a corresponding
ObjectCreator.
|
<T> ClassInstantiator<T> |
createProxy(Class<T> interfaceType,
PlasticClassTransformer callback)
Creates a proxy object that implements the indicated interface, then invokes the callback to further
configure the proxy.
|
<T> PlasticClassTransformation<T> |
createProxyTransformation(Class<T> interfaceType)
Creates the underlying
PlasticClassTransformation for an interface proxy. |
<T> PlasticClassTransformation<T> |
createProxyTransformation(Class<T> interfaceType,
Class<? extends T> implementationType)
Creates the underlying
PlasticClassTransformation for an interface proxy with a given
implementation class. |
ClassLoader |
getClassLoader()
Returns the class loader used when creating new classes, this is a child class loader
of another class loader (usually, the thread's context class loader).
|
Location |
getConstructorLocation(Constructor constructor)
Return a string representation for the constructor (including class and parameters) and (if available) file name
and line number.
|
Location |
getMethodLocation(Method method)
Converts a method to a
Location , which includes information about the source file name and line number. |
addPlasticClassListener, removePlasticClassListener
ClassLoader getClassLoader()
<T> ClassInstantiator<T> createProxy(Class<T> interfaceType, PlasticClassTransformer callback)
interfaceType
- interface implemented by proxycallback
- configures the proxy@IncompatibleChange(release="5.4.5", details="TAP5-2528") <T> ClassInstantiator<T> createProxy(Class<T> interfaceType, Class<? extends T> implementationType, PlasticClassTransformer callback, boolean introduceInterface)
interfaceType
- interface implemented by proxyimplementationType
- a class that implements the interfaceType. It can be null.callback
- configures the proxy@IncompatibleChange(release="5.4", details="TAP5-2029") <T> ClassInstantiator<T> createProxy(Class<T> interfaceType, Class<? extends T> implementationType, PlasticClassTransformer callback)
createProxy(interfacetype, implementationType, callback, true)
interfaceType
- interface implemented by proxyimplementationType
- a class that implements the interfaceType. It can be null.callback
- configures the proxy<T> PlasticClassTransformation<T> createProxyTransformation(Class<T> interfaceType)
PlasticClassTransformation
for an interface proxy. This should only be
used in the cases where encapsulating the PlasticClass construction into a callback is not feasible (which is the case for some of the older APIs inside Tapestry IoC).interfaceType
- class proxy will extend from@IncompatibleChange(release="5.4", details="TAP5-2029") <T> PlasticClassTransformation<T> createProxyTransformation(Class<T> interfaceType, Class<? extends T> implementationType)
PlasticClassTransformation
for an interface proxy with a given
implementation class. This should only be
used in the cases where encapsulating the PlasticClass construction into a callback is not feasible (which is the case for some of the older APIs inside Tapestry IoC).interfaceType
- class proxy will extend fromimplementationType
- a class that implements the interfaceType. It can be null.<T> T createProxy(Class<T> interfaceType, ObjectCreator<T> creator, String description)
ObjectCreator.createObject()
(the
creator implementation may decide to
cache the return value as appropriate).T
- type of proxyinterfaceType
- interface class for proxycreator
- object responsible for creating the real objectdescription
- the toString()
of the proxy@IncompatibleChange(release="5.4", details="Added for TAP5-2029") <T> T createProxy(Class<T> interfaceType, Class<? extends T> implementationType, ObjectCreator<T> creator, String description)
ObjectCreator.createObject()
(the
creator implementation may decide to
cache the return value as appropriate).T
- type of proxyinterfaceType
- interface class for proxyimplementationType
- class that implements the interface type. It may be nullcreator
- object responsible for creating the real objectdescription
- the toString()
of the proxyLocation getMethodLocation(Method method)
Location
, which includes information about the source file name and line number.method
- to look upLocation getConstructorLocation(Constructor constructor)
void clearCache()
5.6.3 - Copyright © 2003-2021 The Apache Software Foundation.