Home » openjdk-7 » java » io » [javadoc | source]
java.io
public class: PipedReader [javadoc | source]
java.lang.Object
   java.io.Reader
      java.io.PipedReader

All Implemented Interfaces:
    Closeable, Readable

Piped character-input streams.
Field Summary
 boolean closedByWriter     
 boolean closedByReader     
 boolean connected     
 Thread readSide     
 Thread writeSide     
 char[] buffer    The circular buffer into which incoming data is placed. 
 int in    The index of the position in the circular buffer at which the next character of data will be stored when received from the connected piped writer. in<0 implies the buffer is empty, in==out implies the buffer is full 
 int out    The index of the position in the circular buffer at which the next character of data will be read by this piped reader. 
Fields inherited from java.io.Reader:
lock
Constructor:
 public PipedReader() 
 public PipedReader(PipedWriter src) throws IOException 
    Creates a PipedReader so that it is connected to the piped writer src. Data written to src will then be available as input from this stream.
    Parameters:
    src - the stream to connect to.
    Throws:
    IOException - if an I/O error occurs.
    exception: IOException - if an I/O error occurs.
 public PipedReader(int pipeSize) 
    Parameters:
    pipeSize - the size of the pipe's buffer.
    Throws:
    IllegalArgumentException - if pipeSize <= 0.
    exception: IllegalArgumentException - if pipeSize <= 0.
    since: 1.6 -
 public PipedReader(PipedWriter src,
    int pipeSize) throws IOException 
    Creates a PipedReader so that it is connected to the piped writer src and uses the specified pipe size for the pipe's buffer. Data written to src will then be available as input from this stream.
    Parameters:
    src - the stream to connect to.
    pipeSize - the size of the pipe's buffer.
    Throws:
    IOException - if an I/O error occurs.
    IllegalArgumentException - if pipeSize <= 0.
    exception: IOException - if an I/O error occurs.
    exception: IllegalArgumentException - if pipeSize <= 0.
    since: 1.6 -
Method from java.io.PipedReader Summary:
close,   connect,   read,   read,   ready,   receive,   receive,   receivedLast
Methods from java.io.Reader:
close,   mark,   markSupported,   read,   read,   read,   read,   ready,   reset,   skip
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from java.io.PipedReader Detail:
 public  void close() throws IOException 
    Closes this piped stream and releases any system resources associated with the stream.
 public  void connect(PipedWriter src) throws IOException 
    Causes this piped reader to be connected to the piped writer src. If this object is already connected to some other piped writer, an IOException is thrown.

    If src is an unconnected piped writer and snk is an unconnected piped reader, they may be connected by either the call:

    snk.connect(src) 

    or the call:

    src.connect(snk) 

    The two calls have the same effect.

 public synchronized int read() throws IOException 
    Reads the next character of data from this piped stream. If no character is available because the end of the stream has been reached, the value -1 is returned. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.
 public synchronized int read(char[] cbuf,
    int off,
    int len) throws IOException 
    Reads up to len characters of data from this piped stream into an array of characters. Less than len characters will be read if the end of the data stream is reached or if len exceeds the pipe's buffer size. This method blocks until at least one character of input is available.
 public synchronized boolean ready() throws IOException 
    Tell whether this stream is ready to be read. A piped character stream is ready if the circular buffer is not empty.
 synchronized  void receive(int c) throws IOException 
    Receives a char of data. This method will block if no input is available.
 synchronized  void receive(char[] c,
    int off,
    int len) throws IOException 
    Receives data into an array of characters. This method will block until some input is available.
 synchronized  void receivedLast() 
    Notifies all waiting threads that the last character of data has been received.