接口 javax.servlet.http.HttpServletRequest
的使用

使用 HttpServletRequest 的软件包
javax.servlet.http The javax.servlet.http package contains a number of classes and interfaces that describe and define the contracts between a servlet class running under the HTTP protocol and the runtime environment provided for an instance of such a class by a conforming servlet container. 
javax.servlet.jsp Classes and interfaces for the Core JSP 2.1 API. 
org.apache.jasper.runtime   
org.apache.jasper.servlet   
org.eclipse.jetty.ajp   
org.eclipse.jetty.http.gzip   
org.eclipse.jetty.http.spi   
org.eclipse.jetty.nested   
org.eclipse.jetty.rewrite.handler   
org.eclipse.jetty.security   
org.eclipse.jetty.security.authentication   
org.eclipse.jetty.server   
org.eclipse.jetty.server.handler   
org.eclipse.jetty.server.session   
org.eclipse.jetty.servlet   
org.eclipse.jetty.servlets   
org.eclipse.jetty.websocket   
 

javax.servlet.httpHttpServletRequest 的使用
 

实现 HttpServletRequestjavax.servlet.http 中的类
 class HttpServletRequestWrapper
          Provides a convenient implementation of the HttpServletRequest interface that can be subclassed by developers wishing to adapt the request to a Servlet.
 

