use of org.drools.verifier.components.TextConsequence in project drools by kiegroup.
the class VerifierDataMapsTest method testSaveVerifierComponentAndGetForAllComponentTypes.
@Test
public void testSaveVerifierComponentAndGetForAllComponentTypes() {
RulePackage rulePackage = VerifierComponentMockFactory.createPackage1();
saveVerifierComponentAndGet(rulePackage);
VerifierRule rule = VerifierComponentMockFactory.createRule1();
saveVerifierComponentAndGet(rule);
Pattern pattern = VerifierComponentMockFactory.createPattern1();
saveVerifierComponentAndGet(pattern);
saveVerifierComponentAndGet(new InlineEvalDescr(pattern));
saveVerifierComponentAndGet(new ObjectType(new PackageDescr("testPackage1")));
saveVerifierComponentAndGet(new RuleOperatorDescr(new AndDescr(), rule, OperatorDescrType.AND));
saveVerifierComponentAndGet(new PatternOperatorDescr(pattern, OperatorDescrType.AND));
saveVerifierComponentAndGet(new SubPattern(pattern, 0));
saveVerifierComponentAndGet(new ReturnValueFieldDescr(pattern));
saveVerifierComponentAndGet(new SubRule(rule, 0));
saveVerifierComponentAndGet(new TextConsequence(rule));
saveVerifierComponentAndGet(new PatternVariable(rule));
saveVerifierComponentAndGet(new VerifierAccessorDescr(rule));
saveVerifierComponentAndGet(new VerifierAccumulateDescr(pattern));
saveVerifierComponentAndGet(new VerifierCollectDescr(pattern));
saveVerifierComponentAndGet(new RuleEval(rule));
saveVerifierComponentAndGet(new VerifierFieldAccessDescr(rule));
saveVerifierComponentAndGet(new VerifierFromDescr(pattern));
saveVerifierComponentAndGet(new VerifierMethodAccessDescr(rule));
saveVerifierComponentAndGet(new PatternEval(pattern));
}
use of org.drools.verifier.components.TextConsequence in project drools by kiegroup.
the class RuleDescrVisitor method visitConsequence.
/**
* Creates verifier object from rule consequence. Currently only supports
* text based consequences.
*
* @param o Consequence object.
* @return Verifier object that implements the Consequence interface.
*/
private Consequence visitConsequence(VerifierComponent parent, Object o) {
TextConsequence consequence = new TextConsequence(rule);
String text = o.toString();
/*
* Strip all comments out of the code.
*/
StringBuffer buffer = new StringBuffer(text);
int commentIndex = buffer.indexOf("//");
while (commentIndex != -1) {
buffer = buffer.delete(commentIndex, buffer.indexOf("\n", commentIndex));
commentIndex = buffer.indexOf("//");
}
text = buffer.toString();
/*
* Strip all useless characters out of the code.
*/
text = text.replaceAll("\n", "");
text = text.replaceAll("\r", "");
text = text.replaceAll("\t", "");
text = text.replaceAll(" ", "");
consequence.setText(text);
consequence.setParentPath(parent.getPath());
consequence.setParentType(parent.getVerifierComponentType());
data.add(consequence);
return consequence;
}
Aggregations