Author: rdonkin
Date: Thu May 26 18:32:18 2011
New Revision: 1128024
URL: http://svn.apache.org/viewvc?rev=1128024&view=rev
Log:
MAILETDOCS-4 Statefully accumulate descriptors, ready for aggregation.
Modified:
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/MailetdocsMojo.java
Modified:
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java
URL:
http://svn.apache.org/viewvc/james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java?rev=1128024&r1=1128023&r2=1128024&view=diff
==============================================================================
---
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java
(original)
+++
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java
Thu May 26 18:32:18 2011
@@ -24,6 +24,7 @@ import java.lang.reflect.InvocationTarge
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
+import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
@@ -48,14 +49,22 @@ public class DefaultDescriptorsExtractor
private static final String MATCHER_CLASS_NAME = Matcher.class.getName();
private static final String MAILET_CLASS_NAME = Mailet.class.getName();
+
+ private final List<MailetMatcherDescriptor> descriptors;
+
+ public DefaultDescriptorsExtractor() {
+ descriptors = new ArrayList<MailetMatcherDescriptor> ();
+ }
/**
- * @see
org.apache.james.mailet.DescriptorsExtractor#extractDescriptors(MavenProject,
Log)
+ * Descriptors extracted.
+ * @return not null
*/
- public List<MailetMatcherDescriptor> extractDescriptors(MavenProject
project, Log log) {
-
- List<MailetMatcherDescriptor> descriptors = new
LinkedList<MailetMatcherDescriptor>();
+ public List<MailetMatcherDescriptor> descriptors() {
+ return descriptors;
+ }
+ public DefaultDescriptorsExtractor extract(final MavenProject project,
final Log log) {
final JavaClass[] classes = javaClasses(project);
final URLClassLoader classLoader = classLoader(project, log);
@@ -65,14 +74,14 @@ public class DefaultDescriptorsExtractor
for (int i = 0; i < classes.length; i++) {
final JavaClass nextClass = classes[i];
- addDescriptor(log, descriptors, classLoader, nextClass);
+ addDescriptor(log, classLoader, nextClass);
}
-
- return descriptors;
+
+ return this;
}
- private void addDescriptor(Log log, List<MailetMatcherDescriptor> res,
+ private void addDescriptor(Log log,
final URLClassLoader classLoader, final JavaClass nextClass) {
final String nameOfNextClass = nextClass.getFullyQualifiedName();
if (log.isDebugEnabled()) {
@@ -91,12 +100,12 @@ public class DefaultDescriptorsExtractor
if (allInterfaces.contains(mailetClass)) {
final MailetMatcherDescriptor descriptor = describeMailet(log,
nextClass,
nameOfNextClass, klass);
- res.add(descriptor);
+ descriptors.add(descriptor);
} else if (allInterfaces.contains(matcherClass)) {
final MailetMatcherDescriptor descriptor = describeMatcher(log,
nextClass, nameOfNextClass, klass);
- res.add(descriptor);
+ descriptors.add(descriptor);
} else {
logInterfaces(log, klass, allInterfaces);
}
Modified:
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/MailetdocsMojo.java
URL:
http://svn.apache.org/viewvc/james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/MailetdocsMojo.java?rev=1128024&r1=1128023&r2=1128024&view=diff
==============================================================================
---
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/MailetdocsMojo.java
(original)
+++
james/mailet/maven-mailetdocs-plugin/trunk/src/main/java/org/apache/james/mailet/MailetdocsMojo.java
Thu May 26 18:32:18 2011
@@ -152,7 +152,7 @@ public class MailetdocsMojo extends Abst
}
private List<MailetMatcherDescriptor> buildDescriptors() {
- final List<MailetMatcherDescriptor> descriptors = new
DefaultDescriptorsExtractor().extractDescriptors(project, getLog());
+ final List<MailetMatcherDescriptor> descriptors = new
DefaultDescriptorsExtractor().extract(project, getLog()).descriptors();
Collections.sort(descriptors, new
Comparator<MailetMatcherDescriptor>() {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]