Subversion Repositories SmartDukaan

Rev

Rev 14364 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.dtrapi.controllers;

import java.util.ArrayList;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

import com.google.gson.Gson;
import com.opensymphony.xwork2.ValidationAwareSupport;

/**
 * Base class for all user action handlers i.e. controllers
 * 
 * @author rajveer
 */
public abstract class BaseController extends ValidationAwareSupport implements
ServletResponseAware, ServletRequestAware {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        protected HttpServletResponse response;
        protected HttpServletRequest request;
        protected HttpSession session;
        protected String domainName;
        private static Logger log = Logger.getLogger(Class.class);
        private String resultJson;


        protected Map<String, String> htmlSnippets;


        @Override
        public void setServletResponse(HttpServletResponse response) {
                this.response = response;
        }
        
        public String getContextPath() {
                return this.request.getContextPath();
        }

        @Override
        public void setServletRequest(HttpServletRequest request) {
                this.request = request;
                log.info("request url:" + request.getRequestURL());
                Enumeration enu  = request.getParameterNames();
                while(enu.hasMoreElements()){
                        Object obj = enu.nextElement(); 
                        log.info(obj.toString()+":" + request.getParameter(obj.toString()));
                }
        }

        public void setResultJson(Object resultJSon) {
                if(!resultJSon.getClass().equals(String.class)) {
                        this.resultJson = new Gson().toJson(resultJSon);
                } else {
                        this.resultJson = (String)resultJSon;
                }
                log.info("resultJson: " + this.resultJson);
        }


        public String getResultJson() {
                return resultJson;
        }
}