@Override public void drop() { if (tx.started()) { tx.commit(); } coll.drop(); }
@Override public void renameCollection(MongoNamespace arg0, RenameCollectionOptions arg1) { if (tx.started()) { tx.commit(); } coll.renameCollection(arg0, arg1); }
@Override public DeleteResult deleteOne(Bson arg0) { if (tx.started()) { return tx.deleteOne(coll, arg0); } else { return coll.deleteOne(arg0); } }
@Override public UpdateResult updateOne(Bson arg0, Bson arg1, UpdateOptions arg2) { if (tx.started()) { tx.beforeUpdateOne(coll, arg0); return tx.getTxCollection().updateOne(modifyQuery(arg0), arg1, arg2); } else { return coll.updateOne(arg0, arg1, arg2); } }
@Override public UpdateResult updateMany(Bson arg0, Bson arg1) { if (tx.started()) { tx.beforeUpdateMany(coll, arg0); return tx.getTxCollection().updateMany(modifyQuery(arg0), arg1); } else { return coll.updateMany(arg0, arg1); } }
@Override public UpdateResult replaceOne(Bson arg0, Document arg1) { if (tx.started()) { tx.beforeUpdateOne(coll, arg0); return tx.getTxCollection().replaceOne(modifyQuery(arg0), arg1); } else { return coll.replaceOne(arg0, arg1); } }
@Override public void insertOne(Document arg0) { if (tx.started()) { tx.beforeInsertOne(coll, arg0); tx.getTxCollection().insertOne(arg0); } else { coll.insertOne(arg0); } }
@Override public void insertMany(List<? extends Document> arg0, InsertManyOptions arg1) { if (tx.started()) { tx.beforeInsertMany(coll, arg0); tx.getTxCollection().insertMany(arg0, arg1); } else { coll.insertMany(arg0, arg1); } }
@Override public Document findOneAndUpdate(Bson arg0, Bson arg1, FindOneAndUpdateOptions arg2) { if (tx.started()) { tx.beforeUpdateOne(coll, arg0); return tx.getTxCollection().findOneAndUpdate(modifyQuery(arg0), arg1, arg2); } else { return coll.findOneAndUpdate(arg0, arg1, arg2); } }
@Override public Document findOneAndDelete(Bson arg0, FindOneAndDeleteOptions arg1) { if (tx.started()) { tx.deleteOne(coll, arg0); return coll.find(arg0).first(); } else { return coll.findOneAndDelete(arg0, arg1); } }