package net.sf.minuteProject.configuration.bean; import net.sf.minuteProject.utils.StringUtils; public class Condition extends AbstractConfiguration { public static final String REGEX = "regex"; public static final String ENDS_WITH = "endsWith"; public static final String CONTAINS = "contains"; public static final String STARTS_WITH = "startsWith"; public static final String EQUALS = "equals"; public static final String INCLUDE = "include"; public static final String PACKAGE = "package"; public static final String EXCLUDE = "exclude"; private String type; private String startsWith; private String endsWith, equals; private String regex; private String result; public boolean isConditionFalse(String valueToTest) { return !isConditionTrue(valueToTest); } public boolean isConditionTrue(String valueToTest) { if (StringUtils.startsWithIgnoreCase(valueToTest, startsWith)==true) return true; if (StringUtils.equalsIgnoreCase(valueToTest, equals)==true) return true; if (StringUtils.endsWithIgnoreCase(valueToTest, endsWith)==true) return true; if (StringUtils.regex(valueToTest, regex)==true) return true; return false; } // public boolean isConditionStartsWithTrue (String valueToTest, String pattern) { // return StringUtils.startsWithIgnoreCase (valueToTest, startsWith); //// System.out.println("valueToTest "+valueToTest+" isConditionStartsWithTrue = "+"startsW "+startsWith+" result : "+isConditionTrue(valueToTest, STARTS_WITH, pattern)); //// return isConditionTrue(valueToTest, STARTS_WITH, pattern); // } // public boolean isConditionEndsWithTrue (String valueToTest, String pattern) { // System.out.println(">>>>>>valueToTest "+valueToTest+" isConditionEndsWithTrue = "+"endsW "+endsWith+" result : "+isConditionTrue(valueToTest, ENDS_WITH, pattern)); // // return isConditionTrue(valueToTest, ENDS_WITH, pattern); // } // public boolean isConditionRegexTrue (String valueToTest, String pattern) { // return isConditionTrue(valueToTest, REGEX, pattern); // } // public boolean isConditionTrue (String valueToTest, String expression, String pattern) { //// if ((INCLUDE.equals(type)||EXCLUDE.equals(type)||PACKAGE.equals(type)) && expression!=null){ //// return net.sf.minuteProject.utils.StringUtils.checkExpression(valueToTest, expression); //// } // if (EXCLUDE.equals(type) && expression!=null){ // return !net.sf.minuteProject.utils.StringUtils.checkExpression(valueToTest, expression, pattern); // } // if (PACKAGE.equals(type) && expression!=null) { // return net.sf.minuteProject.utils.StringUtils.checkExpression(valueToTest, expression, pattern); // } // if (INCLUDE.equals(type) && expression!=null){ // return net.sf.minuteProject.utils.StringUtils.checkExpression(valueToTest, expression, pattern); // } // return false; // } public String getConditionResult(String valueToTest) { if (isConditionTrue(valueToTest)) return result; return null; } public String getRegex() { return regex; } public void setRegex(String regex) { this.regex = regex; } public String getStartsWith() { return startsWith; } public void setStartsWith(String startsWith) { this.startsWith = startsWith; } public String getEndsWith() { return endsWith; } public void setEndsWith(String endsWith) { this.endsWith = endsWith; } public String getEquals() { return equals; } public void setEquals(String equals) { this.equals = equals; } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getResult() { return result; } public void setResult(String result) { this.result = result; } }