From d6ef6f627ae049c29c2241d39261dee7de3da663 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 22 Dec 2019 12:08:01 -0500 Subject: configure MongoDB connection string directly --- .../Framework/ConfigModels/MongoDbConfig.cs | 25 +++------------------- 1 file changed, 3 insertions(+), 22 deletions(-) (limited to 'src/SMAPI.Web/Framework') diff --git a/src/SMAPI.Web/Framework/ConfigModels/MongoDbConfig.cs b/src/SMAPI.Web/Framework/ConfigModels/MongoDbConfig.cs index e2e18477..c7b6cb00 100644 --- a/src/SMAPI.Web/Framework/ConfigModels/MongoDbConfig.cs +++ b/src/SMAPI.Web/Framework/ConfigModels/MongoDbConfig.cs @@ -1,5 +1,3 @@ -using System; - namespace StardewModdingAPI.Web.Framework.ConfigModels { /// The config settings for mod compatibility list. @@ -8,14 +6,8 @@ namespace StardewModdingAPI.Web.Framework.ConfigModels /********* ** Accessors *********/ - /// The MongoDB hostname. - public string Host { get; set; } - - /// The MongoDB username (if any). - public string Username { get; set; } - - /// The MongoDB password (if any). - public string Password { get; set; } + /// The MongoDB connection string. + public string ConnectionString { get; set; } /// The database name. public string Database { get; set; } @@ -27,18 +19,7 @@ namespace StardewModdingAPI.Web.Framework.ConfigModels /// Get whether a MongoDB instance is configured. public bool IsConfigured() { - return !string.IsNullOrWhiteSpace(this.Host); - } - - /// Get the MongoDB connection string. - public string GetConnectionString() - { - bool isLocal = this.Host == "localhost"; - bool hasLogin = !string.IsNullOrWhiteSpace(this.Username) && !string.IsNullOrWhiteSpace(this.Password); - - return $"mongodb{(isLocal ? "" : "+srv")}://" - + (hasLogin ? $"{Uri.EscapeDataString(this.Username)}:{Uri.EscapeDataString(this.Password)}@" : "") - + $"{this.Host}/{this.Database}?retryWrites=true&w=majority"; + return !string.IsNullOrWhiteSpace(this.ConnectionString); } } } -- cgit