You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by hi...@apache.org on 2012/06/20 15:59:23 UTC
svn commit: r1352104 - in
/ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl:
AbstractAntDslProjectHelper.java AntDSL.g xtext/AntDSL.xtext
xtext/AntDslXTextProjectHelper.java
Author: hibou
Date: Wed Jun 20 13:59:22 2012
New Revision: 1352104
URL: http://svn.apache.org/viewvc?rev=1352104&view=rev
Log:
Add support for onMissingExtensionPoint
Modified:
ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AbstractAntDslProjectHelper.java
ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AntDSL.g
ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDSL.xtext
ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDslXTextProjectHelper.java
Modified: ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AbstractAntDslProjectHelper.java
URL: http://svn.apache.org/viewvc/ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AbstractAntDslProjectHelper.java?rev=1352104&r1=1352103&r2=1352104&view=diff
==============================================================================
--- ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AbstractAntDslProjectHelper.java (original)
+++ ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AbstractAntDslProjectHelper.java Wed Jun 20 13:59:22 2012
@@ -27,6 +27,7 @@ import java.util.Hashtable;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Vector;
@@ -286,9 +287,12 @@ public abstract class AbstractAntDslProj
}
public void mapCommonTarget(
- Target target, Project project, AntDslContext context, String name, String description, List<String> depends, List<String> extensionsOf) {
- // TODO
+ Target target, Project project, AntDslContext context, String name, String description, List<String> depends, List<String> extensionsOf,
+ String onMiss) {
OnMissingExtensionPoint extensionPointMissing = null;
+ if (onMiss != null) {
+ extensionPointMissing = OnMissingExtensionPoint.valueOf(onMiss.toUpperCase(Locale.ENGLISH));
+ }
context.addTarget(target);
target.setProject(project);
Modified: ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AntDSL.g
URL: http://svn.apache.org/viewvc/ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AntDSL.g?rev=1352104&r1=1352103&r2=1352104&view=diff
==============================================================================
--- ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AntDSL.g (original)
+++ ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/AntDSL.g Wed Jun 20 13:59:22 2012
@@ -86,9 +86,9 @@ extensionPoint returns [Target t = new T
{ context.setCurrentTarget(t); }
desc=DOC?
'extension-point' n=NAME
- ('extensionOf' eo=targetList)?
('depends' d=targetList)?
- { projectHelper.mapCommonTarget(t, project, context, $n.text, $desc.text, d, eo); }
+ ('extensionOf' eo=targetList ('onMiss' onMiss=STRING )? )?
+ { projectHelper.mapCommonTarget(t, project, context, $n.text, $desc.text, d, eo, $onMiss.text); }
{ context.setCurrentTarget(context.getImplicitTarget()); }
;
@@ -96,9 +96,9 @@ target returns [Target t = new Target()]
{ context.setCurrentTarget(t); }
desc=DOC?
'target' n=NAME
- ('extensionOf' eo=targetList)?
('depends' d=targetList)?
- { projectHelper.mapCommonTarget(t, project, context, $n.text, $desc.text, d, eo); }
+ ('extensionOf' eo=targetList ('onMiss' onMiss=STRING)? )?
+ { projectHelper.mapCommonTarget(t, project, context, $n.text, $desc.text, d, eo, $onMiss.text); }
tl=taskLists?
{ for (Task task : tl) { t.addTask(task); } }
{ context.setCurrentTarget(context.getImplicitTarget()); }
Modified: ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDSL.xtext
URL: http://svn.apache.org/viewvc/ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDSL.xtext?rev=1352104&r1=1352103&r2=1352104&view=diff
==============================================================================
--- ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDSL.xtext (original)
+++ ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDSL.xtext Wed Jun 20 13:59:22 2012
@@ -34,10 +34,10 @@ ENamespace:
name=NAME ':' uri=STRING;
EExtensionPoint:
- description=DOC? 'extension-point' name=NAME (('extensionOf' extensionsOf=ETargetList)? & ('depends' depends=ETargetList)?);
+ description=DOC? 'extension-point' name=NAME (('extensionOf' extensionsOf=ETargetList ('onMiss' onMissingExtensionPoint=STRING)? )? & ('depends' depends=ETargetList)?);
ETarget:
- description=DOC? 'target' name=NAME (('extensionOf' extensionsOf=ETargetList)? & ('depends' depends=ETargetList)?) tasks=ETaskLists?;
+ description=DOC? 'target' name=NAME (('extensionOf' extensionsOf=ETargetList ('onMiss' onMissingExtensionPoint=STRING)? )? & ('depends' depends=ETargetList)? ) tasks=ETaskLists?;
ETaskLists:
{ETaskLists}
Modified: ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDslXTextProjectHelper.java
URL: http://svn.apache.org/viewvc/ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDslXTextProjectHelper.java?rev=1352104&r1=1352103&r2=1352104&view=diff
==============================================================================
--- ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDslXTextProjectHelper.java (original)
+++ ant/sandbox/antdsl/org.apache.ant.antdsl/src/org/apache/ant/antdsl/xtext/AntDslXTextProjectHelper.java Wed Jun 20 13:59:22 2012
@@ -181,7 +181,7 @@ public class AntDslXTextProjectHelper ex
Target target = new Target();
context.setCurrentTarget(target);
mapCommonTarget(target, project, context, eTarget.getName(), eTarget.getDescription(), mapTargetList(eTarget.getDepends()),
- mapTargetList(eTarget.getExtensionsOf()));
+ mapTargetList(eTarget.getExtensionsOf()), eTarget.getOnMissingExtensionPoint());
ETaskLists tasks = eTarget.getTasks();
if (tasks != null && tasks.getTasks() != null) {
for (ETask eTask : tasks.getTasks()) {
@@ -202,7 +202,8 @@ public class AntDslXTextProjectHelper ex
private ExtensionPoint mapExtensionPoint(Project project, AntDslContext context, EExtensionPoint eExtensionPoint) {
ExtensionPoint extensionPoint = new ExtensionPoint();
mapCommonTarget(extensionPoint, project, context, eExtensionPoint.getName(), eExtensionPoint.getDescription(),
- mapTargetList(eExtensionPoint.getDepends()), mapTargetList(eExtensionPoint.getExtensionsOf()));
+ mapTargetList(eExtensionPoint.getDepends()), mapTargetList(eExtensionPoint.getExtensionsOf()),
+ eExtensionPoint.getOnMissingExtensionPoint());
context.setCurrentTarget(context.getImplicitTarget());
return extensionPoint;
}