Author: hlship
Date: Sun Jul 24 15:15:44 2011
New Revision: 1150397

URL: http://svn.apache.org/viewvc?rev=1150397&view=rev
Log:
TAP5-1508: Recode InjectServiceWorker to CCTW2

Modified:
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java?rev=1150397&r1=1150396&r2=1150397&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
 Sun Jul 24 15:15:44 2011
@@ -1,4 +1,4 @@
-// Copyright 2009, 2010 The Apache Software Foundation
+// Copyright 2009, 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.
@@ -18,16 +18,17 @@ import org.apache.tapestry5.internal.ser
 import org.apache.tapestry5.ioc.ObjectLocator;
 import org.apache.tapestry5.ioc.annotations.InjectService;
 import org.apache.tapestry5.model.MutableComponentModel;
-import org.apache.tapestry5.services.ClassTransformation;
-import org.apache.tapestry5.services.ComponentClassTransformWorker;
-import org.apache.tapestry5.services.TransformField;
+import org.apache.tapestry5.plastic.PlasticClass;
+import org.apache.tapestry5.plastic.PlasticField;
+import org.apache.tapestry5.services.transform.ComponentClassTransformWorker2;
+import org.apache.tapestry5.services.transform.TransformationSupport;
 
 /**
  * Processes the {@link org.apache.tapestry5.ioc.annotations.InjectService} 
annotation.
- * 
+ *
  * @since 5.1.0.0
  */
-public class InjectServiceWorker implements ComponentClassTransformWorker
+public class InjectServiceWorker implements ComponentClassTransformWorker2
 {
     private final ObjectLocator locator;
 
@@ -39,16 +40,15 @@ public class InjectServiceWorker impleme
         this.cache = cache;
     }
 
-    @SuppressWarnings("unchecked")
-    public void transform(ClassTransformation transformation, 
MutableComponentModel model)
+    public void transform(PlasticClass plasticClass, TransformationSupport 
support, MutableComponentModel model)
     {
-        for (TransformField field : 
transformation.matchFieldsWithAnnotation(InjectService.class))
+        for (PlasticField field : 
plasticClass.getFieldsWithAnnotation(InjectService.class))
         {
             InjectService annotation = 
field.getAnnotation(InjectService.class);
 
             field.claim(annotation);
 
-            Class fieldType = cache.forName(field.getType());
+            Class fieldType = cache.forName(field.getTypeName());
 
             Object service = locator.getService(annotation.value(), fieldType);
 

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=1150397&r1=1150396&r2=1150397&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
 Sun Jul 24 15:15:44 2011
@@ -528,6 +528,8 @@ public final class TapestryModule
      * <dd>Support for the {@link ActivationRequestParameter} annotation</dd>
      * <dt>PageLoaded, PageAttached, PageDetached</dt>
      * <dd>Support for annotations {@link PageLoaded}, {@link PageAttached}, 
{@link PageDetached}</dd>
+     * <dt>InjectService</dt>
+     * <dd>Handles the {@link 
org.apache.tapestry5.ioc.annotations.InjectService} annotation</dd>
      * </dl>
      */
     @Contribute(ComponentClassTransformWorker2.class)
@@ -590,6 +592,7 @@ public final class TapestryModule
         add(configuration, PageDetached.class, 
TransformConstants.CONTAINING_PAGE_DID_DETACH_DESCRIPTION);
 
         configuration.addInstance("PageReset", 
PageResetAnnotationWorker.class);
+        configuration.addInstance("InjectService", InjectServiceWorker.class);
 
 
         // This one is always last. Any additional private fields that aren't
@@ -612,13 +615,6 @@ public final class TapestryModule
      * <dd>Allows fields to contain values extracted from the {@link 
org.apache.tapestry5.services.Environment} service</dd>
      * <dt>Inject</dt>
      * <dd>Used with the {@link org.apache.tapestry5.ioc.annotations.Inject} 
annotation, when a value is supplied</dd>
-     * <dt>InjectService</dt>
-     * <dd>Handles the {@link 
org.apache.tapestry5.ioc.annotations.InjectService} annotation</dd>
-     * <dt>InjectPage</dt>
-     * <dd>Adds code to allow access to other pages via the {@link 
org.apache.tapestry5.annotations.InjectPage} field
-     * annotation</dd>
-     * <dt>InjectBlock</dt>
-     * <dd>Allows a block from the template to be injected into a field</dd>
      * <dt>ApplicationState</dt>
      * <dd>Converts fields that reference application state objects
      * <dt>Log</dt>
@@ -633,10 +629,8 @@ public final class TapestryModule
             OrderedConfiguration<ComponentClassTransformWorker> configuration)
     {
         configuration.addInstance("Inject", InjectWorker.class);
-        configuration.addInstance("InjectService", InjectServiceWorker.class);
         configuration.addInstance("InjectNamed", InjectNamedWorker.class);
 
-
         configuration.addInstance("Persist", PersistWorker.class);
 
         configuration.addInstance("Log", LogWorker.class);


Reply via email to