Skip to content
Snippets Groups Projects

Initialise a Scala Play project with a MongoDB controller for Feed Service

5 files
+ 25
4
Compare changes
  • Side-by-side
  • Inline
Files
5
package models
import com.typesafe.config.ConfigFactory
import com.typesafe.config.{Config, ConfigFactory}
import org.mongodb.scala.{MongoClient, MongoDatabase, MongoCollection, Document, FindObservable, Observer, Observable}
import org.mongodb.scala.model.{Filters, Projections, Sorts}
@@ -18,7 +18,11 @@ import scala.util.{Success, Failure, Try}
*/
class MongoDBClient {
// Loads the default configuration
private val config = ConfigFactory.load()
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")
// Connects to a MongoDB Client when class is constructed
private var client: MongoClient = this.connect()
@@ -29,7 +33,7 @@ class MongoDBClient {
* @return A MongoClient instance.
*/
def connect(): MongoClient = {
MongoClient(config.getString("mongo.default.url"))
MongoClient(mongoUri)
}
/**
Loading