Rev 419 | Blame | Last modification | View Log | RSS feed
package in.shop2020.serving.controllers;import in.shop2020.model.v1.shoppingcart.Cart;import in.shop2020.model.v1.shoppingcart.ShoppingCartException;import in.shop2020.model.v1.user.UserContext;import in.shop2020.model.v1.user.UserContextException;import in.shop2020.model.v1.user.UserState;import in.shop2020.model.v1.user.UserContextService.Client;import in.shop2020.thrift.clients.ShoppingCartClient;import in.shop2020.thrift.clients.UserContextServiceClient;import java.util.*;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.lang.StringUtils;import org.apache.juli.logging.Log;import org.apache.juli.logging.LogFactory;import org.apache.struts2.convention.annotation.Action;import org.apache.struts2.convention.annotation.Result;import org.apache.struts2.convention.annotation.Results;import org.apache.struts2.interceptor.ParameterAware;import org.apache.struts2.interceptor.ServletRequestAware;import org.apache.struts2.interceptor.ServletResponseAware;import org.apache.struts2.rest.DefaultHttpHeaders;import org.apache.struts2.rest.HttpHeaders;import org.apache.thrift.TException;import com.opensymphony.xwork2.ValidationAwareSupport;@Results({@Result(name="success", type="redirectAction",params = {"actionName" , "test"})})public class TestController extends BaseController {private static final long serialVersionUID = 1L;private static Log log = LogFactory.getLog(TestController.class);// HttpServletRequest request;// HttpServletResponse response;public TestController(){}// GET /entity@Action("this")public HttpHeaders index() {Cookie[] cookies = request.getCookies();boolean foundCookie = false;long sessionId = 0;if(cookies != null){for(int loopIndex = 0; loopIndex < cookies.length; loopIndex++) {Cookie cookie1 = cookies[loopIndex];if (cookie1.getName().equals("sessionId")) {System.out.println("Session Id is = " + cookie1.getValue());sessionId = Long.parseLong(cookie1.getValue());foundCookie = true;}}}UserContextServiceClient userContextServiceClient;Client client;UserContext context;try {userContextServiceClient = new UserContextServiceClient();client = userContextServiceClient.getClient();if (!foundCookie) {// create new session and set the cookiescontext = new UserContext();context = client.createContext(context, false);sessionId = context.getSessionid();Cookie loginCookie = new Cookie("sessionId", sessionId+"");loginCookie.setComment("For storing session id");loginCookie.setMaxAge(24*60*60);//loginCookie.setValue("Rajveer");response.addCookie(loginCookie);}else{context = client.getContextFromId(sessionId, false);if(context.getUserState().isIsLoggedIn()){System.out.println("User is logged in with user Id " + context.getId());}}} catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}/*Map cookiesMap = new HashMap();cookiesMap.put("USER_ID", loginCookie);setCookiesMap(cookiesMap);log.info( "Cookies map is " + this.getCookiesMap());log.info("CartController.index");if(getCookiesMap() != null){Cookie loginCookie = (Cookie)getCookiesMap().get("USER_ID");log.info("login cookie name is " + loginCookie.getName() );log.info("login cookie value is " + loginCookie.getValue());}*/return new DefaultHttpHeaders("index").disableCaching();}/*@Overridepublic void setParameters(Map<String, String[]> reqmap) {log.info("setParameters:" + reqmap);this.reqparams = reqmap;}*/// @Override// public void setServletRequest(HttpServletRequest request) {// this.request = request;// }////// @Override// public void setServletResponse(HttpServletResponse response) {// this.response = response;// // TODO Auto-generated method stub//// }}