Package org.eclipse.net4j.util.io

## Class DigestWriter

- java.lang.Object
- - java.io.Writer
  - - java.io.FilterWriter
    - - org.eclipse.net4j.util.io.DigestWriter

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

      public class DigestWriter
      extends java.io.FilterWriter

  Since:
    3.1
  Author:
    Eike Stepper

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected java.security.MessageDigest` | `digest` | The message digest associated with this stream.

    - ### Fields inherited from class java.io.FilterWriter

      `out`

    - ### Fields inherited from class java.io.Writer

      `lock`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DigestWriter​(java.io.Writer writer, java.security.MessageDigest digest)` | Creates a digest writer, using the specified writer and message digest.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.security.MessageDigest` | `getMessageDigest()` | Returns the message digest associated with this writer.
    `void` | `on​(boolean on)` | Turns the digest function on or off.
    `void` | `setMessageDigest​(java.security.MessageDigest digest)` | Associates the specified message digest with this writer.
    `java.lang.String` | `toString()` | Prints a string representation of this digest output stream and its associated message digest object.
    `void` | `write​(char[] cbuf, int off, int len)` |
    `void` | `write​(int c)` |
    `void` | `write​(java.lang.String str, int off, int len)` |

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

      `close, flush`

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

      `append, append, append, nullWriter, write, write`

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

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

- - ### Field Detail

    - #### digest

          protected java.security.MessageDigest digest

      The message digest associated with this stream.

  - ### Constructor Detail

    - #### DigestWriter

          public DigestWriter​(java.io.Writer writer,
                              java.security.MessageDigest digest)

      Creates a digest writer, using the specified writer and message digest.
      Parameters:
        `writer` - the writer.
        `digest` - the message digest to associate with this writer.

  - ### Method Detail

    - #### getMessageDigest

          public java.security.MessageDigest getMessageDigest()

      Returns the message digest associated with this writer.
      Returns:
        the message digest associated with this writer.
      See Also:
        `setMessageDigest(java.security.MessageDigest)`

    - #### setMessageDigest

          public void setMessageDigest​(java.security.MessageDigest digest)

      Associates the specified message digest with this writer.
      Parameters:
        `digest` - the message digest to be associated with this writer.
      See Also:
        `getMessageDigest()`

    - #### write

          public void write​(int c)
                     throws java.io.IOException

      Overrides:
        `write` in class `java.io.FilterWriter`
      Throws:
        `java.io.IOException`

    - #### write

          public void write​(char[] cbuf,
                            int off,
                            int len)
                     throws java.io.IOException

      Overrides:
        `write` in class `java.io.FilterWriter`
      Throws:
        `java.io.IOException`

    - #### write

          public void write​(java.lang.String str,
                            int off,
                            int len)
                     throws java.io.IOException

      Overrides:
        `write` in class `java.io.FilterWriter`
      Throws:
        `java.io.IOException`

    - #### on

          public void on​(boolean on)

      Turns the digest function on or off. The default is on. When it is on, a call to one of the `write` methods results in an update on the message digest. But when it is off, the message digest is not updated.
      Parameters:
        `on` - true to turn the digest function on, false to turn it off.

    - #### toString

          public java.lang.String toString()

      Prints a string representation of this digest output stream and its associated message digest object.
      Overrides:
        `toString` in class `java.lang.Object`