参数类型为 HttpServletRequestjavax.servlet.http 中的方法
protected  void HttpServlet.doDelete(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a DELETE request.
protected  void HttpServlet.doGet(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a GET request.
protected  void HttpServlet.doHead(HttpServletRequest req, HttpServletResponse resp)
          Receives an HTTP HEAD request from the protected service method and handles the request.
protected  void HttpServlet.doOptions(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a OPTIONS request.
protected  void HttpServlet.doPost(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a POST request.
protected  void HttpServlet.doPut(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a PUT request.
protected  void HttpServlet.doTrace(HttpServletRequest req, HttpServletResponse resp)
          Called by the server (via the service method) to allow a servlet to handle a TRACE request.
protected  long HttpServlet.getLastModified(HttpServletRequest req)
          Returns the time the HttpServletRequest object was last modified, in milliseconds since midnight January 1, 1970 GMT.
static StringBuffer HttpUtils.getRequestURL(HttpServletRequest req)
          已过时。 Reconstructs the URL the client used to make the request, using information in the HttpServletRequest object.
protected  void HttpServlet.service(HttpServletRequest req, HttpServletResponse resp)
          Receives standard HTTP requests from the public service method and dispatches them to the doXXX methods defined in this class.
 

参数类型为 HttpServletRequestjavax.servlet.http 中的构造方法
HttpServletRequestWrapper(HttpServletRequest request)
          Constructs a request object wrapping the given request.
 

javax.servlet.jspHttpServletRequest 的使用
 

参数类型为 HttpServletRequestjavax.servlet.jsp 中的方法
 void HttpJspPage._jspService(HttpServletRequest request, HttpServletResponse response)
          The _jspService()method corresponds to the body of the JSP page.
 

org.apache.jasper.runtimeHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.apache.jasper.runtime 中的方法
abstract  void HttpJspBase._jspService(HttpServletRequest request, HttpServletResponse response)
           
 void HttpJspBase.service(HttpServletRequest request, HttpServletResponse response)
          Entry point into service.
 

org.apache.jasper.servletHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.apache.jasper.servlet 中的方法
 void JspServlet.service(HttpServletRequest request, HttpServletResponse response)
           
 void JspServletWrapper.service(HttpServletRequest request, HttpServletResponse response, boolean precompile)
           
 

org.eclipse.jetty.ajpHttpServletRequest 的使用
 

实现 HttpServletRequestorg.eclipse.jetty.ajp 中的类
 class Ajp13Request
           
 

org.eclipse.jetty.http.gzipHttpServletRequest 的使用
 

声明为 HttpServletRequestorg.eclipse.jetty.http.gzip 中的字段
protected  HttpServletRequest CompressedResponseWrapper._request
           
 

返回 HttpServletRequestorg.eclipse.jetty.http.gzip 中的方法
 HttpServletRequest CompressedResponseWrapper.getRequest()
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.http.gzip 中的方法
protected abstract  AbstractCompressedStream CompressedResponseWrapper.newCompressedStream(HttpServletRequest _request, HttpServletResponse response)
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.http.gzip 中的构造方法
AbstractCompressedStream(String encoding, HttpServletRequest request, CompressedResponseWrapper wrapper, String vary)
          Instantiates a new compressed stream.
CompressedResponseWrapper(HttpServletRequest request, HttpServletResponse response)
           
 

org.eclipse.jetty.http.spiHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.http.spi 中的方法
 void HttpSpiContextHandler.doScope(String target, Request baseRequest, HttpServletRequest req, HttpServletResponse resp)
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.http.spi 中的构造方法
JettyHttpExchange(com.sun.net.httpserver.HttpContext jaxWsContext, HttpServletRequest req, HttpServletResponse resp)
           
JettyHttpsExchange(com.sun.net.httpserver.HttpContext jaxWsContext, HttpServletRequest req, HttpServletResponse resp)
           
 

org.eclipse.jetty.nestedHttpServletRequest 的使用
 

实现 HttpServletRequestorg.eclipse.jetty.nested 中的类
 class NestedRequest
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.nested 中的构造方法
NestedConnection(NestedConnector connector, NestedEndPoint endp, HttpServletRequest outerRequest, HttpServletResponse outerResponse, String nestedIn)
           
NestedEndPoint(HttpServletRequest outerRequest, HttpServletResponse outerResponse)
           
NestedRequest(HttpServletRequest outer)
           
 

org.eclipse.jetty.rewrite.handlerHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.rewrite.handler 中的方法
protected  String RuleContainer.apply(String target, HttpServletRequest request, HttpServletResponse response)
          Process the contained rules (called by matchAndApply)
 String RewritePatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String ResponsePatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String RedirectPatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
           
protected  String ProxyRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
           
protected abstract  String PatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
          Apply the rule to the request
 String HeaderPatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
          Invokes this method when a match found.
 String CookiePatternRule.apply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String RewriteRegexRule.apply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher)
           
protected abstract  String RegexRule.apply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher)
          Apply this rule to the request/response pair.
protected  String RedirectRegexRule.apply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher)
           
protected abstract  String HeaderRule.apply(String target, String value, HttpServletRequest request, HttpServletResponse response)
          Apply the rule to the request
protected  String ForwardedSchemeHeaderRule.apply(String target, String value, HttpServletRequest request, HttpServletResponse response)
           
 void RewriteHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 String VirtualHostRuleContainer.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
          Process the contained rules if the request is applicable to the virtual hosts of this rule
 String ValidUrlRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String RuleContainer.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
          Process the contained rules
abstract  String Rule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
          This method calls tests the rule against the request/response pair and if the Rule applies, then the rule's action is triggered.
 String RegexRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String PatternRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String MsieSslRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String LegacyRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 String HeaderRule.matchAndApply(String target, HttpServletRequest request, HttpServletResponse response)
           
 

org.eclipse.jetty.securityHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.security 中的方法
 void HashCrossContextPsuedoSession.clear(HttpServletRequest request)
           
 void CrossContextPsuedoSession.clear(HttpServletRequest request)
           
 T HashCrossContextPsuedoSession.fetch(HttpServletRequest request)
           
 T CrossContextPsuedoSession.fetch(HttpServletRequest request)
           
 void SecurityHandler.handle(String pathInContext, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 

org.eclipse.jetty.security.authenticationHttpServletRequest 的使用
 

实现 HttpServletRequestorg.eclipse.jetty.security.authentication 中的类
protected static class FormAuthenticator.FormRequest
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.security.authentication 中的方法
protected  HttpSession LoginAuthenticator.renewSession(HttpServletRequest request, HttpServletResponse response)
          Change the session id.
 

参数类型为 HttpServletRequestorg.eclipse.jetty.security.authentication 中的构造方法
FormAuthenticator.FormRequest(HttpServletRequest request)
           
 

org.eclipse.jetty.serverHttpServletRequest 的使用
 

实现 HttpServletRequestorg.eclipse.jetty.server 中的类
 class Request
          Jetty Request.
 class ServletRequestHttpWrapper
          Class to tunnel a ServletRequest via a HttpServletRequest
 

返回 HttpServletRequestorg.eclipse.jetty.server 中的方法
 HttpServletRequest Authentication.Wrapped.getHttpServletRequest()
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.server 中的方法
 String SessionIdManager.getNodeId(String clusterId, HttpServletRequest request)
          Get a node ID from a cluster ID and a request
static Request Request.getRequest(HttpServletRequest request)
           
 void Handler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
          Handle a request.
 HttpSession SessionManager.newHttpSession(HttpServletRequest request)
          Creates a new HttpSession.
 String SessionIdManager.newSessionId(HttpServletRequest request, long created)
           
 

org.eclipse.jetty.server.handlerHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.server.handler 中的方法
protected  SocketChannel ConnectHandler.connect(HttpServletRequest request, String host, int port)
          Establishes a connection to the remote server.
protected  void ResourceHandler.doDirectory(HttpServletRequest request, HttpServletResponse response, Resource resource)
           
abstract  void ScopedHandler.doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ContextHandler.doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
abstract  void ScopedHandler.doScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ContextHandler.doScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  String ShutdownHandler.getRemoteAddr(HttpServletRequest request)
           
protected  Resource ResourceHandler.getResource(HttpServletRequest request)
           
 void StatisticsHandler.handle(String path, Request request, HttpServletRequest httpRequest, HttpServletResponse httpResponse)
           
 void ShutdownHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ScopedHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ResourceHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void RequestLogHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void IPAccessHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
          Checks the incoming request against the whitelist and blacklist
 void HotSwapHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void HandlerWrapper.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void HandlerList.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void HandlerCollection.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void GzipHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ErrorHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void DefaultHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void DebugHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ContextHandlerCollection.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ConnectHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  boolean ConnectHandler.handleAuthentication(HttpServletRequest request, HttpServletResponse response, String address)
          Handles the authentication before setting up the tunnel to the remote server.
protected  void ConnectHandler.handleConnect(Request baseRequest, HttpServletRequest request, HttpServletResponse response, String serverAddress)
          Handles a CONNECT request.
protected  void ErrorHandler.handleErrorPage(HttpServletRequest request, Writer writer, int code, String message)
           
protected  CompressedResponseWrapper GzipHandler.newGzipResponseWrapper(HttpServletRequest request, HttpServletResponse response)
          Allows derived implementations to replace ResponseWrapper implementation.
 void ScopedHandler.nextHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void ScopedHandler.nextScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  void ConnectHandler.prepareContext(HttpServletRequest request, ConcurrentMap<String,Object> context)
           
protected  void ErrorHandler.writeErrorPage(HttpServletRequest request, Writer writer, int code, String message, boolean showStacks)
           
protected  void ErrorHandler.writeErrorPageBody(HttpServletRequest request, Writer writer, int code, String message, boolean showStacks)
           
protected  void ErrorHandler.writeErrorPageHead(HttpServletRequest request, Writer writer, int code, String message)
           
protected  void ErrorHandler.writeErrorPageMessage(HttpServletRequest request, Writer writer, int code, String message, String uri)
           
protected  void ErrorHandler.writeErrorPageStacks(HttpServletRequest request, Writer writer)
           
 

org.eclipse.jetty.server.sessionHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.server.session 中的方法
protected  void SessionHandler.checkRequestedSessionId(Request baseRequest, HttpServletRequest request)
          Look for a requested session ID in cookies and URI parameters
 void SessionHandler.doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void SessionHandler.doScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 String JDBCSessionIdManager.getNodeId(String clusterId, HttpServletRequest request)
          Get the session id, including this node's id as a suffix.
 String HashSessionIdManager.getNodeId(String clusterId, HttpServletRequest request)
          Get the session ID with any worker ID.
 HttpSession AbstractSessionManager.newHttpSession(HttpServletRequest request)
          Create a new HttpSession for a request
protected  AbstractSession JDBCSessionManager.newSession(HttpServletRequest request)
          Make a new Session.
protected  AbstractSession HashSessionManager.newSession(HttpServletRequest request)
           
protected abstract  AbstractSession AbstractSessionManager.newSession(HttpServletRequest request)
          Create a new session instance
 String AbstractSessionIdManager.newSessionId(HttpServletRequest request, long created)
          Create a new session id if necessary.
static HttpSession AbstractSessionManager.renewSession(HttpServletRequest request, HttpSession httpSession, boolean authenticated)
           
 

参数类型为 HttpServletRequestorg.eclipse.jetty.server.session 中的构造方法
AbstractSession(AbstractSessionManager abstractSessionManager, HttpServletRequest request)
           
HashedSession(HashSessionManager hashSessionManager, HttpServletRequest request)
           
JDBCSessionManager.Session(HttpServletRequest request)
          Session from a request.
 

org.eclipse.jetty.servletHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.servlet 中的方法
protected  void StatisticsServlet.doGet(HttpServletRequest req, HttpServletResponse resp)
           
protected  void NoJspServlet.doGet(HttpServletRequest req, HttpServletResponse response)
           
protected  void DefaultServlet.doGet(HttpServletRequest request, HttpServletResponse response)
           
 void ServletHandler.doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  void DefaultServlet.doOptions(HttpServletRequest req, HttpServletResponse resp)
           
 void StatisticsServlet.doPost(HttpServletRequest sreq, HttpServletResponse sres)
           
protected  void DefaultServlet.doPost(HttpServletRequest request, HttpServletResponse response)
           
 void ServletHandler.doScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  void DefaultServlet.doTrace(HttpServletRequest req, HttpServletResponse resp)
           
 void ErrorPageErrorHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
protected  void ServletHandler.notFound(HttpServletRequest request, HttpServletResponse response)
           
protected  boolean DefaultServlet.passConditionalHeaders(HttpServletRequest request, HttpServletResponse response, Resource resource, HttpContent content)
           
protected  void DefaultServlet.sendData(HttpServletRequest request, HttpServletResponse response, boolean include, Resource resource, HttpContent content, Enumeration reqRanges)
           
protected  void DefaultServlet.sendDirectory(HttpServletRequest request, HttpServletResponse response, Resource resource, String pathInContext)
           
protected  void Invoker.service(HttpServletRequest request, HttpServletResponse response)
           
 

org.eclipse.jetty.servletsHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.servlets 中的方法
protected  void DoSFilter.closeConnection(HttpServletRequest request, HttpServletResponse response, Thread thread)
          Takes drastic measures to return this response and stop this thread.
protected  void CloseableDoSFilter.closeConnection(HttpServletRequest request, HttpServletResponse response, Thread thread)
           
protected  CompressedResponseWrapper IncludableGzipFilter.createWrappedResponse(HttpServletRequest request, HttpServletResponse response, String compressionType)
           
protected  CompressedResponseWrapper GzipFilter.createWrappedResponse(HttpServletRequest request, HttpServletResponse response, String compressionType)
           
protected  void ProxyServlet.customizeExchange(HttpExchange exchange, HttpServletRequest request)
          Extension point for subclasses to customize an exchange.
protected  void DoSFilter.doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
           
protected  void DoSFilter.doFilterChain(FilterChain chain, HttpServletRequest request, HttpServletResponse response)
           
protected  void ConcatServlet.doGet(HttpServletRequest req, HttpServletResponse resp)
           
protected  String ProxyServlet.filterResponseHeaderValue(String headerName, String headerValue, HttpServletRequest request)
          Extension point for remote server response header filtering.
protected  String BalancerServlet.filterResponseHeaderValue(String headerName, String headerValue, HttpServletRequest request)
           
protected  long ConcatServlet.getLastModified(HttpServletRequest req)
           
protected  int DoSFilter.getPriority(HttpServletRequest request, org.eclipse.jetty.servlets.DoSFilter.RateTracker tracker)
          Get priority for this request, based on user type
 void ProxyServlet.handleConnect(HttpServletRequest request, HttpServletResponse response)
           
 void PutFilter.handleDelete(HttpServletRequest request, HttpServletResponse response, String pathInContext, File file)
           
 void PutFilter.handleMove(HttpServletRequest request, HttpServletResponse response, String pathInContext, File file)
           
protected  void ProxyServlet.handleOnConnectionFailed(Throwable ex, HttpServletRequest request, HttpServletResponse response)
          Extension point for custom handling of an HttpExchange's onConnectionFailed method.
protected  void ProxyServlet.handleOnException(Throwable ex, HttpServletRequest request, HttpServletResponse response)
          Extension point for custom handling of an HttpExchange's onException method.
protected  void ProxyServlet.handleOnExpire(HttpServletRequest request, HttpServletResponse response)
          Extension point for custom handling of an HttpExchange's onExpire method.
 void PutFilter.handleOptions(FilterChain chain, HttpServletRequest request, HttpServletResponse response)
           
 void PutFilter.handlePut(HttpServletRequest request, HttpServletResponse response, String pathInContext, File file)
           
protected  boolean CrossOriginFilter.isEnabled(HttpServletRequest request)
           
protected  boolean PutFilter.passConditionalHeaders(HttpServletRequest request, HttpServletResponse response, File file)
           
protected  HttpURI ProxyServlet.proxyHttpURI(HttpServletRequest request, String uri)
           
protected  HttpURI BalancerServlet.proxyHttpURI(HttpServletRequest request, String uri)
           
 void CGI.service(HttpServletRequest req, HttpServletResponse res)
           
 

org.eclipse.jetty.websocketHttpServletRequest 的使用
 

参数类型为 HttpServletRequestorg.eclipse.jetty.websocket 中的方法
 boolean WebSocketFactory.acceptWebSocket(HttpServletRequest request, HttpServletResponse response)
           
 boolean WebSocketServlet.checkOrigin(HttpServletRequest request, String origin)
           
 boolean WebSocketHandler.checkOrigin(HttpServletRequest request, String origin)
           
 boolean WebSocketFactory.Acceptor.checkOrigin(HttpServletRequest request, String origin)
          Checks the origin of an incoming WebSocket handshake request.
 WebSocket WebSocketFactory.Acceptor.doWebSocketConnect(HttpServletRequest request, String protocol)
          Factory method that applications needs to implement to return a WebSocket object.
 void WebSocketHandler.handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
           
 void WebSocketServletConnectionRFC6455.handshake(HttpServletRequest request, HttpServletResponse response, String subprotocol)
           
 void WebSocketServletConnectionD08.handshake(HttpServletRequest request, HttpServletResponse response, String subprotocol)
           
 void WebSocketServletConnectionD06.handshake(HttpServletRequest request, HttpServletResponse response, String subprotocol)
           
 void WebSocketServletConnectionD00.handshake(HttpServletRequest request, HttpServletResponse response, String subprotocol)
           
 void WebSocketServletConnection.handshake(HttpServletRequest request, HttpServletResponse response, String subprotocol)
           
protected  void WebSocketServlet.service(HttpServletRequest request, HttpServletResponse response)
           
 void WebSocketFactory.upgrade(HttpServletRequest request, HttpServletResponse response, WebSocket websocket, String protocol)
          Upgrade the request/response to a WebSocket Connection.
 



Copyright © 2013. All Rights Reserved.