Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
7226 anupam.sin 1
package in.shop2020.serving.controllers;
2
 
7272 amit.gupta 3
 
7226 anupam.sin 4
import java.text.SimpleDateFormat;
5
import java.util.Date;
7272 amit.gupta 6
import java.util.HashMap;
7226 anupam.sin 7
import java.util.Map;
8
 
9
import javax.servlet.http.HttpServletRequest;
10
import javax.servlet.http.HttpServletResponse;
11
import javax.servlet.http.HttpSession;
12
 
13
import org.apache.log4j.Logger;
14
import org.apache.shiro.SecurityUtils;
15
import org.apache.struts2.interceptor.ServletRequestAware;
16
import org.apache.struts2.interceptor.ServletResponseAware;
17
import org.apache.struts2.interceptor.SessionAware;
18
 
19
import com.opensymphony.xwork2.ValidationAwareSupport;
20
 
21
/**
22
 * Base class for all user action handlers i.e. controllers
23
 * 
24
 * @author Vikas
25
 */
26
public abstract class BaseController extends ValidationAwareSupport implements
27
        ServletResponseAware, ServletRequestAware, SessionAware
28
{
29
    private static final long serialVersionUID = 3339523094497219816L;
30
    protected static Logger log = Logger.getLogger(BaseController.class);
31
 
32
    protected static final String INPUT = "input";
33
    protected static final String INDEX = "index";
34
    protected static final String EDIT_NEW = "editNew";
35
    protected static final String EDIT = "edit";
36
    protected static final String SHOW = "show";
37
    protected static final String EXCEPTION = "exception";
38
 
39
    protected final SimpleDateFormat SDF = new SimpleDateFormat("dd MMM, yyyy hh:mm a");
40
 
41
    protected HttpServletResponse response;
42
    protected HttpServletRequest request;
43
    protected HttpSession session;
44
    protected Map<String, Object> sessionMap;
45
    protected long sourceId = -1;
7272 amit.gupta 46
    protected Map<String, String> htmlSnippets;
7226 anupam.sin 47
 
7272 amit.gupta 48
    public BaseController() {
49
		htmlSnippets = new HashMap<String, String>();
50
	}
51
 
7226 anupam.sin 52
    public void setServletResponse(HttpServletResponse response) {
53
        this.response = response;
54
    }
55
 
56
    public void setServletRequest(HttpServletRequest request) {
57
        this.request = request;
58
    }
59
 
60
    public void setSession(Map<String, Object> sessionMap) {
61
        this.session = request.getSession();
62
        this.sessionMap = sessionMap;
63
    }
64
 
65
    /**
66
     * Utility method to convert a date to a readable format 
67
     */
68
    public String convertDate(Long date) {
69
        if (date == null || date == 0) {
70
            return "N/A";
71
        }
72
 
73
        return SDF.format(new Date(date));
74
    }
75
 
76
    public void setSourceId(long sourceId){
77
        this.sourceId = sourceId;
78
    }
79
 
80
    public String index() {
81
        return INDEX;
82
    }
83
 
84
    public String editNew() {
85
        return EDIT_NEW;
86
    }
87
 
88
    public String edit() {
89
        return EDIT;
90
    }
91
 
92
    public boolean isPermitted(String permission) {
93
        return SecurityUtils.getSubject().isPermitted(permission);
94
    }
95
}