Example usage for org.springframework.data.mongodb.core.query Query getFieldsObject

List of usage examples for org.springframework.data.mongodb.core.query Query getFieldsObject

Introduction

In this page you can find the example usage for org.springframework.data.mongodb.core.query Query getFieldsObject.

Prototype

public Document getFieldsObject() 

Source Link

Usage

From source file:com.skymobi.monitor.model.LogQueryTest.java

public void test_query() throws Exception {

    assertEquals("{ }", query.toQuery().toString());
    query.setStart("2012-06-08 10:00:00");

    assertEquals("{ \"timestamp\" : { \"$gt\" : { \"$date\" : \"2012-06-08T02:00:00.000Z\"}}}",
            query.toQuery().toString());
    query.setEnd("2012-06-08 11:00:00");
    query.setLevel("ERROR");
    query.setKeyWord("111");
    System.out.println(query.toQuery().toString());

    Query bquery = new BasicQuery(query.toQuery());
    bquery.limit(100);/*from w  w w.  j  ava  2s . c  o  m*/

    bquery.sort().on("$timestamp", Order.DESCENDING);
    System.out.println(bquery.getQueryObject());
    System.out.println(bquery.getFieldsObject());
    System.out.println(bquery.getSortObject());
    //        assertEquals("{ \"timestamp\" : { \"$gt\" : { \"$date\" : \"1970-01-01T00:01:40.000Z\"}} , \"$where\" : \"this.message && this.message.match('hello')\"}",query.toQuery().toString());
}

From source file:com.appleframework.monitor.model.LogQueryTest.java

public void test_query() throws Exception {

    assertEquals("{ }", query.toQuery().toString());
    query.setStart("2012-06-08 10:00:00");

    assertEquals("{ \"timestamp\" : { \"$gt\" : { \"$date\" : \"2012-06-08T02:00:00.000Z\"}}}",
            query.toQuery().toString());
    query.setEnd("2012-06-08 11:00:00");
    query.setLevel("ERROR");
    query.setKeyWord("111");
    System.out.println(query.toQuery().toString());

    Query bquery = new BasicQuery(query.toQuery());
    bquery.limit(100);//from   w ww  .  j a  v  a  2  s.  c o m

    //bquery.sort().on("$timestamp", Order.DESCENDING);
    bquery.with(new Sort(Direction.DESC, "$timestamp"));
    System.out.println(bquery.getQueryObject());
    System.out.println(bquery.getFieldsObject());
    System.out.println(bquery.getSortObject());
    //        assertEquals("{ \"timestamp\" : { \"$gt\" : { \"$date\" : \"1970-01-01T00:01:40.000Z\"}} , \"$where\" : \"this.message && this.message.match('hello')\"}",query.toQuery().toString());
}

From source file:org.slc.sli.dal.repository.MongoEntityRepository.java

private Query addEmbededFields(Query query, Set<String> embededFields) {
    if (query == null) {
        return null;
    }/*from w ww .j  av  a 2s . com*/
    DBObject fieldObjects = query.getFieldsObject();
    if (fieldObjects != null) {
        for (String embededField : embededFields) {
            if (!fieldObjects.containsField(embededField)) {
                fieldObjects.put(embededField, 1);
            }
        }
    }
    return query;
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

/**
 * Execute a MongoDB query and iterate over the query results on a per-document basis with a
 * {@link DocumentCallbackHandler} using the provided CursorPreparer.
 * //from  w  w  w.  j a v  a 2 s. co  m
 * @param query the query class that specifies the criteria used to find a record and also an optional fields
 *          specification, must not be {@literal null}.
 * @param collectionName name of the collection to retrieve the objects from
 * @param dch the handler that will extract results, one document at a time
 * @param preparer allows for customization of the {@link DBCursor} used when iterating over the result set, (apply
 *          limits, skips and so on).
 */
protected void executeQuery(Query query, String collectionName, DocumentCallbackHandler dch,
        CursorPreparer preparer) {

    Assert.notNull(query);

    DBObject queryObject = query.getQueryObject();
    DBObject sortObject = query.getSortObject();
    DBObject fieldsObject = query.getFieldsObject();

    if (LOGGER.isDebugEnabled()) {
        LOGGER.debug(String.format("Executing query: %s sort: %s fields: %s in collection: $s",
                serializeToJsonSafely(queryObject), sortObject, fieldsObject, collectionName));
    }

    this.executeQueryInternal(new FindCallback(queryObject, fieldsObject), preparer, dch, collectionName);
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

public <T> T findOne(Query query, Class<T> entityClass, String collectionName) {
    if (query.getSortObject() == null) {
        return doFindOne(collectionName, query.getQueryObject(), query.getFieldsObject(), entityClass);
    } else {// ww w  .  java  2  s . co  m
        query.limit(1);
        List<T> results = find(query, entityClass, collectionName);
        return results.isEmpty() ? null : results.get(0);
    }
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

public <T> List<T> find(final Query query, Class<T> entityClass, String collectionName) {
    CursorPreparer cursorPreparer = query == null ? null : new QueryCursorPreparer(query);
    return doFind(collectionName, query.getQueryObject(), query.getFieldsObject(), entityClass, cursorPreparer);
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

public <T> T findAndModify(Query query, Update update, FindAndModifyOptions options, Class<T> entityClass,
        String collectionName) {// w w w  . j a v a2  s . co  m
    return doFindAndModify(collectionName, query.getQueryObject(), query.getFieldsObject(),
            query.getSortObject(), entityClass, update, options);
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

public <T> T findAndRemove(Query query, Class<T> entityClass, String collectionName) {
    return doFindAndRemove(collectionName, query.getQueryObject(), query.getFieldsObject(),
            query.getSortObject(), entityClass);
}

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

private DBObject copyQuery(Query query, DBObject copyMapReduceOptions) {
    if (query != null) {
        if (query.getSkip() != 0 || query.getFieldsObject() != null) {
            throw new InvalidDataAccessApiUsageException(
                    "Can not use skip or field specification with map reduce operations");
        }/* www  .  ja v  a  2  s . c  o m*/
        if (query.getQueryObject() != null) {
            copyMapReduceOptions.put("query", query.getQueryObject());
        }
        if (query.getLimit() > 0) {
            copyMapReduceOptions.put("limit", query.getLimit());
        }
        if (query.getSortObject() != null) {
            copyMapReduceOptions.put("sort", query.getSortObject());
        }
    }
    return copyMapReduceOptions;
}