Package org.apache.http.nio.protocol
Class AbstractAsyncRequestConsumer<T>
- java.lang.Object
-
- org.apache.http.nio.protocol.AbstractAsyncRequestConsumer<T>
-
- All Implemented Interfaces:
Closeable,AutoCloseable,HttpAsyncRequestConsumer<T>
- Direct Known Subclasses:
BasicAsyncRequestConsumer
public abstract class AbstractAsyncRequestConsumer<T> extends Object implements HttpAsyncRequestConsumer<T>
AbstractHttpAsyncRequestConsumerimplementation that relieves its subclasses from having to manage internal state and provides a number of protected event methods that they need to implement.- Since:
- 4.2
-
-
Constructor Summary
Constructors Constructor Description AbstractAsyncRequestConsumer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidconsumeContent(ContentDecoder decoder, IOControl ioctrl)UseonContentReceived(ContentDecoder, IOControl)instead.voidfailed(Exception ex)Invoked to signal that the request processing terminated abnormally.ExceptiongetException()Returns an exception in case of an abnormal termination.TgetResult()Returns a result of the request execution, when available.booleanisDone()Determines whether or not the request execution completed.voidrequestCompleted(HttpContext context)UsebuildResult(HttpContext)instead.voidrequestReceived(HttpRequest request)UseonRequestReceived(HttpRequest)instead.
-
-
-
Method Detail
-
requestReceived
public final void requestReceived(HttpRequest request) throws HttpException, IOException
UseonRequestReceived(HttpRequest)instead.- Specified by:
requestReceivedin interfaceHttpAsyncRequestConsumer<T>- Parameters:
request- HTTP request message.- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
consumeContent
public final void consumeContent(ContentDecoder decoder, IOControl ioctrl) throws IOException
UseonContentReceived(ContentDecoder, IOControl)instead.- Specified by:
consumeContentin interfaceHttpAsyncRequestConsumer<T>- Parameters:
decoder- content decoder.ioctrl- I/O control of the underlying connection.- Throws:
IOException- in case of an I/O error
-
requestCompleted
public final void requestCompleted(HttpContext context)
UsebuildResult(HttpContext)instead.- Specified by:
requestCompletedin interfaceHttpAsyncRequestConsumer<T>- Parameters:
context- HTTP context
-
failed
public final void failed(Exception ex)
Description copied from interface:HttpAsyncRequestConsumerInvoked to signal that the request processing terminated abnormally.- Specified by:
failedin interfaceHttpAsyncRequestConsumer<T>- Parameters:
ex- exception
-
close
public final void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
getException
public Exception getException()
Description copied from interface:HttpAsyncRequestConsumerReturns an exception in case of an abnormal termination. This method returnsnullif the request execution is still ongoing or if it completed successfully.- Specified by:
getExceptionin interfaceHttpAsyncRequestConsumer<T>- See Also:
HttpAsyncRequestConsumer.isDone()
-
getResult
public T getResult()
Description copied from interface:HttpAsyncRequestConsumerReturns a result of the request execution, when available. This method returnsnullif the request execution is still ongoing.- Specified by:
getResultin interfaceHttpAsyncRequestConsumer<T>- See Also:
HttpAsyncRequestConsumer.isDone()
-
isDone
public boolean isDone()
Description copied from interface:HttpAsyncRequestConsumerDetermines whether or not the request execution completed. If the request processing terminated normallyHttpAsyncRequestConsumer.getResult()can be used to obtain the result. If the request processing terminated abnormallyHttpAsyncRequestConsumer.getException()can be used to obtain the cause.- Specified by:
isDonein interfaceHttpAsyncRequestConsumer<T>
-
-