From 2f49c4f0210d5e8a8c25ca7de41b726eaa8adbe9 Mon Sep 17 00:00:00 2001 From: Sylwester Lachiewicz Date: Sun, 10 Dec 2023 15:51:51 +0100 Subject: [PATCH] Reformat code --- pom.xml | 11 +- .../plexus/digest/AbstractDigester.java | 62 ++++----- .../digest/AbstractStreamingDigester.java | 66 ++++------ .../codehaus/plexus/digest/ChecksumFile.java | 62 ++++----- .../codehaus/plexus/digest/DigestUtils.java | 57 ++++----- .../org/codehaus/plexus/digest/Digester.java | 9 +- .../plexus/digest/DigesterException.java | 22 ++-- .../java/org/codehaus/plexus/digest/Hex.java | 18 ++- .../codehaus/plexus/digest/Md5Digester.java | 14 +-- .../codehaus/plexus/digest/Sha1Digester.java | 14 +-- .../plexus/digest/Sha256Digester.java | 20 ++- .../plexus/digest/StreamingDigester.java | 13 +- .../plexus/digest/StreamingMd5Digester.java | 11 +- .../plexus/digest/StreamingSha1Digester.java | 11 +- .../digest/StreamingSha256Digester.java | 13 +- .../plexus/digest/ChecksumFileTest.java | 69 +++++----- .../plexus/digest/DigestUtilsTest.java | 30 ++--- .../codehaus/plexus/digest/DigesterTest.java | 118 +++++++++++------- 18 files changed, 274 insertions(+), 346 deletions(-) diff --git a/pom.xml b/pom.xml index 0f86784..fd03a78 100644 --- a/pom.xml +++ b/pom.xml @@ -1,3 +1,4 @@ + 4.0.0 @@ -5,7 +6,7 @@ org.codehaus.plexus plexus-components 14.2 - + plexus-digest @@ -16,8 +17,8 @@ scm:git:git@github.com:codehaus-plexus/plexus-digest.git scm:git:git@github.com:codehaus-plexus/plexus-digest.git - http://github.com/codehaus-plexus/plexus-digest HEAD + http://github.com/codehaus-plexus/plexus-digest github @@ -65,15 +66,17 @@ org.apache.maven.plugins maven-scm-publish-plugin - ${project.reporting.outputDirectory} + ${project.reporting.outputDirectory} + scm-publish - site-deploy + publish-scm + site-deploy diff --git a/src/main/java/org/codehaus/plexus/digest/AbstractDigester.java b/src/main/java/org/codehaus/plexus/digest/AbstractDigester.java index 2038133..2bb9ee5 100644 --- a/src/main/java/org/codehaus/plexus/digest/AbstractDigester.java +++ b/src/main/java/org/codehaus/plexus/digest/AbstractDigester.java @@ -16,21 +16,19 @@ * limitations under the License. */ -import org.codehaus.plexus.util.IOUtil; -import org.codehaus.plexus.util.StringUtils; - import java.io.File; import java.io.FileInputStream; import java.io.IOException; +import org.codehaus.plexus.util.IOUtil; +import org.codehaus.plexus.util.StringUtils; + /** * Create a digest for a file. * * @author Brett Porter */ -public abstract class AbstractDigester - implements Digester -{ +public abstract class AbstractDigester implements Digester { private final StreamingDigester streamingDigester; /** @@ -38,8 +36,7 @@ public abstract class AbstractDigester * * @param streamingDigester a {@link org.codehaus.plexus.digest.StreamingDigester} object. */ - protected AbstractDigester( StreamingDigester streamingDigester ) - { + protected AbstractDigester(StreamingDigester streamingDigester) { this.streamingDigester = streamingDigester; } @@ -48,46 +45,36 @@ protected AbstractDigester( StreamingDigester streamingDigester ) * * @return a {@link java.lang.String} object. */ - public String getAlgorithm() - { + public String getAlgorithm() { return streamingDigester.getAlgorithm(); } /** {@inheritDoc} */ - public String calc( File file ) - throws DigesterException - { + public String calc(File file) throws DigesterException { FileInputStream fis = null; - try - { - fis = new FileInputStream( file ); + try { + fis = new FileInputStream(file); streamingDigester.reset(); - streamingDigester.update( fis ); + streamingDigester.update(fis); return streamingDigester.calc(); - } - catch ( IOException e ) - { - throw new DigesterException( "Unable to calculate the " + streamingDigester.getAlgorithm() + - " hashcode for " + file.getAbsolutePath() + ": " + e.getMessage(), e ); - } - finally - { - IOUtil.close( fis ); + } catch (IOException e) { + throw new DigesterException( + "Unable to calculate the " + streamingDigester.getAlgorithm() + " hashcode for " + + file.getAbsolutePath() + ": " + e.getMessage(), + e); + } finally { + IOUtil.close(fis); } } /** {@inheritDoc} */ - public void verify( File file, String checksum ) - throws DigesterException - { - String trimmedChecksum = - DigestUtils.cleanChecksum( checksum, streamingDigester.getAlgorithm(), file.getName() ); + public void verify(File file, String checksum) throws DigesterException { + String trimmedChecksum = DigestUtils.cleanChecksum(checksum, streamingDigester.getAlgorithm(), file.getName()); - //Create checksum for file - String sum = calc( file ); - if ( !StringUtils.equalsIgnoreCase( trimmedChecksum, sum ) ) - { - throw new DigesterException( "Checksum failed (expected=" + trimmedChecksum + ", actual=" + sum + ")" ); + // Create checksum for file + String sum = calc(file); + if (!StringUtils.equalsIgnoreCase(trimmedChecksum, sum)) { + throw new DigesterException("Checksum failed (expected=" + trimmedChecksum + ", actual=" + sum + ")"); } } @@ -96,8 +83,7 @@ public void verify( File file, String checksum ) * * @return a {@link java.lang.String} object. */ - public String toString() - { + public String toString() { return "[Digester:" + streamingDigester.getAlgorithm() + "]"; } } diff --git a/src/main/java/org/codehaus/plexus/digest/AbstractStreamingDigester.java b/src/main/java/org/codehaus/plexus/digest/AbstractStreamingDigester.java index b493a4e..6d1fe91 100644 --- a/src/main/java/org/codehaus/plexus/digest/AbstractStreamingDigester.java +++ b/src/main/java/org/codehaus/plexus/digest/AbstractStreamingDigester.java @@ -26,9 +26,7 @@ * * @author Brett Porter */ -public abstract class AbstractStreamingDigester - implements StreamingDigester -{ +public abstract class AbstractStreamingDigester implements StreamingDigester { protected final MessageDigest md; private static final int BUFFER_SIZE = 32768; @@ -38,16 +36,12 @@ public abstract class AbstractStreamingDigester * * @param algorithm a {@link java.lang.String} object. */ - protected AbstractStreamingDigester( String algorithm ) - { - try - { - md = MessageDigest.getInstance( algorithm ); - } - catch ( NoSuchAlgorithmException e ) - { - throw new IllegalStateException( "Unable to initialize digest algorithm " + algorithm + " : " - + e.getMessage() ); + protected AbstractStreamingDigester(String algorithm) { + try { + md = MessageDigest.getInstance(algorithm); + } catch (NoSuchAlgorithmException e) { + throw new IllegalStateException( + "Unable to initialize digest algorithm " + algorithm + " : " + e.getMessage()); } } @@ -56,8 +50,7 @@ protected AbstractStreamingDigester( String algorithm ) * * @return a {@link java.lang.String} object. */ - public String getAlgorithm() - { + public String getAlgorithm() { return md.getAlgorithm(); } @@ -67,10 +60,8 @@ public String getAlgorithm() * @return a {@link java.lang.String} object. * @throws org.codehaus.plexus.digest.DigesterException if any. */ - public String calc() - throws DigesterException - { - return calc( this.md ); + public String calc() throws DigesterException { + return calc(this.md); } /** @@ -78,17 +69,13 @@ public String calc() * * @throws org.codehaus.plexus.digest.DigesterException if any. */ - public void reset() - throws DigesterException - { + public void reset() throws DigesterException { md.reset(); } /** {@inheritDoc} */ - public void update( InputStream is ) - throws DigesterException - { - update( is, md ); + public void update(InputStream is) throws DigesterException { + update(is, md); } /** @@ -97,9 +84,8 @@ public void update( InputStream is ) * @param md a {@link java.security.MessageDigest} object. * @return a {@link java.lang.String} object. */ - protected static String calc( MessageDigest md ) - { - return Hex.encode( md.digest() ); + protected static String calc(MessageDigest md) { + return Hex.encode(md.digest()); } /** @@ -109,22 +95,16 @@ protected static String calc( MessageDigest md ) * @param digest a {@link java.security.MessageDigest} object. * @throws org.codehaus.plexus.digest.DigesterException if any. */ - protected static void update( InputStream is, MessageDigest digest ) - throws DigesterException - { - try - { + protected static void update(InputStream is, MessageDigest digest) throws DigesterException { + try { byte[] buffer = new byte[BUFFER_SIZE]; - int size = is.read( buffer, 0, BUFFER_SIZE ); - while ( size >= 0 ) - { - digest.update( buffer, 0, size ); - size = is.read( buffer, 0, BUFFER_SIZE ); + int size = is.read(buffer, 0, BUFFER_SIZE); + while (size >= 0) { + digest.update(buffer, 0, size); + size = is.read(buffer, 0, BUFFER_SIZE); } - } - catch ( IOException e ) - { - throw new DigesterException( "Unable to update " + digest.getAlgorithm() + " hash: " + e.getMessage(), e ); + } catch (IOException e) { + throw new DigesterException("Unable to update " + digest.getAlgorithm() + " hash: " + e.getMessage(), e); } } } diff --git a/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java b/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java index 276d185..4f738cb 100644 --- a/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java +++ b/src/main/java/org/codehaus/plexus/digest/ChecksumFile.java @@ -16,33 +16,33 @@ * limitations under the License. */ -import org.codehaus.plexus.util.FileUtils; -import org.codehaus.plexus.util.StringUtils; - import javax.inject.Inject; import javax.inject.Named; + import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; +import org.codehaus.plexus.util.FileUtils; +import org.codehaus.plexus.util.StringUtils; + /** * ChecksumFile * * @author Joakim Erdfelt */ @Named -public class ChecksumFile -{ +public class ChecksumFile { @Inject - @Named ( "sha256" ) + @Named("sha256") private Digester digestSha256; @Inject - @Named ( "sha1" ) + @Named("sha1") private Digester digestSha1; @Inject - @Named ( "md5" ) + @Named("md5") private Digester digestMd5; /** @@ -67,47 +67,40 @@ public class ChecksumFile * @throws java.io.FileNotFoundException if the checksumFile itself or the file it refers to is not found. * @throws java.io.IOException if the reading of the checksumFile or the file it refers to fails. */ - public boolean isValidChecksum( File checksumFile ) throws DigesterException, FileNotFoundException, IOException - { - if ( !checksumFile.exists() ) - { - throw new FileNotFoundException( "Unable to find checksum file " + checksumFile.getAbsolutePath() ); + public boolean isValidChecksum(File checksumFile) throws DigesterException, FileNotFoundException, IOException { + if (!checksumFile.exists()) { + throw new FileNotFoundException("Unable to find checksum file " + checksumFile.getAbsolutePath()); } - if ( !checksumFile.isFile() ) - { - throw new IOException( "Unable to load checksum from non-file " + checksumFile.getAbsolutePath() ); + if (!checksumFile.isFile()) { + throw new IOException("Unable to load checksum from non-file " + checksumFile.getAbsolutePath()); } String path = checksumFile.getAbsolutePath(); Digester digester = findDigesterByFileSuffix(path); - File referenceFile = new File( path.substring( 0, path.length() - digester.getFilenameExtension().length() ) ); + File referenceFile = new File(path.substring( + 0, path.length() - digester.getFilenameExtension().length())); - String rawChecksum = FileUtils.fileRead( checksumFile, "UTF-8" ); - String expectedChecksum = DigestUtils.cleanChecksum( rawChecksum, digester, referenceFile.getName() ); + String rawChecksum = FileUtils.fileRead(checksumFile, "UTF-8"); + String expectedChecksum = DigestUtils.cleanChecksum(rawChecksum, digester, referenceFile.getName()); - String actualChecksum = digester.calc( referenceFile ); + String actualChecksum = digester.calc(referenceFile); - return StringUtils.equalsIgnoreCase( expectedChecksum, actualChecksum ); + return StringUtils.equalsIgnoreCase(expectedChecksum, actualChecksum); } private Digester findDigesterByFileSuffix(String path) throws DigesterException { - if ( path.endsWith( digestMd5.getFilenameExtension() ) ) - { + if (path.endsWith(digestMd5.getFilenameExtension())) { return digestMd5; - } - else if ( path.endsWith( digestSha1.getFilenameExtension() ) ) - { + } else if (path.endsWith(digestSha1.getFilenameExtension())) { return digestSha1; - } - else if ( path.endsWith( digestSha256.getFilenameExtension() ) ) - { + } else if (path.endsWith(digestSha256.getFilenameExtension())) { return digestSha256; } // TODO: Add more digester implementations here. - throw new DigesterException( "Unable to determine digester type from filename " + path ); + throw new DigesterException("Unable to determine digester type from filename " + path); } /** @@ -119,11 +112,10 @@ else if ( path.endsWith( digestSha256.getFilenameExtension() ) ) * @throws org.codehaus.plexus.digest.DigesterException if there was a problem calculating the checksum of the referenceFile. * @throws java.io.IOException if there was a problem either reading the referenceFile, or writing the checksum file. */ - public File createChecksum( File referenceFile, Digester digester ) throws DigesterException, IOException - { - File checksumFile = new File( referenceFile.getAbsolutePath() + digester.getFilenameExtension() ); - String checksum = digester.calc( referenceFile ); - FileUtils.fileWrite( checksumFile.getAbsolutePath(), "UTF-8", checksum + " " + referenceFile.getName() ); + public File createChecksum(File referenceFile, Digester digester) throws DigesterException, IOException { + File checksumFile = new File(referenceFile.getAbsolutePath() + digester.getFilenameExtension()); + String checksum = digester.calc(referenceFile); + FileUtils.fileWrite(checksumFile.getAbsolutePath(), "UTF-8", checksum + " " + referenceFile.getName()); return checksumFile; } } diff --git a/src/main/java/org/codehaus/plexus/digest/DigestUtils.java b/src/main/java/org/codehaus/plexus/digest/DigestUtils.java index 265146a..bee79f5 100644 --- a/src/main/java/org/codehaus/plexus/digest/DigestUtils.java +++ b/src/main/java/org/codehaus/plexus/digest/DigestUtils.java @@ -24,10 +24,8 @@ * * @author Brett Porter */ -public class DigestUtils -{ - private DigestUtils() - { +public class DigestUtils { + private DigestUtils() { // don't create this class } @@ -41,9 +39,9 @@ private DigestUtils() * @throws org.codehaus.plexus.digest.DigesterException if there was a problem verifying the checksum string. * @param expectedFilename a {@link java.lang.String} object. */ - public static String cleanChecksum( String rawChecksum, Digester digester, String expectedFilename ) throws DigesterException - { - return cleanChecksum( rawChecksum, digester.getAlgorithm(), expectedFilename ); + public static String cleanChecksum(String rawChecksum, Digester digester, String expectedFilename) + throws DigesterException { + return cleanChecksum(rawChecksum, digester.getAlgorithm(), expectedFilename); } /** @@ -55,42 +53,33 @@ public static String cleanChecksum( String rawChecksum, Digester digester, Strin * @return a {@link java.lang.String} object. * @throws org.codehaus.plexus.digest.DigesterException if any. */ - public static String cleanChecksum( String checksum, String algorithm, String path ) - throws DigesterException - { - String trimmedChecksum = checksum.replace( '\n', ' ' ).trim(); + public static String cleanChecksum(String checksum, String algorithm, String path) throws DigesterException { + String trimmedChecksum = checksum.replace('\n', ' ').trim(); // Free-BSD / openssl - String regex = algorithm.replaceAll( "-", "" ) + "\\s*\\((.*?)\\)\\s*=\\s*([a-fA-F0-9]+)"; - Matcher m = Pattern.compile( regex ).matcher( trimmedChecksum ); - if ( m.matches() ) - { - String filename = m.group( 1 ); - if ( !isValidChecksumPattern( filename, path ) ) - { - throw new DigesterException( "Supplied checksum does not match checksum pattern" ); + String regex = algorithm.replaceAll("-", "") + "\\s*\\((.*?)\\)\\s*=\\s*([a-fA-F0-9]+)"; + Matcher m = Pattern.compile(regex).matcher(trimmedChecksum); + if (m.matches()) { + String filename = m.group(1); + if (!isValidChecksumPattern(filename, path)) { + throw new DigesterException("Supplied checksum does not match checksum pattern"); } - trimmedChecksum = m.group( 2 ); - } - else - { + trimmedChecksum = m.group(2); + } else { // GNU tools - m = Pattern.compile( "([a-fA-F0-9]+)\\s+\\*?(.+)" ).matcher( trimmedChecksum ); - if ( m.matches() ) - { - String filename = m.group( 2 ); - if ( !isValidChecksumPattern( filename, path ) ) - { - throw new DigesterException( "Supplied checksum does not match checksum pattern" ); + m = Pattern.compile("([a-fA-F0-9]+)\\s+\\*?(.+)").matcher(trimmedChecksum); + if (m.matches()) { + String filename = m.group(2); + if (!isValidChecksumPattern(filename, path)) { + throw new DigesterException("Supplied checksum does not match checksum pattern"); } - trimmedChecksum = m.group( 1 ); + trimmedChecksum = m.group(1); } } return trimmedChecksum; } - private static boolean isValidChecksumPattern( String filename, String path ) - { - return filename.endsWith( path ) || ( "-".equals( filename ) ); + private static boolean isValidChecksumPattern(String filename, String path) { + return filename.endsWith(path) || ("-".equals(filename)); } } diff --git a/src/main/java/org/codehaus/plexus/digest/Digester.java b/src/main/java/org/codehaus/plexus/digest/Digester.java index 819d47f..766c137 100644 --- a/src/main/java/org/codehaus/plexus/digest/Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/Digester.java @@ -23,8 +23,7 @@ * * @author Brett Porter */ -public interface Digester -{ +public interface Digester { /** Constant ROLE="Digester.class.getName()" */ String ROLE = Digester.class.getName(); @@ -49,8 +48,7 @@ public interface Digester * @return the current checksum. * @throws org.codehaus.plexus.digest.DigesterException if there was a problem computing the hashcode. */ - String calc( File file ) - throws DigesterException; + String calc(File file) throws DigesterException; /** * Verify that a checksum is correct. @@ -59,6 +57,5 @@ String calc( File file ) * @param checksum the checksum to compare to * @throws org.codehaus.plexus.digest.DigesterException if there was a problem computing the hashcode. */ - void verify( File file, String checksum ) - throws DigesterException; + void verify(File file, String checksum) throws DigesterException; } diff --git a/src/main/java/org/codehaus/plexus/digest/DigesterException.java b/src/main/java/org/codehaus/plexus/digest/DigesterException.java index 3a4f8b4..fa5131f 100644 --- a/src/main/java/org/codehaus/plexus/digest/DigesterException.java +++ b/src/main/java/org/codehaus/plexus/digest/DigesterException.java @@ -21,14 +21,11 @@ * * @author Edwin Punzalan */ -public class DigesterException - extends Exception -{ +public class DigesterException extends Exception { /** *

