Class AbstractChecksumPolicy

java.lang.Object
org.eclipse.aether.internal.impl.AbstractChecksumPolicy
All Implemented Interfaces:
ChecksumPolicy
Direct Known Subclasses:
FailChecksumPolicy, WarnChecksumPolicy

abstract class AbstractChecksumPolicy extends Object implements ChecksumPolicy
  • Field Details

    • logger

      protected final org.slf4j.Logger logger
    • resource

      protected final TransferResource resource
  • Constructor Details

    • AbstractChecksumPolicy

      protected AbstractChecksumPolicy(TransferResource resource)
  • Method Details

    • onChecksumMatch

      public boolean onChecksumMatch(String algorithm, ChecksumPolicy.ChecksumKind kind)
      Description copied from interface: ChecksumPolicy
      Signals a match between the locally computed checksum value and the checksum value declared by the remote repository.
      Specified by:
      onChecksumMatch in interface ChecksumPolicy
      Parameters:
      algorithm - The name of the checksum algorithm being used, must not be null.
      kind - A field providing further details about the checksum.
      Returns:
      true to accept the download as valid and stop further validation, false to continue validation with the next checksum.
    • onChecksumMismatch

      public void onChecksumMismatch(String algorithm, ChecksumPolicy.ChecksumKind kind, ChecksumFailureException exception) throws ChecksumFailureException
      Description copied from interface: ChecksumPolicy
      Signals a mismatch between the locally computed checksum value and the checksum value declared by the remote repository. A simple policy would just rethrow the provided exception. More sophisticated policies could update their internal state and defer a conclusion until all available checksums have been processed.
      Specified by:
      onChecksumMismatch in interface ChecksumPolicy
      Parameters:
      algorithm - The name of the checksum algorithm being used, must not be null.
      kind - A field providing further details about the checksum.
      exception - The exception describing the checksum mismatch, must not be null.
      Throws:
      ChecksumFailureException - If the checksum validation is to be failed. If the method returns normally, validation continues with the next checksum.
    • onChecksumError

      public void onChecksumError(String algorithm, ChecksumPolicy.ChecksumKind kind, ChecksumFailureException exception) throws ChecksumFailureException
      Description copied from interface: ChecksumPolicy
      Signals an error while computing the local checksum value or retrieving the checksum value from the remote repository.
      Specified by:
      onChecksumError in interface ChecksumPolicy
      Parameters:
      algorithm - The name of the checksum algorithm being used, must not be null.
      kind - A field providing further details about the checksum.
      exception - The exception describing the checksum error, must not be null.
      Throws:
      ChecksumFailureException - If the checksum validation is to be failed. If the method returns normally, validation continues with the next checksum.
    • onNoMoreChecksums

      public void onNoMoreChecksums() throws ChecksumFailureException
      Description copied from interface: ChecksumPolicy
      Signals that all available checksums have been processed.
      Specified by:
      onNoMoreChecksums in interface ChecksumPolicy
      Throws:
      ChecksumFailureException - If the checksum validation is to be failed. If the method returns normally, the download is assumed to be valid.
    • onTransferRetry

      public void onTransferRetry()
      Description copied from interface: ChecksumPolicy
      Signals that the download is being retried after a previously thrown ChecksumFailureException that is retry-worthy. Policies that maintain internal state will usually have to reset some of this state at this point to prepare for a new round of validation.
      Specified by:
      onTransferRetry in interface ChecksumPolicy