Class HttpConnectionOverHTTP
- java.lang.Object
-
- org.eclipse.jetty.io.AbstractConnection
-
- org.eclipse.jetty.client.http.HttpConnectionOverHTTP
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,Connection
,Connection
,Connection.UpgradeFrom
,Attachable
,Sweeper.Sweepable
public class HttpConnectionOverHTTP extends AbstractConnection implements Connection, Connection.UpgradeFrom, Sweeper.Sweepable, Attachable
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.io.Connection
Connection.Listener, Connection.UpgradeFrom, Connection.UpgradeTo
-
-
Constructor Summary
Constructors Constructor Description HttpConnectionOverHTTP(EndPoint endPoint, HttpDestination destination, Promise<Connection> promise)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
abort(java.lang.Throwable failure)
protected void
addBytesIn(long bytesIn)
protected void
addBytesOut(long bytesOut)
void
close()
Performs a logical close of this connection.protected void
close(java.lang.Throwable failure)
java.lang.Object
getAttachment()
long
getBytesIn()
long
getBytesOut()
HttpChannelOverHTTP
getHttpChannel()
HttpDestinationOverHTTP
getHttpDestination()
long
getMessagesIn()
long
getMessagesOut()
boolean
isClosed()
protected HttpChannelOverHTTP
newHttpChannel()
void
onFillable()
Callback method invoked when the endpoint is ready to be read.boolean
onIdleExpired()
Callback method invoked upon an idle timeout event.protected boolean
onIdleTimeout(long idleTimeout)
void
onOpen()
Callback method invoked when this connection is opened.java.nio.ByteBuffer
onUpgradeFrom()
Invoked during anupgrade
to produce a buffer containing bytes that have not been consumed by this connection, and that must be consumed by the upgrade-to connection.void
release()
void
remove()
void
send(Request request, Response.CompleteListener listener)
Sends a request with an associated response listener.protected SendFailure
send(HttpExchange exchange)
void
setAttachment(java.lang.Object obj)
Attaches the given object to this stream for later retrieval.boolean
sweep()
java.lang.String
toConnectionString()
-
Methods inherited from class org.eclipse.jetty.io.AbstractConnection
addListener, failedCallback, fillInterested, getCreatedTimeStamp, getEndPoint, getExecutor, getInputBufferSize, isFillInterested, onClose, onFillInterestedFailed, onReadTimeout, removeListener, setInputBufferSize, toString, tryFillInterested, tryFillInterested
-
-
-
-
Constructor Detail
-
HttpConnectionOverHTTP
public HttpConnectionOverHTTP(EndPoint endPoint, HttpDestination destination, Promise<Connection> promise)
-
-
Method Detail
-
newHttpChannel
protected HttpChannelOverHTTP newHttpChannel()
-
getHttpChannel
public HttpChannelOverHTTP getHttpChannel()
-
getHttpDestination
public HttpDestinationOverHTTP getHttpDestination()
-
getBytesIn
public long getBytesIn()
- Specified by:
getBytesIn
in interfaceConnection
- Overrides:
getBytesIn
in classAbstractConnection
-
addBytesIn
protected void addBytesIn(long bytesIn)
-
getBytesOut
public long getBytesOut()
- Specified by:
getBytesOut
in interfaceConnection
- Overrides:
getBytesOut
in classAbstractConnection
-
addBytesOut
protected void addBytesOut(long bytesOut)
-
getMessagesIn
public long getMessagesIn()
- Specified by:
getMessagesIn
in interfaceConnection
- Overrides:
getMessagesIn
in classAbstractConnection
-
getMessagesOut
public long getMessagesOut()
- Specified by:
getMessagesOut
in interfaceConnection
- Overrides:
getMessagesOut
in classAbstractConnection
-
send
public void send(Request request, Response.CompleteListener listener)
Description copied from interface:Connection
Sends a request with an associated response listener.Request.send(Response.CompleteListener)
will eventually call this method to send the request. It is exposed to allow applications to send requests via unpooled connections.- Specified by:
send
in interfaceConnection
- Parameters:
request
- the request to sendlistener
- the response listener
-
send
protected SendFailure send(HttpExchange exchange)
-
onOpen
public void onOpen()
Description copied from interface:Connection
Callback method invoked when this connection is opened.
Creators of the connection implementation are responsible for calling this method.
- Specified by:
onOpen
in interfaceConnection
- Overrides:
onOpen
in classAbstractConnection
-
isClosed
public boolean isClosed()
- Specified by:
isClosed
in interfaceConnection
- Returns:
- whether this connection has been closed
- See Also:
Connection.close()
-
setAttachment
public void setAttachment(java.lang.Object obj)
Description copied from interface:Attachable
Attaches the given object to this stream for later retrieval.- Specified by:
setAttachment
in interfaceAttachable
- Parameters:
obj
- the object to attach to this instance
-
getAttachment
public java.lang.Object getAttachment()
- Specified by:
getAttachment
in interfaceAttachable
- Returns:
- the object attached to this instance
- See Also:
Attachable.setAttachment(Object)
-
onIdleExpired
public boolean onIdleExpired()
Description copied from interface:Connection
Callback method invoked upon an idle timeout event.
Implementations of this method may return true to indicate that the idle timeout handling should proceed normally, typically failing the EndPoint and causing it to be closed.
When false is returned, the handling of the idle timeout event is halted immediately and the EndPoint left in the state it was before the idle timeout event.
- Specified by:
onIdleExpired
in interfaceConnection
- Overrides:
onIdleExpired
in classAbstractConnection
- Returns:
- true to let the EndPoint handle the idle timeout, false to tell the EndPoint to halt the handling of the idle timeout.
-
onIdleTimeout
protected boolean onIdleTimeout(long idleTimeout)
-
onFillable
public void onFillable()
Description copied from class:AbstractConnection
Callback method invoked when the endpoint is ready to be read.
- Specified by:
onFillable
in classAbstractConnection
- See Also:
AbstractConnection.fillInterested()
-
onUpgradeFrom
public java.nio.ByteBuffer onUpgradeFrom()
Description copied from interface:Connection.UpgradeFrom
Invoked during an
upgrade
to produce a buffer containing bytes that have not been consumed by this connection, and that must be consumed by the upgrade-to connection.- Specified by:
onUpgradeFrom
in interfaceConnection.UpgradeFrom
- Returns:
- a buffer of unconsumed bytes to pass to the upgrade-to connection. The buffer does not belong to any pool and should be discarded after having consumed its bytes. The returned buffer may be null if there are no unconsumed bytes.
-
release
public void release()
-
close
public void close()
Description copied from interface:Connection
Performs a logical close of this connection.
For simple connections, this may just mean to delegate the close to the associated
EndPoint
but, for example, SSL connections should write the SSL close message before closing the associatedEndPoint
.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfaceConnection
- Specified by:
close
in interfaceConnection
- Overrides:
close
in classAbstractConnection
-
close
protected void close(java.lang.Throwable failure)
-
abort
protected boolean abort(java.lang.Throwable failure)
-
sweep
public boolean sweep()
- Specified by:
sweep
in interfaceSweeper.Sweepable
- Returns:
- whether this resource should be swept
-
remove
public void remove()
-
toConnectionString
public java.lang.String toConnectionString()
- Overrides:
toConnectionString
in classAbstractConnection
-
-