Package org.eclipse.jetty.http2.server
Class HttpTransportOverHTTP2
- java.lang.Object
-
- org.eclipse.jetty.http2.server.HttpTransportOverHTTP2
-
- All Implemented Interfaces:
HttpTransport
public class HttpTransportOverHTTP2 extends java.lang.Object implements HttpTransport
-
-
Constructor Summary
Constructors Constructor Description HttpTransportOverHTTP2(Connector connector, HTTP2ServerConnection connection)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
abort(java.lang.Throwable failure)
Aborts this transport.IStream
getStream()
boolean
isOptimizedForDirectBuffers()
Is the underlying transport optimized for DirectBuffer usageboolean
isPushSupported()
void
onCompleted()
Called to indicated the end of the current request/response cycle (which may be some time after the last content is sent).void
onStreamFailure(java.lang.Throwable failure)
boolean
onStreamTimeout(java.lang.Throwable failure)
void
push(MetaData.Request request)
void
recycle()
void
send(MetaData.Response info, boolean isHeadRequest, java.nio.ByteBuffer content, boolean lastContent, Callback callback)
Asynchronous call to send a response (or part) over the transportvoid
setStream(IStream stream)
-
-
-
Constructor Detail
-
HttpTransportOverHTTP2
public HttpTransportOverHTTP2(Connector connector, HTTP2ServerConnection connection)
-
-
Method Detail
-
isOptimizedForDirectBuffers
public boolean isOptimizedForDirectBuffers()
Description copied from interface:HttpTransport
Is the underlying transport optimized for DirectBuffer usage- Specified by:
isOptimizedForDirectBuffers
in interfaceHttpTransport
- Returns:
- True if direct buffers can be used optimally.
-
getStream
public IStream getStream()
-
setStream
public void setStream(IStream stream)
-
recycle
public void recycle()
-
send
public void send(MetaData.Response info, boolean isHeadRequest, java.nio.ByteBuffer content, boolean lastContent, Callback callback)
Description copied from interface:HttpTransport
Asynchronous call to send a response (or part) over the transport- Specified by:
send
in interfaceHttpTransport
- Parameters:
info
- The header info to send, or null if just sending more data. The first call to send for a response must have a non null info.isHeadRequest
- True if the response if for a HEAD request (and the data should not be sent).content
- A buffer of content to be sent.lastContent
- True if the content is the last content for the current response.callback
- The Callback instance that success or failure of the send is notified on
-
isPushSupported
public boolean isPushSupported()
- Specified by:
isPushSupported
in interfaceHttpTransport
- Returns:
- true if responses can be pushed over this transport
-
push
public void push(MetaData.Request request)
- Specified by:
push
in interfaceHttpTransport
- Parameters:
request
- A request to use as the basis for generating a pushed response.
-
onStreamFailure
public void onStreamFailure(java.lang.Throwable failure)
-
onStreamTimeout
public boolean onStreamTimeout(java.lang.Throwable failure)
-
onCompleted
public void onCompleted()
Description copied from interface:HttpTransport
Called to indicated the end of the current request/response cycle (which may be some time after the last content is sent).- Specified by:
onCompleted
in interfaceHttpTransport
-
abort
public void abort(java.lang.Throwable failure)
Description copied from interface:HttpTransport
Aborts this transport.This method should terminate the transport in a way that can indicate an abnormal response to the client, for example by abruptly close the connection.
This method is called when an error response needs to be sent, but the response is already committed, or when a write failure is detected. If abort is called,
HttpTransport.onCompleted()
is not called- Specified by:
abort
in interfaceHttpTransport
- Parameters:
failure
- the failure that caused the abort.
-
-