Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.cedarsoft.utils.crypt;
 
 import  org.jetbrains.annotations.NotNull;
 
 import java.net.URL;
Calculates the hashs of resources
public class ResourceHashCalculator {
  @NotNull
  public CheckSum calculate( @NotNull Algorithm algorithm, @NotNull URL resource ) throws IOException {
    return calculatealgorithm.getMessageDigest(), resource );
  }
  @NotNull
  public CheckSum calculate( @NotNull Algorithm algorithm, @NotNull InputStream resource ) throws IOException {
    return calculatealgorithm.getMessageDigest(), resource );
  }
  @NotNull
  public CheckSum calculate( @NotNull Algorithm algorithm, @NotNull byte[] resource ) throws IOException {
    return calculatealgorithm.getMessageDigest(), new ByteArrayInputStreamresource ) );
  }
  @NotNull
  private static CheckSum calculate( @NotNull MessageDigest messageDigest, @NotNull URL resource ) throws IOException {
    InputStream in = null;
    try {
      in = resource.openStream();
      return calculatemessageDigestin );
    } finally {
      if ( in != null ) {
        in.close();
      }
    }
  }
  @NotNull
  private static CheckSum calculate( @NotNull MessageDigest messageDigest, @NotNull InputStream resourceIn ) throws IOException {
    messageDigest.reset();
    byte[] cache = new byte[255];
    int k;
    while ( ( k = resourceIn.readcache ) ) > -1 ) {
      messageDigest.updatecache, 0, k );
    }
    byte[] digest = messageDigest.digest();
    return new CheckSum( Algorithm.getAlgorithmmessageDigest.getAlgorithm() ), digest );
  }
  @NotNull
  public CheckSum calculateSHA1( @NotNull InputStream resource ) throws IOException {
    return calculate.resource );
  }
  @NotNull
  public CheckSum calculateMD5( @NotNull InputStream resource ) throws IOException {
    return calculate.resource );
  }
New to GrepCode? Check out our FAQ X