You are viewing a plain text version of this content. The canonical link for it is here.
Posted to easyant-commits@incubator.apache.org by jl...@apache.org on 2012/10/03 22:07:04 UTC
svn commit: r1393793 -
/incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java
Author: jlboudart
Date: Wed Oct 3 22:07:04 2012
New Revision: 1393793
URL: http://svn.apache.org/viewvc?rev=1393793&view=rev
Log:
Enhance extensionpoints support in EasyantReport
Modified:
incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java
Modified: incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java?rev=1393793&r1=1393792&r2=1393793&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java (original)
+++ incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/report/EasyAntReport.java Wed Oct 3 22:07:04 2012
@@ -40,6 +40,7 @@ public class EasyAntReport {
private Map<String, PropertyDescriptor> propertyReports;
private ResolveReport resolveReport;
private ModuleDescriptor moduleDescriptor;
+ private boolean extensionPointsConfigured;
/**
* Default Constructor
@@ -84,13 +85,6 @@ public class EasyAntReport {
if (targetReport == null) {
throw new IllegalArgumentException("targetReport cannot be null");
}
- if (targetReport.getExtensionPoint() != null) {
- for (ExtensionPointReport extensionPoint : extensionPointReports) {
- if (extensionPoint.getName().equals(targetReport.getExtensionPoint())) {
- extensionPoint.addTargetReport(targetReport);
- }
- }
- }
targetReports.add(targetReport);
}
@@ -105,6 +99,7 @@ public class EasyAntReport {
if (name == null || name.equals("")) {
throw new IllegalArgumentException("extension point name cannot be null");
}
+ maybeConfigureExtensionPoints();
for (ExtensionPointReport extensionPointReport : extensionPointReports) {
if (extensionPointReport.getName().equals(name)) {
return extensionPointReport;
@@ -119,9 +114,25 @@ public class EasyAntReport {
* @return a list of extension points
*/
public List<ExtensionPointReport> getExtensionPointReports() {
+ maybeConfigureExtensionPoints();
return Collections.unmodifiableList(extensionPointReports);
}
+ private void maybeConfigureExtensionPoints() {
+ if (!extensionPointsConfigured) {
+ for (TargetReport targetReport : targetReports) {
+ if (targetReport.getExtensionPoint() != null) {
+ for (ExtensionPointReport extensionPointReport : extensionPointReports) {
+ if (extensionPointReport.getName().equals(targetReport.getExtensionPoint())) {
+ extensionPointReport.addTargetReport(targetReport);
+ }
+ }
+ }
+ }
+ extensionPointsConfigured = true;
+ }
+ }
+
/**
* Add a given extensionPointReport
*