/** * Parses a string in MongoDB Extended JSON format to a {@code BasicDBObject}. * * @param json the JSON string * @return a corresponding {@code BasicDBObject} object * @see org.bson.json.JsonReader * @mongodb.driver.manual reference/mongodb-extended-json/ MongoDB Extended JSON */ public static BasicDBObject parse(final String json) { return parse(json, DBObjectCodec.getDefaultRegistry().get(BasicDBObject.class)); }
void process(final MappedClass mc, final Validation validation) { if (validation != null) { String collectionName = mc.getCollectionName(); CommandResult result = getDB() .command(new BasicDBObject("collMod", collectionName) .append("validator", parse(validation.value())) .append("validationLevel", validation.level().getValue()) .append("validationAction", validation.action().getValue()) ); if (!result.ok()) { if (result.getInt("code") == 26) { ValidationOptions options = new ValidationOptions() .validator(parse(validation.value())) .validationLevel(validation.level()) .validationAction(validation.action()); getDatabase().createCollection(collectionName, new CreateCollectionOptions().validationOptions(options)); } else { result.throwOnError(); } } } }
String name = dbObject.get("name").toString(); if (name.equals("latitude_1")) { assertEquals(parse("{ 'latitude' : 1 }"), dbObject.get("key")); } else if (name.equals("behind_interface")) { assertEquals(parse("{ 'nest.name' : -1} "), dbObject.get("key")); assertEquals(parse("{ 'locale' : 'en' , 'caseLevel' : false , 'caseFirst' : 'off' , 'strength' : 2 , 'numericOrdering' :" + " false , 'alternate' : 'non-ignorable' , 'maxVariable' : 'punct' , 'normalization' : false , " + "'backwards' : false , 'version' : '57.1'}"), dbObject.get("collation")); } else if (name.equals("nest.name_1")) { assertEquals(parse("{ 'nest.name' : 1} "), dbObject.get("key")); } else if (name.equals("searchme")) { assertEquals(parse("{ 'text' : 10 }"), dbObject.get("weights")); } else if (name.equals("indexName_1")) { assertEquals(parse("{'indexName': 1 }"), dbObject.get("key")); } else { if (!"_id_".equals(dbObject.get("name"))) {
@Test public void indexedPartialFilters() { MongoCollection<Document> collection = getDatabase().getCollection("indexes"); MappedClass mappedClass = getMorphia().getMapper().getMappedClass(IndexedClass.class); Indexed indexed = new IndexedBuilder() .options(new IndexOptionsBuilder() .partialFilter("{ name : { $gt : 13 } }")); indexHelper.createIndex(collection, mappedClass, indexHelper.convert(indexed, "text"), false); findPartialIndex(BasicDBObject.parse(indexed.options().partialFilter())); }
Assert.assertEquals(BasicDBObject.parse(readFully("/ReferenceType.json")), dbObject); verifyCoverage(dbObject);
@Test public void textPartialFilters() { MongoCollection<Document> collection = getDatabase().getCollection("indexes"); MappedClass mappedClass = getMorphia().getMapper().getMappedClass(IndexedClass.class); Text text = new TextBuilder() .value(4) .options(new IndexOptionsBuilder() .partialFilter("{ name : { $gt : 13 } }")); indexHelper.createIndex(collection, mappedClass, indexHelper.convert(text, "text"), false); findPartialIndex(BasicDBObject.parse(text.options().partialFilter())); }
@Test public void indexPartialFilters() { MongoCollection<Document> collection = getDatabase().getCollection("indexes"); MappedClass mappedClass = getMorphia().getMapper().getMappedClass(IndexedClass.class); Index index = new IndexBuilder() .fields(new FieldBuilder().value("text")) .options(new IndexOptionsBuilder() .partialFilter("{ name : { $gt : 13 } }")); indexHelper.createIndex(collection, mappedClass, index, false); findPartialIndex(BasicDBObject.parse(index.options().partialFilter())); } @Test
for (DBObject dbObject : indexInfo) { if (dbObject.get("name").equals("collated")) { assertEquals(BasicDBObject.parse("{ name : { $exists : true } }"), dbObject.get("partialFilterExpression")); BasicDBObject collation = (BasicDBObject) dbObject.get("collation");
Assert.assertEquals(BasicDBObject.parse(readFully("/QueryStructure.json")), dbObject);
@Test @MongoDbAvailable public void testSavingDbObject() throws Exception { BasicDBObject dbObject = BasicDBObject.parse("{'foo' : 'bar'}"); MongoDbFactory mongoDbFactory = this.prepareMongoFactory("foo"); ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("outbound-adapter-config.xml", this.getClass()); MessageChannel channel = context.getBean("simpleAdapterWithTemplate", MessageChannel.class); Message<BasicDBObject> message = MessageBuilder.withPayload(dbObject) .setHeader("collectionName", "foo") .build(); channel.send(message); MongoTemplate template = new MongoTemplate(mongoDbFactory); assertNotNull(template.find(new BasicQuery("{'foo' : 'bar'}"), BasicDBObject.class, "foo")); context.close(); }
public BoolBuilder not(String json){ this.expression = NOT; DBObject dbo = BasicDBObject.parse(json); list.add(dbo); return this; }
@Test @MongoDbAvailable public void validatePipelineInModifyOut() throws Exception { MongoDbFactory mongoDbFactory = this.prepareMongoFactory(); MongoTemplate template = new MongoTemplate(mongoDbFactory); template.save(BasicDBObject.parse("{'name' : 'Manny', 'id' : 1}"), "data"); Expression queryExpression = new LiteralExpression("{'name' : 'Manny'}"); MongoDbMessageSource messageSource = new MongoDbMessageSource(mongoDbFactory, queryExpression); messageSource.setExpectSingleResult(true); messageSource.setBeanFactory(mock(BeanFactory.class)); messageSource.afterPropertiesSet(); Document result = (Document) messageSource.receive().getPayload(); Object id = result.get("_id"); result.put("company", "PepBoys"); template.save(result, "data"); result = (Document) messageSource.receive().getPayload(); assertEquals(id, result.get("_id")); }
public BuguAggregation project(String jsonString){ DBObject dbo = BasicDBObject.parse(jsonString); return project(dbo); }
public BuguAggregation match(String jsonString){ DBObject dbo = BasicDBObject.parse(jsonString); return match(dbo); }
/** * @since mongoDB 3.6 * @param jsonStr * @return */ public BuguQuery<T> expr(String jsonStr){ DBObject expression = BasicDBObject.parse(jsonStr); return expr(expression); }
public CondBuilder ifCondition(String json){ DBObject ifObj = BasicDBObject.parse(json); dbo.put(IF, ifObj); return this; }
/** * Parses a string in MongoDB Extended JSON format to a {@code BasicDBObject}. * * @param json the JSON string * @return a corresponding {@code BasicDBObject} object * @see org.bson.json.JsonReader * @mongodb.driver.manual reference/mongodb-extended-json/ MongoDB Extended JSON */ public static BasicDBObject parse(final String json) { return parse(json, DBObjectCodec.getDefaultRegistry().get(BasicDBObject.class)); }
@Override public JsonDataObjectAdaptor fromCollection(String collName) throws DataException { String json = readFile(this.testDataFolder, collName); BasicDBObject parsed = parse(json); JsonDataObjectAdaptor newObj = privateInit(this.testDataFolder, parsed, collName); newObj.applyGenerator(this.callback); return newObj; }
@Override public JsonDataAdaptor fromCollection(String collName) throws DataException { String json = readFile(this.testDataFolder, collName); BasicDBObject parsed = parse(json); JsonDataAdaptor newObj = privateInit(this.testDataFolder, parsed, collName); newObj.applyGenerator(this.callback); return newObj; }