From 412505a10f6fe9899e1a0fa34ce2b652398c0190 Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 13 Apr 2019 19:50:25 -0400 Subject: [PATCH] config service: fix not upserting documents when setting config keys --- .../java/net/runelite/http/service/config/ConfigService.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/http-service/src/main/java/net/runelite/http/service/config/ConfigService.java b/http-service/src/main/java/net/runelite/http/service/config/ConfigService.java index 27653d411b..f18169938a 100644 --- a/http-service/src/main/java/net/runelite/http/service/config/ConfigService.java +++ b/http-service/src/main/java/net/runelite/http/service/config/ConfigService.java @@ -32,6 +32,7 @@ import com.mongodb.client.MongoDatabase; import static com.mongodb.client.model.Filters.eq; import com.mongodb.client.model.IndexOptions; import com.mongodb.client.model.Indexes; +import com.mongodb.client.model.UpdateOptions; import static com.mongodb.client.model.Updates.set; import static com.mongodb.client.model.Updates.unset; import java.util.ArrayList; @@ -53,6 +54,7 @@ import org.springframework.stereotype.Service; public class ConfigService { private final Gson GSON = RuneLiteAPI.GSON; + private final UpdateOptions upsertUpdateOptions = new UpdateOptions().upsert(true); private final MongoCollection mongoCollection; @@ -140,7 +142,8 @@ public class ConfigService Object jsonValue = parseJsonString(value); mongoCollection.updateOne(eq("_userId", userId), - set(split[0] + "." + split[1].replace('.', ':'), jsonValue)); + set(split[0] + "." + split[1].replace('.', ':'), jsonValue), + upsertUpdateOptions); } public void unsetKey(