📄 portletrequestimpl.java.svn-base
字号:
// this.parameters = null;// } if (LOG.isDebugEnabled()) { LOG.debug("Render request's included mode: " + included); } } public boolean isIncluded() { return included; } /** * The base method that returns the parameter map in this portlet request. * All parameter-related methods call this base method. Subclasses may just * overwrite this protected method to change behavior of all parameter- * related methods. * @return the base parameter map from which parameters are retrieved. */ protected Map<String, String[]> baseGetParameterMap() { if (isIncluded()) { setBodyAccessed(); } Map<String, String[]> parameters = urlProvider.getRenderParameters(); if (parameters == null) { if (getRequestMethod().equals(Constants.METHOD_RENDER) || getRequestMethod().equals(Constants.METHOD_EVENT)) { parameters = urlProvider.parseRenderParameters(this.getHttpServletRequest().getParameterMap(), queryString); queryString = null; } else { parameters = urlProvider.parseRenderParameters(this.getHttpServletRequest().getParameterMap(), null); } } return parameters; } public void setForwardedQueryString(String queryString) { if (!forwarded) { throw new IllegalStateException( "Parameters cannot be appended to " + "render request which is not included in a dispatch."); } this.parameters = null; this.queryString = queryString;// this.urlProvider.parseRenderParameters(super.getParameterMap(), queryString); this.urlProvider.parseRenderParameters(null,null); } public void setIncludedQueryString(String queryString) throws IllegalStateException { if (!included) { throw new IllegalStateException( "Parameters cannot be appended to " + "render request which is not included in a dispatch."); } this.parameters = null; this.queryString = queryString;// this.urlProvider.parseRenderParameters(super.getParameterMap(), queryString); this.urlProvider.parseRenderParameters(null,null); } public Map<String, String[]> getPrivateParameterMap() { return Collections.unmodifiableMap(StringUtils .copyParameters(baseGetParameterMap())); } public Map<String, String[]> getPublicParameterMap() { Map<String, String[]> map = new HashMap<String, String[]>(); List<String> publicRenderParameterNames = portletWindow .getPortletEntity().getPortletDefinition() .getSupportedPublicRenderParameters(); String[] values = null; if (publicRenderParameterNames != null) { for (String string : publicRenderParameterNames) { values = urlProvider.getPublicRenderParameters(string); if (values != null) { map.put(string, values); } } } return Collections.unmodifiableMap(map); } public String getWindowID() { return portletWindow.getId().getStringId(); } private void setLifecyclePhase() { String lifecyclePhase = getLifecyclePhase(); this.setAttribute(LIFECYCLE_PHASE, lifecyclePhase); } @Override public String getLocalAddr() { return (isIncluded() || isForwarded()) ? null : super.getLocalAddr(); } @Override public String getLocalName() { return (isIncluded() || isForwarded()) ? null : super.getLocalName(); } @Override public int getLocalPort() { return (isIncluded() || isForwarded()) ? 0 : super.getLocalPort(); } public String getProtocol() { return (isIncluded() || isForwarded()) ? "HTTP/1.1" : super .getProtocol(); } @Override public String getRealPath(String arg0) { return (isIncluded() || isForwarded()) ? null : super.getRealPath(arg0); } @Override public String getRemoteAddr() { return (isIncluded() || isForwarded()) ? null : super.getRemoteAddr(); } @Override public String getRemoteHost() { return (isIncluded() || isForwarded()) ? null : super.getRemoteHost(); } @Override public int getRemotePort() { return (isIncluded() || isForwarded()) ? 0 : super.getRemotePort(); } @Override public Cookie[] getCookies() { if (isIncluded() || isForwarded()) { return super.getCookies(); } else return super.getCookies(); } @Override public long getDateHeader(String arg0) { if (isIncluded() || isForwarded()) { String value = getHeader(arg0); if (value == null) { return (-1L); } // Attempt to convert the date header in a variety of formats return parseDateHeader(value); } else return super.getDateHeader(arg0); } @Override public String getHeader(String arg0) { if (isIncluded() || isForwarded()) { return getProperty(arg0); } else return super.getHeader(arg0); } @Override public Enumeration getHeaderNames() { if (isIncluded() || isForwarded()) { return getPropertyNames(); } else return super.getHeaderNames(); } @Override public Enumeration getHeaders(String arg0) { if (isIncluded() || isForwarded()) { return getProperties(arg0); } else return super.getHeaders(arg0); } @Override public int getIntHeader(String arg0) { if (isIncluded() || isForwarded()) { String property = getProperty(arg0); if (property == null) { return -1; } else { return Integer.parseInt(property); } } else return super.getIntHeader(arg0); } public String getPathInfo() { if (isIncluded()) return (String) super .getAttribute("javax.servlet.include.path_info"); else if (isForwarded()) return (String) super .getAttribute("javax.servlet.forward.path_info"); else return super.getPathInfo(); } public String getQueryString() { if (isIncluded()) return (String) super .getAttribute("javax.servlet.include.query_string"); else if (isForwarded()) return (String) super .getAttribute("javax.servlet.forward.query_string"); else return super.getQueryString(); } public String getPathTranslated() { if (isIncluded() || isForwarded()) { String path = getServletPath() + getPathInfo() + "?" + getQueryString(); return getRealPath(path); } return super.getPathTranslated(); } public String getRequestURI() { if (isIncluded()) return (String) super .getAttribute("javax.servlet.include.request_uri"); else if (isForwarded()) return (String) super .getAttribute("javax.servlet.forward.request_uri"); else return super.getRequestURI(); } public String getServletPath() { if (isIncluded()) return (String) super .getAttribute("javax.servlet.include.servlet_path"); else if (isForwarded()) return (String) super .getAttribute("javax.servlet.forward.servlet_path"); else return super.getServletPath(); } public StringBuffer getRequestURL() { return (isIncluded() || isForwarded()) ? null : super.getRequestURL(); } @Override public HttpSession getSession() { if (isIncluded() || isForwarded()) { // ensure cached PortletSession is created (with proper HttpSession // invalidation check performed) getPortletSession(); if (portletSession != null) { return portletSession.getHttpSession(); } else { return null; } } return super.getSession(); } @Override public HttpSession getSession(boolean create) { if (isIncluded() || isForwarded()) { // ensure cached PortletSession is created (with proper HttpSession // invalidation check performed) getPortletSession(create); if (portletSession != null) { return portletSession.getHttpSession(); } else { return null; } } return super.getSession(); } // ============= private methods ================== /** * Try to parse the given date as a HTTP date. Borrowed and adapted from * Tomcat FastHttpDateFormat */ private long parseDateHeader(String value) { Long dateValue = null; try { dateValue = (Long) dateHeaderParseCache.get(value); } catch (Exception e) { } if (dateValue == null) { for (int i = 0; i < dateHeaderFormats.length; i++) { try { Date date = dateHeaderFormats[i].parse(value); dateValue = new Long(date.getTime()); } catch (ParseException e) { } } if (dateValue != null) { synchronized (dateHeaderParseCache) { if (dateHeaderParseCache.size() > 1000) { dateHeaderParseCache.clear(); } dateHeaderParseCache.put(value, dateValue); } } else { throw new IllegalArgumentException(value); } } return dateValue.longValue(); } public String getLifecyclePhase() { return null; } private void setCCPPProfile() { Profile profile = container.getRequiredContainerServices() .getCCPPProfileService().getCCPPProfile(servletRequest); this.setAttribute(CCPP_PROFILE, profile); } public void setNamedRequestDispatcher(boolean named) { namedRequestDispatcher = named; }}class ServletRequestDispatcher implements RequestDispatcher{ javax.servlet.RequestDispatcher dispatcher; public ServletRequestDispatcher(javax.servlet.RequestDispatcher dispatcher) { this.dispatcher = dispatcher; } public void forward(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException { dispatcher.include(arg0, arg1); } public void include(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException { dispatcher.include(arg0, arg1); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -