From ed697e3406f232b4810d50b387a7a3a42dc87a47 Mon Sep 17 00:00:00 2001
From: kiran <abdullah.kiran@student.reutlingen-university.de>
Date: Tue, 3 Dec 2024 18:28:11 +0100
Subject: [PATCH] add mongo http session config to use mongo as session store
 instead of ram

---
 pom.xml                                                  | 4 ++++
 .../todo/controller/HttpSessionConfig.java               | 9 +++++++++
 .../cloudcomputing/todo/controller/UserController.java   | 1 +
 3 files changed, 14 insertions(+)
 create mode 100644 src/main/java/com/cloudcomputing/todo/controller/HttpSessionConfig.java

diff --git a/pom.xml b/pom.xml
index 4d72f91..deb412c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -34,6 +34,10 @@
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-data-mongodb</artifactId>
 		</dependency>
+		<dependency>
+			<groupId>org.springframework.session</groupId>
+			<artifactId>spring-session-data-mongodb</artifactId>
+		</dependency>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-web</artifactId>
diff --git a/src/main/java/com/cloudcomputing/todo/controller/HttpSessionConfig.java b/src/main/java/com/cloudcomputing/todo/controller/HttpSessionConfig.java
new file mode 100644
index 0000000..4054633
--- /dev/null
+++ b/src/main/java/com/cloudcomputing/todo/controller/HttpSessionConfig.java
@@ -0,0 +1,9 @@
+package com.cloudcomputing.todo.controller;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.session.data.mongo.config.annotation.web.http.EnableMongoHttpSession;
+
+@Configuration
+@EnableMongoHttpSession
+public class HttpSessionConfig {
+}
diff --git a/src/main/java/com/cloudcomputing/todo/controller/UserController.java b/src/main/java/com/cloudcomputing/todo/controller/UserController.java
index 7cf9194..4bc471f 100644
--- a/src/main/java/com/cloudcomputing/todo/controller/UserController.java
+++ b/src/main/java/com/cloudcomputing/todo/controller/UserController.java
@@ -35,6 +35,7 @@ public class UserController {
     @PostMapping("/signin")
     public ResponseEntity<UserDTO> login(HttpServletRequest request, @RequestBody UserDTO user) {
         boolean loginSuccessful = userService.login(request, user);
+
         if(loginSuccessful){
             return new ResponseEntity<>(userService.getUser(user), HttpStatus.OK);
         }
-- 
GitLab