@Override public void delete(CRUDOperationContext ctx, DBCollection collection, DBObject mongoQuery, CRUDDeleteResponse response) { LOGGER.debug("Removing docs with {}", mongoQuery); WriteResult result = new RemoveCommand(collection, mongoQuery).executeAndUnwrap(); LOGGER.debug("Removal complete, write result={}", result); response.setNumDeleted(result.getN()); } }
@Override protected WriteResult runMongoCommand() { if (concern != null) { return getDBCollection().remove(data, concern); } else { return getDBCollection().remove(data); } } }
@Override public void removeEntity(String entityName) { if (entityName == null || entityName.length() == 0) { throw new IllegalArgumentException(LITERAL_ENTITY_NAME); } // All versions must be disabled. Search for a schema that is not disabled DBObject query = new BasicDBObject(LITERAL_NAME, entityName). append(LITERAL_VERSION, new BasicDBObject("$exists", 1)). append(LITERAL_STATUS_VALUE, new BasicDBObject("$ne", MetadataParser.toString(MetadataStatus.DISABLED))); LOGGER.debug("Checking if there are entity versions that are not disabled: {}", query); DBObject result = new FindOneCommand(collection, query).execute(); if (result != null) { LOGGER.debug("There is at least one enabled version {}", result); throw Error.get(MongoMetadataConstants.ERR_CANNOT_DELETE, entityName); } LOGGER.warn("All versions of {} are disabled, deleting {}", entityName, entityName); query = new BasicDBObject(LITERAL_ID, Pattern.compile(entityName + "\\" + BSONParser.DELIMITER_ID + ".*")); LOGGER.debug("Removal query:{}", query); try { WriteResult r = new RemoveCommand(collection, query).execute(); LOGGER.debug("Removal result:{}", r); String error = r.getError(); if (error != null) { throw Error.get(MongoMetadataConstants.ERR_DB_ERROR, error); } } catch (Exception e) { LOGGER.error("Error during delete", e); throw Error.get(MongoMetadataConstants.ERR_DB_ERROR, e.toString()); } }
if (error != null) { LOGGER.error("createNewMetadata: error in createSchema: {}" + error); new RemoveCommand(collection, new BasicDBObject(LITERAL_ID, infoObj.get(LITERAL_ID))).execute(); throw Error.get(MongoMetadataConstants.ERR_DB_ERROR, error); new RemoveCommand(collection, new BasicDBObject(LITERAL_ID, infoObj.get(LITERAL_ID))).execute(); throw Error.get(MongoMetadataConstants.ERR_DUPLICATE_METADATA, ver.getValue());
LOGGER.debug("Removal query:{}", query); try { WriteResult r = new RemoveCommand(collection, query).executeAndUnwrap(); LOGGER.debug("Removal result:{}", r); String error = r.getError();
@Override protected WriteResult runMongoCommand() { if (concern != null) { return getDBCollection().remove(data, concern); } else { return getDBCollection().remove(data); } } }
doc.setOriginalDocument(doc); ctx.getFactory().getInterceptors().callInterceptors(InterceptPoint.PRE_CRUD_DELETE_DOC, ctx, doc); WriteResult result = new RemoveCommand(collection, new BasicDBObject("_id", id)).executeAndUnwrap(); if (result.getN() == 1) { numDeleted++;
if (error != null) { LOGGER.error("createNewMetadata: error in createSchema: {}" + error); new RemoveCommand(collection, new BasicDBObject(LITERAL_ID, infoObj.get(LITERAL_ID))).executeAndUnwrap(); throw Error.get(MongoMetadataConstants.ERR_DB_ERROR, error); new RemoveCommand(collection, new BasicDBObject(LITERAL_ID, infoObj.get(LITERAL_ID))).executeAndUnwrap(); throw Error.get(MongoMetadataConstants.ERR_DUPLICATE_METADATA, ver.getValue());