org.mule.module.pgp
Class LazyTransformedInputStream
java.lang.Object
java.io.InputStream
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.
LazyTransformedInputStream
public LazyTransformedInputStream(TransformPolicy transformPolicy,
StreamTransformer transformer)
throws IOException
- Throws:
IOException
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-2014 MuleSoft, Inc.. All Rights Reserved.