You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2011/04/10 03:54:59 UTC
svn commit: r1090734 - in /tapestry/tapestry5/trunk:
tapestry-core/src/main/java/org/apache/tapestry5/internal/services/
tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/
tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/
Author: hlship
Date: Sun Apr 10 01:54:59 2011
New Revision: 1090734
URL: http://svn.apache.org/viewvc?rev=1090734&view=rev
Log:
TAP5-853: Add a parameter to createProxy() to specify a class form which to draw class, method, and annotation parameters
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationMessageCatalogObjectProvider.java
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-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationMessageCatalogObjectProvider.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationMessageCatalogObjectProvider.java?rev=1090734&r1=1090733&r2=1090734&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationMessageCatalogObjectProvider.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationMessageCatalogObjectProvider.java Sun Apr 10 01:54:59 2011
@@ -89,7 +89,7 @@ public class ApplicationMessageCatalogOb
PlasticProxyFactory.class);
proxy = proxyFactory.createProxy(Messages.class, new ApplicationMessagesObjectCreator(),
- "<ApplicationMessagesProxy>");
+ null, "<ApplicationMessagesProxy>");
// Listen for invalidations; clear our cache of localized Messages bundles when
// and invalidation occurs.
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=1090734&r1=1090733&r2=1090734&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 Sun Apr 10 01:54:59 2011
@@ -41,7 +41,8 @@ public class PlasticProxyFactoryImpl imp
return manager.createProxyTransformation(interfaceType);
}
- public <T> T createProxy(final Class<T> interfaceType, final ObjectCreator<T> creator, final String description)
+ public <T> T createProxy(final Class<T> interfaceType, final ObjectCreator<T> creator,
+ final Class<? extends T> annotationSource, final String description)
{
assert creator != null;
assert InternalUtils.isNonBlank(description);
@@ -73,7 +74,8 @@ public class PlasticProxyFactoryImpl imp
plasticClass.addToString(description);
- // TODO: Copy annotations from delegate?
+ if (annotationSource != null)
+ plasticClass.copyAnnotations(annotationSource);
}
});
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=1090734&r1=1090733&r2=1090734&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 Sun Apr 10 01:54:59 2011
@@ -67,9 +67,12 @@ public interface PlasticProxyFactory
* interface class for proxy
* @param creator
* object responsible for creating the real object
+ * @param annotationSource
+ * if non-null, the class from which annotations should be copied
* @param description
* the <code>toString()</code> of the proxy
* @return proxy instance
*/
- <T> T createProxy(Class<T> interfaceType, ObjectCreator<T> creator, String description);
+ <T> T createProxy(Class<T> interfaceType, ObjectCreator<T> creator, Class<? extends T> annotationSource,
+ String description);
}