1 package org.jahia.clipbuilder.html.web.Url.Impl; 2 3 import javax.portlet.*; 4 import org.jahia.clipbuilder.html.web.Url.URLMap; 5 import org.jahia.clipbuilder.html.util.Constants; 6 7 12 public class PortletUrlEncoder extends BaseUrlEncoder { 13 private RenderRequest request; 14 private RenderResponse response; 15 private String encodedUrl_; 16 private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(PortletUrlEncoder.class); 17 18 19 25 public PortletUrlEncoder(RenderRequest request, RenderResponse response) { 26 setRequest(request); 27 setResponse(response); 28 } 29 30 31 36 public void setRequest(RenderRequest request) { 37 this.request = request; 38 } 39 40 41 46 public void setResponse(RenderResponse response) { 47 this.response = response; 48 } 49 50 51 56 public RenderRequest getRequest() { 57 return request; 58 } 59 60 61 66 public RenderResponse getResponse() { 67 return response; 68 } 69 70 71 76 public String getEncodedUrl() { 77 if (encodedUrl_ == null) { 78 encodeUrl(); 79 } 80 return encodedUrl_; 81 } 82 83 89 public String getLocalUriResource(String resourcePath) { 90 String uri = getRequest().getContextPath() + resourcePath; 91 return uri; 92 } 93 94 95 101 public String getLocalUrl(String url) { 102 String localUrl = getRequest().getContextPath() + url; 103 return getResponse().encodeURL(localUrl); 104 } 105 106 107 108 111 public void encodeUrl() { 112 if(getResponse() == null){ 113 encodedUrl_ = "http://www.google.ch"; 114 return; 115 } 116 PortletURL encodedURL = getResponse().createActionURL(); 117 try { 118 logger.debug("[ Encoding the url ]"); 119 String action = getAction(); 120 121 String hash = getUrlWrapper().getHash(); 123 URLMap map = (URLMap) getRequest().getPortletSession().getAttribute(Constants.URL_MAP); 124 map.addSourceUrl(getUrlWrapper(), hash); 125 126 encodedURL.setParameter("show", action); 128 encodedURL.setParameter(org.jahia.clipbuilder.html.struts.Util.Constants.LINK_HASH, action); 129 String nameSpace = getResponse().getNamespace(); 130 encodedURL.setParameter(org.jahia.clipbuilder.html.struts.Util.Constants.NAME_SPACE,nameSpace); 131 encodedUrl_ = encodedURL.toString(); 132 } 133 catch (Exception ex) { 134 logger.error("Error Exception: " + ex.toString()); 135 ex.printStackTrace(); 136 } 137 138 139 } 140 } 141 | Popular Tags |