KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jahia > clipbuilder > html > web > Url > Impl > UrlEncoder


1 package org.jahia.clipbuilder.html.web.Url.Impl;
2
3 import javax.servlet.http.*;
4
5 import org.jahia.clipbuilder.html.util.*;
6 import org.jahia.clipbuilder.html.web.Url.*;
7 import org.jahia.clipbuilder.html.web.Constant.*;
8 import org.jahia.clipbuilder.html.*;
9
10 /**
11  * Object that perform the encoding of the url
12  *
13  *@author Tlili Khaled
14  */

15 public class UrlEncoder extends BaseUrlEncoder {
16     private HttpServletResponse httpServletResponse;
17     private HttpServletRequest httpServletRequest;
18     private String JavaDoc encodedUrl = null;
19     private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(UrlEncoder.class);
20
21
22
23     /**
24      * Constructor for the UrlEncoder object and encode the url whith default
25      * value. The default value is: method = GET and isUrlLink = true
26      *
27      *@param httpServletRequest Description of Parameter
28      *@param httpServletResponse response object
29      */

30     public UrlEncoder(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
31         setHttpServletResponse(httpServletResponse);
32         setHttpServletRequest(httpServletRequest);
33     }
34
35
36     /**
37      * Sets the HttpServletResponse attribute of the UrlEncoder object
38      *
39      *@param httpServletResponse The new HttpServletResponse value
40      */

41     public void setHttpServletResponse(HttpServletResponse httpServletResponse) {
42         this.httpServletResponse = httpServletResponse;
43     }
44
45
46
47     /**
48      * Sets the HttpServletRequest attribute of the UrlEncoder object
49      *
50      *@param httpServletRequest The new HttpServletRequest value
51      */

52     public void setHttpServletRequest(HttpServletRequest httpServletRequest) {
53         this.httpServletRequest = httpServletRequest;
54     }
55
56
57
58     /**
59      * Gets the EncodedUrl attribute of the UrlEncoder object
60      *
61      *@return The EncodedUrl value
62      */

63     public String JavaDoc getEncodedUrl() {
64         encodeUrl();
65         return encodedUrl;
66     }
67
68
69     /**
70      * Gets the LocalUriResource attribute of the UrlEncoder object
71      *
72      *@param resourcePath Description of Parameter
73      *@return The LocalUriResource value
74      */

75     public String JavaDoc getLocalUriResource(String JavaDoc resourcePath) {
76         String JavaDoc uri = getHttpServletRequest().getContextPath() + resourcePath;
77         return uri;
78     }
79
80
81     /**
82      * Gets the LocalUrl attribute of the UrlEncoder object
83      *
84      *@param url Description of Parameter
85      *@return The LocalUrl value
86      */

87     public String JavaDoc getLocalUrl(String JavaDoc url) {
88         String JavaDoc localUrl = getHttpServletRequest().getContextPath() + url;
89         return getHttpServletResponse().encodeURL(localUrl);
90     }
91
92
93
94     /**
95      * Gets the HttpServletResponse attribute of the UrlEncoder object
96      *
97      *@return The HttpServletResponse value
98      */

99     public HttpServletResponse getHttpServletResponse() {
100         return httpServletResponse;
101     }
102
103
104     /**
105      * Gets the HttpServletRequest attribute of the UrlEncoder object
106      *
107      *@return The HttpServletRequest value
108      */

109     public HttpServletRequest getHttpServletRequest() {
110         return httpServletRequest;
111     }
112
113
114     /**
115      * perform the encoding
116      */

117     public void encodeUrl() {
118         try {
119             logger.debug("[ Encoding the url ]");
120             String JavaDoc action = getAction();
121             String JavaDoc nameSpace = getNameSpace();
122             encodedUrl = getHttpServletRequest().getContextPath();
123
124             // record in the urlMap
125
String JavaDoc hash = getUrlWrapper().getHash();
126             URLMap map = SessionManager.getHTMLDocumentBuilder(getHttpServletRequest()).getUrlMap();
127             map.addSourceUrl(getUrlWrapper(), hash);
128
129             // build the new url
130
encodedUrl = encodedUrl + "/webBrowser.do?show=" + action + "&" + "nameSpace=" + nameSpace + "&" + org.jahia.clipbuilder.html.struts.Util.Constants.LINK_HASH + "=" + hash;
131             encodedUrl = getHttpServletResponse().encodeURL(encodedUrl);
132         }
133         catch (Exception JavaDoc ex) {
134             logger.error("Error Exception: " + ex.toString());
135             //ex.printStackTrace();
136
}
137     }
138
139
140     /**
141      * Gets the NameSpace attribute of the UrlEncoder object
142      *
143      *@return The NameSpace value
144      */

145     private String JavaDoc getNameSpace() {
146         String JavaDoc nameSpace = RequestParameterManager.getNameSpace(getHttpServletRequest());
147         return nameSpace;
148     }
149 }
150
Popular Tags