method.getFieldSpecification(), this.fieldSpecParameterBindings);
@Override protected Query createQuery(ConvertingParameterAccessor accessor) { MongoQueryCreator creator = new MongoQueryCreator(tree, accessor, context, isGeoNearQuery); Query query = creator.createQuery(); if (tree.isLimiting()) { query.limit(tree.getMaxResults()); } TextCriteria textCriteria = accessor.getFullText(); if (textCriteria != null) { query.addCriteria(textCriteria); } String fieldSpec = getQueryMethod().getFieldSpecification(); if (!StringUtils.hasText(fieldSpec)) { ReturnedType returnedType = processor.withDynamicProjection(accessor).getReturnedType(); if (returnedType.isProjecting()) { returnedType.getInputProperties().forEach(query.fields()::include); } return query; } try { BasicQuery result = new BasicQuery(query.getQueryObject(), Document.parse(fieldSpec)); result.setSortObject(query.getSortObject()); return result; } catch (JSONParseException o_O) { throw new IllegalStateException(String.format("Invalid query or field specification in %s!", getQueryMethod()), o_O); } }
String fieldSpec = this.getQueryMethod().getFieldSpecification();
method.getFieldSpecification(), this.fieldSpecParameterBindings);
String fieldSpec = this.getQueryMethod().getFieldSpecification();
@Override protected Query createQuery(ConvertingParameterAccessor accessor) { MongoQueryCreator creator = new MongoQueryCreator(tree, accessor, context, isGeoNearQuery); Query query = creator.createQuery(); if (tree.isLimiting()) { query.limit(tree.getMaxResults()); } TextCriteria textCriteria = accessor.getFullText(); if (textCriteria != null) { query.addCriteria(textCriteria); } String fieldSpec = getQueryMethod().getFieldSpecification(); if (!StringUtils.hasText(fieldSpec)) { ReturnedType returnedType = processor.withDynamicProjection(accessor).getReturnedType(); if (returnedType.isProjecting()) { returnedType.getInputProperties().forEach(query.fields()::include); } return query; } try { BasicQuery result = new BasicQuery(query.getQueryObject(), Document.parse(fieldSpec)); result.setSortObject(query.getSortObject()); return result; } catch (JSONParseException o_O) { throw new IllegalStateException(String.format("Invalid query or field specification in %s!", getQueryMethod()), o_O); } }