1 28 29 package com.idaremedia.antx.flowcontrol.match; 30 31 import org.apache.tools.ant.BuildException; 32 import org.apache.tools.ant.Project; 33 import org.apache.tools.ant.types.Reference; 34 35 import com.idaremedia.antx.FlexString; 36 import com.idaremedia.antx.StringEquality; 37 import com.idaremedia.antx.parameters.IgnoreCaseEnabled; 38 import com.idaremedia.antx.parameters.TrimEnabled; 39 40 51 52 public abstract class MatchString extends ChoiceTask 53 implements IgnoreCaseEnabled, TrimEnabled 54 { 55 58 protected MatchString(String iam) 59 { 60 super(iam); 61 } 62 63 64 65 70 protected MatchString(String iam, boolean delayConfiguration) 71 { 72 super(iam,delayConfiguration); 73 } 74 75 76 77 81 public void setProject(Project P) 82 { 83 super.setProject(P); 84 getTest().setProject(P); 85 } 86 87 88 89 93 protected StringEquality getTest() 94 { 95 return m_eqTest; 96 } 97 98 99 100 106 public final String getFlexValue() 107 { 108 return getTest().getKnownValueGetter().get(); 109 } 110 111 112 113 118 public void setValue(String value) 119 { 120 require_(value!=null,"setvalu- nonzro valu"); 121 getTest().setKnownArg(value,false); 122 } 123 124 125 126 130 public final String getValue() 131 { 132 FlexString eqT= getTest().getKnownValueGetter(); 133 return eqT.isLiteral() ? eqT.get() : null; 134 } 135 136 137 138 144 public void setProperty(String property) 145 { 146 require_(property!=null,"setprop- nonzro name"); 147 getTest().setKnownArg(property,true); 148 } 149 150 151 152 156 public final String getProperty() 157 { 158 FlexString eqT= getTest().getKnownValueGetter(); 159 return eqT.isProperty() ? eqT.get() : null; 160 } 161 162 163 164 171 public void setVariable(String variable) 172 { 173 require_(variable!=null,"setVar- nonzro name"); 174 getTest().setKnownArg(variable,false); 175 getTest().getKnownValueGetter().setIsExported(true); 176 } 177 178 179 180 185 public final String getVariable() 186 { 187 FlexString eqT= getTest().getKnownValueGetter(); 188 return eqT.isExported() ? eqT.get() : null; 189 } 190 191 192 193 200 public void setReference(String refid) 201 { 202 require_(refid!=null,"setRef- nonzro refid"); 203 getTest().setKnownArg(refid,false); 204 getTest().getKnownValueGetter().setIsReference(true); 205 } 206 207 208 209 214 public final String getReference() 215 { 216 FlexString eqT= getTest().getKnownValueGetter(); 217 return eqT.isReference() ? eqT.get() : null; 218 } 219 220 221 222 225 public final boolean isUndefined() 226 { 227 return getTest().getKnownValueGetter().isUndefined(); 228 } 229 230 231 232 237 public final String getVUT() 238 { 239 return getTest().getKnownValue(); 240 } 241 242 243 244 249 public void setIgnoreCase(boolean ignore) 250 { 251 getTest().setIgnoreCase(ignore); 252 } 253 254 255 256 259 public final boolean isIgnoreCase() 260 { 261 return getTest().isIgnoreCase(); 262 } 263 264 265 266 271 public void setTrim(boolean trim) 272 { 273 getTest().setTrim(trim); 274 } 275 276 277 278 282 public final boolean willTrim() 283 { 284 return getTest().willTrim(); 285 } 286 287 288 289 297 public boolean eval(String vut, Reference context) throws BuildException 298 { 299 verifyCanExecute_("eval"); 300 301 if (vut==null) { 302 return false; } 304 305 StringEquality test= getTest(); 306 307 test.setUnknownArg(vut); 308 309 return test.eval(); 310 } 311 312 313 314 private StringEquality m_eqTest = new StringEquality(); 315 } 316 317 318 | Popular Tags |