@Override public boolean insertFrame(AbstractAjpClientStreamSinkChannel newFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames) { if(newFrame instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) newFrame).generateSendFrameHeader(); if(header.getByteBuffer() == null) { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) newFrame).clearHeader(); return false; } } pendingFrames.add(newFrame); return true; }
@Override public void frameAdded(AbstractAjpClientStreamSinkChannel addedFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames, Deque<AbstractAjpClientStreamSinkChannel> holdFrames) { Iterator<AbstractAjpClientStreamSinkChannel> it = holdFrames.iterator(); while (it.hasNext()){ AbstractAjpClientStreamSinkChannel pending = it.next(); if(pending instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) pending).generateSendFrameHeader(); if(header.getByteBuffer() != null) { pendingFrames.add(pending); it.remove(); } else { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) pending).clearHeader(); } } } } }
@Override public boolean insertFrame(AbstractAjpClientStreamSinkChannel newFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames) { if(newFrame instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) newFrame).generateSendFrameHeader(); if(header.getByteBuffer() == null) { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) newFrame).clearHeader(); return false; } } pendingFrames.add(newFrame); return true; }
@Override public void frameAdded(AbstractAjpClientStreamSinkChannel addedFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames, Deque<AbstractAjpClientStreamSinkChannel> holdFrames) { Iterator<AbstractAjpClientStreamSinkChannel> it = holdFrames.iterator(); while (it.hasNext()){ AbstractAjpClientStreamSinkChannel pending = it.next(); if(pending instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) pending).generateSendFrameHeader(); if(header.getByteBuffer() != null) { pendingFrames.add(pending); it.remove(); } else { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) pending).clearHeader(); } } } } }
@Override public void frameAdded(AbstractAjpClientStreamSinkChannel addedFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames, Deque<AbstractAjpClientStreamSinkChannel> holdFrames) { Iterator<AbstractAjpClientStreamSinkChannel> it = holdFrames.iterator(); while (it.hasNext()){ AbstractAjpClientStreamSinkChannel pending = it.next(); if(pending instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) pending).generateSendFrameHeader(); if(header.getByteBuffer() != null) { pendingFrames.add(pending); it.remove(); } else { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) pending).clearHeader(); } } } } }
@Override public boolean insertFrame(AbstractAjpClientStreamSinkChannel newFrame, List<AbstractAjpClientStreamSinkChannel> pendingFrames) { if(newFrame instanceof AjpClientRequestClientStreamSinkChannel) { SendFrameHeader header = ((AjpClientRequestClientStreamSinkChannel) newFrame).generateSendFrameHeader(); if(header.getByteBuffer() == null) { //we clear the header, as we want to generate a new real header when the flow control window is updated ((AjpClientRequestClientStreamSinkChannel) newFrame).clearHeader(); return false; } } pendingFrames.add(newFrame); return true; }