Class DefaultApache31ProxyEngine

java.lang.Object
de.hybris.platform.xyformsservices.proxy.orbeonservices.impl.DefaultApache31ProxyEngine
All Implemented Interfaces:
ProxyEngine

public class DefaultApache31ProxyEngine extends Object implements ProxyEngine
ProxyEngine implementation for Orbeon. Used Apache HttpClient 3.1.

  • Field Details

  • Constructor Details

    • DefaultApache31ProxyEngine

      public DefaultApache31ProxyEngine()
  • Method Details

    • extractNamespace

      public String extractNamespace(javax.servlet.http.HttpServletRequest request)
      Extracts the namespace coming from client.
      Specified by:
      extractNamespace in interface ProxyEngine
      Parameters:
      request -
    • proxy

      public void proxy(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String namespace, String url, boolean forceGetMethod, Map<String,String> headers) throws ProxyException
      Description copied from interface: ProxyEngine
      Proxies content
      Specified by:
      proxy in interface ProxyEngine
      Parameters:
      request - The HttpServletRequest associated to the call
      response - The HttpServletResponse associated to the call
      namespace - Used for HTML element's id generation
      url - The url to be called
      forceGetMethod - Useful when proxying content, when false it uses the same method used in the original request.
      headers - Extra headers to be passed to the connection, useful for authentication headers.
      Throws:
      ProxyException
    • getHostPart

      protected String getHostPart(String url)
      Gets the host part of an URL, including protocol, host, port with no trailing slash.
      Parameters:
      url -
    • getPrefixFromRequest

      protected String getPrefixFromRequest(javax.servlet.http.HttpServletRequest request)
      Gets the prefix from the request URI address.
      Parameters:
      request -
    • isTextFile

      protected boolean isTextFile(String contentType)
      Returns true if the given contentType refers to a text file.
      Parameters:
      contentType -
    • sendRequestHeaders

      protected void sendRequestHeaders(Set<String> headers, javax.servlet.http.HttpServletRequest request, org.apache.http.client.methods.HttpRequestBase httpMethod)
      Sends headers from the request to the remote server.
      Parameters:
      headers - headers that should be sent
      request - Request to take header values from.
      httpMethod - httpMethod
    • sendResponseHeaders

      protected void sendResponseHeaders(Set<String> headers, org.apache.http.Header[] responseHeaders, javax.servlet.http.HttpServletResponse response)
      Get headers from remote connection and copies them back to the current response.
      Parameters:
      headers - headers that should be copied back
      responseHeaders - Remote response Headers
      response - Response to copy header values to.
    • setUrlRewriter

      public void setUrlRewriter(UrlRewriter urlRewriter)
    • setHeadersTo

      public void setHeadersTo(List<String> headersTo)
    • setHeadersFrom

      public void setHeadersFrom(List<String> headersFrom)
    • getHttpClient

      protected org.apache.http.client.HttpClient getHttpClient()
    • setHttpClient

      public void setHttpClient(org.apache.http.client.HttpClient httpClient)
    • getConfigurationService

      protected ConfigurationService getConfigurationService()
    • setConfigurationService

      public void setConfigurationService(ConfigurationService configurationService)