org.eclipse.net4j.util.io

## Class XORInputStream

- java.lang.Object
- - java.io.InputStream
  - - org.eclipse.net4j.util.io.DelegatingInputStream
    - - org.eclipse.net4j.util.io.XORInputStream

- All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

      public class XORInputStream
      extends DelegatingInputStream

  Author:
    Eike Stepper

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.net4j.util.io.DelegatingInputStream

      `in`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XORInputStream(java.io.InputStream in, int... key)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int[]` | `getKey()`
    `int` | `read()` Reads the next byte of data from this input stream.

    - ### Methods inherited from class org.eclipse.net4j.util.io.DelegatingInputStream

      `available, close, getDelegate, mark, markSupported, reset, skip`

    - ### Methods inherited from class java.io.InputStream

      `read, read`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### XORInputStream

          public XORInputStream(java.io.InputStream in,
                                int... key)

  - ### Method Detail

    - #### getKey

          public int[] getKey()

    - #### read

          public int read()
                   throws java.io.IOException

      Description copied from class: `DelegatingInputStream`
      Reads the next byte of data from this input stream. The value byte is returned as an `int` in the range `0` to `255`. If no byte is available because the end of the stream has been reached, the value `-1` is returned. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.

      This method simply performs `in.read()` and returns the result.

      Overrides:
        `read` in class `DelegatingInputStream`
      Returns:
        the next byte of data, or `-1` if the end of the stream is reached.
      Throws:
        `java.io.IOException` - if an I/O error occurs.
      See Also:
        `DelegatingInputStream.in`

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html