@Override
  public void update(ByteBuffer data) {
    if (finalized) {
      throw new IllegalStateException(
          "Cannot update after computing the MAC tag. Please create a new object.");
    }
    mac.update(data);
  }
An implementation of streaming HMAC computation. Not thread-safe, thread safety must be ensured
by the caller if objects of this class are accessed concurrently.
java_src/src/main/java/com/google/crypto/tink/mac/internal/ChunkedHmacComputation.java