Class IOUtils

java.lang.Object
net.mtrop.doom.struct.io.IOUtils

public final class IOUtils extends Object
I/O utils.
Author:
Matthew Tropiano
  • Method Details

    • relay

      public static int relay(InputStream in, OutputStream out) throws IOException
      Reads from an input stream, reading in a consistent set of data and writing it to the output stream. The read/write is buffered so that it does not bog down the OS's other I/O requests. This method finishes when the end of the source stream is reached. Note that this may block if the input stream is a type of stream that will block if the input stream blocks for additional input. This method is thread-safe.
      Parameters:
      in - the input stream to grab data from.
      out - the output stream to write the data to.
      Returns:
      the total amount of bytes relayed.
      Throws:
      IOException - if a read or write error occurs.
    • relay

      public static int relay(InputStream in, OutputStream out, int maxLength) throws IOException
      Reads from an input stream, reading in a consistent set of data and writing it to the output stream. The read/write is buffered so that it does not bog down the OS's other I/O requests. This method finishes when the end of the source stream is reached. Note that this may block if the input stream is a type of stream that will block if the input stream blocks for additional input. This method is thread-safe.
      Parameters:
      in - the input stream to grab data from.
      out - the output stream to write the data to.
      maxLength - the maximum amount of bytes to relay, or a value < 0 for no max.
      Returns:
      the total amount of bytes relayed.
      Throws:
      IOException - if a read or write error occurs.
    • close

      public static void close(AutoCloseable c)
      Attempts to close an AutoCloseable object. If the object is null, this does nothing.
      Parameters:
      c - the reference to the AutoCloseable object.