git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorSweidan Omar <TFS\sweidan.omar>
Mon, 13 Dec 2021 15:12:08 +0000 (15:12 +0000)
committerSweidan Omar <TFS\sweidan.omar>
Mon, 13 Dec 2021 15:12:08 +0000 (15:12 +0000)
server/-product/production/LOCAL/jobs/steps/CalculateMD5Step.java
server/user.jobengine.executors/src/user/jobengine/server/steps/CalculateMD5Step.java

index 94543db90e2dbbd3ec67477dd0091583a06d6adf..ef72b09a70b37867607e2cbabd79a7926315f1ca 100644 (file)
@@ -1,7 +1,9 @@
 package user.jobengine.server.steps;\r
 \r
+import java.io.InputStream;\r
 import java.nio.file.Files;\r
 import java.nio.file.Paths;\r
+import java.security.DigestInputStream;\r
 import java.security.MessageDigest;\r
 \r
 import javax.xml.bind.DatatypeConverter;\r
@@ -19,8 +21,14 @@ public class CalculateMD5Step extends JobStep {
 //             logger.info(new MediaCubeMarker("vasary@elgekko.net,vasary@gmail.com", "MediaCube rendszerüzenet"), msg);\r
 \r
                MessageDigest messageDigest = MessageDigest.getInstance("MD5");\r
-               messageDigest.update(Files.readAllBytes(Paths.get(fileName)));\r
-               byte[] digest = messageDigest.digest();\r
+               InputStream is = Files.newInputStream(Paths.get(fileName));\r
+               DigestInputStream dis = new DigestInputStream(is, messageDigest);\r
+               byte[] digest = new byte[1024];\r
+\r
+               while ((dis.read(digest)) != -1) {\r
+                       messageDigest.update(digest);\r
+               }\r
+\r
                String md5String = DatatypeConverter.printHexBinary(digest).toUpperCase();\r
                logger.info("calculated MD5 hash= {}", md5String);\r
                return new Object[] { md5String };\r
index 2e8a263ccf2a0e59389c251d16dd5d033343d150..ef72b09a70b37867607e2cbabd79a7926315f1ca 100644 (file)
@@ -1,7 +1,9 @@
 package user.jobengine.server.steps;\r
 \r
+import java.io.InputStream;\r
 import java.nio.file.Files;\r
 import java.nio.file.Paths;\r
+import java.security.DigestInputStream;\r
 import java.security.MessageDigest;\r
 \r
 import javax.xml.bind.DatatypeConverter;\r
@@ -18,13 +20,15 @@ public class CalculateMD5Step extends JobStep {
 //             Message msg = new ParameterizedMessage("");\r
 //             logger.info(new MediaCubeMarker("vasary@elgekko.net,vasary@gmail.com", "MediaCube rendszerüzenet"), msg);\r
 \r
-               // 00 fa 10 21 bc\r
+               MessageDigest messageDigest = MessageDigest.getInstance("MD5");\r
+               InputStream is = Files.newInputStream(Paths.get(fileName));\r
+               DigestInputStream dis = new DigestInputStream(is, messageDigest);\r
+               byte[] digest = new byte[1024];\r
 \r
-               // "00 fa 10 21 bc"\r
+               while ((dis.read(digest)) != -1) {\r
+                       messageDigest.update(digest);\r
+               }\r
 \r
-               MessageDigest messageDigest = MessageDigest.getInstance("MD5");\r
-               messageDigest.update(Files.readAllBytes(Paths.get(fileName)));\r
-               byte[] digest = messageDigest.digest();\r
                String md5String = DatatypeConverter.printHexBinary(digest).toUpperCase();\r
                logger.info("calculated MD5 hash= {}", md5String);\r
                return new Object[] { md5String };\r