Package org.apache.http.impl.nio.reactor
Class SessionRequestImpl
- java.lang.Object
-
- org.apache.http.impl.nio.reactor.SessionRequestImpl
-
- All Implemented Interfaces:
SessionRequest
@Contract(threading=SAFE_CONDITIONAL) public class SessionRequestImpl extends java.lang.Object implements SessionRequest
Default implementation ofSessionRequest
.- Since:
- 4.0
-
-
Constructor Summary
Constructors Constructor Description SessionRequestImpl(java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress, java.lang.Object attachment, SessionRequestCallback callback)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cancel()
Cancels the request.void
completed(IOSession session)
void
failed(java.io.IOException exception)
java.lang.Object
getAttachment()
Returns attachment object will be added to the session's context upon initialization.int
getConnectTimeout()
Returns connect timeout value in milliseconds.java.io.IOException
getException()
ReturnsIOException
instance if the request could not be successfully executed due to an I/O error ornull
if no error occurred to this point.java.net.SocketAddress
getLocalAddress()
Returns local socket address.java.net.SocketAddress
getRemoteAddress()
Returns socket address of the remote host.IOSession
getSession()
ReturnsIOSession
instance created as a result of this request ornull
if the request is still pending.boolean
isCompleted()
Determines whether the request has been completed (either successfully or unsuccessfully).void
setConnectTimeout(int timeout)
Sets connect timeout value in milliseconds.void
timeout()
void
waitFor()
Waits for completion of this session request.
-
-
-
Constructor Detail
-
SessionRequestImpl
public SessionRequestImpl(java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress, java.lang.Object attachment, SessionRequestCallback callback)
-
-
Method Detail
-
getRemoteAddress
public java.net.SocketAddress getRemoteAddress()
Description copied from interface:SessionRequest
Returns socket address of the remote host.- Specified by:
getRemoteAddress
in interfaceSessionRequest
- Returns:
- socket address of the remote host
-
getLocalAddress
public java.net.SocketAddress getLocalAddress()
Description copied from interface:SessionRequest
Returns local socket address.- Specified by:
getLocalAddress
in interfaceSessionRequest
- Returns:
- local socket address.
-
getAttachment
public java.lang.Object getAttachment()
Description copied from interface:SessionRequest
Returns attachment object will be added to the session's context upon initialization. This object can be used to pass an initial processing state to the protocol handler.- Specified by:
getAttachment
in interfaceSessionRequest
- Returns:
- attachment object.
-
isCompleted
public boolean isCompleted()
Description copied from interface:SessionRequest
Determines whether the request has been completed (either successfully or unsuccessfully).- Specified by:
isCompleted
in interfaceSessionRequest
- Returns:
true
if the request has been completed,false
if still pending.
-
waitFor
public void waitFor() throws java.lang.InterruptedException
Description copied from interface:SessionRequest
Waits for completion of this session request.- Specified by:
waitFor
in interfaceSessionRequest
- Throws:
java.lang.InterruptedException
- in case the execution process was interrupted.
-
getSession
public IOSession getSession()
Description copied from interface:SessionRequest
ReturnsIOSession
instance created as a result of this request ornull
if the request is still pending.- Specified by:
getSession
in interfaceSessionRequest
- Returns:
- I/O session or
null
if the request is still pending.
-
getException
public java.io.IOException getException()
Description copied from interface:SessionRequest
ReturnsIOException
instance if the request could not be successfully executed due to an I/O error ornull
if no error occurred to this point.- Specified by:
getException
in interfaceSessionRequest
- Returns:
- I/O exception or
null
if no error occurred to this point.
-
completed
public void completed(IOSession session)
-
failed
public void failed(java.io.IOException exception)
-
timeout
public void timeout()
-
getConnectTimeout
public int getConnectTimeout()
Description copied from interface:SessionRequest
Returns connect timeout value in milliseconds.- Specified by:
getConnectTimeout
in interfaceSessionRequest
- Returns:
- connect timeout value in milliseconds.
-
setConnectTimeout
public void setConnectTimeout(int timeout)
Description copied from interface:SessionRequest
Sets connect timeout value in milliseconds.- Specified by:
setConnectTimeout
in interfaceSessionRequest
- Parameters:
timeout
- connect timeout value in milliseconds.
-
cancel
public void cancel()
Description copied from interface:SessionRequest
Cancels the request. Invocation of this method will set the status of the request to completed and will unblock threads blocked in the {SessionRequest.waitFor()
} method.- Specified by:
cancel
in interfaceSessionRequest
-
-