package org.bouncycastle.crypto.digests;

import org.bouncycastle.crypto.ExtendedDigest;

Wrapper removes exposure to the Memoable interface on an ExtendedDigest implementation.
/** * Wrapper removes exposure to the Memoable interface on an ExtendedDigest implementation. */
public class NonMemoableDigest implements ExtendedDigest { private ExtendedDigest baseDigest;
Base constructor.
Params:
  • baseDigest – underlying digest to use.
Throws:
/** * Base constructor. * * @param baseDigest underlying digest to use. * @exception IllegalArgumentException if baseDigest is null */
public NonMemoableDigest( ExtendedDigest baseDigest) { if (baseDigest == null) { throw new IllegalArgumentException("baseDigest must not be null"); } this.baseDigest = baseDigest; } public String getAlgorithmName() { return baseDigest.getAlgorithmName(); } public int getDigestSize() { return baseDigest.getDigestSize(); } public void update(byte in) { baseDigest.update(in); } public void update(byte[] in, int inOff, int len) { baseDigest.update(in, inOff, len); } public int doFinal(byte[] out, int outOff) { return baseDigest.doFinal(out, outOff); } public void reset() { baseDigest.reset(); } public int getByteLength() { return baseDigest.getByteLength(); } }