diff --git a/pom.xml b/pom.xml
index daefa756..6fe5e4a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,14 +46,14 @@
repo.jenkins-ci.org
- http://repo.jenkins-ci.org/public/
+ https://repo.jenkins-ci.org/public/
repo.jenkins-ci.org
- http://repo.jenkins-ci.org/public/
+ https://repo.jenkins-ci.org/public/
diff --git a/src/main/java/hudson/plugins/scm_sync_configuration/utils/Checksums.java b/src/main/java/hudson/plugins/scm_sync_configuration/utils/Checksums.java
index c66ae455..c3a98306 100644
--- a/src/main/java/hudson/plugins/scm_sync_configuration/utils/Checksums.java
+++ b/src/main/java/hudson/plugins/scm_sync_configuration/utils/Checksums.java
@@ -1,11 +1,10 @@
package hudson.plugins.scm_sync_configuration.utils;
-import com.google.common.io.ByteStreams;
-import com.google.common.io.Files;
-
import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
import java.util.zip.CRC32;
+import java.util.zip.CheckedInputStream;
import java.util.zip.Checksum;
/**
@@ -13,14 +12,33 @@
* Utility class allowing to provide easy access to jenkins files checksums
*/
public class Checksums {
+
+ private static final int BUF_SIZE = 0x1000; // 4K
+
public static boolean fileAndByteArrayContentAreEqual(File file, byte[] content) throws IOException {
if(!file.exists()){
return content == null || content.length == 0;
}
+ long fileChecksum;
+ CheckedInputStream in = null;
+ try {
+ in = new CheckedInputStream(new FileInputStream(file), createChecksum());
+ byte[] buffer = new byte[BUF_SIZE];
+ while (in.read(buffer, 0, buffer.length) >= 0) {
+ // keep updating checksum
+ }
+ fileChecksum = in.getChecksum().getValue();
+ } finally {
+ if (in != null) {
+ in.close();
+ }
+ }
+
Checksum checksum = createChecksum();
- long fileChecksum = Files.getChecksum(file, checksum);
- long contentChecksum = ByteStreams.getChecksum(ByteStreams.newInputStreamSupplier(content), checksum);
+ checksum.update(content, 0, content.length);
+ long contentChecksum = checksum.getValue();
+
return fileChecksum == contentChecksum;
}