Predicate predicate = cb.like(path, literal);
Predicate condition = cb.notEqual(c.get("deleted"), true);
cq.where(condition, predicate);
cq.distinct(asc);
if (asc) {
cq.orderBy(cb.asc(c.get(orderby)));
} else {
cq.orderBy(cb.desc(c.get(orderby)));
}
TypedQuery<User> q = em.createQuery(cq);
q.setFirstResult(start);