org.apache.commons.io.input

## Class MessageDigestCalculatingInputStream.Builder

- java.lang.Object
- - org.apache.commons.io.build.AbstractSupplier<T,B>
  - - org.apache.commons.io.build.AbstractOriginSupplier<T,B>
    - - org.apache.commons.io.build.AbstractStreamBuilder<MessageDigestCalculatingInputStream,MessageDigestCalculatingInputStream.Builder>
      - - org.apache.commons.io.input.MessageDigestCalculatingInputStream.Builder

- All Implemented Interfaces:
    IOSupplier<MessageDigestCalculatingInputStream>
  Enclosing class:
    MessageDigestCalculatingInputStream

      public static class MessageDigestCalculatingInputStream.Builder
      extends AbstractStreamBuilder<MessageDigestCalculatingInputStream,MessageDigestCalculatingInputStream.Builder>

  Builds a new `MessageDigestCalculatingInputStream` instance.

  For example:

       MessageDigestCalculatingInputStream s = MessageDigestCalculatingInputStream.builder()
         .setPath(path)
         .setMessageDigest("SHA-512")
         .get();

  Since:
    2.12.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Builder()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `MessageDigestCalculatingInputStream` | `get()` Constructs a new instance.
    `void` | `setMessageDigest(MessageDigest messageDigest)` Sets the message digest.
    `void` | `setMessageDigest(String algorithm)` Sets the name of the name of the message digest algorithm.

    - ### Methods inherited from class org.apache.commons.io.build.AbstractStreamBuilder

      `getBufferSize, getBufferSizeDefault, getCharSequence, getCharset, getCharsetDefault, getInputStream, getOpenOptions, getOutputStream, getPath, getWriter, setBufferSize, setBufferSize, setBufferSizeDefault, setCharset, setCharset, setCharsetDefault, setOpenOptions`

    - ### Methods inherited from class org.apache.commons.io.build.AbstractOriginSupplier

      `checkOrigin, getOrigin, hasOrigin, newByteArrayOrigin, newCharSequenceOrigin, newFileOrigin, newFileOrigin, newInputStreamOrigin, newOutputStreamOrigin, newPathOrigin, newPathOrigin, newReaderOrigin, newURIOrigin, newWriterOrigin, setByteArray, setCharSequence, setFile, setFile, setInputStream, setOrigin, setOutputStream, setPath, setPath, setReader, setURI, setWriter`

    - ### Methods inherited from class org.apache.commons.io.build.AbstractSupplier

      `asThis`

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

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

    - ### Methods inherited from interface org.apache.commons.io.function.IOSupplier

      `asSupplier`

- - ### Constructor Detail

    - #### Builder

          public Builder()

  - ### Method Detail

    - #### get

          public MessageDigestCalculatingInputStream get()
                                                  throws IOException

      Constructs a new instance.

      This builder use the aspects InputStream, OpenOption[], and MessageDigest.

      You must provide an origin that can be converted to an InputStream by this builder, otherwise, this call will throw an `UnsupportedOperationException`.

      Returns:
        a new instance.
      Throws:
        `UnsupportedOperationException` - if the origin cannot provide an InputStream.
        `IOException` - if an I/O error occurs.
      See Also:
        `AbstractStreamBuilder.getInputStream()`

    - #### setMessageDigest

          public void setMessageDigest(MessageDigest messageDigest)

      Sets the message digest.
      Parameters:
        `messageDigest` - the message digest.

    - #### setMessageDigest

          public void setMessageDigest(String algorithm)
                                throws NoSuchAlgorithmException

      Sets the name of the name of the message digest algorithm.
      Parameters:
        `algorithm` - the name of the algorithm. See the MessageDigest section in the Java Cryptography Architecture Standard Algorithm Name Documentation for information about standard algorithm names.
      Throws:
        `NoSuchAlgorithmException` - if no Provider supports a MessageDigestSpi implementation for the specified algorithm.

Copyright © 2002–2023 The Apache Software Foundation. All rights reserved.