private boolean isWindowLimitExceeded ( FrameData dataFrame ) { if ( streamWindowUpdateWriteLimit - dataFrame . getPayloadLength ( ) < 0 || muxLink . getWorkQ ( ) . getConnectionWriteLimit ( ) - dataFrame . getPayloadLength ( ) < 0 ) { // would exceed window update limit String s = "Cannot write Data Frame because it would exceed the stream window update limit." + "streamWindowUpdateWriteLimit: " + streamWindowUpdateWriteLimit + "\nstreamWindowUpdateWriteInitialSize: " + streamWindowUpdateWriteInitialSize + "\nconnection window size: " + muxLink . getWorkQ ( ) . getConnectionWriteLimit ( ) + "\nframe size: " + dataFrame . getPayloadLength ( ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) { Tr . debug ( tc , s ) ; } return true ; } return false ; }
Check to see if a writing out a frame will cause the stream or connection window to go exceeded