cau mam otazku z drools. Potrebuju v drools zjistit jestli kolekce A obsahuje aspon jeden prvek z kolekce B. Priklad:
class Context{
...
getChildContexts() {
... vrati v kolekci vsechny subkontexty a samo sebe ( _this_ )
}
}
class LineItems {
List<Context> parentContext; ... kolekce urcujici do kterejch vsech kontextu ten lineItem patri
}
no a ted samozrejme bych rad udelal v pravidle "dej mi lineItemy ktery alespon castecne patrej do tohodle kontextu a jeho subkontextu" (tj. maji alespon jeden parentContext kterej patri do toho podstromu). V jave jsem to delal tak, ze normalne for cyklus. Kazdopadne jak to prepisu do drools?
zkousel jsem:
when
LineItem($contexts: contexts)
Context(childContexts contains $contexts)
then
System.out.println("kuku");
ale problem je zrejmej - jak childContexts tak $contexts jsou ArrayListy takze on ceka ze v tom Listu childContext bude jako jeden jeho prvek celej list $contexts ... potreboval bych to nejak splostit nebo dodat operator containsAtLeastOneFrom