From 3f3c2221d17f885458091be5509621310e6bddbe Mon Sep 17 00:00:00 2001
From: Felipe D'Abrantes <felidabrantes@gmail>
Date: Sat, 18 Mar 2023 15:19:44 +0000
Subject: [PATCH] Add a ConfigHelper

---
 .../feed-service/app/models/MongoDBClient.scala       |  9 ++-------
 .../feed-service/app/utils/ConfigHelper.scala         | 11 +++++++++++
 2 files changed, 13 insertions(+), 7 deletions(-)
 create mode 100644 backend-services/feed-service/app/utils/ConfigHelper.scala

diff --git a/backend-services/feed-service/app/models/MongoDBClient.scala b/backend-services/feed-service/app/models/MongoDBClient.scala
index bd44c198..96c5dd63 100644
--- a/backend-services/feed-service/app/models/MongoDBClient.scala
+++ b/backend-services/feed-service/app/models/MongoDBClient.scala
@@ -1,6 +1,6 @@
 package models
 
-import com.typesafe.config.{Config, ConfigFactory}
+import utils.ConfigHelper
 
 import org.mongodb.scala.{MongoClient, MongoDatabase, MongoCollection, Document, FindObservable, Observer, Observable}
 import org.mongodb.scala.model.{Filters, Projections, Sorts}
@@ -17,12 +17,7 @@ import scala.util.{Success, Failure, Try}
  * @constructor Creates a new instance of the MongoDBClient class.
  */
 class MongoDBClient {
-    // Loads the default configuration
-    private val applicationConfig: Config = ConfigFactory.load("application.conf")
-    private val referenceConfig: Config = ConfigFactory.parseResources("reference.conf")
-    private val config: Config = referenceConfig.withFallback(applicationConfig).resolve()
-
-    private val mongoUri = config.getString("mongodb.uri")
+    private val mongoUri = ConfigHelper.getString("mongodb.uri")
 
     // Connects to a MongoDB Client when class is constructed
     private var client: MongoClient = this.connect()
diff --git a/backend-services/feed-service/app/utils/ConfigHelper.scala b/backend-services/feed-service/app/utils/ConfigHelper.scala
new file mode 100644
index 00000000..06b6cc3b
--- /dev/null
+++ b/backend-services/feed-service/app/utils/ConfigHelper.scala
@@ -0,0 +1,11 @@
+package utils
+
+import com.typesafe.config.{Config, ConfigFactory}
+
+object ConfigHelper {
+  private val applicationConfig: Config = ConfigFactory.load("application.conf")
+  private val referenceConfig: Config = ConfigFactory.parseResources("reference.conf")
+  private val config: Config = referenceConfig.withFallback(applicationConfig).resolve()
+
+  def getString(key: String): String = config.getString(key)
+}
-- 
GitLab