1 28 29 package com.idaremedia.antx.condition; 30 31 import org.apache.tools.ant.BuildException; 32 import org.apache.tools.ant.Project; 33 import org.apache.tools.ant.taskdefs.Available; 34 import org.apache.tools.ant.taskdefs.condition.Condition; 35 import org.apache.tools.ant.types.Path; 36 import org.apache.tools.ant.types.Reference; 37 38 import com.idaremedia.antx.AssertableProjectComponent; 39 import com.idaremedia.antx.helpers.Strings; 40 41 53 54 public final class IsResource extends AssertableProjectComponent 55 implements Condition, URIable 56 { 57 60 public IsResource() 61 { 62 m_impl = new Available(); 63 } 64 65 66 71 public IsResource(String value) 72 { 73 this(); 74 setName(value); 75 } 76 77 78 82 public void setProject(Project p) 83 { 84 super.setProject(p); 85 m_impl.setProject(p); 86 } 87 88 89 93 public void setName(String resource) 94 { 95 require_(resource!=null,"setval- nonzro rsrc name"); 96 m_impl.setResource(resource); 97 } 98 99 100 104 public void setClasspath(Path classpath) 105 { 106 require_(classpath!=null,"setCP- nonzro cp"); 107 m_impl.setClasspath(classpath); 108 } 109 110 111 115 public void setClasspathRef(Reference r) 116 { 117 require_(r!=null,"setCPref- nonzro cp refid"); 118 m_impl.setClasspathRef(r); 119 } 120 121 122 127 public void setSystemClasses(boolean include) 128 { 129 m_impl.setIgnoresystemclasses(!include); 130 } 131 132 133 138 public void setTrueProperty(String property) 139 { 140 require_(property!=null,"setTrueProp- nonzro name"); 141 m_updateProperty = property; } 143 144 145 150 public final String getTrueProperty() 151 { 152 return m_updateProperty; 153 } 154 155 156 157 162 public void xsetFromURI(String fragment) 163 { 164 setName(fragment); 165 } 166 167 168 172 public boolean eval() throws BuildException 173 { 174 verifyInProject_("eval"); 175 176 boolean istrue = m_impl.eval(); 177 178 if (istrue && m_updateProperty!=null) { 179 log("IsResource was true; setting true-property '"+m_updateProperty+ 180 "' property", Project.MSG_DEBUG); 181 getProject().setNewProperty(m_updateProperty,Strings.TRUE); 182 } 183 184 return istrue; 185 } 186 187 188 private Available m_impl; 189 private String m_updateProperty; 190 } 191 192 193 | Popular Tags |