private String addInsertToStream(final Timestamp<?> currentTimestamp, final DBObject data, final String collection) throws InterruptedException { totalDocuments.incrementAndGet(); addToStream(Operation.INSERT, currentTimestamp, data, collection); if (data == null) { return null; } else { return data.containsField(MongoDBRiver.MONGODB_ID_FIELD) ? data.get(MongoDBRiver.MONGODB_ID_FIELD).toString() : null; } }
private String addInsertToStream(final Timestamp<?> currentTimestamp, final DBObject data, final String collection) throws InterruptedException { totalDocuments.incrementAndGet(); addToStream(Operation.INSERT, currentTimestamp, data, collection); if (data == null) { return null; } else { return data.containsField(MongoDBRiver.MONGODB_ID_FIELD) ? data.get(MongoDBRiver.MONGODB_ID_FIELD).toString() : null; } }
private Object verifyForDBRef(final DBObject document) { if (document.containsField("$ref") && document.containsField("$id")) { return new DBRef((String) document.get("$db"), (String) document.get("$ref"), document.get("$id")); } else { return document; } } }
private boolean filterMatch(DBObject filter, DBObject object) { for (String key : filter.keySet()) { if (!object.containsField(key)) { return false; } if (!filter.get(key).equals(object.get(key))) { return false; } } return true; }
@Override public Node byNodeId(String nodeId) throws NodeNotFoundException { DBObject query = new BasicDBObject("node_id", nodeId); DBObject o = findOne(NodeImpl.class, query); if (o == null || !o.containsField("node_id")) { throw new NodeNotFoundException("Unable to find node " + nodeId); } return new NodeImpl((ObjectId) o.get("_id"), o.toMap()); }
@PostPersist void postPersistWithParam(final DBObject dbObj) { postPersistWithParam = true; if (!dbObj.containsField("_id")) { throw new RuntimeException("missing " + "_id"); } }
private void verifyCoverage(final DBObject dbObject) { for (MappedField field : getMorphia().getMapper().getMappedClass(ReferenceType.class).getPersistenceFields()) { String name = field.getNameToStore(); boolean found = dbObject.containsField(name); if (!found) { for (String s : dbObject.keySet()) { found |= s.startsWith(name + "."); } } assertTrue("Not found in dbObject: " + name, found); } }
@Test @SuppressWarnings("deprecation") public void snapshotOld() { Assume.assumeTrue(serverIsAtMostVersion(3.6)); QueryImpl<Photo> query = (QueryImpl<Photo>) getDs().find(Photo.class) .enableSnapshotMode(); Assert.assertTrue(query.getOptions().getModifiers().containsField("$snapshot")); query.find(new FindOptions().limit(1)) .tryNext(); query.disableSnapshotMode(); Assert.assertFalse(query.getOptions().getModifiers().containsField("$snapshot")); }
@Test public void testEmbeddedArrayElementHasNoClassname() { getMorphia().map(ContainsEmbeddedArray.class); final ContainsEmbeddedArray cea = new ContainsEmbeddedArray(); cea.res = new RenamedEmbedded[]{new RenamedEmbedded()}; final DBObject dbObj = getMorphia().toDBObject(cea); assertTrue(!((DBObject) ((List) dbObj.get("res")).get(0)).containsField( getMorphia().getMapper().getOptions().getDiscriminatorField())); }
@Test public void testEmbeddedEntityDBObjectHasNoClassname() { getMorphia().map(ContainsEmbeddedEntity.class); final ContainsEmbeddedEntity cee = new ContainsEmbeddedEntity(); cee.cil = new ContainsIntegerList(); cee.cil.intList = Collections.singletonList(1); final DBObject dbObj = getMorphia().toDBObject(cee); assertTrue(!((DBObject) dbObj.get("cil")).containsField( getMorphia().getMapper().getOptions().getDiscriminatorField())); }
@Test @SuppressWarnings("deprecation") public void testFluentAndQuery1() { getDs().save(new PhotoWithKeywords("scott", "hernandez")); final Query<PhotoWithKeywords> q = getAds().find(PhotoWithKeywords.class); q.and(q.criteria("keywords.keyword").hasThisOne("scott"), q.criteria("keywords.keyword").hasAnyOf(asList("scott", "hernandez"))); assertEquals(1, q.count()); assertTrue(q.getQueryObject().containsField("$and")); }
private void shouldFindField(final HasList hl, final List<String> expected) { getDs().save(hl); final DBObject dbObj = getDs().getCollection(HasList.class).findOne(); Assert.assertTrue("Should find the field", dbObj.containsField("names")); Assert.assertEquals(expected, getDs().find(HasList.class) .find(new FindOptions().limit(1)) .tryNext() .names); }
private void shouldFindField(final HasMap hl, final Map<String, String> expected) { final DBObject dbObj; getDs().save(hl); dbObj = getDs().getCollection(HasMap.class).findOne(); Assert.assertTrue("Should find the field", dbObj.containsField("properties")); Assert.assertEquals(expected, getDs().find(HasMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
private void shouldFindField(final HasCollectionValuedMap hm, final Map<String, Collection<String>> expected) { final DBObject dbObj; getDs().save(hm); dbObj = getDs().getCollection(HasCollectionValuedMap.class).findOne(); Assert.assertTrue("Should find the field", dbObj.containsField("properties")); Assert.assertEquals(expected, getDs().find(HasCollectionValuedMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
private void shouldFindField(final HasComplexObjectValuedMap hm, final Map<String, ComplexObject> expected) { final DBObject dbObj; getDs().save(hm); dbObj = getDs().getCollection(HasComplexObjectValuedMap.class).findOne(); Assert.assertTrue("Should find the field", dbObj.containsField("properties")); Assert.assertEquals(expected, getDs().find(HasComplexObjectValuedMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
private void shouldNotFindField(final HasComplexObjectValuedMap hm) { getDs().save(hm); DBObject dbObj = getDs().getCollection(HasComplexObjectValuedMap.class).findOne(); Assert.assertFalse("field should not exist, value = " + dbObj.get("properties"), dbObj.containsField("properties")); Assert.assertNull(getDs().find(HasComplexObjectValuedMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
private void shouldNotFindField(final HasList hl) { getDs().save(hl); DBObject dbObj = getDs().getCollection(HasList.class).findOne(); Assert.assertFalse("field should not exist, value = " + dbObj.get("names"), dbObj.containsField("names")); Assert.assertNull(getDs().find(HasList.class) .find(new FindOptions().limit(1)) .tryNext() .names); }
private void shouldNotFindField(final HasCollectionValuedMap hm) { getDs().save(hm); DBObject dbObj = getDs().getCollection(HasCollectionValuedMap.class).findOne(); Assert.assertFalse("field should not exist, value = " + dbObj.get("properties"), dbObj.containsField("properties")); Assert.assertNull(getDs().find(HasCollectionValuedMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
private void shouldNotFindField(final HasMap hl) { getDs().save(hl); DBObject dbObj = getDs().getCollection(HasMap.class).findOne(); Assert.assertFalse("field should not exist, value = " + dbObj.get("properties"), dbObj.containsField("properties")); Assert.assertNull(getDs().find(HasMap.class) .find(new FindOptions().limit(1)) .tryNext() .properties); }
@Test @SuppressWarnings("deprecation") public void testFluentAndOrQuery() { getDs().save(new PhotoWithKeywords("scott", "hernandez")); final Query<PhotoWithKeywords> q = getAds().find(PhotoWithKeywords.class); q.and( q.or(q.criteria("keywords.keyword").equal("scott")), q.or(q.criteria("keywords.keyword").equal("hernandez"))); assertEquals(1, q.count()); assertTrue(q.getQueryObject().containsField("$and")); }