ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Frank Varnavas <frank.varna...@gs.com>
Subject patch: os-specific properties
Date Wed, 27 Jun 2001 20:50:35 GMT
The following patch enables one to define properties specific to a
given OS. For example:

  <property name="my_jar" value="e:\foo\jar\a.jar" os="WinNT"/>
  <property name="my_jar" value="/opt/jar/a.jar"   os="SunOS"/>

If the OS mismatches the property is ignored.

Frank Varnavas

=====================================

diff -c -r1.1.1.1 Property.java
*** Property.java	2001/06/21 20:50:04	1.1.1.1
--- Property.java	2001/06/27 20:39:58
***************
*** 76,81 ****
--- 76,82 ----
      protected String resource;
      protected Path classpath;
      protected String env;
+     protected String os;
      protected Reference ref = null;
  
      protected boolean userProperty=false; // set read-only properties
***************
*** 88,93 ****
--- 89,102 ----
          return name;
      }
  
+     public void setOS(String os) {
+         this.os = os;
+     }
+ 
+     public String getOS() {
+         return os;
+     }
+ 
      public void setLocation(File location) {
          setValue(location.getAbsolutePath());
      }
***************
*** 161,166 ****
--- 170,180 ----
  
      public void execute() throws BuildException {
          try {
+ 	  // dont load if os mismatch
+ 	  if( os != null && !os.equals(System.getProperty("os.name"))){
+ 	    log("Property skipped due to OS mismatch. Specified:" + 
+ 		os + " actual:" + System.getProperty("os.name"), Project.MSG_VERBOSE);
+ 	  } else {
              if ((name != null) && (value != null)) {
                  addProperty(name, value);
              }
***************
*** 177,182 ****
--- 191,197 ----
                      addProperty(name, obj.toString());
                  }
              }
+ 	  }
  
          } catch (Exception e) {
              throw new BuildException(e, location);

Mime
View raw message