You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2011/04/06 21:10:30 UTC
svn commit: r1089571 - in
/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc:
internal/services/PlasticProxyFactoryImpl.java
services/PlasticProxyFactory.java
Author: hlship
Date: Wed Apr 6 19:10:29 2011
New Revision: 1089571
URL: http://svn.apache.org/viewvc?rev=1089571&view=rev
Log:
TAP5-853: Extend createProxyTransformation() to the PlasticProxyFactory
Modified:
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PlasticProxyFactoryImpl.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/PlasticProxyFactory.java
Modified: tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PlasticProxyFactoryImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PlasticProxyFactoryImpl.java?rev=1089571&r1=1089570&r2=1089571&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PlasticProxyFactoryImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PlasticProxyFactoryImpl.java Wed Apr 6 19:10:29 2011
@@ -2,6 +2,7 @@ package org.apache.tapestry5.ioc.interna
import org.apache.tapestry5.ioc.services.PlasticProxyFactory;
import org.apache.tapestry5.plastic.ClassInstantiator;
+import org.apache.tapestry5.plastic.PlasticClassTransformation;
import org.apache.tapestry5.plastic.PlasticClassTransformer;
import org.apache.tapestry5.plastic.PlasticManager;
@@ -23,4 +24,10 @@ public class PlasticProxyFactoryImpl imp
{
return manager.createProxy(interfaceType, callback);
}
+
+ public PlasticClassTransformation createProxyTransformation(Class interfaceType)
+ {
+ return manager.createProxyTransformation(interfaceType);
+ }
+
}
Modified: tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/PlasticProxyFactory.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/PlasticProxyFactory.java?rev=1089571&r1=1089570&r2=1089571&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/PlasticProxyFactory.java (original)
+++ tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/PlasticProxyFactory.java Wed Apr 6 19:10:29 2011
@@ -15,6 +15,7 @@
package org.apache.tapestry5.ioc.services;
import org.apache.tapestry5.plastic.ClassInstantiator;
+import org.apache.tapestry5.plastic.PlasticClassTransformation;
import org.apache.tapestry5.plastic.PlasticClassTransformer;
/**
@@ -41,4 +42,15 @@ public interface PlasticProxyFactory
* @return instantiator that can be used to create an instance of the proxy class
*/
ClassInstantiator createProxy(Class interfaceType, PlasticClassTransformer callback);
+
+ /**
+ * Creates the underlying {@link PlasticClassTransformation} for an interface proxy. This should only be
+ * used in the cases where encapsulating the PlasticClass construction into a {@linkplain PlasticClassTransformer
+ * callback} is not feasible (which is the case for some of the older APIs inside Tapestry IoC).
+ *
+ * @param interfaceType
+ * class proxy will extend from
+ * @return transformation from which an instantiator may be created
+ */
+ PlasticClassTransformation createProxyTransformation(Class interfaceType);
}