Class HttpSmartProxyHandler
- java.lang.Object
-
- org.apache.mina.proxy.AbstractProxyLogicHandler
-
- org.apache.mina.proxy.handlers.http.AbstractHttpLogicHandler
-
- org.apache.mina.proxy.handlers.http.HttpSmartProxyHandler
-
- All Implemented Interfaces:
ProxyLogicHandler
public class HttpSmartProxyHandler extends AbstractHttpLogicHandler
HttpSmartProxyHandler.java - HTTP proxy handler that automatically handles forwarding a request to the appropriate authentication mechanism logic handler.- Since:
- MINA 2.0.0-M3
-
-
Field Summary
Fields Modifier and Type Field Description private AbstractAuthLogicHandlerauthHandlerThe automatically selected http authentication logic handler.private static org.slf4j.LoggerLOGGERprivate booleanrequestSentHas the HTTP proxy request been sent ?
-
Constructor Summary
Constructors Constructor Description HttpSmartProxyHandler(ProxyIoSession proxyIoSession)Creates a new HttpSmartProxyHandler instance
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidautoSelectAuthHandler(HttpProxyResponse response)Automatic selection of the authentication algorithm.voiddoHandshake(IoFilter.NextFilter nextFilter)Performs the handshake processing.voidhandleResponse(HttpProxyResponse response)Handle a HTTP response from the proxy server.-
Methods inherited from class org.apache.mina.proxy.handlers.http.AbstractHttpLogicHandler
decodeResponse, messageReceived, writeRequest
-
Methods inherited from class org.apache.mina.proxy.AbstractProxyLogicHandler
closeSession, closeSession, enqueueWriteRequest, flushPendingWriteRequests, getProxyFilter, getProxyIoSession, getSession, isHandshakeComplete, setHandshakeComplete, writeData
-
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
requestSent
private boolean requestSent
Has the HTTP proxy request been sent ?
-
authHandler
private AbstractAuthLogicHandler authHandler
The automatically selected http authentication logic handler.
-
-
Constructor Detail
-
HttpSmartProxyHandler
public HttpSmartProxyHandler(ProxyIoSession proxyIoSession)
Creates a new HttpSmartProxyHandler instance- Parameters:
proxyIoSession- The Prowxy IoSession
-
-
Method Detail
-
doHandshake
public void doHandshake(IoFilter.NextFilter nextFilter) throws ProxyAuthException
Performs the handshake processing.- Parameters:
nextFilter- the next filter- Throws:
ProxyAuthException- if authentication fails
-
autoSelectAuthHandler
private void autoSelectAuthHandler(HttpProxyResponse response) throws ProxyAuthException
Automatic selection of the authentication algorithm. IfpreferedOrderis set then algorithms are selected from the list order otherwise the algorithm tries to select the most secured algorithm available first.- Parameters:
response- the proxy response- Throws:
ProxyAuthException
-
handleResponse
public void handleResponse(HttpProxyResponse response) throws ProxyAuthException
Handle a HTTP response from the proxy server.- Specified by:
handleResponsein classAbstractHttpLogicHandler- Parameters:
response- The proxy response.- Throws:
ProxyAuthException- If we get an error during the proxy authentication
-
-