Bouncy Castle Cryptography Library 1.77.0

org.bouncycastle.util.io
Class Streams

java.lang.Object
  |
  +--org.bouncycastle.util.io.Streams

public final class Streams
extends java.lang.Object

Utility methods to assist with stream processing.


Constructor Summary
Streams()
           
 
Method Summary
static void drain(java.io.InputStream inStr)
          Read stream till EOF is encountered.
static void pipeAll(java.io.InputStream inStr, java.io.OutputStream outStr)
          Write the full contents of inStr to the destination stream outStr.
static void pipeAll(java.io.InputStream inStr, java.io.OutputStream outStr, int bufferSize)
          Write the full contents of inStr to the destination stream outStr.
static long pipeAllLimited(java.io.InputStream inStr, long limit, java.io.OutputStream outStr)
          Write up to limit bytes of data from inStr to the destination stream outStr.
static byte[] readAll(java.io.InputStream inStr)
          Read stream fully, returning contents in a byte array.
static byte[] readAllLimited(java.io.InputStream inStr, int limit)
          Read from inStr up to a maximum number of bytes, throwing an exception if more the maximum amount of requested data is available.
static int readFully(java.io.InputStream inStr, byte[] buf)
          Fully read in buf's length in data, or up to EOF, whichever occurs first,
static int readFully(java.io.InputStream inStr, byte[] buf, int off, int len)
          Fully read in len's bytes of data into buf, or up to EOF, whichever occurs first,
static void validateBufferArguments(byte[] buf, int off, int len)
           
static void writeBufTo(java.io.ByteArrayOutputStream buf, java.io.OutputStream output)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Streams

public Streams()
Method Detail

drain

public static void drain(java.io.InputStream inStr)
                  throws java.io.IOException
Read stream till EOF is encountered.
Parameters:
inStr - stream to be emptied.
Throws:
java.io.IOException - in case of underlying IOException.

pipeAll

public static void pipeAll(java.io.InputStream inStr,
                           java.io.OutputStream outStr)
                    throws java.io.IOException
Write the full contents of inStr to the destination stream outStr.
Parameters:
inStr - source input stream.
outStr - destination output stream.
Throws:
java.io.IOException - in case of underlying IOException.

pipeAll

public static void pipeAll(java.io.InputStream inStr,
                           java.io.OutputStream outStr,
                           int bufferSize)
                    throws java.io.IOException
Write the full contents of inStr to the destination stream outStr.
Parameters:
inStr - source input stream.
outStr - destination output stream.
bufferSize - the size of temporary buffer to use.
Throws:
java.io.IOException - in case of underlying IOException.

pipeAllLimited

public static long pipeAllLimited(java.io.InputStream inStr,
                                  long limit,
                                  java.io.OutputStream outStr)
                           throws java.io.IOException
Write up to limit bytes of data from inStr to the destination stream outStr.
Parameters:
inStr - source input stream.
limit - the maximum number of bytes allowed to be read.
outStr - destination output stream.
Throws:
java.io.IOException - in case of underlying IOException, or if limit is reached on inStr still has data in it.

readAll

public static byte[] readAll(java.io.InputStream inStr)
                      throws java.io.IOException
Read stream fully, returning contents in a byte array.
Parameters:
inStr - stream to be read.
Returns:
a byte array representing the contents of inStr.
Throws:
java.io.IOException - in case of underlying IOException.

readAllLimited

public static byte[] readAllLimited(java.io.InputStream inStr,
                                    int limit)
                             throws java.io.IOException
Read from inStr up to a maximum number of bytes, throwing an exception if more the maximum amount of requested data is available.
Parameters:
inStr - stream to be read.
limit - maximum number of bytes that can be read.
Returns:
a byte array representing the contents of inStr.
Throws:
java.io.IOException - in case of underlying IOException, or if limit is reached on inStr still has data in it.

readFully

public static int readFully(java.io.InputStream inStr,
                            byte[] buf)
                     throws java.io.IOException
Fully read in buf's length in data, or up to EOF, whichever occurs first,
Parameters:
inStr - the stream to be read.
buf - the buffer to be read into.
Returns:
the number of bytes read into the buffer.
Throws:
java.io.IOException - in case of underlying IOException.

readFully

public static int readFully(java.io.InputStream inStr,
                            byte[] buf,
                            int off,
                            int len)
                     throws java.io.IOException
Fully read in len's bytes of data into buf, or up to EOF, whichever occurs first,
Parameters:
inStr - the stream to be read.
buf - the buffer to be read into.
off - offset into buf to start putting bytes into.
len - the number of bytes to be read.
Returns:
the number of bytes read into the buffer.
Throws:
java.io.IOException - in case of underlying IOException.

validateBufferArguments

public static void validateBufferArguments(byte[] buf,
                                           int off,
                                           int len)

writeBufTo

public static void writeBufTo(java.io.ByteArrayOutputStream buf,
                              java.io.OutputStream output)
                       throws java.io.IOException

Bouncy Castle Cryptography Library 1.77.0