Anstelle der getObjects() -Methode können Sie eine Abfrage verwenden. Abfragen sind wie Regeln ohne RHS:
query "getObjectsOfClassA"
$result: ClassA()
end
können Sie verwenden, um alle die Macht der DRL Sprache innerhalb Ihrer Anfragen wirklich komplexe Anpassungsmuster zu erstellen. Sie können sogar zu Argumente auf Anfragen übergeben: http://docs.jboss.org/drools/release/5.5.0.Final/drools-expert-docs/html_single/#d0e7632
Dann in Ihrem Java-Code, können Sie Ihre Abfrage aufrufen mit:
QueryResults results = ksession.getQueryResults("getObjectsOfClassA");
for (QueryResultsRow row : results) {
ClassA classA = (ClassA) row.get("$result"); //you can retrieve all the bounded variables here
//do whatever you want with classA
}
Wenn Sie die Menge aller KlasseA benötigen Sie eine accumulate Funktion können Sie in Ihre Anfrage.
Hoffe, dass es hilft,