Package org.eclipse.jetty.http2
Class HTTP2Stream
- java.lang.Object
-
- org.eclipse.jetty.io.IdleTimeout
-
- org.eclipse.jetty.http2.HTTP2Stream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,Stream,IStream,org.eclipse.jetty.util.Callback,org.eclipse.jetty.util.component.Dumpable,org.eclipse.jetty.util.thread.Invocable
public class HTTP2Stream extends org.eclipse.jetty.io.IdleTimeout implements IStream, org.eclipse.jetty.util.Callback, org.eclipse.jetty.util.component.Dumpable
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.Callback
org.eclipse.jetty.util.Callback.Completable, org.eclipse.jetty.util.Callback.Completing, org.eclipse.jetty.util.Callback.InvocableCallback, org.eclipse.jetty.util.Callback.Nested
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
org.eclipse.jetty.util.component.Dumpable.DumpableContainer
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
org.eclipse.jetty.util.thread.Invocable.InvocationType
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.http2.api.Stream
Stream.Listener
-
-
Constructor Summary
Constructors Constructor Description HTTP2Stream(org.eclipse.jetty.util.thread.Scheduler scheduler, ISession session, int streamId, boolean local)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Forcibly closes this stream.voiddata(DataFrame frame, org.eclipse.jetty.util.Callback callback)Sends the given DATAframe.java.lang.Stringdump()voiddump(java.lang.Appendable out, java.lang.String indent)voidfailed(java.lang.Throwable x)java.lang.ObjectgetAttachment()java.lang.ObjectgetAttribute(java.lang.String key)intgetId()Stream.ListenergetListener()intgetRecvWindow()intgetSendWindow()ISessiongetSession()voidheaders(HeadersFrame frame, org.eclipse.jetty.util.Callback callback)Sends the given HEADERSframerepresenting an HTTP response.booleanisClosed()booleanisLocal()booleanisLocallyClosed()booleanisOpen()booleanisRemotelyClosed()booleanisReset()booleanisResetOrFailed()voidonClose()protected voidonIdleExpired(java.util.concurrent.TimeoutException timeout)voidprocess(Frame frame, org.eclipse.jetty.util.Callback callback)Processes the givenframe, belonging to this stream.voidpush(PushPromiseFrame frame, org.eclipse.jetty.util.Promise<Stream> promise, Stream.Listener listener)Sends the given PUSH_PROMISEframe.java.lang.ObjectremoveAttribute(java.lang.String key)voidreset(ResetFrame frame, org.eclipse.jetty.util.Callback callback)Sends the given RST_STREAMframe.voidsetAttachment(java.lang.Object attachment)Attaches the given object to this stream for later retrieval.voidsetAttribute(java.lang.String key, java.lang.Object value)voidsetListener(Stream.Listener listener)voidsucceeded()java.lang.StringtoString()booleanupdateClose(boolean update, CloseState.Event event)Updates the close state of this stream.intupdateRecvWindow(int delta)Updates the stream receive window by the givendelta.intupdateSendWindow(int delta)Updates the stream send window by the givendelta.-
Methods inherited from class org.eclipse.jetty.io.IdleTimeout
checkIdleTimeout, getIdleFor, getIdleTimeout, getScheduler, notIdle, onOpen, setIdleTimeout
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.jetty.http2.api.Stream
getIdleTimeout, setIdleTimeout
-
-
-
-
Constructor Detail
-
HTTP2Stream
public HTTP2Stream(org.eclipse.jetty.util.thread.Scheduler scheduler, ISession session, int streamId, boolean local)
-
-
Method Detail
-
getAttachment
public java.lang.Object getAttachment()
- Specified by:
getAttachmentin interfaceIStream- Returns:
- the object attached to this stream
- See Also:
IStream.setAttachment(Object)
-
setAttachment
public void setAttachment(java.lang.Object attachment)
Description copied from interface:IStreamAttaches the given object to this stream for later retrieval.- Specified by:
setAttachmentin interfaceIStream- Parameters:
attachment- the object to attach to this stream
-
isLocal
public boolean isLocal()
-
getSession
public ISession getSession()
- Specified by:
getSessionin interfaceIStream- Specified by:
getSessionin interfaceStream- Returns:
- the session this stream is associated to
-
headers
public void headers(HeadersFrame frame, org.eclipse.jetty.util.Callback callback)
Description copied from interface:StreamSends the given HEADERS
framerepresenting an HTTP response.
-
push
public void push(PushPromiseFrame frame, org.eclipse.jetty.util.Promise<Stream> promise, Stream.Listener listener)
Description copied from interface:StreamSends the given PUSH_PROMISE
frame.
-
data
public void data(DataFrame frame, org.eclipse.jetty.util.Callback callback)
Description copied from interface:StreamSends the given DATA
frame.
-
reset
public void reset(ResetFrame frame, org.eclipse.jetty.util.Callback callback)
Description copied from interface:StreamSends the given RST_STREAM
frame.
-
getAttribute
public java.lang.Object getAttribute(java.lang.String key)
- Specified by:
getAttributein interfaceStream- Parameters:
key- the attribute key- Returns:
- an arbitrary object associated with the given key to this stream or null if no object can be found for the given key.
- See Also:
Stream.setAttribute(String, Object)
-
setAttribute
public void setAttribute(java.lang.String key, java.lang.Object value)- Specified by:
setAttributein interfaceStream- Parameters:
key- the attribute keyvalue- an arbitrary object to associate with the given key to this stream- See Also:
Stream.getAttribute(String),Stream.removeAttribute(String)
-
removeAttribute
public java.lang.Object removeAttribute(java.lang.String key)
- Specified by:
removeAttributein interfaceStream- Parameters:
key- the attribute key- Returns:
- the arbitrary object associated with the given key to this stream
- See Also:
Stream.setAttribute(String, Object)
-
isReset
public boolean isReset()
-
isResetOrFailed
public boolean isResetOrFailed()
- Specified by:
isResetOrFailedin interfaceIStream- Returns:
- whether this stream has been reset (locally or remotely) or has been failed
- See Also:
Stream.isReset(),Stream.Listener.onFailure(Stream, int, String, Throwable, Callback)
-
isClosed
public boolean isClosed()
-
isRemotelyClosed
public boolean isRemotelyClosed()
- Specified by:
isRemotelyClosedin interfaceIStream- Returns:
- whether the stream is closed remotely.
- See Also:
Stream.isClosed()
-
isLocallyClosed
public boolean isLocallyClosed()
-
isOpen
public boolean isOpen()
- Specified by:
isOpenin classorg.eclipse.jetty.io.IdleTimeout
-
onIdleExpired
protected void onIdleExpired(java.util.concurrent.TimeoutException timeout)
- Specified by:
onIdleExpiredin classorg.eclipse.jetty.io.IdleTimeout
-
getListener
public Stream.Listener getListener()
- Specified by:
getListenerin interfaceIStream- Returns:
- the
Stream.Listenerassociated with this stream - See Also:
IStream.setListener(Stream.Listener)
-
setListener
public void setListener(Stream.Listener listener)
- Specified by:
setListenerin interfaceIStream- Parameters:
listener- theStream.Listenerassociated with this stream- See Also:
IStream.getListener()
-
process
public void process(Frame frame, org.eclipse.jetty.util.Callback callback)
Description copied from interface:IStreamProcesses the given
frame, belonging to this stream.
-
updateClose
public boolean updateClose(boolean update, CloseState.Event event)Description copied from interface:IStreamUpdates the close state of this stream.
- Specified by:
updateClosein interfaceIStream- Parameters:
update- whether to update the close stateevent- the event that caused the close state update- Returns:
- whether the stream has been fully closed by this invocation
-
getSendWindow
public int getSendWindow()
-
getRecvWindow
public int getRecvWindow()
-
updateSendWindow
public int updateSendWindow(int delta)
Description copied from interface:IStreamUpdates the stream send window by the given
delta.- Specified by:
updateSendWindowin interfaceIStream- Parameters:
delta- the delta value (positive or negative) to add to the stream send window- Returns:
- the previous value of the stream send window
-
updateRecvWindow
public int updateRecvWindow(int delta)
Description copied from interface:IStreamUpdates the stream receive window by the given
delta.- Specified by:
updateRecvWindowin interfaceIStream- Parameters:
delta- the delta value (positive or negative) to add to the stream receive window- Returns:
- the previous value of the stream receive window
-
close
public void close()
Description copied from interface:IStreamForcibly closes this stream.
-
onClose
public void onClose()
- Overrides:
onClosein classorg.eclipse.jetty.io.IdleTimeout
-
succeeded
public void succeeded()
- Specified by:
succeededin interfaceorg.eclipse.jetty.util.Callback
-
failed
public void failed(java.lang.Throwable x)
- Specified by:
failedin interfaceorg.eclipse.jetty.util.Callback
-
dump
public java.lang.String dump()
- Specified by:
dumpin interfaceorg.eclipse.jetty.util.component.Dumpable
-
dump
public void dump(java.lang.Appendable out, java.lang.String indent) throws java.io.IOException- Specified by:
dumpin interfaceorg.eclipse.jetty.util.component.Dumpable- Throws:
java.io.IOException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-