
com.ctp.cdi.query.criteria.predicate.In Maven / Gradle / Ivy
The newest version!
package com.ctp.cdi.query.criteria.predicate;
import java.util.Arrays;
import java.util.List;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.Path;
import javax.persistence.criteria.Predicate;
import javax.persistence.metamodel.SingularAttribute;
public class In implements PredicateBuilder
{
SingularAttribute super P, V> singular;
V[] values;
public In(SingularAttribute super P, V> singular, V[] values) {
this.singular = singular;
this.values = Arrays.copyOf(values, values.length);
}
@Override
public List build(CriteriaBuilder builder, Path path) {
Path p = path.get(singular);
CriteriaBuilder.In in = builder.in(p);
for (V value : values) {
if (value != null) {
in.value(value);
}
}
return Arrays.asList((Predicate) in);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy