git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270437 13f79535-47bb-0310-9956-ffa450edef68master
@@ -30,33 +30,28 @@ import org.apache.tools.ant.types.Reference; | |||||
* @author <a href="mailto:rubys@us.ibm.com">Sam Ruby</a> | * @author <a href="mailto:rubys@us.ibm.com">Sam Ruby</a> | ||||
* @author <a href="mailto:glennm@ca.ibm.com">Glenn McAllister</a> | * @author <a href="mailto:glennm@ca.ibm.com">Glenn McAllister</a> | ||||
*/ | */ | ||||
public class Property extends Task | |||||
public class Property | |||||
extends Task | |||||
{ | { | ||||
protected Path classpath; | |||||
protected String env; | |||||
protected File file; | |||||
private Path m_classpath; | |||||
private String m_env; | |||||
private File m_file; | |||||
protected String name; | |||||
protected Reference ref; | |||||
protected String resource; | |||||
protected String value;// set read-only properties | |||||
public Property() | |||||
{ | |||||
super(); | |||||
} | |||||
private String m_name; | |||||
private Reference m_ref; | |||||
private String m_resource; | |||||
private String m_value; | |||||
public void setClasspath( Path classpath ) | public void setClasspath( Path classpath ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( this.classpath == null ) | |||||
if( m_classpath == null ) | |||||
{ | { | ||||
this.classpath = classpath; | |||||
m_classpath = classpath; | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
this.classpath.append( classpath ); | |||||
m_classpath.append( classpath ); | |||||
} | } | ||||
} | } | ||||
@@ -68,12 +63,12 @@ public class Property extends Task | |||||
public void setEnvironment( String env ) | public void setEnvironment( String env ) | ||||
{ | { | ||||
this.env = env; | |||||
m_env = env; | |||||
} | } | ||||
public void setFile( File file ) | public void setFile( File file ) | ||||
{ | { | ||||
this.file = file; | |||||
m_file = file; | |||||
} | } | ||||
public void setLocation( File location ) | public void setLocation( File location ) | ||||
@@ -83,129 +78,118 @@ public class Property extends Task | |||||
public void setName( String name ) | public void setName( String name ) | ||||
{ | { | ||||
this.name = name; | |||||
m_name = name; | |||||
} | } | ||||
public void setRefid( Reference ref ) | public void setRefid( Reference ref ) | ||||
{ | { | ||||
this.ref = ref; | |||||
m_ref = ref; | |||||
} | } | ||||
public void setResource( String resource ) | public void setResource( String resource ) | ||||
{ | { | ||||
this.resource = resource; | |||||
m_resource = resource; | |||||
} | } | ||||
public void setValue( String value ) | public void setValue( String value ) | ||||
{ | { | ||||
this.value = value; | |||||
m_value = value; | |||||
} | } | ||||
public String getEnvironment() | public String getEnvironment() | ||||
{ | { | ||||
return env; | |||||
return m_env; | |||||
} | } | ||||
public File getFile() | public File getFile() | ||||
{ | { | ||||
return file; | |||||
return m_file; | |||||
} | } | ||||
public Reference getRefid() | public Reference getRefid() | ||||
{ | { | ||||
return ref; | |||||
return m_ref; | |||||
} | } | ||||
public String getResource() | public String getResource() | ||||
{ | { | ||||
return resource; | |||||
return m_resource; | |||||
} | } | ||||
public String getValue() | public String getValue() | ||||
{ | { | ||||
return value; | |||||
return m_value; | |||||
} | } | ||||
public Path createClasspath() | public Path createClasspath() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( this.classpath == null ) | |||||
if( m_classpath == null ) | |||||
{ | { | ||||
this.classpath = new Path(); | |||||
m_classpath = new Path(); | |||||
} | } | ||||
return this.classpath.createPath(); | |||||
return m_classpath.createPath(); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( name != null ) | |||||
if( m_name != null ) | |||||
{ | { | ||||
if( value == null && ref == null ) | |||||
if( m_value == null && m_ref == null ) | |||||
{ | { | ||||
throw new TaskException( "You must specify value, location or refid with the name attribute" ); | throw new TaskException( "You must specify value, location or refid with the name attribute" ); | ||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( file == null && resource == null && env == null ) | |||||
if( m_file == null && m_resource == null && m_env == null ) | |||||
{ | { | ||||
throw new TaskException( "You must specify file, resource or environment when not using the name attribute" ); | throw new TaskException( "You must specify file, resource or environment when not using the name attribute" ); | ||||
} | } | ||||
} | } | ||||
if( ( name != null ) && ( value != null ) ) | |||||
if( ( m_name != null ) && ( m_value != null ) ) | |||||
{ | { | ||||
addProperty( name, value ); | |||||
setProperty( m_name, m_value ); | |||||
} | } | ||||
if( file != null ) | |||||
loadFile( file ); | |||||
if( m_file != null ) | |||||
loadFile( m_file ); | |||||
if( resource != null ) | |||||
loadResource( resource ); | |||||
if( m_resource != null ) | |||||
loadResource( m_resource ); | |||||
if( env != null ) | |||||
loadEnvironment( env ); | |||||
if( m_env != null ) | |||||
loadEnvironment( m_env ); | |||||
if( ( name != null ) && ( ref != null ) ) | |||||
if( ( m_name != null ) && ( m_ref != null ) ) | |||||
{ | { | ||||
Object obj = ref.getReferencedObject( getProject() ); | |||||
Object obj = m_ref.getReferencedObject( getProject() ); | |||||
if( obj != null ) | if( obj != null ) | ||||
{ | { | ||||
addProperty( name, obj.toString() ); | |||||
setProperty( m_name, obj.toString() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
public String toString() | public String toString() | ||||
{ | { | ||||
return value == null ? "" : value; | |||||
return m_value == null ? "" : m_value; | |||||
} | } | ||||
protected void addProperties( Properties props ) | protected void addProperties( Properties props ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
//no longer needs as ant2 properties are completely dynamic | |||||
//resolveAllProperties( props ); | |||||
Enumeration e = props.keys(); | |||||
while( e.hasMoreElements() ) | |||||
final Iterator e = props.keySet().iterator(); | |||||
while( e.hasNext() ) | |||||
{ | { | ||||
String name = (String)e.nextElement(); | |||||
String value = (String)props.getProperty( name ); | |||||
String v = getProject().replaceProperties( value ); | |||||
addProperty( name, v ); | |||||
final String name = (String)e.next(); | |||||
final String value = (String)props.getProperty( name ); | |||||
setProperty( name, value ); | |||||
} | } | ||||
} | } | ||||
protected void addProperty( String n, String v ) | |||||
throws TaskException | |||||
{ | |||||
setProperty( n, v ); | |||||
} | |||||
protected void loadEnvironment( String prefix ) | protected void loadEnvironment( String prefix ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
@@ -288,13 +272,13 @@ public class Property extends Task | |||||
ClassLoader cL = null; | ClassLoader cL = null; | ||||
InputStream is = null; | InputStream is = null; | ||||
if( classpath != null ) | |||||
if( m_classpath != null ) | |||||
{ | { | ||||
cL = new AntClassLoader( getProject(), classpath ); | |||||
cL = new AntClassLoader( getProject(), m_classpath ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cL = this.getClass().getClassLoader(); | |||||
cL = getClass().getClassLoader(); | |||||
} | } | ||||
if( cL == null ) | if( cL == null ) | ||||
@@ -30,33 +30,28 @@ import org.apache.tools.ant.types.Reference; | |||||
* @author <a href="mailto:rubys@us.ibm.com">Sam Ruby</a> | * @author <a href="mailto:rubys@us.ibm.com">Sam Ruby</a> | ||||
* @author <a href="mailto:glennm@ca.ibm.com">Glenn McAllister</a> | * @author <a href="mailto:glennm@ca.ibm.com">Glenn McAllister</a> | ||||
*/ | */ | ||||
public class Property extends Task | |||||
public class Property | |||||
extends Task | |||||
{ | { | ||||
protected Path classpath; | |||||
protected String env; | |||||
protected File file; | |||||
private Path m_classpath; | |||||
private String m_env; | |||||
private File m_file; | |||||
protected String name; | |||||
protected Reference ref; | |||||
protected String resource; | |||||
protected String value;// set read-only properties | |||||
public Property() | |||||
{ | |||||
super(); | |||||
} | |||||
private String m_name; | |||||
private Reference m_ref; | |||||
private String m_resource; | |||||
private String m_value; | |||||
public void setClasspath( Path classpath ) | public void setClasspath( Path classpath ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( this.classpath == null ) | |||||
if( m_classpath == null ) | |||||
{ | { | ||||
this.classpath = classpath; | |||||
m_classpath = classpath; | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
this.classpath.append( classpath ); | |||||
m_classpath.append( classpath ); | |||||
} | } | ||||
} | } | ||||
@@ -68,12 +63,12 @@ public class Property extends Task | |||||
public void setEnvironment( String env ) | public void setEnvironment( String env ) | ||||
{ | { | ||||
this.env = env; | |||||
m_env = env; | |||||
} | } | ||||
public void setFile( File file ) | public void setFile( File file ) | ||||
{ | { | ||||
this.file = file; | |||||
m_file = file; | |||||
} | } | ||||
public void setLocation( File location ) | public void setLocation( File location ) | ||||
@@ -83,129 +78,118 @@ public class Property extends Task | |||||
public void setName( String name ) | public void setName( String name ) | ||||
{ | { | ||||
this.name = name; | |||||
m_name = name; | |||||
} | } | ||||
public void setRefid( Reference ref ) | public void setRefid( Reference ref ) | ||||
{ | { | ||||
this.ref = ref; | |||||
m_ref = ref; | |||||
} | } | ||||
public void setResource( String resource ) | public void setResource( String resource ) | ||||
{ | { | ||||
this.resource = resource; | |||||
m_resource = resource; | |||||
} | } | ||||
public void setValue( String value ) | public void setValue( String value ) | ||||
{ | { | ||||
this.value = value; | |||||
m_value = value; | |||||
} | } | ||||
public String getEnvironment() | public String getEnvironment() | ||||
{ | { | ||||
return env; | |||||
return m_env; | |||||
} | } | ||||
public File getFile() | public File getFile() | ||||
{ | { | ||||
return file; | |||||
return m_file; | |||||
} | } | ||||
public Reference getRefid() | public Reference getRefid() | ||||
{ | { | ||||
return ref; | |||||
return m_ref; | |||||
} | } | ||||
public String getResource() | public String getResource() | ||||
{ | { | ||||
return resource; | |||||
return m_resource; | |||||
} | } | ||||
public String getValue() | public String getValue() | ||||
{ | { | ||||
return value; | |||||
return m_value; | |||||
} | } | ||||
public Path createClasspath() | public Path createClasspath() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( this.classpath == null ) | |||||
if( m_classpath == null ) | |||||
{ | { | ||||
this.classpath = new Path(); | |||||
m_classpath = new Path(); | |||||
} | } | ||||
return this.classpath.createPath(); | |||||
return m_classpath.createPath(); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( name != null ) | |||||
if( m_name != null ) | |||||
{ | { | ||||
if( value == null && ref == null ) | |||||
if( m_value == null && m_ref == null ) | |||||
{ | { | ||||
throw new TaskException( "You must specify value, location or refid with the name attribute" ); | throw new TaskException( "You must specify value, location or refid with the name attribute" ); | ||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( file == null && resource == null && env == null ) | |||||
if( m_file == null && m_resource == null && m_env == null ) | |||||
{ | { | ||||
throw new TaskException( "You must specify file, resource or environment when not using the name attribute" ); | throw new TaskException( "You must specify file, resource or environment when not using the name attribute" ); | ||||
} | } | ||||
} | } | ||||
if( ( name != null ) && ( value != null ) ) | |||||
if( ( m_name != null ) && ( m_value != null ) ) | |||||
{ | { | ||||
addProperty( name, value ); | |||||
setProperty( m_name, m_value ); | |||||
} | } | ||||
if( file != null ) | |||||
loadFile( file ); | |||||
if( m_file != null ) | |||||
loadFile( m_file ); | |||||
if( resource != null ) | |||||
loadResource( resource ); | |||||
if( m_resource != null ) | |||||
loadResource( m_resource ); | |||||
if( env != null ) | |||||
loadEnvironment( env ); | |||||
if( m_env != null ) | |||||
loadEnvironment( m_env ); | |||||
if( ( name != null ) && ( ref != null ) ) | |||||
if( ( m_name != null ) && ( m_ref != null ) ) | |||||
{ | { | ||||
Object obj = ref.getReferencedObject( getProject() ); | |||||
Object obj = m_ref.getReferencedObject( getProject() ); | |||||
if( obj != null ) | if( obj != null ) | ||||
{ | { | ||||
addProperty( name, obj.toString() ); | |||||
setProperty( m_name, obj.toString() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
public String toString() | public String toString() | ||||
{ | { | ||||
return value == null ? "" : value; | |||||
return m_value == null ? "" : m_value; | |||||
} | } | ||||
protected void addProperties( Properties props ) | protected void addProperties( Properties props ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
//no longer needs as ant2 properties are completely dynamic | |||||
//resolveAllProperties( props ); | |||||
Enumeration e = props.keys(); | |||||
while( e.hasMoreElements() ) | |||||
final Iterator e = props.keySet().iterator(); | |||||
while( e.hasNext() ) | |||||
{ | { | ||||
String name = (String)e.nextElement(); | |||||
String value = (String)props.getProperty( name ); | |||||
String v = getProject().replaceProperties( value ); | |||||
addProperty( name, v ); | |||||
final String name = (String)e.next(); | |||||
final String value = (String)props.getProperty( name ); | |||||
setProperty( name, value ); | |||||
} | } | ||||
} | } | ||||
protected void addProperty( String n, String v ) | |||||
throws TaskException | |||||
{ | |||||
setProperty( n, v ); | |||||
} | |||||
protected void loadEnvironment( String prefix ) | protected void loadEnvironment( String prefix ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
@@ -288,13 +272,13 @@ public class Property extends Task | |||||
ClassLoader cL = null; | ClassLoader cL = null; | ||||
InputStream is = null; | InputStream is = null; | ||||
if( classpath != null ) | |||||
if( m_classpath != null ) | |||||
{ | { | ||||
cL = new AntClassLoader( getProject(), classpath ); | |||||
cL = new AntClassLoader( getProject(), m_classpath ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cL = this.getClass().getClassLoader(); | |||||
cL = getClass().getClassLoader(); | |||||
} | } | ||||
if( cL == null ) | if( cL == null ) | ||||