From 475fcb60a1f19317900426883e97686a60fb621b Mon Sep 17 00:00:00 2001 From: shahmilav <53659750+shahmilav@users.noreply.github.com> Date: Sun, 6 Mar 2022 19:55:13 -0500 Subject: [PATCH] Updated usercontroller --- .../database/errors/manager/DBManager.java | 96 +++++++++++++++++++ .../com/milav/jaguar/user/UserController.java | 2 +- 2 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/milav/jaguar/database/errors/manager/DBManager.java diff --git a/src/main/java/com/milav/jaguar/database/errors/manager/DBManager.java b/src/main/java/com/milav/jaguar/database/errors/manager/DBManager.java new file mode 100644 index 0000000..584717b --- /dev/null +++ b/src/main/java/com/milav/jaguar/database/errors/manager/DBManager.java @@ -0,0 +1,96 @@ +package com.milav.jaguar.database.manager; + +import com.milav.jaguar.database.errors.DBException; +import com.mongodb.ConnectionString; +import com.mongodb.DBObject; +import com.mongodb.MongoClientSettings; +import com.mongodb.ServerApi; +import com.mongodb.ServerApiVersion; +import com.mongodb.client.FindIterable; +import com.mongodb.client.MongoClient; +import com.mongodb.client.MongoClients; +import com.mongodb.client.MongoCollection; +import com.mongodb.client.MongoDatabase; +import org.apache.logging.log4j.LogManager; + +import java.net.UnknownHostException; +import java.util.List; + +/** + * Manages the database. + * + * @author Jigar Shah + */ +public class DBManager { + + /** + * The logger. + */ + private static final org.apache.logging.log4j.Logger LOGGER + = LogManager.getLogger(DBManager.class); + /** + * The database. + */ + private static MongoDatabase mongoDB = null; + /** + * The database manager + */ + private static DBManager dbManager = null; + + /** + * Initialize the db manager. + * + * @throws UnknownHostException if we cannot determine the IP address of the + * host. + */ + private DBManager() throws UnknownHostException { + init2(); + } + + /** + * Gets the database. + * + * @return MongoDatabase + * @throws DBException since we are dealing with the database. + */ + public static MongoDatabase getMongoDB() throws DBException { + if (dbManager == null) { + try { + dbManager = new DBManager(); + } catch (UnknownHostException ex) { + LOGGER.error(ex); + throw new DBException(ex.getMessage(), ex.fillInStackTrace()); + } + } + return mongoDB; + } + + private void init() { + + try ( MongoClient mongoClient + = MongoClients.create( + "mongodb+srv://milav:pulsar66@cluster0.jnvid.mongodb.net/jaguar?retryWrites=true&w=majority")) { + mongoDB = mongoClient.getDatabase("jaguar"); + } + } + + private void init2() { + + ConnectionString connectionString = new ConnectionString("mongodb+srv://milav:pulsar66@cluster0.jnvid.mongodb.net/jaguar?retryWrites=true&w=majority"); + MongoClientSettings settings = MongoClientSettings.builder() + .applyConnectionString(connectionString) + .serverApi(ServerApi.builder() + .version(ServerApiVersion.V1) + .build()) + .build(); + MongoClient mongoClient = MongoClients.create(settings); + mongoDB = mongoClient.getDatabase("jaguar"); + } + + public static void main(String[] args) throws DBException { + MongoDatabase db = DBManager.getMongoDB(); + MongoCollection coll = db.getCollection("USER_PROFILE"); + + System.out.println("The number documents in the USER_PROFILE collection: " + coll.countDocuments()); + } +} diff --git a/src/main/java/com/milav/jaguar/user/UserController.java b/src/main/java/com/milav/jaguar/user/UserController.java index 65d249f..69c8baf 100644 --- a/src/main/java/com/milav/jaguar/user/UserController.java +++ b/src/main/java/com/milav/jaguar/user/UserController.java @@ -1,7 +1,7 @@ package com.milav.jaguar.user; import com.milav.jaguar.database.errors.DBException; -import com.milav.jaguar.database.manager.DBManager; +import com.milav.jaguar.database.errors.manager.DBManager; import com.milav.jaguar.user.util.UserUtil; import com.mongodb.BasicDBObject; import com.mongodb.MongoTimeoutException;