List of usage examples for com.mongodb DBCollection setOptions
@Deprecated public void setOptions(final int options)
From source file:com.edgytech.umongo.CollectionPanel.java
License:Apache License
public void readWriteOptions(ButtonBase button) { final DBCollection col = getCollectionNode().getCollection(); OptionDialog od = UMongo.instance.getGlobalStore().getOptionDialog(); od.update(col.getOptions(), col.getWriteConcern(), col.getReadPreference()); if (!od.show()) { return;//ww w . j a v a 2 s .com } col.setOptions(od.getQueryOptions()); col.setWriteConcern(od.getWriteConcern()); col.setReadPreference(od.getReadPreference()); refresh(); }
From source file:com.github.nlloyd.hornofmongo.adaptor.Mongo.java
License:Open Source License
@SuppressWarnings({ "unchecked", "rawtypes" }) @JSFunction//w w w . j a v a 2s .co m public void insert(final String ns, Object obj, int options) { Object rawObj = BSONizer.convertJStoBSON(obj, true); DBObject bsonObj = null; if (rawObj instanceof DBObject) bsonObj = (DBObject) rawObj; try { int dbSeparatorIdx = ns.indexOf('.'); com.mongodb.DB db = innerMongo.getDB(ns.substring(0, dbSeparatorIdx)); String collectionName = ns.substring(dbSeparatorIdx + 1); DBCollection collection = db.getCollection(collectionName); collection.setDBEncoderFactory(HornOfMongoBSONEncoder.FACTORY); collection.setDBDecoderFactory(HornOfMongoBSONDecoder.FACTORY); // unfortunately the Java driver does not expose the _allow_dot // argument in insert calls so we need to translate system.indexes // inserts into index creation calls through the java driver if (collectionName.endsWith("system.indexes")) { db.getCollection("system.indexes").insert(Arrays.asList(bsonObj)); } else { int oldOptions = collection.getOptions(); collection.setOptions(options); List insertObj = null; if (rawObj instanceof List) insertObj = (List) rawObj; else insertObj = Arrays.asList(rawObj); collection.insert(insertObj); collection.setOptions(oldOptions); } saveLastCalledDB(db); } catch (MongoException me) { handleMongoException(me); } }