List of usage examples for com.mongodb.client.model FindOneAndReplaceOptions upsert
boolean upsert
To view the source code for com.mongodb.client.model FindOneAndReplaceOptions upsert.
Click Source Link
From source file:com.cognitive.cds.invocation.mongo.EngineInfoDao.java
License:Apache License
public boolean updateEngineInstanceState(EngineInstanceState engineInstanceState) throws JsonProcessingException { mongoDbDao.setDatabase("engine"); try {//from w w w. j a v a 2s. co m String json = mapper.writeValueAsString(engineInstanceState); logger.debug("=====> engineInstanceState json to write: " + json); Document filter = new Document(); filter.put("name", engineInstanceState.getName()); filter.put("type", engineInstanceState.getType()); filter.put("host", engineInstanceState.getHost()); filter.put("port", engineInstanceState.getPort()); Document doc = Document.parse(json); FindOneAndReplaceOptions options = new FindOneAndReplaceOptions(); options.upsert(true); doc.remove("_id"); mongoDbDao.getCollection("instance").findOneAndReplace(filter, doc, options); logger.debug("=====> engineInstanceState " + doc.toJson()); return true; } catch (Exception e) { logger.error( "=======> EngineInstanceState - Insert/Update Exception EngineInstanceState: " + e.toString()); return false; } }
From source file:io.vertx.ext.mongo.impl.MongoClientImpl.java
License:Open Source License
@Override public io.vertx.ext.mongo.MongoClient findOneAndReplaceWithOptions(String collection, JsonObject query, JsonObject replace, FindOptions findOptions, UpdateOptions updateOptions, Handler<AsyncResult<JsonObject>> resultHandler) { requireNonNull(collection, "collection cannot be null"); requireNonNull(query, "query cannot be null"); requireNonNull(findOptions, "find options cannot be null"); requireNonNull(updateOptions, "update options cannot be null"); requireNonNull(resultHandler, "resultHandler cannot be null"); JsonObject encodedQuery = encodeKeyWhenUseObjectId(query); Bson bquery = wrap(encodedQuery);/* w w w . ja va 2s .co m*/ FindOneAndReplaceOptions foarOptions = new FindOneAndReplaceOptions(); foarOptions.sort(wrap(findOptions.getSort())); foarOptions.projection(wrap(findOptions.getFields())); foarOptions.upsert(updateOptions.isUpsert()); foarOptions.returnDocument( updateOptions.isReturningNewDocument() ? ReturnDocument.AFTER : ReturnDocument.BEFORE); MongoCollection<JsonObject> coll = getCollection(collection); coll.findOneAndReplace(bquery, replace, foarOptions, wrapCallback(resultHandler)); return this; }
From source file:my.beesyn.MongoConn.java
public void insert_or_update(Identifier idf, MongoCollection coll) { Document dc;//from w w w. ja va 2s .c o m FindOneAndReplaceOptions op = new FindOneAndReplaceOptions(); op.upsert(true); dc = Document.parse(idf.get_fetched()); dc.append("u_id", idf.get_id()); dc.append("chsum", dc.hashCode()); coll.findOneAndReplace(Filters.and(Filters.eq("u_id", idf.get_id()), Filters.ne("chsum", idf.get_chk())), dc, op); }