Subversion Repositories SmartDukaan

Rev

Rev 2146 | Rev 5638 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
781 vikas 1
package in.shop2020.serving.interceptors;
2
 
3
import in.shop2020.serving.services.UserSessionInfo;
4
 
5
import javax.servlet.http.HttpServletRequest;
924 vikas 6
import javax.servlet.http.HttpServletResponse;
781 vikas 7
 
832 rajveer 8
import org.apache.log4j.Logger;
781 vikas 9
import org.apache.struts2.ServletActionContext;
10
 
11
import com.opensymphony.xwork2.ActionInvocation;
12
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
13
 
14
public class LoginInterceptor extends AbstractInterceptor {
15
 
16
 
17
	/**
18
	 * 
19
	 */
20
	private static final long serialVersionUID = 1L;
832 rajveer 21
	private static Logger log = Logger.getLogger(Class.class);
816 vikas 22
 
781 vikas 23
	@Override
24
	public String intercept(ActionInvocation invocation) throws Exception {
25
		HttpServletRequest request = ServletActionContext.getRequest();
924 vikas 26
		HttpServletResponse response = ServletActionContext.getResponse();
781 vikas 27
 
2907 rajveer 28
        UserSessionInfo userInfo = (UserSessionInfo) request.getAttribute(UserInterceptor.USER_INFO_COOKIE_NAME);
781 vikas 29
        if(userInfo == null || !userInfo.isLoggedIn()){
924 vikas 30
        	response.sendRedirect("login?redirectUrl=" + getRedirectUrl(request));
31
        	return null;
32
     	}
781 vikas 33
		return invocation.invoke();
34
	}
35
 
924 vikas 36
	public String getRedirectUrl(HttpServletRequest request) {
781 vikas 37
		String queryString = request.getQueryString();
38
		if (queryString == null) {
39
			queryString = "";
40
		} else {
41
			queryString = "?" + queryString;
42
		}
43
		log.info("Redirect Url : " + request.getRequestURI() + queryString);
924 vikas 44
		return request.getRequestURI() + queryString;
781 vikas 45
	}
46
}