Constructor for DigesterException.

*/ - public DigesterException() - { + public DigesterException() { super(); } @@ -37,9 +34,8 @@ public DigesterException() * * @param message a {@link java.lang.String} object. */ - public DigesterException( String message ) - { - super( message ); + public DigesterException(String message) { + super(message); } /** @@ -48,9 +44,8 @@ public DigesterException( String message ) * @param message a {@link java.lang.String} object. * @param cause a {@link java.lang.Throwable} object. */ - public DigesterException( String message, Throwable cause ) - { - super( message, cause ); + public DigesterException(String message, Throwable cause) { + super(message, cause); } /** @@ -58,8 +53,7 @@ public DigesterException( String message, Throwable cause ) * * @param cause a {@link java.lang.Throwable} object. */ - public DigesterException( Throwable cause ) - { - super( cause ); + public DigesterException(Throwable cause) { + super(cause); } } diff --git a/src/main/java/org/codehaus/plexus/digest/Hex.java b/src/main/java/org/codehaus/plexus/digest/Hex.java index 3eaae00..ed4aefd 100644 --- a/src/main/java/org/codehaus/plexus/digest/Hex.java +++ b/src/main/java/org/codehaus/plexus/digest/Hex.java @@ -20,8 +20,7 @@ * Hex - simple hex conversions. * */ -public class Hex -{ +public class Hex { private static final byte[] DIGITS = "0123456789abcdef".getBytes(); /** @@ -30,19 +29,17 @@ public class Hex * @param data an array of {@link byte} objects. * @return a {@link java.lang.String} object. */ - public static String encode( byte[] data ) - { + public static String encode(byte[] data) { int l = data.length; byte[] raw = new byte[l * 2]; - for ( int i = 0, j = 0; i < l; i++ ) - { - raw[j++] = DIGITS[( 0xF0 & data[i] ) >>> 4]; + for (int i = 0, j = 0; i < l; i++) { + raw[j++] = DIGITS[(0xF0 & data[i]) >>> 4]; raw[j++] = DIGITS[0x0F & data[i]]; } - return new String( raw ); + return new String(raw); } /** @@ -51,8 +48,7 @@ public static String encode( byte[] data ) * @param raw a {@link java.lang.String} object. * @return a {@link java.lang.String} object. */ - public static String encode( String raw ) - { - return encode( raw.getBytes() ); + public static String encode(String raw) { + return encode(raw.getBytes()); } } diff --git a/src/main/java/org/codehaus/plexus/digest/Md5Digester.java b/src/main/java/org/codehaus/plexus/digest/Md5Digester.java index 3b5ca78..d3d3ddd 100644 --- a/src/main/java/org/codehaus/plexus/digest/Md5Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/Md5Digester.java @@ -22,25 +22,21 @@ * Digester that does MD5 Message Digesting Only. * */ -@Named( "md5" ) -public class Md5Digester - extends AbstractDigester -{ +@Named("md5") +public class Md5Digester extends AbstractDigester { /** *

getFilenameExtension.

* * @return a {@link java.lang.String} object. */ - public String getFilenameExtension() - { + public String getFilenameExtension() { return ".md5"; } /** *

Constructor for Md5Digester.

*/ - public Md5Digester() - { - super( new StreamingMd5Digester() ); + public Md5Digester() { + super(new StreamingMd5Digester()); } } diff --git a/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java b/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java index 724a452..72daca3 100644 --- a/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/Sha1Digester.java @@ -22,25 +22,21 @@ * Digester that does SHA1 Message Digesting Only. * */ -@Named( "sha1" ) -public class Sha1Digester - extends AbstractDigester -{ +@Named("sha1") +public class Sha1Digester extends AbstractDigester { /** *

getFilenameExtension.

* * @return a {@link java.lang.String} object. */ - public String getFilenameExtension() - { + public String getFilenameExtension() { return ".sha1"; } /** *

Constructor for Sha1Digester.

*/ - public Sha1Digester() - { - super( new StreamingSha1Digester() ); + public Sha1Digester() { + super(new StreamingSha1Digester()); } } diff --git a/src/main/java/org/codehaus/plexus/digest/Sha256Digester.java b/src/main/java/org/codehaus/plexus/digest/Sha256Digester.java index 695caab..6e4face 100644 --- a/src/main/java/org/codehaus/plexus/digest/Sha256Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/Sha256Digester.java @@ -22,17 +22,13 @@ * Digester that does SHA256 Message Digesting Only. * */ -@Named( "sha256" ) -public class Sha256Digester - extends AbstractDigester -{ - public String getFilenameExtension() - { - return ".sha256"; - } +@Named("sha256") +public class Sha256Digester extends AbstractDigester { + public String getFilenameExtension() { + return ".sha256"; + } - public Sha256Digester() - { - super( new StreamingSha256Digester() ); - } + public Sha256Digester() { + super(new StreamingSha256Digester()); + } } diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingDigester.java b/src/main/java/org/codehaus/plexus/digest/StreamingDigester.java index acb0959..3b4a2c8 100644 --- a/src/main/java/org/codehaus/plexus/digest/StreamingDigester.java +++ b/src/main/java/org/codehaus/plexus/digest/StreamingDigester.java @@ -23,8 +23,7 @@ * * @author Brett Porter */ -public interface StreamingDigester -{ +public interface StreamingDigester { /** Constant ROLE="StreamingDigester.class.getName()" */ String ROLE = StreamingDigester.class.getName(); @@ -41,8 +40,7 @@ public interface StreamingDigester * * @throws org.codehaus.plexus.digest.DigesterException if there was a problem with the internal message digest */ - void reset() - throws DigesterException; + void reset() throws DigesterException; /** * Calculate the current checksum. @@ -50,8 +48,7 @@ void reset() * @return the current checksum. * @throws org.codehaus.plexus.digest.DigesterException if there was a problem computing the hashcode. */ - String calc() - throws DigesterException; + String calc() throws DigesterException; /** * Update the checksum with the content of the input stream. @@ -59,7 +56,5 @@ String calc() * @param is the input stream * @throws org.codehaus.plexus.digest.DigesterException if there was a problem computing the hashcode. */ - void update( InputStream is ) - throws DigesterException; - + void update(InputStream is) throws DigesterException; } diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java b/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java index daf03d3..2e5de61 100644 --- a/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/StreamingMd5Digester.java @@ -23,15 +23,12 @@ * * @author Brett Porter */ -@Named( "md5" ) -public class StreamingMd5Digester - extends AbstractStreamingDigester -{ +@Named("md5") +public class StreamingMd5Digester extends AbstractStreamingDigester { /** *

Constructor for StreamingMd5Digester.

*/ - public StreamingMd5Digester() - { - super( "MD5" ); + public StreamingMd5Digester() { + super("MD5"); } } diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java b/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java index 1925b89..04e8fc6 100644 --- a/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/StreamingSha1Digester.java @@ -23,15 +23,12 @@ * * @author Brett Porter */ -@Named( "sha1" ) -public class StreamingSha1Digester - extends AbstractStreamingDigester -{ +@Named("sha1") +public class StreamingSha1Digester extends AbstractStreamingDigester { /** *

Constructor for StreamingSha1Digester.

*/ - public StreamingSha1Digester() - { - super( "SHA-1" ); + public StreamingSha1Digester() { + super("SHA-1"); } } diff --git a/src/main/java/org/codehaus/plexus/digest/StreamingSha256Digester.java b/src/main/java/org/codehaus/plexus/digest/StreamingSha256Digester.java index e6d7ca6..7a372ec 100644 --- a/src/main/java/org/codehaus/plexus/digest/StreamingSha256Digester.java +++ b/src/main/java/org/codehaus/plexus/digest/StreamingSha256Digester.java @@ -22,12 +22,9 @@ * An SHA-256 implementation of the streaming digester. * */ -@Named( "sha256" ) -public class StreamingSha256Digester - extends AbstractStreamingDigester -{ - public StreamingSha256Digester() - { - super( "SHA-256" ); - } +@Named("sha256") +public class StreamingSha256Digester extends AbstractStreamingDigester { + public StreamingSha256Digester() { + super("SHA-256"); + } } diff --git a/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java b/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java index dc07422..fc3c2a3 100644 --- a/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java +++ b/src/test/java/org/codehaus/plexus/digest/ChecksumFileTest.java @@ -16,12 +16,13 @@ * limitations under the License. */ -import org.codehaus.plexus.testing.PlexusTest; -import org.junit.jupiter.api.Test; - import javax.inject.Inject; + import java.io.File; +import org.codehaus.plexus.testing.PlexusTest; +import org.junit.jupiter.api.Test; + import static org.codehaus.plexus.testing.PlexusExtension.getBasedir; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -32,56 +33,50 @@ * @author Joakim Erdfelt */ @PlexusTest -class ChecksumFileTest -{ +class ChecksumFileTest { @Inject private ChecksumFile checksum; @Test - void isValidChecksum() - throws Exception - { - File exampleDir = new File( getBasedir(), "src/test/examples" ); + void isValidChecksum() throws Exception { + File exampleDir = new File(getBasedir(), "src/test/examples"); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "redback-authz-open.jar.md5" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "redback-authz-open.jar.sha1" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "redback-authz-open.jar.sha256" ) ) ); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "redback-authz-open.jar.md5"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "redback-authz-open.jar.sha1"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "redback-authz-open.jar.sha256"))); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "plain.jar.md5" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "plain.jar.sha1" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "plain.jar.sha256" ) ) ); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "plain.jar.md5"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "plain.jar.sha1"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "plain.jar.sha256"))); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "single-space.jar.md5" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "single-space.jar.sha1" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "single-space.jar.sha256" ) ) ); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "single-space.jar.md5"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "single-space.jar.sha1"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "single-space.jar.sha256"))); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "space-asterisk.jar.md5" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "space-asterisk.jar.sha1" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "space-asterisk.jar.sha256" ) ) ); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "space-asterisk.jar.md5"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "space-asterisk.jar.sha1"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "space-asterisk.jar.sha256"))); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "openssl.jar.md5" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "openssl.jar.sha1" ) ) ); - assertTrue( checksum.isValidChecksum( new File( exampleDir, "openssl.jar.sha256" ) ) ); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "openssl.jar.md5"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "openssl.jar.sha1"))); + assertTrue(checksum.isValidChecksum(new File(exampleDir, "openssl.jar.sha256"))); } @Test - void createChecksum() - throws Exception - { - File dataFile = File.createTempFile( "plexus-digest-test", null ); + void createChecksum() throws Exception { + File dataFile = File.createTempFile("plexus-digest-test", null); dataFile.deleteOnExit(); - File md5File = checksum.createChecksum( dataFile, new Md5Digester() ); + File md5File = checksum.createChecksum(dataFile, new Md5Digester()); md5File.deleteOnExit(); - assertNotNull( md5File ); - assertTrue( md5File.isFile() ); - assertTrue( checksum.isValidChecksum( md5File ) ); + assertNotNull(md5File); + assertTrue(md5File.isFile()); + assertTrue(checksum.isValidChecksum(md5File)); - File sha1File = checksum.createChecksum( dataFile, new Sha1Digester() ); + File sha1File = checksum.createChecksum(dataFile, new Sha1Digester()); sha1File.deleteOnExit(); - assertNotNull( sha1File ); - assertTrue( sha1File.isFile() ); - assertTrue( checksum.isValidChecksum( sha1File ) ); + assertNotNull(sha1File); + assertTrue(sha1File.isFile()); + assertTrue(checksum.isValidChecksum(sha1File)); } - } diff --git a/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java b/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java index 788a39b..7acc07d 100644 --- a/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java +++ b/src/test/java/org/codehaus/plexus/digest/DigestUtilsTest.java @@ -20,38 +20,30 @@ import static org.junit.jupiter.api.Assertions.assertEquals; -class DigestUtilsTest -{ +class DigestUtilsTest { /** SHA1 checksum from www.ibiblio.org/maven2, incuding file path */ private static final String SERVLETAPI_SHA1 = "bcc82975c0f9c681fcb01cc38504c992553e93ba"; @Test - void cleanChecksum() - throws DigesterException - { + void cleanChecksum() throws DigesterException { String expected = SERVLETAPI_SHA1 - + " /home/projects/maven/repository-staging/to-ibiblio/maven2/servletapi/servletapi/2.4/servletapi-2.4.pom"; - - String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" ); - assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" ); + + " /home/projects/maven/repository-staging/to-ibiblio/maven2/servletapi/servletapi/2.4/servletapi-2.4.pom"; + String s = DigestUtils.cleanChecksum(expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom"); + assertEquals(SERVLETAPI_SHA1, s, "Checksum doesn't match"); } @Test - void cleanChecksumAltDash1() - throws DigesterException - { + void cleanChecksumAltDash1() throws DigesterException { String expected = SERVLETAPI_SHA1 + " -"; - String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" ); - assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" ); + String s = DigestUtils.cleanChecksum(expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom"); + assertEquals(SERVLETAPI_SHA1, s, "Checksum doesn't match"); } @Test - void cleanChecksumAltDash2() - throws DigesterException - { + void cleanChecksumAltDash2() throws DigesterException { String expected = "SHA1(-)=" + SERVLETAPI_SHA1; - String s = DigestUtils.cleanChecksum( expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom" ); - assertEquals( SERVLETAPI_SHA1, s, "Checksum doesn't match" ); + String s = DigestUtils.cleanChecksum(expected, "SHA1", "servletapi/servletapi/2.4/servletapi-2.4.pom"); + assertEquals(SERVLETAPI_SHA1, s, "Checksum doesn't match"); } } diff --git a/src/test/java/org/codehaus/plexus/digest/DigesterTest.java b/src/test/java/org/codehaus/plexus/digest/DigesterTest.java index 515957e..5d38f67 100644 --- a/src/test/java/org/codehaus/plexus/digest/DigesterTest.java +++ b/src/test/java/org/codehaus/plexus/digest/DigesterTest.java @@ -16,14 +16,15 @@ * limitations under the License. */ -import org.codehaus.plexus.testing.PlexusTest; -import org.junit.jupiter.api.Test; - import javax.inject.Inject; import javax.inject.Named; + import java.io.File; import java.util.Objects; +import org.codehaus.plexus.testing.PlexusTest; +import org.junit.jupiter.api.Test; + import static org.junit.jupiter.api.Assertions.*; /** @@ -32,8 +33,7 @@ * @author Brett Porter */ @PlexusTest -class DigesterTest -{ +class DigesterTest { private static final String MD5 = "adbc688ce77fa2aece4bb72cad9f98ba"; private static final String SHA1 = "2a7b459938e12a2dc35d1bf6cff35e9c2b592fa9"; @@ -42,26 +42,26 @@ class DigesterTest private static final String WRONG_SHA1 = "4d8703779816556cdb8be7f6bb5c954f4b5730e2"; - private final File file = new File(Objects.requireNonNull(getClass().getResource("/test-file.txt")).getPath()); + private final File file = new File( + Objects.requireNonNull(getClass().getResource("/test-file.txt")).getPath()); @Inject - @Named( "sha1" ) + @Named("sha1") private Digester sha1Digest; @Inject - @Named( "sha256" ) + @Named("sha256") private Digester sha256Digest; @Inject - @Named( "md5" ) + @Named("md5") private Digester md5Digest; @Test - void algorithm() - { - assertEquals( "SHA-256", sha256Digest.getAlgorithm() ); - assertEquals( "SHA-1", sha1Digest.getAlgorithm() ); - assertEquals( "MD5", md5Digest.getAlgorithm() ); + void algorithm() { + assertEquals("SHA-256", sha256Digest.getAlgorithm()); + assertEquals("SHA-1", sha1Digest.getAlgorithm()); + assertEquals("MD5", md5Digest.getAlgorithm()); } @Test @@ -71,74 +71,104 @@ void md5DigestFormat() { @Test void sha1DigestFormat() { - assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 ), "Bare format SHA1 must not throw exception" ); + assertDoesNotThrow(() -> sha1Digest.verify(file, SHA1), "Bare format SHA1 must not throw exception"); } @Test void wrongSha1DigestFormat() { - assertThrows( DigesterException.class, () -> sha1Digest.verify( file, WRONG_SHA1 ), "Wrong SHA1 must throw exception" ); + assertThrows( + DigesterException.class, () -> sha1Digest.verify(file, WRONG_SHA1), "Wrong SHA1 must throw exception"); } @Test void sha256DigestFormat() { - assertDoesNotThrow( () -> sha256Digest.verify( file , SHA256 ), "Bare format SHA256 must not throw exception" ); + assertDoesNotThrow(() -> sha256Digest.verify(file, SHA256), "Bare format SHA256 must not throw exception"); } @Test void opensslDigestMd5Format() { - assertDoesNotThrow( () -> md5Digest.verify( file, "MD5(test-file.txt)= " + MD5 ), "OpenSSL MD5 format must not cause exception" ); + assertDoesNotThrow( + () -> md5Digest.verify(file, "MD5(test-file.txt)= " + MD5), + "OpenSSL MD5 format must not cause exception"); - assertDoesNotThrow( () -> md5Digest.verify( file, "MD5 (test-file.txt) = " + MD5 ), "FreeBSD MD5 format must not cause exception" ); + assertDoesNotThrow( + () -> md5Digest.verify(file, "MD5 (test-file.txt) = " + MD5), + "FreeBSD MD5 format must not cause exception"); } @Test void opensslDigestSha1Format() { - assertDoesNotThrow( () -> sha1Digest.verify( file, "SHA1 (test-file.txt) = " + SHA1 ), "FreeBSD SHA1 format must not cause exception"); - - assertThrows( DigesterException.class, - () -> sha1Digest.verify( file, "SHA1 (FOO) = " + SHA1 ), "Wrong filename must throw exception"); - - assertThrows( DigesterException.class, - () -> sha1Digest.verify( file, "SHA1 (test-file.txt) = " + WRONG_SHA1 ), "Wrong SHA1 must throw exception" ); + assertDoesNotThrow( + () -> sha1Digest.verify(file, "SHA1 (test-file.txt) = " + SHA1), + "FreeBSD SHA1 format must not cause exception"); + + assertThrows( + DigesterException.class, + () -> sha1Digest.verify(file, "SHA1 (FOO) = " + SHA1), + "Wrong filename must throw exception"); + + assertThrows( + DigesterException.class, + () -> sha1Digest.verify(file, "SHA1 (test-file.txt) = " + WRONG_SHA1), + "Wrong SHA1 must throw exception"); } @Test void opensslDigestSha256Format() { - assertDoesNotThrow( () -> sha256Digest.verify( file, "SHA256(test-file.txt) = " + SHA256 ), "FreeBSD SHA256 format must not cause exception" ); - - assertThrows( DigesterException.class, - () -> sha256Digest.verify( file, "SHA256(FOO) = " + SHA256 ), "Wrong filename must throw exception" ); + assertDoesNotThrow( + () -> sha256Digest.verify(file, "SHA256(test-file.txt) = " + SHA256), + "FreeBSD SHA256 format must not cause exception"); + + assertThrows( + DigesterException.class, + () -> sha256Digest.verify(file, "SHA256(FOO) = " + SHA256), + "Wrong filename must throw exception"); } @Test void gnuDigestMd5Format() { - assertDoesNotThrow( () -> md5Digest.verify( file, MD5 + " *test-file.txt" ), "GNU format MD5 must not cause exception" ); + assertDoesNotThrow( + () -> md5Digest.verify(file, MD5 + " *test-file.txt"), "GNU format MD5 must not cause exception"); - assertDoesNotThrow( () -> md5Digest.verify( file, MD5 + " test-file.txt" ), "GNU text format MD5 must not cause exception" ); + assertDoesNotThrow( + () -> md5Digest.verify(file, MD5 + " test-file.txt"), "GNU text format MD5 must not cause exception"); } @Test void gnuDigestSha1Format() { - assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " *test-file.txt" ), "GNU format SHA1 must not cause exception"); - - assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " test-file.txt" ), "GNU text format SHA1 must not cause exception"); - - assertThrows( DigesterException.class, - () -> sha1Digest.verify( file, SHA1 + " FOO" ), "Wrong filename must throw exception" ); - - assertThrows( DigesterException.class, - () -> sha1Digest.verify( file, WRONG_SHA1 + " test-file.txt" ), "Wrong SHA1 must throw exception" ); + assertDoesNotThrow( + () -> sha1Digest.verify(file, SHA1 + " *test-file.txt"), "GNU format SHA1 must not cause exception"); + + assertDoesNotThrow( + () -> sha1Digest.verify(file, SHA1 + " test-file.txt"), + "GNU text format SHA1 must not cause exception"); + + assertThrows( + DigesterException.class, + () -> sha1Digest.verify(file, SHA1 + " FOO"), + "Wrong filename must throw exception"); + + assertThrows( + DigesterException.class, + () -> sha1Digest.verify(file, WRONG_SHA1 + " test-file.txt"), + "Wrong SHA1 must throw exception"); } @Test void gnuDigestSha256Format() { - assertDoesNotThrow( () -> sha256Digest.verify( file, SHA256 + " *test-file.txt" ), "GNU format SHA256 must not cause exception" ); + assertDoesNotThrow( + () -> sha256Digest.verify(file, SHA256 + " *test-file.txt"), + "GNU format SHA256 must not cause exception"); - assertDoesNotThrow( () -> sha256Digest.verify( file, SHA256 + " test-file.txt" ), "GNU text format SHA256 must not cause exception" ); + assertDoesNotThrow( + () -> sha256Digest.verify(file, SHA256 + " test-file.txt"), + "GNU text format SHA256 must not cause exception"); } @Test void untrimmedContent() { - assertDoesNotThrow( () -> sha1Digest.verify( file, SHA1 + " *test-file.txt \n" ), "GNU untrimmed SHA1 must not cause exception" ); + assertDoesNotThrow( + () -> sha1Digest.verify(file, SHA1 + " *test-file.txt \n"), + "GNU untrimmed SHA1 must not cause exception"); } }