1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.promotego.interceptors;
20
21 import javax.servlet.http.HttpServletRequest;
22 import javax.servlet.http.HttpServletResponse;
23
24 import org.promotego.beans.User;
25 import org.promotego.beans.UserHolder;
26 import org.promotego.dao.interfaces.UserDao;
27 import org.springframework.beans.factory.annotation.Required;
28 import org.springframework.web.servlet.ModelAndView;
29 import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
30
31 /***
32 * @author alf
33 *
34 */
35 public class AddUserInterceptor extends
36 HandlerInterceptorAdapter
37 {
38 private UserHolder m_userHolder;
39 private UserDao m_userDao;
40
41 @Override
42 public void postHandle(HttpServletRequest request,
43 HttpServletResponse response, Object handler,
44 ModelAndView modelAndView) throws Exception
45 {
46 User user = m_userHolder.getUser();
47 if (user != null)
48 {
49 modelAndView.addObject("loggedIn", true);
50 modelAndView.addObject("user", user);
51 }
52 }
53
54 @Required
55 public void setUserHolder(UserHolder userHolder)
56 {
57 m_userHolder = userHolder;
58 }
59
60 @Required
61 public void setUserDao(UserDao userDao)
62 {
63 m_userDao = userDao;
64 }
65
66 @Override
67 public boolean preHandle(HttpServletRequest request,
68 HttpServletResponse response, Object handler) throws Exception
69 {
70 User user = m_userHolder.getUser();
71 if (user != null)
72 {
73 m_userDao.reattach(user);
74 }
75
76 return true;
77 }
78 }