Package org.glassfish.tyrus.servlet
Class TyrusHttpUpgradeHandler
- java.lang.Object
-
- org.glassfish.tyrus.servlet.TyrusHttpUpgradeHandler
-
- All Implemented Interfaces:
jakarta.servlet.http.HttpUpgradeHandler,jakarta.servlet.ReadListener,java.util.EventListener
public class TyrusHttpUpgradeHandler extends java.lang.Object implements jakarta.servlet.http.HttpUpgradeHandler, jakarta.servlet.ReadListenerHttpUpgradeHandlerandReadListenerimplementation.Reads data from
ServletInputStreamand passes it further to the Tyrus runtime.- Author:
- Jitendra Kotamraju, Pavel Bucek
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringFRAME_BUFFER_SIZEThe size to precede OutOfMemory Exception and potentially DDoS attacks when buffering incoming WebSocket frames.
-
Constructor Summary
Constructors Constructor Description TyrusHttpUpgradeHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()voidinit(jakarta.servlet.http.WebConnection wc)voidonAllDataRead()voidonDataAvailable()voidonError(java.lang.Throwable t)voidpreInit(WebSocketEngine.UpgradeInfo upgradeInfo, Writer writer, boolean authenticated)Sets the required information beforeinit(WebConnection)is invoked.voidsessionDestroyed()Called when relatedHttpSessionis destroyed or invalidated.voidsetIncomingBufferSize(int incomingBufferSize)Override the defaultFRAME_BUFFER_SIZE.java.lang.StringtoString()
-
-
-
Field Detail
-
FRAME_BUFFER_SIZE
public static final java.lang.String FRAME_BUFFER_SIZE
The size to precede OutOfMemory Exception and potentially DDoS attacks when buffering incoming WebSocket frames.
The default value is 4194315 bytes, which correspond to 4M plus few bytes to frame headers.
- See Also:
- Constant Field Values
-
-
Method Detail
-
init
public void init(jakarta.servlet.http.WebConnection wc)
- Specified by:
initin interfacejakarta.servlet.http.HttpUpgradeHandler
-
preInit
public void preInit(WebSocketEngine.UpgradeInfo upgradeInfo, Writer writer, boolean authenticated)
Sets the required information beforeinit(WebConnection)is invoked.- Parameters:
upgradeInfo- The WebSocket UpgradeInfo.writer- The Tyrus SPI Writer.authenticated- Whether the authentication has been used.
-
onDataAvailable
public void onDataAvailable()
- Specified by:
onDataAvailablein interfacejakarta.servlet.ReadListener
-
onAllDataRead
public void onAllDataRead()
- Specified by:
onAllDataReadin interfacejakarta.servlet.ReadListener
-
onError
public void onError(java.lang.Throwable t)
- Specified by:
onErrorin interfacejakarta.servlet.ReadListener
-
destroy
public void destroy()
- Specified by:
destroyin interfacejakarta.servlet.http.HttpUpgradeHandler
-
sessionDestroyed
public void sessionDestroyed()
Called when relatedHttpSessionis destroyed or invalidated.Implementation is required to call onClose() on server-side with corresponding close code (1008, see WebSocket spec 7.2) - only when there is an authorized user for this session.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
setIncomingBufferSize
public void setIncomingBufferSize(int incomingBufferSize)
Override the defaultFRAME_BUFFER_SIZE.- Parameters:
incomingBufferSize- The new incoming frame buffer size value.
-
-