Class HttpConnectionOverHTTP
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Connection
,IConnection
,Connection
,Connection.UpgradeFrom
,Attachable
,Invocable
,Sweeper.Sweepable
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.jetty.io.Connection
Connection.Listener, Connection.UpgradeFrom, Connection.UpgradeTo
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
Invocable.Callable, Invocable.InvocationType, Invocable.ReadyTask, Invocable.Task
-
Field Summary
Fields inherited from interface org.eclipse.jetty.util.thread.Invocable
__nonBlocking, NOOP
-
Constructor Summary
ConstructorDescriptionHttpConnectionOverHTTP
(EndPoint endPoint, Map<String, Object> context) HttpConnectionOverHTTP
(EndPoint endPoint, HttpDestination destination, Promise<Connection> promise) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected void
addBytesIn
(long bytesIn) protected void
addBytesOut
(long bytesOut) void
close()
Performs a logical close of this connection.protected void
long
long
long
long
boolean
isClosed()
boolean
protected HttpChannelOverHTTP
void
Callback method invoked when the endpoint is ready to be read.boolean
onIdleExpired
(TimeoutException timeout) Callback method invoked upon an idle timeout event.protected boolean
onIdleTimeout
(long idleTimeout) void
onOpen()
Callback method invoked when this connection is opened.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.send
(HttpExchange exchange) void
setAttachment
(Object obj) Attaches the given object to this stream for later retrieval.void
setInitialize
(boolean initialize) boolean
sweep()
Methods inherited from class org.eclipse.jetty.io.AbstractConnection
addEventListener, failedCallback, fillInterested, getCreatedTimeStamp, getEndPoint, getExecutor, getInputBufferSize, getInvocationType, isFillInterested, onClose, onFillInterestedFailed, onReadTimeout, removeEventListener, setInputBufferSize, toString, tryFillInterested
-
Constructor Details
-
HttpConnectionOverHTTP
-
HttpConnectionOverHTTP
public HttpConnectionOverHTTP(EndPoint endPoint, HttpDestination destination, Promise<Connection> promise)
-
-
Method Details
-
newHttpChannel
-
getHttpChannel
-
getHttpDestination
-
getLocalSocketAddress
- Specified by:
getLocalSocketAddress
in interfaceConnection
- Returns:
- the local socket address associated with the connection
-
getRemoteSocketAddress
- Specified by:
getRemoteSocketAddress
in interfaceConnection
- Returns:
- the remote socket address associated with the connection
-
getSslSessionData
- Specified by:
getSslSessionData
in interfaceConnection
- Returns:
- the
EndPoint.SslSessionData
associated with the connection, ornull
if the connection is not secure.
-
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
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
- Specified by:
send
in interfaceIConnection
-
isInitialize
public boolean isInitialize()- Returns:
- whether to initialize the connection with an
OPTIONS * HTTP/1.1
request.
-
setInitialize
public void setInitialize(boolean initialize) - Parameters:
initialize
- whether to initialize the connection with anOPTIONS * HTTP/1.1
request.
-
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:
-
setAttachment
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
- Specified by:
getAttachment
in interfaceAttachable
- Returns:
- the object attached to this instance
- See Also:
-
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:
-
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() -
remove
public void remove() -
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 interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceConnection
- Specified by:
close
in interfaceConnection
- Overrides:
close
in classAbstractConnection
-
close
-
abort
-
sweep
public boolean sweep()- Specified by:
sweep
in interfaceSweeper.Sweepable
- Returns:
- whether this resource should be swept
-
toConnectionString
- Overrides:
toConnectionString
in classAbstractConnection
-