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/07/26 22:55:26 UTC
svn commit: r1366226 -
/incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java
Author: jlboudart
Date: Thu Jul 26 22:55:25 2012
New Revision: 1366226
URL: http://svn.apache.org/viewvc?rev=1366226&view=rev
Log:
Fix extensionStack content in EasyAntProjectHelper
even if this helper class is suposed to be removed, since we are still using legacy plugins we need phases support
Modified:
incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java
Modified: incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java?rev=1366226&r1=1366225&r2=1366226&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java (original)
+++ incubator/easyant/core/trunk/src/main/java/org/apache/easyant/core/ant/EasyAntProjectHelper.java Thu Jul 26 22:55:25 2012
@@ -123,6 +123,7 @@ public class EasyAntProjectHelper extend
String depends = "";
String extensionPoint = null;
String phase = null;
+ OnMissingExtensionPoint extensionPointMissing = null;
Project project = context.getProject();
@@ -168,6 +169,12 @@ public class EasyAntProjectHelper extend
target.setDescription(value);
} else if (key.equals("extensionOf")) {
extensionPoint = value;
+ } else if (key.equals("onMissingExtensionPoint")) {
+ try {
+ extensionPointMissing = OnMissingExtensionPoint.valueOf(value);
+ } catch (IllegalArgumentException e) {
+ throw new BuildException("Invalid onMissingExtensionPoint " + value);
+ }
} else if (key.equals("phase")) {
phase = value;
} else {
@@ -247,6 +254,11 @@ public class EasyAntProjectHelper extend
context.getCurrentTargets().put(newName, newTarget);
project.addOrReplaceTarget(newName, newTarget);
}
+ if (extensionPointMissing != null && extensionPoint == null) {
+ throw new BuildException("onMissingExtensionPoint attribute cannot " +
+ "be specified unless extensionOf is specified",
+ target.getLocation());
+ }
if (extensionPoint != null) {
ProjectHelper helper = (ProjectHelper) context.getProject()
.getReference(ProjectHelper.PROJECTHELPER_REFERENCE);
@@ -256,11 +268,14 @@ public class EasyAntProjectHelper extend
if (isInIncludeMode()) {
tgName = prefix + sep + tgName;
}
+ if (extensionPointMissing == null) {
+ extensionPointMissing = OnMissingExtensionPoint.FAIL;
+ }
// defer extensionpoint resolution until the full
// import stack has been processed
helper.getExtensionStack().add(
- new String[] { tgName, name });
+ new String[] { tgName, name, extensionPointMissing.name()});
}
}
if (phase != null) {