Author: hlship
Date: Thu Jul 21 21:52:59 2011
New Revision: 1149381
URL: http://svn.apache.org/viewvc?rev=1149381&view=rev
Log:
TAP5-1508: Convert MetaDataWorker from CCTW to CCTW2
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java?rev=1149381&r1=1149380&r2=1149381&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
Thu Jul 21 21:52:59 2011
@@ -1,4 +1,4 @@
-// Copyright 2010 The Apache Software Foundation
+// Copyright 2010, 2011 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,15 @@
package org.apache.tapestry5.internal.services.meta;
-import java.lang.annotation.Annotation;
-import java.util.Map;
-
import org.apache.tapestry5.model.MutableComponentModel;
+import org.apache.tapestry5.plastic.PlasticClass;
import org.apache.tapestry5.services.ClassTransformation;
import org.apache.tapestry5.services.meta.MetaDataExtractor;
import org.apache.tapestry5.services.meta.MetaWorker;
+import org.apache.tapestry5.services.transform.TransformationSupport;
+
+import java.lang.annotation.Annotation;
+import java.util.Map;
@SuppressWarnings("unchecked")
public class MetaWorkerImpl implements MetaWorker
@@ -32,11 +34,11 @@ public class MetaWorkerImpl implements M
this.configuration = configuration;
}
- public void transform(ClassTransformation transformation,
MutableComponentModel model)
+ public void transform(PlasticClass plasticClass, TransformationSupport
support, MutableComponentModel model)
{
for (Class c : configuration.keySet())
{
- Annotation annotation = transformation.getAnnotation(c);
+ Annotation annotation = plasticClass.getAnnotation(c);
if (annotation != null)
{
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java?rev=1149381&r1=1149380&r2=1149381&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
Thu Jul 21 21:52:59 2011
@@ -510,12 +510,16 @@ public final class TapestryModule
* <dt>SupportsInformalParameters</dt>
* <dd>Checks for the annotation</dd>
* <dt>RenderPhase</dt>
- * <dd>Link in render phaes methods</dd>
+ * <dd>Link in render phase methods</dd>
+ * <dt>Meta</dt>
+ * <dd>Checks for meta data annotations and adds it to the component
model</dd>
* </dl>
*/
@Contribute(ComponentClassTransformWorker2.class)
+ @Primary
public static void provideTransformWorkers(
OrderedConfiguration<ComponentClassTransformWorker2> configuration,
+ MetaWorker metaWorker,
ComponentClassResolver resolver)
{
configuration.add("Property", new PropertyWorker());
@@ -552,6 +556,8 @@ public final class TapestryModule
configuration.addInstance("Import", ImportWorker.class);
+ configuration.add("Meta", metaWorker);
+
// This one is always last. Any additional private fields that aren't
// annotated will
// be converted to clear out at the end of the request.
@@ -581,8 +587,6 @@ public final class TapestryModule
* annotation</dd>
* <dt>InjectBlock</dt>
* <dd>Allows a block from the template to be injected into a field</dd>
- * <dt>Meta</dt>
- * <dd>Checks for meta data annotations and adds it to the component
model</dd>
* <dt>ApplicationState</dt>
* <dd>Converts fields that reference application state objects
* <dt>Cached</dt>
@@ -598,16 +602,12 @@ public final class TapestryModule
* </dl>
*/
@Contribute(ComponentClassTransformWorker2.class)
- public static void provideOldStyleCassTransformWorkers(
- OrderedConfiguration<ComponentClassTransformWorker> configuration,
-
- MetaWorker metaWorker,
-
- ComponentClassResolver resolver)
+ @Primary
+ public static void provideOldStyleClassTransformWorkers(
+ OrderedConfiguration<ComponentClassTransformWorker> configuration)
{
configuration.addInstance("Cached", CachedWorker.class);
- configuration.add("Meta", metaWorker);
configuration.addInstance("Inject", InjectWorker.class);
configuration.addInstance("InjectService", InjectServiceWorker.class);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java?rev=1149381&r1=1149380&r2=1149381&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
Thu Jul 21 21:52:59 2011
@@ -15,18 +15,18 @@
package org.apache.tapestry5.services.meta;
import org.apache.tapestry5.ioc.annotations.UsesMappedConfiguration;
-import org.apache.tapestry5.services.ComponentClassTransformWorker;
+import org.apache.tapestry5.services.transform.ComponentClassTransformWorker2;
/**
* Service that makes it easy to identify a class annotation and use its
presence, or the value of an attribute,
* to set a meta-data key. The configuration map class annotation types to
corresponding extractors who will be invoked
* when the annotation is present. Most commonly, a {@link FixedExtractor} is
used to set a fixed value to a fixed key,
* triggered by the presence of the corresponding annotation.
- *
+ *
* @since 5.2.0
*/
@UsesMappedConfiguration(key = Class.class, value = MetaDataExtractor.class)
-public interface MetaWorker extends ComponentClassTransformWorker
+public interface MetaWorker extends ComponentClassTransformWorker2
{
}