Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
317 ashish 1
package in.shop2020.serving.controllers;
410 rajveer 2
 
781 vikas 3
import in.shop2020.serving.interceptors.UserAware;
637 rajveer 4
import in.shop2020.serving.services.PageLoaderHandler;
419 rajveer 5
import in.shop2020.serving.services.UserSessionInfo;
416 rajveer 6
 
555 chandransh 7
import java.util.HashMap;
410 rajveer 8
import java.util.Map;
9
 
416 rajveer 10
import javax.servlet.http.Cookie;
11
import javax.servlet.http.HttpServletRequest;
410 rajveer 12
import javax.servlet.http.HttpServletResponse;
416 rajveer 13
import javax.servlet.http.HttpSession;
410 rajveer 14
 
416 rajveer 15
import org.apache.juli.logging.Log;
16
import org.apache.juli.logging.LogFactory;
17
import org.apache.struts2.interceptor.ServletRequestAware;
410 rajveer 18
import org.apache.struts2.interceptor.ServletResponseAware;
19
 
595 rajveer 20
import com.opensymphony.xwork2.ValidationAwareSupport;
21
 
317 ashish 22
/**
23
 * Base class for all user action handlers i.e. controllers
24
 * 
545 rajveer 25
 * @author rajveer
317 ashish 26
 */
781 vikas 27
public abstract class BaseController extends ValidationAwareSupport implements
28
		ServletResponseAware, ServletRequestAware, UserAware {
595 rajveer 29
	/**
30
	 * 
31
	 */
32
	private static final long serialVersionUID = 1L;
555 chandransh 33
	protected Map<String, Cookie> cookiesMap = null;
781 vikas 34
	protected HttpServletResponse response;
35
	protected HttpServletRequest request;
36
	protected HttpSession session;
37
	protected UserSessionInfo userinfo = null;
416 rajveer 38
	private static Log log = LogFactory.getLog(BaseController.class);
781 vikas 39
 
40
	protected Cookie userCookie = null;
41
 
42
	protected Map<String, String> htmlSnippets;
43
 
44
	PageLoaderHandler pageLoader = null;
45
 
416 rajveer 46
	public BaseController() {
637 rajveer 47
		pageLoader = new PageLoaderHandler();
650 rajveer 48
		htmlSnippets = new HashMap<String, String>();
416 rajveer 49
	}
781 vikas 50
 
410 rajveer 51
	@Override
781 vikas 52
	public void setCookiesMap(Map<String, Cookie> cookiesMap) {
555 chandransh 53
		log.info("Received cookiesMap and it is " + cookiesMap);
410 rajveer 54
		this.cookiesMap = cookiesMap;
55
	}
781 vikas 56
 
410 rajveer 57
	@Override
781 vikas 58
	public void setServletResponse(HttpServletResponse response) {
410 rajveer 59
		this.response = response;
781 vikas 60
		if (userCookie != null)
555 chandransh 61
			response.addCookie(userCookie);
410 rajveer 62
	}
781 vikas 63
 
416 rajveer 64
	@Override
781 vikas 65
	public void setServletRequest(HttpServletRequest request) {
416 rajveer 66
		this.request = request;
419 rajveer 67
	}
555 chandransh 68
 
781 vikas 69
	@Override
70
	public void setSession(HttpSession session) {
71
		this.session = session;
555 chandransh 72
	}
73
 
781 vikas 74
	@Override
75
	public void setUserSessionInfo(UserSessionInfo userInfo) {
76
		this.userinfo = userInfo;
419 rajveer 77
	}
78
 
781 vikas 79
	@Override
80
	public void setUserCookie(Cookie userCookie) {
81
		this.userCookie = userCookie;
419 rajveer 82
	}
424 rajveer 83
 
781 vikas 84
	public String getHeaderSnippet() {
85
		return pageLoader.getHeaderHtml(userinfo.isLoggedIn(),
86
				userinfo.getNameOfUser());
637 rajveer 87
	}
88
 
781 vikas 89
	public String getMainMenuSnippet() {
637 rajveer 90
		return pageLoader.getMainMenuHtml();
91
	}
781 vikas 92
 
93
	public String getSearchBarSnippet() {
793 rajveer 94
		//FIXME From where it is called, need to pass category
637 rajveer 95
		return pageLoader.getSearchBarHtml(userinfo.getTotalItems(), 10000);
96
	}
781 vikas 97
 
98
	public String getCustomerServiceSnippet() {
637 rajveer 99
		return pageLoader.getCustomerServiceHtml();
100
	}
781 vikas 101
 
102
	public String getMyResearchSnippet() {
103
		return pageLoader.getMyResearchHtml(userinfo.getUserId(),
104
				userinfo.isLoggedIn());
637 rajveer 105
	}
106
 
781 vikas 107
	public String getBrowseHistorySnippet() {
108
		return pageLoader.getBrowseHistoryHtml(userinfo.getUserId(),
109
				userinfo.isLoggedIn());
637 rajveer 110
	}
111
 
781 vikas 112
	public String getFooterSnippet() {
637 rajveer 113
		return pageLoader.getFooterHtml();
114
	}
781 vikas 115
 
116
	public String getRedirectUrl() {
117
		return (String) this.request.getSession().getAttribute("REDIRECT_URL");
650 rajveer 118
	}
637 rajveer 119
 
781 vikas 120
	public void setRedirectUrl() {
719 rajveer 121
		String queryString = this.request.getQueryString();
781 vikas 122
		log.info("Query String is: " + queryString);
123
		if (queryString == null) {
124
			queryString = "";
125
		} else {
719 rajveer 126
			queryString = "?" + queryString;
127
		}
781 vikas 128
		log.info("Redirect Url : " + request.getRequestURI() + queryString);
129
		this.request.getSession().setAttribute("REDIRECT_URL",
130
				this.request.getRequestURI() + queryString);
650 rajveer 131
	}
132
 
781 vikas 133
	public void resetRedirectUrl() {
650 rajveer 134
		this.request.getSession().removeAttribute("REDIRECT_URL");
135
	}
793 rajveer 136
 
137
	public UserSessionInfo getUserInfo(){
138
		return this.userinfo;
139
	}
140
 
745 chandransh 141
}