Class MessageDigestCalculatingInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- org.apache.commons.io.input.ProxyInputStream
-
- org.apache.commons.io.input.ObservableInputStream
-
- org.apache.commons.io.input.MessageDigestCalculatingInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
@Deprecated public class MessageDigestCalculatingInputStream extends ObservableInputStream
Deprecated.Calculates a checksum using aMessageDigest, for example, a SHA-512 sum.To build an instance, use
MessageDigestCalculatingInputStream.Builder.See the MessageDigest section in the Java Cryptography Architecture Standard Algorithm Name Documentation for information about standard algorithm names.
Note: Neither
ObservableInputStream, norMessageDigest, are thread safe, so isMessageDigestCalculatingInputStream.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMessageDigestCalculatingInputStream.BuilderDeprecated.Builds a newMessageDigestCalculatingInputStream.static classMessageDigestCalculatingInputStream.MessageDigestMaintainingObserverDeprecated.Maintains the message digest.-
Nested classes/interfaces inherited from class org.apache.commons.io.input.ObservableInputStream
ObservableInputStream.AbstractBuilder<T extends ObservableInputStream.AbstractBuilder<T>>, ObservableInputStream.Observer
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringDEFAULT_ALGORITHMDeprecated.The default message digest algorithm"MD5".private java.security.MessageDigestmessageDigestDeprecated.
-
Constructor Summary
Constructors Modifier Constructor Description MessageDigestCalculatingInputStream(java.io.InputStream inputStream)MessageDigestCalculatingInputStream(java.io.InputStream inputStream, java.lang.String algorithm)MessageDigestCalculatingInputStream(java.io.InputStream inputStream, java.security.MessageDigest messageDigest)privateMessageDigestCalculatingInputStream(MessageDigestCalculatingInputStream.Builder builder)Deprecated.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static MessageDigestCalculatingInputStream.Builderbuilder()Deprecated.Constructs a newMessageDigestCalculatingInputStream.Builder.(package private) static java.security.MessageDigestgetDefaultMessageDigest()Deprecated.Gets a MessageDigest object that implements the default digest algorithm"MD5".java.security.MessageDigestgetMessageDigest()Deprecated.Gets theMessageDigest, which is being used for generating the checksum.-
Methods inherited from class org.apache.commons.io.input.ObservableInputStream
add, close, consume, getObservers, noteClosed, noteDataByte, noteDataBytes, noteError, noteFinished, read, read, read, remove, removeAllObservers
-
Methods inherited from class org.apache.commons.io.input.ProxyInputStream
afterRead, available, beforeRead, checkOpen, handleIOException, isClosed, mark, markSupported, reset, setReference, skip, unwrap
-
-
-
-
Field Detail
-
DEFAULT_ALGORITHM
private static final java.lang.String DEFAULT_ALGORITHM
Deprecated.The default message digest algorithm"MD5".The MD5 cryptographic algorithm is weak and should not be used.
- See Also:
- Constant Field Values
-
messageDigest
private final java.security.MessageDigest messageDigest
Deprecated.
-
-
Constructor Detail
-
MessageDigestCalculatingInputStream
private MessageDigestCalculatingInputStream(MessageDigestCalculatingInputStream.Builder builder) throws java.io.IOException
Deprecated.- Throws:
java.io.IOException
-
MessageDigestCalculatingInputStream
@Deprecated public MessageDigestCalculatingInputStream(java.io.InputStream inputStream) throws java.security.NoSuchAlgorithmExceptionDeprecated.Constructs a new instance, which calculates a signature on the given stream, using aMessageDigestwith the "MD5" algorithm.The MD5 algorithm is weak and should not be used.
- Parameters:
inputStream- the stream to calculate the message digest for- Throws:
java.security.NoSuchAlgorithmException- if no Provider supports a MessageDigestSpi implementation for the specified algorithm.
-
MessageDigestCalculatingInputStream
@Deprecated public MessageDigestCalculatingInputStream(java.io.InputStream inputStream, java.security.MessageDigest messageDigest)Deprecated.Constructs a new instance, which calculates a signature on the given stream, using the givenMessageDigest.The MD5 cryptographic algorithm is weak and should not be used.
- Parameters:
inputStream- the stream to calculate the message digest formessageDigest- the message digest to use- Throws:
java.lang.NullPointerException- if messageDigest is null.
-
MessageDigestCalculatingInputStream
@Deprecated public MessageDigestCalculatingInputStream(java.io.InputStream inputStream, java.lang.String algorithm) throws java.security.NoSuchAlgorithmExceptionDeprecated.Constructs a new instance, which calculates a signature on the given stream, using aMessageDigestwith the given algorithm.The MD5 cryptographic algorithm is weak and should not be used.
- Parameters:
inputStream- the stream to calculate the message digest foralgorithm- the name of the algorithm requested. See the MessageDigest section in the Java Cryptography Architecture Standard Algorithm Name Documentation for information about standard algorithm names.- Throws:
java.security.NoSuchAlgorithmException- if no Provider supports a MessageDigestSpi implementation for the specified algorithm.
-
-
Method Detail
-
builder
public static MessageDigestCalculatingInputStream.Builder builder()
Deprecated.Constructs a newMessageDigestCalculatingInputStream.Builder.- Returns:
- a new
MessageDigestCalculatingInputStream.Builder. - Since:
- 2.12.0
-
getDefaultMessageDigest
static java.security.MessageDigest getDefaultMessageDigest() throws java.security.NoSuchAlgorithmExceptionDeprecated.Gets a MessageDigest object that implements the default digest algorithm"MD5".The MD5 cryptographic algorithm is weak and should not be used.
- Returns:
- a Message Digest object that implements the default algorithm.
- Throws:
java.security.NoSuchAlgorithmException- if no Provider supports a MessageDigestSpi implementation.- See Also:
Provider
-
getMessageDigest
public java.security.MessageDigest getMessageDigest()
Deprecated.Gets theMessageDigest, which is being used for generating the checksum.Note: The checksum will only reflect the data, which has been read so far. This is probably not, what you expect. Make sure, that the complete data has been read, if that is what you want. The easiest way to do so is by invoking
ObservableInputStream.consume().- Returns:
- the message digest used
-
-