bsh.util
Class JConsole.BlockingPipedInputStream

java.lang.Object
  |
  +--java.io.InputStream
        |
        +--java.io.PipedInputStream
              |
              +--bsh.util.JConsole.BlockingPipedInputStream
Enclosing class:
JConsole

public static class JConsole.BlockingPipedInputStream
extends java.io.PipedInputStream

The overridden read method in this class will not throw "Broken pipe" IOExceptions; It will simply wait for new writers and data. This is used by the JConsole internal read thread to allow writers in different (and in particular ephemeral) threads to write to the pipe. It also checks a little more frequently than the original read(). Warning: read() will not even error on a read to an explicitly closed pipe (override closed to for that).


Field Summary
 
Fields inherited from class java.io.PipedInputStream
buffer, in, out, PIPE_SIZE
 
Constructor Summary
JConsole.BlockingPipedInputStream(java.io.PipedOutputStream pout)
           
 
Method Summary
 void close()
           
 int read()
           
 
Methods inherited from class java.io.PipedInputStream
available, connect, read, receive
 
Methods inherited from class java.io.InputStream
mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JConsole.BlockingPipedInputStream

public JConsole.BlockingPipedInputStream(java.io.PipedOutputStream pout)
                                  throws java.io.IOException
Method Detail

read

public int read()
         throws java.io.IOException
Overrides:
read in class java.io.PipedInputStream
java.io.IOException

close

public void close()
           throws java.io.IOException
Overrides:
close in class java.io.PipedInputStream
java.io.IOException


2000 pat@pat.net :-)