From 6ea149e8a1c79b2ea4c6e45acfd44f6293ef2899 Mon Sep 17 00:00:00 2001
From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de>
Date: Tue, 4 Jun 2013 20:43:22 +0200
Subject: [PATCH] Reenabled session scoped bean, now using scoped proxy

This bean will now be linked to a session returning different values for
different sessions and users.
It can be used to access current users (ARSnova)-session and user object.
---
 src/main/java/de/thm/arsnova/controller/LoginController.java  | 4 ++--
 .../java/de/thm/arsnova/services/UserSessionServiceImpl.java  | 3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/main/java/de/thm/arsnova/controller/LoginController.java b/src/main/java/de/thm/arsnova/controller/LoginController.java
index 40e8b3bdc..df53d1dbc 100644
--- a/src/main/java/de/thm/arsnova/controller/LoginController.java
+++ b/src/main/java/de/thm/arsnova/controller/LoginController.java
@@ -163,12 +163,12 @@ public class LoginController extends AbstractController {
 	@RequestMapping(value = { "/test/me" }, method = RequestMethod.GET)
 	@ResponseBody
 	public final User me() {
-		return userSessionService.getUser();		
+		return userSessionService.getUser();
 	}
 	
 	@RequestMapping(value = { "/test/mysession" }, method = RequestMethod.GET)
 	@ResponseBody
 	public final Session mysession() {
-		return userSessionService.getSession();		
+		return userSessionService.getSession();
 	}
 }
diff --git a/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java b/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java
index 4e85c5e5a..a340bfb72 100644
--- a/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java
+++ b/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java
@@ -1,11 +1,14 @@
 package de.thm.arsnova.services;
 
+import org.springframework.context.annotation.Scope;
+import org.springframework.context.annotation.ScopedProxyMode;
 import org.springframework.stereotype.Component;
 
 import de.thm.arsnova.entities.Session;
 import de.thm.arsnova.entities.User;
 
 @Component
+@Scope(value = "session", proxyMode = ScopedProxyMode.TARGET_CLASS)
 public class UserSessionServiceImpl implements UserSessionService {
 	
 	private User user;
-- 
GitLab