You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mb...@apache.org on 2013/01/22 20:53:32 UTC

svn commit: r1437128 [2/2] - in /commons/sandbox/weaver/branches/mjb: modules/privilizer/weaver/src/main/java/org/apache/commons/weaver/privilizer/ processor/ processor/src/main/java/org/apache/commons/weaver/ processor/src/main/java/org/apache/commons...

Modified: commons/sandbox/weaver/branches/mjb/processor/src/test/java/org/apache/commons/weaver/test/weaver/TestWeaver.java
URL: http://svn.apache.org/viewvc/commons/sandbox/weaver/branches/mjb/processor/src/test/java/org/apache/commons/weaver/test/weaver/TestWeaver.java?rev=1437128&r1=1437127&r2=1437128&view=diff
==============================================================================
--- commons/sandbox/weaver/branches/mjb/processor/src/test/java/org/apache/commons/weaver/test/weaver/TestWeaver.java (original)
+++ commons/sandbox/weaver/branches/mjb/processor/src/test/java/org/apache/commons/weaver/test/weaver/TestWeaver.java Tue Jan 22 19:53:31 2013
@@ -19,31 +19,29 @@
 package org.apache.commons.weaver.test.weaver;
 
 import java.io.File;
-import java.lang.annotation.Annotation;
+import java.lang.annotation.ElementType;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 import java.util.Properties;
-import java.util.logging.Logger;
 
+import org.apache.commons.weaver.model.ScanRequest;
+import org.apache.commons.weaver.model.ScanResult;
+import org.apache.commons.weaver.model.WeavableClass;
+import org.apache.commons.weaver.model.WeavableMethod;
+import org.apache.commons.weaver.model.WeaveInterest;
+import org.apache.commons.weaver.spi.Weaver;
 import org.apache.commons.weaver.test.beans.TestAnnotation;
 import org.junit.Assert;
 
-import org.apache.commons.weaver.spi.Weaver;
-
 /**
  */
-public class TestWeaver implements Weaver
-{
-    public static boolean preWeaveExecuted = false;
-    public static boolean postWeaveExecuted = false;
+public class TestWeaver implements Weaver {
     public static List<Method> wovenMethods = new ArrayList<Method>();
-    public static List<Class> wovenClasses = new ArrayList<Class>();
+    public static List<Class<?>> wovenClasses = new ArrayList<Class<?>>();
 
     @Override
-    public void configure(List<String> classPath, File target, Properties config)
-    {
+    public void configure(List<String> classPath, File target, Properties config) {
         Assert.assertNotNull(config);
         Assert.assertEquals(1, config.size());
 
@@ -52,34 +50,26 @@ public class TestWeaver implements Weave
     }
 
     @Override
-    public List<Class<? extends Annotation>> getInterest()
-    {
-        List<Class<? extends Annotation>> interests = new ArrayList<Class<? extends Annotation>>();
-        interests.add(TestAnnotation.class);
-        return interests;
-    }
-
-    @Override
-    public void preWeave()
-    {
-        preWeaveExecuted = true;
+    public ScanRequest getScanRequest() {
+        return new ScanRequest().add(WeaveInterest.of(TestAnnotation.class, ElementType.TYPE)).add(
+            WeaveInterest.of(TestAnnotation.class, ElementType.METHOD));
     }
 
     @Override
-    public boolean weave(Class classToWeave, Class<? extends Annotation> processingAnnotation)
-    {
-        return wovenClasses.add(classToWeave);
+    public boolean process(ScanResult scanResult) {
+        boolean result = false;
+        for (WeavableClass<?> weavableClass : scanResult.getClasses()) {
+            if (weavableClass.isAnnotationPresent(TestAnnotation.class) && wovenClasses.add(weavableClass.getTarget())) {
+                result = true;
+            }
+        }
+        for (WeavableMethod<?> weavableMethod : scanResult.getMethods()) {
+            if (weavableMethod.isAnnotationPresent(TestAnnotation.class)
+                && wovenMethods.add(weavableMethod.getTarget())) {
+                result = true;
+            }
+        }
+        return result;
     }
 
-    @Override
-    public boolean weave(Method methodToWeave, Class<? extends Annotation> processingAnnotation)
-    {
-        return wovenMethods.add(methodToWeave);
-    }
-
-    @Override
-    public void postWeave()
-    {
-        postWeaveExecuted = true;
-    }
 }