Я хотел бы создать универсальный c метод обновления, который принимает в качестве входных данных Object _id и строку (Json), которые соответствуют обновлению, которое нужно выполнить.
Мне нужно преобразовать переменную inputDocument в тип документа, который будет передан в методе обновления
Мне нужно иметь этот тип c способ ввода, потому что я хотел бы использовать этот метод на любом поле коллекции,
Как мне этого добиться?
def updateField(_id : String, inputDocument : String): Future[UpdateResult] = {
/* inputDocument = {"key" : value}*/
val mongoClient = MongoClient("mongodb://localhost:27017")
val database: MongoDatabase = mongoClient.getDatabase("databaseName")
val collection: MongoCollection[Document] = database.getCollection("collectionName")
val updateDocument = Document("$set" -> inputDocument)
collection
.updateOne(Filters.eq("_id", BsonObjectId(_id)), updateDocument)
.toFuture()
}