to pass in the project object to get access to logging, unfortunately. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@268323 13f79535-47bb-0310-9956-ffa450edef68master
@@ -563,7 +563,7 @@ public class ProjectHelper { | |||||
for (int i = 0; i < attrs.getLength(); i++) { | for (int i = 0; i < attrs.getLength(); i++) { | ||||
// reflect these into the target | // reflect these into the target | ||||
String value=replaceProperties(attrs.getValue(i), | |||||
String value=replaceProperties(project, attrs.getValue(i), | |||||
project.getProperties() ); | project.getProperties() ); | ||||
try { | try { | ||||
ih.setAttribute(project, target, | ih.setAttribute(project, target, | ||||
@@ -605,7 +605,7 @@ public class ProjectHelper { | |||||
/** Replace ${NAME} with the property value | /** Replace ${NAME} with the property value | ||||
*/ | */ | ||||
public static String replaceProperties( String value, Hashtable keys ) | |||||
public static String replaceProperties(Project project, String value, Hashtable keys ) | |||||
throws BuildException | throws BuildException | ||||
{ | { | ||||
// XXX use Map instead of proj, it's too heavy | // XXX use Map instead of proj, it's too heavy | ||||
@@ -635,10 +635,10 @@ public class ProjectHelper { | |||||
} | } | ||||
String n=value.substring( pos+2, endName ); | String n=value.substring( pos+2, endName ); | ||||
if (!keys.containsKey(n)) { | if (!keys.containsKey(n)) { | ||||
throw new BuildException("Property ${" + n + "} has not been set"); | |||||
project.log("Property ${" + n + "} has not been set", Project.MSG_WARN); | |||||
} | } | ||||
String v = (String) keys.get(n); | |||||
String v = (keys.containsKey(n)) ? (String) keys.get(n) : "${"+n+"}"; | |||||
//System.out.println("N: " + n + " " + " V:" + v); | //System.out.println("N: " + n + " " + " V:" + v); | ||||
sb.append( v ); | sb.append( v ); | ||||
@@ -123,7 +123,7 @@ public class Echo extends Task { | |||||
*/ | */ | ||||
public void addText(String msg) { | public void addText(String msg) { | ||||
message += | message += | ||||
ProjectHelper.replaceProperties(msg, project.getProperties()); | |||||
ProjectHelper.replaceProperties(project, msg, project.getProperties()); | |||||
} | } | ||||
/** | /** | ||||
@@ -204,7 +204,7 @@ public class Property extends Task { | |||||
while (e.hasMoreElements()) { | while (e.hasMoreElements()) { | ||||
String name = (String) e.nextElement(); | String name = (String) e.nextElement(); | ||||
String value = (String) props.getProperty(name); | String value = (String) props.getProperty(name); | ||||
String v = ProjectHelper.replaceProperties(value, project.getProperties()); | |||||
String v = ProjectHelper.replaceProperties(project, value, project.getProperties()); | |||||
addProperty(name, value); | addProperty(name, value); | ||||
} | } | ||||
} | } | ||||
@@ -261,9 +261,9 @@ public class Property extends Task { | |||||
} | } | ||||
if (!resolved) { | if (!resolved) { | ||||
value = ProjectHelper.replaceProperties(value, | |||||
value = ProjectHelper.replaceProperties(project, value, | |||||
project.getProperties()); | project.getProperties()); | ||||
value = ProjectHelper.replaceProperties(value, props); | |||||
value = ProjectHelper.replaceProperties(project, value, props); | |||||
props.put(name, value); | props.put(name, value); | ||||
} | } | ||||
} | } | ||||