Package org.python.core.io
Class StreamIO
java.lang.Object
org.python.core.io.IOBase
org.python.core.io.RawIOBase
org.python.core.io.StreamIO
Raw I/O implementation for simple streams.
Supports Input/Outputstreams and Readable/WritableByteChannels.
- Author:
- Philip Jenvey
-
Field Summary
Fields inherited from class org.python.core.io.IOBase
DEFAULT_BUFFER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionStreamIO(InputStream inputStream, boolean closefd) Construct a StreamIO for the given read/write streams.StreamIO(OutputStream outputStream, boolean closefd) Construct a StreamIO for the given read/write streams.StreamIO(ReadableByteChannel readChannel) Construct a StreamIO for the given read channel.StreamIO(ReadableByteChannel readChannel, boolean closefd) Construct a StreamIO for the given read channel.StreamIO(WritableByteChannel writeChannel) Construct a StreamIO for the given write channel.StreamIO(WritableByteChannel writeChannel, boolean closefd) Construct a StreamIO for the given write channel. -
Method Summary
Modifier and TypeMethodDescriptionCoerce this into an InputStream if possible, or return null.Coerce this into an OutputStream if possible, or return null.voidclose()Flushes and closes the IO object.voidflush()Flushes write buffers, if applicable.Return the underlying Java nio Channel.booleanisatty()Returns whether this is an 'interactive' stream.booleanreadable()Return whether this file was opened for reading.intreadinto(ByteBuffer buf) Read up to buf.remaining() bytes into buf.booleanwritable()Return whether this file was opened for writing.intwrite(ByteBuffer buf) Write the given ByteBuffer to the IO stream.Methods inherited from class org.python.core.io.IOBase
checkClosed, checkReadable, checkWritable, closed, seek, seek, tell, truncate
-
Constructor Details
-
StreamIO
Construct a StreamIO for the given read channel.- Parameters:
readChannel- a ReadableByteChannelclosefd- boolean whether the underlying file is closed on close() (defaults to True)
-
StreamIO
Construct a StreamIO for the given read channel.- Parameters:
readChannel- a ReadableByteChannel
-
StreamIO
Construct a StreamIO for the given write channel.- Parameters:
writeChannel- a WritableByteChannelclosefd- boolean whether the underlying file is closed on close() (defaults to True)
-
StreamIO
Construct a StreamIO for the given write channel.- Parameters:
writeChannel- a WritableByteChannel
-
StreamIO
Construct a StreamIO for the given read/write streams.- Parameters:
inputStream- an InputStreamclosefd- boolean whether the underlying file is closed on close() (defaults to True)
-
StreamIO
Construct a StreamIO for the given read/write streams.- Parameters:
outputStream- an OutputStreamclosefd- boolean whether the underlying file is closed on close() (defaults to True)
-
-
Method Details
-
readinto
Description copied from class:RawIOBaseRead up to buf.remaining() bytes into buf. Returns number of bytes read (0 for EOF). -
write
Description copied from class:RawIOBaseWrite the given ByteBuffer to the IO stream. Returns the number of bytes written, which may be less than buf.remaining(). -
flush
public void flush()Description copied from class:IOBaseFlushes write buffers, if applicable. This is a no-op for read-only and non-blocking streams. -
close
public void close()Description copied from class:IOBaseFlushes and closes the IO object. This must be idempotent. It should also set a flag for the 'closed' property (see below) to test. -
isatty
public boolean isatty()Description copied from class:IOBaseReturns whether this is an 'interactive' stream. Returns False if we don't know. -
readable
public boolean readable()Description copied from class:IOBaseReturn whether this file was opened for reading. -
writable
public boolean writable()Description copied from class:IOBaseReturn whether this file was opened for writing. -
asOutputStream
Description copied from class:IOBaseCoerce this into an OutputStream if possible, or return null.- Overrides:
asOutputStreamin classIOBase
-
asInputStream
Description copied from class:IOBaseCoerce this into an InputStream if possible, or return null.- Overrides:
asInputStreamin classIOBase
-
getChannel
Description copied from class:RawIOBaseReturn the underlying Java nio Channel.- Specified by:
getChannelin classRawIOBase- Returns:
- the underlying Java nio Channel
-