in drools-benchmarks-parent/drools-benchmarks/src/main/java/org/drools/benchmarks/turtle/runtime/generator/AdvancedOperators4FactsGenerator.java [37:87]
protected List<Object> generateMatchingFacts(final int totalNumber) {
// generate needed number of facts
final List<Object> facts = new ArrayList<>();
final int nrOfFactsInInnerLoop = 7;
final int innerLoops = (config.getNumberOfRulesInDRL() / config.getNumberOfRuleTypesInDRL());
final int outerLoops = (totalNumber / (innerLoops * nrOfFactsInInnerLoop));
for (int j = 0; j < outerLoops; j++) {
for (int i = 0; i < innerLoops; i++) {
currentLoop = i;
///////////////////////////////////////////////////////////////
//rule "transactionsWithCertainAccountFrom_collect"
Account acc = new Account();
acc.setUuid("transactionsWithCertainAccountFrom_collect_" + getPlaceHolderValue("number1"));
acc.setName("name" + getRandomInt(1000, 100000000));
facts.add(acc);
Transaction tr = new Transaction();
tr.setAccountFrom(acc);
tr.setDescription("transactionDesc" + getRandomInt(1000, 1000000));
facts.add(tr);
tr = new Transaction();
tr.setAccountFrom(acc);
tr.setDescription("transactionDesc" + getRandomInt(1000, 1000000));
facts.add(tr);
tr = new Transaction();
tr.setAccountFrom(acc);
tr.setDescription("transactionDesc" + getRandomInt(1000, 1000000));
facts.add(tr);
///////////////////////////////////////////////////////////////
// same facts for all accumulate rules
acc = new Account();
acc.setUuid("totalAverageMinMaxlBalanceForCertainAccounts_accumulate_" + getPlaceHolderValue("number1"));
acc.setBalance(getRandomInt(1, 10000000));
facts.add(acc);
acc = new Account();
acc.setUuid("totalAverageMinMaxlBalanceForCertainAccounts_accumulate_" + getPlaceHolderValue("number1"));
acc.setBalance(getRandomInt(1, 10000000));
facts.add(acc);
acc = new Account();
acc.setUuid("totalAverageMinMaxlBalanceForCertainAccounts_accumulate_" + getPlaceHolderValue("number1"));
acc.setBalance(getRandomInt(1, 10000000));
facts.add(acc);
}
}
return facts;
}