Class DigestBuilder

java.lang.Object
com.inductiveautomation.ignition.common.util.DigestBuilder

public class DigestBuilder extends Object
  • Method Details

    • md5

      public static DigestBuilder md5()
      Returns:
      a DigestBuilder that uses the MD5 algorithm.
    • sha1

      public static DigestBuilder sha1()
      Returns:
      a DigestBuilder that uses the SHA-1 algorithm.
    • sha256

      public static DigestBuilder sha256()
      Returns:
      a DigestBuilder that uses the SHA-256 algorithm.
    • custom

      public static DigestBuilder custom(String algorithm) throws NoSuchAlgorithmException
      Parameters:
      algorithm - the message digest algorithm.
      Returns:
      a DigestBuilder that uses algorithm.
      Throws:
      NoSuchAlgorithmException - if no message digest for algorithm is available.
    • update

      public DigestBuilder update(String input)
      Update the digest input with bytes from input in StandardCharsets.UTF_8 encoding.
      Parameters:
      input - the input String.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(String input, Charset charset)
      Update the digest input with bytes from input in charset encoding.
      Parameters:
      input - the input String.
      charset - the encoding Charset.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(boolean input)
      Update the digest input with input.

      If true, a byte equal to 1, otherwise 0.

      Parameters:
      input - the input boolean.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(byte input)
      Update the digest input with input.
      Parameters:
      input - the inpute byte.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(short input)
      Update the digest input with the bytes from the big-endian representation of input.
      Parameters:
      input - the input short.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(int input)
      Update the digest input with the bytes from the big-endian representation of input.
      Parameters:
      input - the input int.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(long input)
      Update the digest input with the bytes from the big-endian representation of input.
      Parameters:
      input - the input long.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(float input)
      Update the digest input with the bytes from the big-endian representation of input's raw int bits.
      Parameters:
      input - the input float.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(double input)
      Update the digest input with the bytes from the big-endian representation of input's raw long bits.
      Parameters:
      input - the input double.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(byte[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(short[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(int[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(long[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(float[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • update

      public DigestBuilder update(double[] input)
      Update the digest input with the bytes from the big-endian representation of each element of input.
      Parameters:
      input - the input array.
      Returns:
      this DigestBuilder.
    • reset

      public DigestBuilder reset()
      Manually reset the underlying MessageDigest.

      This is done automatically after a call to build() or buildHexString().

      Returns:
      this DigestBuilder.
    • build

      public byte[] build()
      Compute and return the digest.

      The underlying MessageDigest is reset and this builder can be re-used.

      Returns:
      the computed digest.
    • buildHexString

      public String buildHexString()
      Compute and return the digest as a lower-case hex-encoded String.

      The underlying MessageDigest is reset and this builder can be re-used.

      Returns:
      the computed digest as a lower-case hex-encoded String.