@Test public void testAccumulateExternalFunction() throws Exception { final PackageDescr pkg = (PackageDescr) parseResource( "compilationUnit", "accumulateExternalFunction.drl" ); assertEquals( 1, pkg.getRules().size() ); final RuleDescr rule = (RuleDescr) pkg.getRules().get( 0 ); assertEquals( 1, rule.getLhs().getDescrs().size() ); final PatternDescr out = (PatternDescr) rule.getLhs().getDescrs().get( 0 ); final AccumulateDescr accum = (AccumulateDescr) out.getSource(); assertEqualsIgnoreWhitespace( "$age", accum.getFunctions().get( 0 ).getParams()[0] ); assertEqualsIgnoreWhitespace( "average", accum.getFunctions().get( 0 ).getFunction() ); assertTrue( accum.isExternalFunction() ); final PatternDescr pattern = (PatternDescr) accum.getInputPattern(); assertEquals( "Person", pattern.getObjectType() ); }
assertTrue( accum.isExternalFunction() ); List<AccumulateFunctionCallDescr> functions = accum.getFunctions(); assertEquals( 3, functions.size() );
assertTrue( accum.isExternalFunction() ); List<AccumulateFunctionCallDescr> functions = accum.getFunctions(); assertEquals( 1, functions.size() );
assertTrue( accum.isExternalFunction() ); List<AccumulateFunctionCallDescr> functions = accum.getFunctions(); assertEquals( 1, functions.size() );
assertTrue( accum.isExternalFunction() ); List<AccumulateFunctionCallDescr> functions = accum.getFunctions(); assertEquals( 3, functions.size() );
assertTrue( accum.isExternalFunction() ); List<AccumulateFunctionCallDescr> functions = accum.getFunctions(); assertEquals( 2, functions.size() );
accumulatedescr.getFunctions().get( 0 ).getFunction() );
protected void visit(final AccumulateDescr descr) { visit(descr.getInputPattern()); for (AccumulateFunctionCallDescr accFuncCallDescr : descr.getFunctions()) { visit(accFuncCallDescr); } }
fac.setSourcePattern( parseBaseDescr( accumulate.getInput(), boundParams ) ); fac.setFactPattern( new FactPattern( pattern.getObjectType() ) ); for ( AccumulateDescr.AccumulateFunctionCallDescr func : accumulate.getFunctions() ) { String funcName = func.getFunction(); boolean first = true;
for (AccumulateDescr.AccumulateFunctionCallDescr func : accumulate.getFunctions()) { String funcName = func.getFunction(); boolean first = true;