условие записи для list1.contains(list2) в слюнях

я дал pojos, как

Customer{ List<String> groups; }

Master{
   List<String> groups;
}

Я хочу проверить такие условия, как

master1.groups.containsAny(customer1.groups);

а также

master1.groups.containsAll(customer1.groups);

Как я могу написать условие слюни для этих двух? Заранее спасибо.


person Rohit Raman Das    schedule 08.01.2018    source источник
comment
Существует метод List.containsAll. Для containsAny вам, возможно, придется написать статический метод или функцию DRL.   -  person laune    schedule 08.01.2018


Ответы (1)


Используйте нижеприведенные функции Drools

function boolean containsAny(List<String> sourceList, List<String> targetList){
    sourceList.retainAll(targetList);
    return sourceList.size() != 0;
}
function boolean containsAll(List<String> sourceList, List<String> targetList){
    int size = sourceList.size();
    sourceList.retainAll(targetList);
    return sourceList.size() == size;
}
person jeet427    schedule 18.01.2018