Class FixedLengthBlockOutputStream.BufferAtATimeOutputChannel
- java.lang.Object
-
- org.apache.commons.compress.utils.FixedLengthBlockOutputStream.BufferAtATimeOutputChannel
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.nio.channels.Channel
,java.nio.channels.WritableByteChannel
- Enclosing class:
- FixedLengthBlockOutputStream
private static class FixedLengthBlockOutputStream.BufferAtATimeOutputChannel extends java.lang.Object implements java.nio.channels.WritableByteChannel
Helper class to provide channel wrapper for arbitrary output stream that doesn't alter the size of writes. We can't use Channels.newChannel, because for non FileOutputStreams, it breaks up writes into 8KB max chunks. Since the purpose of this class is to always write complete blocks, we need to write a simple class to take care of it.
-
-
Constructor Summary
Constructors Modifier Constructor Description private
BufferAtATimeOutputChannel(java.io.OutputStream out)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
boolean
isOpen()
int
write(java.nio.ByteBuffer buffer)
-
-
-
Method Detail
-
write
public int write(java.nio.ByteBuffer buffer) throws java.io.IOException
- Specified by:
write
in interfacejava.nio.channels.WritableByteChannel
- Throws:
java.io.IOException
-
isOpen
public boolean isOpen()
- Specified by:
isOpen
in interfacejava.nio.channels.Channel
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.nio.channels.Channel
- Specified by:
close
in interfacejava.io.Closeable
- Throws:
java.io.IOException
-
-