config service: fix not upserting documents when setting config keys

This commit is contained in:
Adam
2019-04-13 19:50:25 -04:00
parent 31a044887d
commit 412505a10f

View File

@@ -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<Document> 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(