Package org.apache.http.nio.reactor
Interface SessionRequest
- All Known Implementing Classes:
SessionRequestImpl
public interface SessionRequest
SessionRequest interface represents a request to establish a new connection
(or session) to a remote host. It can be used to monitor the status of the
request, to block waiting for its completion, or to cancel the request.
Implementations of this interface are expected to be threading safe.
- Since:
- 4.0
-
Method Summary
Modifier and TypeMethodDescriptionvoid
cancel()
Cancels the request.Returns attachment object will be added to the session's context upon initialization.int
Returns connect timeout value in milliseconds.ReturnsIOException
instance if the request could not be successfully executed due to an I/O error ornull
if no error occurred to this point.Returns local socket address.Returns socket address of the remote host.ReturnsIOSession
instance created as a result of this request ornull
if the request is still pending.boolean
Determines whether the request has been completed (either successfully or unsuccessfully).void
setConnectTimeout
(int timeout) Sets connect timeout value in milliseconds.void
waitFor()
Waits for completion of this session request.
-
Method Details
-
getRemoteAddress
SocketAddress getRemoteAddress()Returns socket address of the remote host.- Returns:
- socket address of the remote host
-
getLocalAddress
SocketAddress getLocalAddress()Returns local socket address.- Returns:
- local socket address.
-
getAttachment
Object getAttachment()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.- Returns:
- attachment object.
-
isCompleted
boolean isCompleted()Determines whether the request has been completed (either successfully or unsuccessfully).- Returns:
true
if the request has been completed,false
if still pending.
-
getSession
IOSession getSession()ReturnsIOSession
instance created as a result of this request ornull
if the request is still pending.- Returns:
- I/O session or
null
if the request is still pending.
-
getException
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.- Returns:
- I/O exception or
null
if no error occurred to this point.
-
waitFor
Waits for completion of this session request.- Throws:
InterruptedException
- in case the execution process was interrupted.
-
setConnectTimeout
void setConnectTimeout(int timeout) Sets connect timeout value in milliseconds.- Parameters:
timeout
- connect timeout value in milliseconds.
-
getConnectTimeout
int getConnectTimeout()Returns connect timeout value in milliseconds.- Returns:
- connect timeout value in milliseconds.
-
cancel
void cancel()Cancels the request. Invocation of this method will set the status of the request to completed and will unblock threads blocked in the {waitFor()
} method.
-