org.glassfish.grizzly.web.arp
Class AsynchronousOutputBuffer

java.lang.Object
  extended by org.glassfish.grizzly.web.container.http11.InternalOutputBuffer
      extended by org.glassfish.grizzly.web.SocketChannelOutputBuffer
          extended by org.glassfish.grizzly.web.arp.AsynchronousOutputBuffer
All Implemented Interfaces:
FileOutputBuffer, OutputBuffer, ByteChunk.ByteOutputChannel

public class AsynchronousOutputBuffer
extends SocketChannelOutputBuffer

Thread-Safe SocketChannelOutputBuffer used when Comet is used.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.glassfish.grizzly.web.container.http11.InternalOutputBuffer
InternalOutputBuffer.OutputStreamOutputBuffer
 
Field Summary
 
Fields inherited from class org.glassfish.grizzly.web.SocketChannelOutputBuffer
ACK, connectionStreamWriter, logger, MAX_BUFFERED_BYTES, maxBufferedBytes, outputBuffer
 
Fields inherited from class org.glassfish.grizzly.web.container.http11.InternalOutputBuffer
activeFilters, buf, committed, filterLibrary, finished, headers, lastActiveFilter, outputStream, outputStreamOutputBuffer, pos, response, socketBuffer, useSocketBuffer
 
Constructor Summary
AsynchronousOutputBuffer(Response response, int headerBufferSize, boolean useSocketBuffer)
          Alternate constructor.
 
Method Summary
 void flush()
          Flush the buffered bytes,
 void flushBuffer()
          Writes bytes to the underlying channel.
 void flushChannel(Buffer bb)
          Flush the buffer by looping until the ByteBuffer is empty
 void realWriteBytes(byte[] cbuf, int off, int len)
          Callback to write data from the buffer.
 
Methods inherited from class org.glassfish.grizzly.web.SocketChannelOutputBuffer
createBuffer, endRequest, getStreamWriter, isAsyncHttpWriteEnabled, isSupportFileSend, recycle, reset, sendAck, sendFile, setAsyncHttpWriteEnabled, setStreamWriter
 
Methods inherited from class org.glassfish.grizzly.web.container.http11.InternalOutputBuffer
addActiveFilter, addFilter, addLastOutputFilter, clearFilters, commit, doWrite, endHeaders, getFilters, getOutputStream, nextRequest, sendHeader, sendHeader, sendHeader, sendStatus, setOutputStream, setSocketBuffer, write, write, write, write, write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AsynchronousOutputBuffer

public AsynchronousOutputBuffer(Response response,
                                int headerBufferSize,
                                boolean useSocketBuffer)
Alternate constructor.

Method Detail

realWriteBytes

public void realWriteBytes(byte[] cbuf,
                           int off,
                           int len)
                    throws IOException
Description copied from class: SocketChannelOutputBuffer
Callback to write data from the buffer.

Specified by:
realWriteBytes in interface ByteChunk.ByteOutputChannel
Overrides:
realWriteBytes in class SocketChannelOutputBuffer
Throws:
IOException

flushChannel

public void flushChannel(Buffer bb)
                  throws IOException
Description copied from class: SocketChannelOutputBuffer
Flush the buffer by looping until the ByteBuffer is empty

Overrides:
flushChannel in class SocketChannelOutputBuffer
Parameters:
bb - the ByteBuffer to write.
Throws:
IOException

flush

public void flush()
           throws IOException
Description copied from class: SocketChannelOutputBuffer
Flush the buffered bytes,

Overrides:
flush in class SocketChannelOutputBuffer
Throws:
IOException - an undelying I/O error occured

flushBuffer

public void flushBuffer()
                 throws IOException
Description copied from class: SocketChannelOutputBuffer
Writes bytes to the underlying channel.

Overrides:
flushBuffer in class SocketChannelOutputBuffer
Throws:
IOException


Copyright © 2009 SUN Microsystems. All Rights Reserved.