Rev 745 | Blame | Last modification | View Log | RSS feed
package in.shop2020.serving.controllers;import in.shop2020.serving.interceptors.UserAware;import in.shop2020.serving.services.PageLoaderHandler;import in.shop2020.serving.services.UserSessionInfo;import java.util.HashMap;import java.util.Map;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.apache.juli.logging.Log;import org.apache.juli.logging.LogFactory;import org.apache.struts2.interceptor.ServletRequestAware;import org.apache.struts2.interceptor.ServletResponseAware;import com.opensymphony.xwork2.ValidationAwareSupport;/*** Base class for all user action handlers i.e. controllers** @author rajveer*/public abstract class BaseController extends ValidationAwareSupport implementsServletResponseAware, ServletRequestAware, UserAware {/****/private static final long serialVersionUID = 1L;protected Map<String, Cookie> cookiesMap = null;protected HttpServletResponse response;protected HttpServletRequest request;protected HttpSession session;protected UserSessionInfo userinfo = null;private static Log log = LogFactory.getLog(BaseController.class);protected Cookie userCookie = null;protected Map<String, String> htmlSnippets;PageLoaderHandler pageLoader = null;public BaseController() {pageLoader = new PageLoaderHandler();htmlSnippets = new HashMap<String, String>();}@Overridepublic void setCookiesMap(Map<String, Cookie> cookiesMap) {log.info("Received cookiesMap and it is " + cookiesMap);this.cookiesMap = cookiesMap;}@Overridepublic void setServletResponse(HttpServletResponse response) {this.response = response;if (userCookie != null)response.addCookie(userCookie);}@Overridepublic void setServletRequest(HttpServletRequest request) {this.request = request;}@Overridepublic void setSession(HttpSession session) {this.session = session;}@Overridepublic void setUserSessionInfo(UserSessionInfo userInfo) {this.userinfo = userInfo;}@Overridepublic void setUserCookie(Cookie userCookie) {this.userCookie = userCookie;}public String getHeaderSnippet() {return pageLoader.getHeaderHtml(userinfo.isLoggedIn(),userinfo.getNameOfUser());}public String getMainMenuSnippet() {return pageLoader.getMainMenuHtml();}public String getSearchBarSnippet() {return pageLoader.getSearchBarHtml(userinfo.getTotalItems(), 10000);}public String getCustomerServiceSnippet() {return pageLoader.getCustomerServiceHtml();}public String getMyResearchSnippet() {return pageLoader.getMyResearchHtml(userinfo.getUserId(),userinfo.isLoggedIn());}public String getBrowseHistorySnippet() {return pageLoader.getBrowseHistoryHtml(userinfo.getUserId(),userinfo.isLoggedIn());}public String getFooterSnippet() {return pageLoader.getFooterHtml();}public String getRedirectUrl() {return (String) this.request.getSession().getAttribute("REDIRECT_URL");}public void setRedirectUrl() {String queryString = this.request.getQueryString();log.info("Query String is: " + queryString);if (queryString == null) {queryString = "";} else {queryString = "?" + queryString;}log.info("Redirect Url : " + request.getRequestURI() + queryString);this.request.getSession().setAttribute("REDIRECT_URL",this.request.getRequestURI() + queryString);}public void resetRedirectUrl() {this.request.getSession().removeAttribute("REDIRECT_URL");}}