org.apache.tools.ant.types.selectors.modifiedselector

## Class DigestAlgorithm

- java.lang.Object
- - org.apache.tools.ant.types.selectors.modifiedselector.DigestAlgorithm

All Implemented Interfaces:
  Algorithm

    public class DigestAlgorithm
    extends java.lang.Object
    implements Algorithm

Computes a 'hashvalue' for the content of file using java.security.MessageDigest. Use of this algorithm doesn't require any additional nested <param>s. Supported <param>s are:

Digest algorithm parameters
name | values | description | required
--- | --- | --- | ---
algorithm.algorithm | MD5 | SHA (default provider) | name of the algorithm the provider should use | no, defaults to MD5
algorithm.provider |  | name of the provider to use | no, defaults to null

Since:
  Ant 1.6
Version:
  2004-07-08

### Constructor Summary

Constructors
Constructor and Description
`DigestAlgorithm()`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.String` `getValue(java.io.File file)` Computes a value for a file content with the specified digest algorithm.
`void` `initMessageDigest()` Initialize the security message digest.
`boolean` `isValid()` This algorithm supports only MD5 and SHA.
`void` `setAlgorithm(java.lang.String algorithm)` Specifies the algorithm to be used to compute the checksum.
`void` `setProvider(java.lang.String provider)` Sets the MessageDigest algorithm provider to be used to calculate the checksum.
`java.lang.String` `toString()` Override Object.toString().

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

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

### Constructor Detail

#### DigestAlgorithm

    public DigestAlgorithm()

### Method Detail

#### setAlgorithm

    public void setAlgorithm(java.lang.String algorithm)

Specifies the algorithm to be used to compute the checksum. Defaults to "MD5". Other popular algorithms like "SHA" may be used as well.

Parameters:
  `algorithm` - the digest algorithm to use

#### setProvider

    public void setProvider(java.lang.String provider)

Sets the MessageDigest algorithm provider to be used to calculate the checksum.

Parameters:
  `provider` - provider to use

#### initMessageDigest

    public void initMessageDigest()

Initialize the security message digest.

#### isValid

    public boolean isValid()

This algorithm supports only MD5 and SHA.

Specified by:
  `isValid` in interface `Algorithm`
Returns:
  true if all is ok, otherwise false.

#### getValue

    public java.lang.String getValue(java.io.File file)

Computes a value for a file content with the specified digest algorithm.

Specified by:
  `getValue` in interface `Algorithm`
Parameters:
  `file` - File object for which the value should be evaluated.
Returns:
  The value for that file

#### toString

    public java.lang.String toString()

Override Object.toString().

Overrides:
  `toString` in class `java.lang.Object`
Returns:
  some information about this algorithm.