Package net.officefloor.server.stream
Class ServerOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- net.officefloor.server.stream.ServerOutputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
- Direct Known Subclasses:
BufferPoolServerOutputStream,ProcessAwareServerOutputStream
public abstract class ServerOutputStream extends java.io.OutputStreamOutputStreamwith additional methods to write cachedByteBufferinstances.- Author:
- Daniel Sagenschneider
-
-
Constructor Summary
Constructors Constructor Description ServerOutputStream()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract voidwrite(java.nio.ByteBuffer buffer)Writes aByteBuffer.abstract voidwrite(java.nio.channels.FileChannel file, long position, long count, FileCompleteCallback callback)Writes part of theFileChannelcontents.abstract voidwrite(java.nio.channels.FileChannel file, FileCompleteCallback callback)Writes the entireFileChannelcontents.
-
-
-
Method Detail
-
write
public abstract void write(java.nio.ByteBuffer buffer) throws java.io.IOExceptionWrites a
ByteBuffer.This is to enable efficient I/O of writing content (typically cached).
- Parameters:
buffer-ByteBufferthat should never change its content.- Throws:
java.io.IOException- If fails to write theByteBuffer.
-
write
public abstract void write(java.nio.channels.FileChannel file, long position, long count, FileCompleteCallback callback) throws java.io.IOExceptionWrites part of the
FileChannelcontents.This is to enable efficient I/O (ie DMA) of writing
FileChannelcontent.To write the entire
FileChannelcontents, invokewrite(file, 0, -1).Note that the underlying implementation will need to support
FileChannelefficiencies.- Parameters:
file-FileChannel.position- Position within theFileChannelto start writing content. Must be non-negative number.count- Count of bytes to write from theFileChannel. A negative value (typically-1) indicates to write the remainingFileChannelcontent from position.callback- OptionalFileCompleteCallback. May benull.- Throws:
java.io.IOException- If fails to write theFileChannelcontent.
-
write
public abstract void write(java.nio.channels.FileChannel file, FileCompleteCallback callback) throws java.io.IOExceptionWrites the entire
FileChannelcontents.This is a convenience method for
write(file, 0, -1).- Parameters:
file-FileChannel.callback- OptionalFileCompleteCallback. May benull.- Throws:
java.io.IOException- If fails to write theFileChannelcontent.
-
-