Package 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 | Description
--- | ---
`DigestAlgorithm()` |

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`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 Details

### DigestAlgorithm

public DigestAlgorithm()

## Method Details

### 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.