You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by jo...@apache.org on 2008/04/12 05:36:13 UTC
svn commit: r647368 - in /archiva/sandbox/archiva-checksum/src:
main/java/org/apache/archiva/checksum/ test/java/org/apache/archiva/checksum/
Author: joakime
Date: Fri Apr 11 20:36:07 2008
New Revision: 647368
URL: http://svn.apache.org/viewvc?rev=647368&view=rev
Log:
Renaming classes per discussion in dev@archiva
Added:
archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Checksum.java
- copied, changed from r645362, archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hasher.java
archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumAlgorithm.java
- copied, changed from r645362, archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hash.java
Removed:
archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hash.java
archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hasher.java
Modified:
archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumFile.java
archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/ChecksumFileTest.java
archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/HashTest.java
Copied: archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Checksum.java (from r645362, archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hasher.java)
URL: http://svn.apache.org/viewvc/archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Checksum.java?p2=archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Checksum.java&p1=archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hasher.java&r1=645362&r2=647368&rev=647368&view=diff
==============================================================================
--- archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hasher.java (original)
+++ archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Checksum.java Fri Apr 11 20:36:07 2008
@@ -30,25 +30,25 @@
import org.apache.commons.io.output.NullOutputStream;
/**
- * Hasher - simple hashing routines.
+ * Checksum - simple checksum hashing routines.
*
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
* @version $Id$
*/
-public class Hasher
+public class Checksum
{
private static final int BUFFER_SIZE = 32768;
- public static void update( List<Hasher> hashers, InputStream stream )
+ public static void update( List<Checksum> checksums, InputStream stream )
throws IOException
{
byte[] buffer = new byte[BUFFER_SIZE];
int size = stream.read( buffer, 0, BUFFER_SIZE );
while ( size >= 0 )
{
- for ( Hasher hasher : hashers )
+ for ( Checksum checksum : checksums )
{
- hasher.update( buffer, 0, size );
+ checksum.update( buffer, 0, size );
}
size = stream.read( buffer, 0, BUFFER_SIZE );
}
@@ -56,18 +56,18 @@
protected final MessageDigest md;
- private Hash hash;
+ private ChecksumAlgorithm checksumAlgorithm;
- public Hasher( Hash hash )
+ public Checksum( ChecksumAlgorithm checksumAlgorithm )
{
- this.hash = hash;
+ this.checksumAlgorithm = checksumAlgorithm;
try
{
- md = MessageDigest.getInstance( hash.getAlgorithm() );
+ md = MessageDigest.getInstance( checksumAlgorithm.getAlgorithm() );
}
catch ( NoSuchAlgorithmException e )
{
- throw new IllegalStateException( "Unable to initialize MessageDigest algorithm " + hash.getAlgorithm()
+ throw new IllegalStateException( "Unable to initialize MessageDigest algorithm " + checksumAlgorithm.getAlgorithm()
+ " : " + e.getMessage(), e );
}
}
@@ -77,9 +77,9 @@
return Hex.encode( md.digest() );
}
- public Hash getHash()
+ public ChecksumAlgorithm getAlgorithm()
{
- return this.hash;
+ return this.checksumAlgorithm;
}
public void reset()
@@ -87,13 +87,13 @@
md.reset();
}
- public Hasher update( byte[] buffer, int offset, int size )
+ public Checksum update( byte[] buffer, int offset, int size )
{
md.update( buffer, 0, size );
return this;
}
- public Hasher update( InputStream stream )
+ public Checksum update( InputStream stream )
throws IOException
{
DigestInputStream dig = new DigestInputStream( stream, md );
Copied: archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumAlgorithm.java (from r645362, archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hash.java)
URL: http://svn.apache.org/viewvc/archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumAlgorithm.java?p2=archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumAlgorithm.java&p1=archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hash.java&r1=645362&r2=647368&rev=647368&view=diff
==============================================================================
--- archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/Hash.java (original)
+++ archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumAlgorithm.java Fri Apr 11 20:36:07 2008
@@ -24,25 +24,25 @@
import org.apache.commons.io.FilenameUtils;
/**
- * Enumeration of available Hash techniques.
+ * Enumeration of available ChecksumAlgorithm techniques.
*
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
* @version $Id$
*/
-public enum Hash {
+public enum ChecksumAlgorithm {
SHA1("SHA-1", "sha1", "SHA1"),
MD5("MD5", "md5", "MD5");
- public static Hash getHashByExtension( File file )
+ public static ChecksumAlgorithm getByExtension( File file )
{
String ext = FilenameUtils.getExtension( file.getName() ).toLowerCase();
- if ( Hash.SHA1.getExt().equals( ext ) )
+ if ( ChecksumAlgorithm.SHA1.getExt().equals( ext ) )
{
- return Hash.SHA1;
+ return ChecksumAlgorithm.SHA1;
}
- else if ( Hash.MD5.getExt().equals( ext ) )
+ else if ( ChecksumAlgorithm.MD5.getExt().equals( ext ) )
{
- return Hash.MD5;
+ return ChecksumAlgorithm.MD5;
}
throw new IllegalArgumentException( "Filename " + file.getName() + " has no associated extension." );
@@ -54,7 +54,7 @@
private String algorithm;
/**
- * The file extension for this Hash.
+ * The file extension for this ChecksumAlgorithm.
*/
private String ext;
@@ -64,13 +64,13 @@
private String type;
/**
- * Construct a Hash
+ * Construct a ChecksumAlgorithm
*
* @param algorithm the MessageDigest algorithm
* @param ext the file extension.
* @param type the checksum type.
*/
- private Hash( String algorithm, String ext, String type )
+ private ChecksumAlgorithm( String algorithm, String ext, String type )
{
this.algorithm = algorithm;
this.ext = ext;
Modified: archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumFile.java
URL: http://svn.apache.org/viewvc/archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumFile.java?rev=647368&r1=647367&r2=647368&view=diff
==============================================================================
--- archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumFile.java (original)
+++ archiva/sandbox/archiva-checksum/src/main/java/org/apache/archiva/checksum/ChecksumFile.java Fri Apr 11 20:36:07 2008
@@ -59,21 +59,21 @@
/**
* Using a given checksum.
*
- * @param hash the hash to use.
+ * @param checksumAlgorithm the hash to use.
* @param referenceFile the file to calculate the checksum for.
* @return the checksum string for the file.
* @throws IOException if unable to calculate the checksum.
*/
- public String calculateChecksum( Hash hash, File referenceFile )
+ public String calculateChecksum( ChecksumAlgorithm checksumAlgorithm, File referenceFile )
throws IOException
{
FileInputStream fis = null;
try
{
- Hasher hasher = new Hasher( hash );
+ Checksum checksum = new Checksum( checksumAlgorithm );
fis = new FileInputStream( referenceFile );
- hasher.update( fis );
- return hasher.getChecksum();
+ checksum.update( fis );
+ return checksum.getChecksum();
}
finally
{
@@ -85,15 +85,15 @@
* Creates a checksum file of the provided referenceFile.
*
* @param referenceFile the file to checksum.
- * @param hash the hash to use.
+ * @param checksumAlgorithm the hash to use.
* @return the checksum File that was created.
* @throws IOException if there was a problem either reading the referenceFile, or writing the checksum file.
*/
- public File createChecksum( File referenceFile, Hash hash )
+ public File createChecksum( File referenceFile, ChecksumAlgorithm checksumAlgorithm )
throws IOException
{
- File checksumFile = new File( referenceFile.getAbsolutePath() + "." + hash.getExt() );
- String checksum = calculateChecksum( hash, referenceFile );
+ File checksumFile = new File( referenceFile.getAbsolutePath() + "." + checksumAlgorithm.getExt() );
+ String checksum = calculateChecksum( checksumAlgorithm, referenceFile );
FileUtils.writeStringToFile( checksumFile, checksum + " " + referenceFile.getName() );
return checksumFile;
}
@@ -101,13 +101,13 @@
/**
* Get the checksum file for the reference file and hash.
*
- * @param hash the hash that we are interested in.
+ * @param checksumAlgorithm the hash that we are interested in.
* @param referenceFile the reference file to work with.
* @return the checksum file to return
*/
- public File getChecksumFile( Hash hash, File referenceFile )
+ public File getChecksumFile( ChecksumAlgorithm checksumAlgorithm, File referenceFile )
{
- return new File( referenceFile.getAbsolutePath() + "." + hash.getExt() );
+ return new File( referenceFile.getAbsolutePath() + "." + checksumAlgorithm.getExt() );
}
/**
@@ -138,7 +138,7 @@
throw new IOException( "Unable to load checksum from non-file " + checksumFile.getAbsolutePath() );
}
- Hash hash = Hash.getHashByExtension( checksumFile );
+ ChecksumAlgorithm checksumAlgorithm = ChecksumAlgorithm.getByExtension( checksumFile );
File parentDir = checksumFile.getParentFile();
String filename = FilenameUtils.removeExtension( checksumFile.getName() );
@@ -147,9 +147,9 @@
File referenceFile = new File( parentDir, filename );
String rawChecksum = FileUtils.readFileToString( checksumFile );
- String expectedChecksum = parseChecksum( rawChecksum, hash, referenceFile.getName() );
+ String expectedChecksum = parseChecksum( rawChecksum, checksumAlgorithm, referenceFile.getName() );
- String actualChecksum = calculateChecksum( hash, referenceFile );
+ String actualChecksum = calculateChecksum( checksumAlgorithm, referenceFile );
return StringUtils.equalsIgnoreCase( expectedChecksum, actualChecksum );
}
@@ -163,22 +163,22 @@
* @return true if the checksums report that the the reference file is valid.
* @throws IOException if unable to validate the checksums.
*/
- public boolean isValidChecksums( Hash hashes[], File referenceFile )
+ public boolean isValidChecksums( ChecksumAlgorithm hashes[], File referenceFile )
throws IOException
{
FileInputStream fis = null;
try
{
- List<Hasher> hashers = new ArrayList<Hasher>();
+ List<Checksum> hashers = new ArrayList<Checksum>();
// Create hasher for each hash.
- for ( Hash hash : hashes )
+ for ( ChecksumAlgorithm checksumAlgorithm : hashes )
{
- File checksumFile = getChecksumFile( hash, referenceFile );
+ File checksumFile = getChecksumFile( checksumAlgorithm, referenceFile );
// Only add hasher if checksum file exists.
if ( checksumFile.exists() )
{
- hashers.add( new Hasher( hash ) );
+ hashers.add( new Checksum( checksumAlgorithm ) );
}
}
@@ -191,20 +191,20 @@
// Parse file once, for all hashers.
fis = new FileInputStream( referenceFile );
- Hasher.update( hashers, fis );
+ Checksum.update( hashers, fis );
boolean valid = true;
// check the hash files
- for ( Hasher hasher : hashers )
+ for ( Checksum checksum : hashers )
{
- Hash hash = hasher.getHash();
- File checksumFile = getChecksumFile( hash, referenceFile );
+ ChecksumAlgorithm checksumAlgorithm = checksum.getAlgorithm();
+ File checksumFile = getChecksumFile( checksumAlgorithm, referenceFile );
String rawChecksum = FileUtils.readFileToString( checksumFile );
- String expectedChecksum = parseChecksum( rawChecksum, hash, referenceFile.getName() );
+ String expectedChecksum = parseChecksum( rawChecksum, checksumAlgorithm, referenceFile.getName() );
- if ( StringUtils.equalsIgnoreCase( expectedChecksum, hasher.getChecksum() ) == false )
+ if ( StringUtils.equalsIgnoreCase( expectedChecksum, checksum.getChecksum() ) == false )
{
valid = false;
}
@@ -225,13 +225,13 @@
* @param referenceFile the reference file to check against.
* @return true if checksums were created successfully.
*/
- public boolean fixChecksums( Hash hashes[], File referenceFile )
+ public boolean fixChecksums( ChecksumAlgorithm hashes[], File referenceFile )
{
- List<Hasher> hashers = new ArrayList<Hasher>();
+ List<Checksum> hashers = new ArrayList<Checksum>();
// Create hasher for each hash.
- for ( Hash hash : hashes )
+ for ( ChecksumAlgorithm checksumAlgorithm : hashes )
{
- hashers.add( new Hasher( hash ) );
+ hashers.add( new Checksum( checksumAlgorithm ) );
}
// Any hashers?
@@ -246,7 +246,7 @@
{
// Parse file once, for all hashers.
fis = new FileInputStream( referenceFile );
- Hasher.update( hashers, fis );
+ Checksum.update( hashers, fis );
}
catch ( IOException e )
{
@@ -261,18 +261,18 @@
boolean valid = true;
// check the hash files
- for ( Hasher hasher : hashers )
+ for ( Checksum checksum : hashers )
{
- Hash hash = hasher.getHash();
+ ChecksumAlgorithm checksumAlgorithm = checksum.getAlgorithm();
try
{
- File checksumFile = getChecksumFile( hash, referenceFile );
- String actualChecksum = hasher.getChecksum();
+ File checksumFile = getChecksumFile( checksumAlgorithm, referenceFile );
+ String actualChecksum = checksum.getChecksum();
if ( checksumFile.exists() )
{
String rawChecksum = FileUtils.readFileToString( checksumFile );
- String expectedChecksum = parseChecksum( rawChecksum, hash, referenceFile.getName() );
+ String expectedChecksum = parseChecksum( rawChecksum, checksumAlgorithm, referenceFile.getName() );
if ( StringUtils.equalsIgnoreCase( expectedChecksum, actualChecksum ) == false )
{
@@ -313,7 +313,7 @@
* @return
* @throws IOException
*/
- public String parseChecksum( String rawChecksumString, Hash expectedHash, String expectedPath )
+ public String parseChecksum( String rawChecksumString, ChecksumAlgorithm expectedHash, String expectedPath )
throws IOException
{
String trimmedChecksum = rawChecksumString.replace( '\n', ' ' ).trim();
Modified: archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/ChecksumFileTest.java
URL: http://svn.apache.org/viewvc/archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/ChecksumFileTest.java?rev=647368&r1=647367&r2=647368&view=diff
==============================================================================
--- archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/ChecksumFileTest.java (original)
+++ archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/ChecksumFileTest.java Fri Apr 11 20:36:07 2008
@@ -43,7 +43,7 @@
ChecksumFile checksumFile = new ChecksumFile();
File testfile = getTestResource( "examples/redback-authz-open.jar" );
String expectedChecksum = "2bb14b388973351b0a4dfe11d171965f59cc61a1";
- String actualChecksum = checksumFile.calculateChecksum( Hash.SHA1, testfile );
+ String actualChecksum = checksumFile.calculateChecksum( ChecksumAlgorithm.SHA1, testfile );
assertEquals( expectedChecksum, actualChecksum );
}
@@ -53,7 +53,7 @@
ChecksumFile checksumFile = new ChecksumFile();
File testfile = getTestResource( "examples/redback-authz-open.jar" );
String expectedChecksum = "f42047fe2e177ac04d0df7aa44d408be";
- String actualChecksum = checksumFile.calculateChecksum( Hash.MD5, testfile );
+ String actualChecksum = checksumFile.calculateChecksum( ChecksumAlgorithm.MD5, testfile );
assertEquals( expectedChecksum, actualChecksum );
}
@@ -64,7 +64,7 @@
+ " /home/projects/maven/repository-staging/to-ibiblio/maven2/servletapi/servletapi/2.4/servletapi-2.4.pom";
ChecksumFile checksumFile = new ChecksumFile();
- String s = checksumFile.parseChecksum( expected, Hash.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
+ String s = checksumFile.parseChecksum( expected, ChecksumAlgorithm.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
}
@@ -74,7 +74,7 @@
{
String expected = SERVLETAPI_SHA1 + " -";
ChecksumFile checksumFile = new ChecksumFile();
- String s = checksumFile.parseChecksum( expected, Hash.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
+ String s = checksumFile.parseChecksum( expected, ChecksumAlgorithm.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
}
@@ -83,14 +83,14 @@
{
String expected = "SHA1(-)=" + SERVLETAPI_SHA1;
ChecksumFile checksumFile = new ChecksumFile();
- String s = checksumFile.parseChecksum( expected, Hash.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
+ String s = checksumFile.parseChecksum( expected, ChecksumAlgorithm.SHA1, "servletapi/servletapi/2.4/servletapi-2.4.pom" );
assertEquals( "Checksum doesn't match", SERVLETAPI_SHA1, s );
}
public void testGetChecksumFile()
{
ChecksumFile checksumFile = new ChecksumFile();
- assertEquals( "test.jar.sha1", checksumFile.getChecksumFile( Hash.SHA1, new File( "test.jar" ) ).getName() );
+ assertEquals( "test.jar.sha1", checksumFile.getChecksumFile( ChecksumAlgorithm.SHA1, new File( "test.jar" ) ).getName() );
}
public void testCreateChecksum()
@@ -98,9 +98,9 @@
{
File testableJar = createTestableJar( "examples/redback-authz-open.jar" );
ChecksumFile checksumFile = new ChecksumFile();
- checksumFile.createChecksum( testableJar, Hash.SHA1 );
- File hashFile = checksumFile.getChecksumFile( Hash.SHA1, testableJar );
- assertTrue( "Hash file should exist.", hashFile.exists() );
+ checksumFile.createChecksum( testableJar, ChecksumAlgorithm.SHA1 );
+ File hashFile = checksumFile.getChecksumFile( ChecksumAlgorithm.SHA1, testableJar );
+ assertTrue( "ChecksumAlgorithm file should exist.", hashFile.exists() );
String hashContents = FileUtils.readFileToString( hashFile );
hashContents = StringUtils.trim( hashContents );
assertEquals( "2bb14b388973351b0a4dfe11d171965f59cc61a1 redback-authz-open.jar", hashContents );
Modified: archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/HashTest.java
URL: http://svn.apache.org/viewvc/archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/HashTest.java?rev=647368&r1=647367&r2=647368&view=diff
==============================================================================
--- archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/HashTest.java (original)
+++ archiva/sandbox/archiva-checksum/src/test/java/org/apache/archiva/checksum/HashTest.java Fri Apr 11 20:36:07 2008
@@ -34,21 +34,21 @@
{
public void testGetHashByExtensionSha1()
{
- assertEquals( Hash.SHA1, Hash.getHashByExtension( new File( "something.jar.sha1" ) ) );
- assertEquals( Hash.SHA1, Hash.getHashByExtension( new File( "OTHER.JAR.SHA1" ) ) );
+ assertEquals( ChecksumAlgorithm.SHA1, ChecksumAlgorithm.getByExtension( new File( "something.jar.sha1" ) ) );
+ assertEquals( ChecksumAlgorithm.SHA1, ChecksumAlgorithm.getByExtension( new File( "OTHER.JAR.SHA1" ) ) );
}
public void testGetHashByExtensionMd5()
{
- assertEquals( Hash.MD5, Hash.getHashByExtension( new File( "something.jar.md5" ) ) );
- assertEquals( Hash.MD5, Hash.getHashByExtension( new File( "OTHER.JAR.MD5" ) ) );
+ assertEquals( ChecksumAlgorithm.MD5, ChecksumAlgorithm.getByExtension( new File( "something.jar.md5" ) ) );
+ assertEquals( ChecksumAlgorithm.MD5, ChecksumAlgorithm.getByExtension( new File( "OTHER.JAR.MD5" ) ) );
}
public void testGetHashByExtensionInvalid()
{
try
{
- Hash.getHashByExtension( new File( "something.jar" ) );
+ ChecksumAlgorithm.getByExtension( new File( "something.jar" ) );
fail( "Expected " + IllegalArgumentException.class.getName() );
}
catch ( IllegalArgumentException e )