182         CriteriaBuilder builder = 
entityManager.getCriteriaBuilder();
   183         CriteriaQuery<ResourceEntity> querybuilder = builder.createQuery(ResourceEntity.class);
   184         Root<ResourceEntity> root = querybuilder.from(ResourceEntity.class);
   185         querybuilder.select(root.get(
"id"));
   186         List<Predicate> predicates = 
new ArrayList();
   188         if (resourceServerId != null) {
   189             predicates.add(builder.equal(root.get(
"resourceServer").get(
"id"), resourceServerId));
   192         attributes.forEach((name, value) -> {
   193             if (
"id".equals(name)) {
   194                 predicates.add(root.get(name).in(value));
   195             } 
else if (
"scope".equals(name)) {
   196                 predicates.add(root.join(
"scopes").get(
"id").in(value));
   197             } 
else if (
"ownerManagedAccess".equals(name)) {
   198                 predicates.add(builder.equal(root.get(name), Boolean.valueOf(value[0])));
   199             } 
else if (
"uri".equals(name)) {
   200                 predicates.add(builder.lower(root.join(
"uris")).in(value[0].toLowerCase()));
   201             } 
else if (
"uri_not_null".equals(name)) {
   204                 Expression<Integer> urisSize = builder.size(root.get(
"uris"));
   205                 predicates.add(builder.notEqual(urisSize, 0));
   206             } 
else if (
"owner".equals(name)) {
   207                 predicates.add(root.get(name).in(value));
   209                 predicates.add(builder.like(builder.lower(root.get(name)), 
"%" + value[0].toLowerCase() + 
"%"));
   213         querybuilder.where(predicates.toArray(
new Predicate[predicates.size()])).orderBy(builder.asc(root.get(
"name")));
   217         if (firstResult != -1) {
   218             query.setFirstResult(firstResult);
   220         if (maxResult != -1) {
   221             query.setMaxResults(maxResult);
   224         List<String> result = query.getResultList();
   225         List<Resource> list = 
new LinkedList<>();
   228         for (String 
id : result) {
   229             Resource resource = resourceStore.
findById(
id, resourceServerId);
   231             if (resource != null) {
 final EntityManager entityManager
Definition: JPAResourceStore.java:49
 
final AuthorizationProvider provider
Definition: JPAResourceStore.java:50
 
StoreFactory getStoreFactory()
Definition: AuthorizationProvider.java:109
 
Resource findById(String id, String resourceServerId)
 
ResourceStore getResourceStore()