/** * recursive used to determine if we need to record the request/response * pair * * @param rule * @return */ protected boolean doesSLARuleContainXpath(RuleBaseType rule) { if (rule == null) { return false; } if (rule instanceof SLARuleGeneric) { SLARuleGeneric r = (SLARuleGeneric) rule; if (r.getClassName().equalsIgnoreCase("org.miloss.fgsms.sla.rules.XPathExpression")) { return true; } } if (rule instanceof AndOrNot) { AndOrNot t1 = (AndOrNot) rule; return doesSLARuleContainXpath(t1.getLHS()) || doesSLARuleContainXpath(t1.getRHS()); } return false; }
private static boolean containsChangeInStatus(RuleBaseType b) { if (b == null) { return false; } if (b instanceof SLARuleGeneric) { { SLARuleGeneric asd = (SLARuleGeneric) b; if (asd.getClassName().equalsIgnoreCase(ChangeInAvailabilityStatus.class.getCanonicalName())) { return true; } } } if (b instanceof AndOrNot) { AndOrNot x = (AndOrNot) b; if (x.getFlag() == JoiningType.AND) { return containsChangeInStatus(x.getLHS()) && containsChangeInStatus(x.getRHS()); } if (x.getFlag() == JoiningType.OR) { return containsChangeInStatus(x.getLHS()) || containsChangeInStatus(x.getRHS()); } } return false; }
switch (aon.getFlag()) { case AND: return validateRulesRecursive(pol, ref, aon.getLHS()) && validateRulesRecursive(pol, ref, aon.getRHS()); case NOT: return !validateRulesRecursive(pol, ref, aon.getLHS()); case OR: return validateRulesRecursive(pol, ref, aon.getLHS()) || validateRulesRecursive(pol, ref, aon.getRHS());
AndOrNot x = (AndOrNot) rule; if (x.getFlag() == JoiningType.AND) { return "(" + BuildSLARuleData(x.getLHS(), rule_plugins) + " and " + BuildSLARuleData(x.getRHS(), rule_plugins) + ")"; return "(" + BuildSLARuleData(x.getLHS(), rule_plugins) + " or " + BuildSLARuleData(x.getRHS(), rule_plugins) + ")";
switch (aon.getFlag()) { case AND: return ProcessNonTransactionalRules(faultMsg, aon.getLHS(), pol, pooled, p) && ProcessNonTransactionalRules(faultMsg, aon.getRHS(), pol, pooled, p); case OR: return ProcessNonTransactionalRules(faultMsg, aon.getLHS(), pol, pooled, p) || ProcessNonTransactionalRules(faultMsg, aon.getRHS(), pol, pooled, p); case NOT: return !ProcessNonTransactionalRules(faultMsg, aon.getLHS(), pol, pooled, p);