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/08/11 19:01:25 UTC
svn commit: r1512971 - in
/commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver:
CleanProcessor.java Finder.java WeaveProcessor.java
model/WeaveEnvironment.java
Author: mbenson
Date: Sun Aug 11 17:01:24 2013
New Revision: 1512971
URL: http://svn.apache.org/r1512971
Log:
WeaveEnvironment will provide the classLoader used for scanning; else subclass searches don't work
Modified:
commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/CleanProcessor.java
commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/Finder.java
commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/WeaveProcessor.java
commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/model/WeaveEnvironment.java
Modified: commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/CleanProcessor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/CleanProcessor.java?rev=1512971&r1=1512970&r2=1512971&view=diff
==============================================================================
--- commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/CleanProcessor.java (original)
+++ commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/CleanProcessor.java Sun Aug 11 17:01:24 2013
@@ -85,7 +85,8 @@ public class CleanProcessor {
final Finder finder = new Finder(new FileArchive(classLoader, target));
for (Cleaner cleaner : CLEANERS) {
final WeaveEnvironment env =
- new WeaveEnvironment(classpath, target, configuration, Logger.getLogger(cleaner.getClass().getName()));
+ new WeaveEnvironment(classpath, target, classLoader, configuration, Logger.getLogger(cleaner.getClass()
+ .getName()));
cleaner.clean(env, finder);
}
}
Modified: commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/Finder.java
URL: http://svn.apache.org/viewvc/commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/Finder.java?rev=1512971&r1=1512970&r2=1512971&view=diff
==============================================================================
--- commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/Finder.java (original)
+++ commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/Finder.java Sun Aug 11 17:01:24 2013
@@ -681,10 +681,10 @@ class Finder extends AnnotationFinder im
// should we log something?
break;
}
- for (Class<?> supertype : request.getSupertypes()) {
- for (Annotated<Class<?>> type : this.withAnnotations().findAssignableTypes(supertype)) {
- result.getWeavable(type.get()).addAnnotations(type.getAnnotations());
- }
+ }
+ for (Class<?> supertype : request.getSupertypes()) {
+ for (Annotated<Class<?>> type : this.withAnnotations().findAssignableTypes(supertype)) {
+ result.getWeavable(type.get()).addAnnotations(type.getAnnotations());
}
}
return inflater.inflate(result);
Modified: commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/WeaveProcessor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/WeaveProcessor.java?rev=1512971&r1=1512970&r2=1512971&view=diff
==============================================================================
--- commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/WeaveProcessor.java (original)
+++ commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/WeaveProcessor.java Sun Aug 11 17:01:24 2013
@@ -86,7 +86,8 @@ public class WeaveProcessor {
final Finder finder = new Finder(new FileArchive(classLoader, target));
for (Weaver weaver : WEAVERS) {
final WeaveEnvironment env =
- new WeaveEnvironment(classpath, target, configuration, Logger.getLogger(weaver.getClass().getName()));
+ new WeaveEnvironment(classpath, target, classLoader, configuration, Logger.getLogger(weaver.getClass()
+ .getName()));
weaver.process(env, finder);
}
}
Modified: commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/model/WeaveEnvironment.java
URL: http://svn.apache.org/viewvc/commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/model/WeaveEnvironment.java?rev=1512971&r1=1512970&r2=1512971&view=diff
==============================================================================
--- commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/model/WeaveEnvironment.java (original)
+++ commons/sandbox/weaver/branches/normalizer/processor/src/main/java/org/apache/commons/weaver/model/WeaveEnvironment.java Sun Aug 11 17:01:24 2013
@@ -38,9 +38,14 @@ public class WeaveEnvironment {
public final List<String> classpath;
/**
- * Target where scannable/weavable classes reside.
+ * Target where weavable classes reside.
*/
public final File target;
+
+ /**
+ * ClassLoader containing scannable and weavable classes.
+ */
+ public final ClassLoader classLoader;
/**
* Configuration properties. By convention, any configuration property should start with its name, e.g.
@@ -55,13 +60,15 @@ public class WeaveEnvironment {
*
* @param classpath
* @param target
+ * @param classLoader
* @param config
* @param log
*/
- public WeaveEnvironment(List<String> classpath, File target, Properties config, Logger log) {
+ public WeaveEnvironment(List<String> classpath, File target, ClassLoader classLoader, Properties config, Logger log) {
super();
this.classpath = Collections.unmodifiableList(Validate.notNull(classpath, "classpath"));
this.target = Validate.notNull(target, "target");
+ this.classLoader = classLoader;
this.config = (Properties) Validate.notNull(config, "config").clone();
this.log = log;
}