Package com.google.appengine.api.datastore.Query

Examples of com.google.appengine.api.datastore.Query.CompositeFilter


  private static Query createQuery(String kind, String property, Object lowerBound,
      Object upperBound) {
    ImmutableList<Filter> f = ImmutableList.<Filter>builder()
        .add(new FilterPredicate(property, GREATER_THAN_OR_EQUAL, lowerBound))
        .add(new FilterPredicate(property, LESS_THAN, upperBound)).build();
    return BaseDatastoreInput.createQuery(null, kind).setFilter(new CompositeFilter(AND, f));
  }
View Full Code Here


  private static Query createQuery(String namespace, String kind, String property,
      Object lowerBound, Object upperBound) {
    ImmutableList<Filter> f = ImmutableList.<Filter>builder()
        .add(new FilterPredicate(property, GREATER_THAN_OR_EQUAL, lowerBound))
        .add(new FilterPredicate(property, LESS_THAN, upperBound)).build();
    return BaseDatastoreInput.createQuery(namespace, kind).setFilter(new CompositeFilter(AND, f));
  }
View Full Code Here

    FilterPredicate greater = new FilterPredicate("name", FilterOperator.GREATER_THAN_OR_EQUAL, backupName);
    FilterPredicate less = new FilterPredicate("name", FilterOperator.LESS_THAN_OR_EQUAL, backupName + "Z");
    List<Query.Filter> filters = new ArrayList<Query.Filter>();
    filters.add(greater);
    filters.add(less);
    CompositeFilter comp = new CompositeFilter(CompositeFilterOperator.AND, filters);
    q.setFilter(comp);
   
    PreparedQuery pq = datastore.prepare(q);
    List<Entity> results = pq.asList(FetchOptions.Builder.withLimit(1));
    if (results.size() != 1 || !results.get(0).getProperty("name").toString().contains(backupName)) {
View Full Code Here

        Entity entity = new Entity("Hoge");
        entity.setProperty("aaa", "111");
        entity.setProperty("bbb", "222");
        ds.put(entity);
        Query query = new Query("Hoge");
        query.setFilter(new CompositeFilter(CompositeFilterOperator.AND,
            Arrays.<com.google.appengine.api.datastore.Query.Filter>asList(
                new Query.FilterPredicate("aaa", FilterOperator.EQUAL, "111"),
                new Query.FilterPredicate("bbb", FilterOperator.EQUAL, "222"))));
       
        assertThat(ds.prepare(query).asList(FetchOptions.Builder.withDefaults()).size(), is(1));
View Full Code Here

                meta.myInteger.equal(1) };
        CompositeCriterion criterion =
            new CompositeCriterion(meta, operator, criteria);
        assertThat(criterion.getFilters().length, is(1));
        assertThat(criterion.getFilters()[0], is(CompositeFilter.class));
        CompositeFilter cf = (CompositeFilter) criterion.getFilters()[0];
        assertThat(cf.getOperator(), is(operator));
        assertThat(cf.getSubFilters().size(), is(2));

    }
View Full Code Here

            break;
        case 1:
            filters = new Filter[] { filters2.get(0) };
            break;
        default:
            filters = new Filter[] { new CompositeFilter(operator, filters2) };
        }
    }
View Full Code Here

        b.add(r.getUpperBound());
      }
      ImmutableList<Filter> filters = b.build();
      if (!filters.isEmpty()) {
        if (filters.size() > 1) {
          subQuery.setFilter(new CompositeFilter(AND, filters));
        } else {
          subQuery.setFilter(filters.get(0));
        }
      }
      result.add(subQuery);
View Full Code Here

              + " unsupported because they do not work with cursors.");
        default:
          throw new UnsupportedOperationException("Unsupported query FilterPredicate");
      }
    } else if (filter instanceof CompositeFilter) {
      CompositeFilter composite = (CompositeFilter) filter;
      if (CompositeFilterOperator.AND != composite.getOperator()) {
        throw new UnsupportedOperationException(
            "AND is the only supported CompositeFilterOperator for datastore queries.");
      }
      for (Filter f : composite.getSubFilters()) {
        filterToEqualityListAndRange(f, equality, range);
      }
    } else {
      throw new UnsupportedOperationException(
          "Only FilterPredicate or CompositeFilter are supported for datastore queries.");
View Full Code Here

    Query q = createQuery(namespace, kind).addSort(propertyName, direction);
    if (!equalityFilters.isEmpty()) {
      if (equalityFilters.size() == 1) {
        q.setFilter(equalityFilters.get(0));
      } else {
        q.setFilter(new CompositeFilter(AND, equalityFilters));
      }
    }
    List<Entity> item = runQuery(q, 1);
    if (item.isEmpty()) {
      return null;
View Full Code Here

          FilterOperator.EQUAL, tableId);

      Filter mementoIdFilter = new FilterPredicate("mementoId",
          FilterOperator.GREATER_THAN, mementoId);

      Filter tableIdAndMementoIdFilter = new CompositeFilter(
          CompositeFilterOperator.AND, Arrays.asList(tableIdFilter,
              mementoIdFilter));

      Query q = new Query("TableMemento")
          .setFilter(tableIdAndMementoIdFilter);
View Full Code Here

TOP

Related Classes of com.google.appengine.api.datastore.Query.CompositeFilter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.