org.mule.module.pgp
Class LazyTransformedInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by org.mule.module.pgp.LazyTransformedInputStream
All Implemented Interfaces:
Closeable

public class LazyTransformedInputStream
extends InputStream

A LazyTransformedInputStream represents an InputStream that has been transformed when someone needs to read from it. Internally, the LazyTransformedInputStream has a pipe that is written by an StreamTransformer according to a TransformPolicy. The LazyTransformedInputStream uses a separate thread for writing on the pipe and delays it destruction till this InputStream is closed of finalized. In this way we avoid any problems with broken pipes.


Constructor Summary
LazyTransformedInputStream(TransformPolicy transformPolicy, StreamTransformer transformer)
           
 
Method Summary
 int available()
           
 void close()
           
protected  void finalize()
           
 void mark(int readlimit)
           
 boolean markSupported()
           
 int read()
           
 int read(byte[] b)
           
 int read(byte[] b, int off, int len)
           
 void reset()
           
 long skip(long n)
           
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LazyTransformedInputStream

public LazyTransformedInputStream(TransformPolicy transformPolicy,
                                  StreamTransformer transformer)
                           throws IOException
Throws:
IOException
Method Detail

available

public int available()
              throws IOException
Overrides:
available in class InputStream
Throws:
IOException

close

public void close()
           throws IOException
Specified by:
close in interface Closeable
Overrides:
close in class InputStream
Throws:
IOException

finalize

protected void finalize()
                 throws Throwable
Overrides:
finalize in class Object
Throws:
Throwable

mark

public void mark(int readlimit)
Overrides:
mark in class InputStream

markSupported

public boolean markSupported()
Overrides:
markSupported in class InputStream

read

public int read()
         throws IOException
Specified by:
read in class InputStream
Throws:
IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
Overrides:
read in class InputStream
Throws:
IOException

read

public int read(byte[] b)
         throws IOException
Overrides:
read in class InputStream
Throws:
IOException

reset

public void reset()
           throws IOException
Overrides:
reset in class InputStream
Throws:
IOException

skip

public long skip(long n)
          throws IOException
Overrides:
skip in class InputStream
Throws:
IOException


Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.