Skip to content

Commit d979519

Browse files
balazsgerleiMartinStyk
authored andcommitted
De-duplicate hash calculation methods in DigestManager
1 parent fcc870c commit d979519

1 file changed

Lines changed: 10 additions & 20 deletions

File tree

  • core/common/src/main/java/sk/styk/martin/apkanalyzer/core/common/digest

core/common/src/main/java/sk/styk/martin/apkanalyzer/core/common/digest/DigestManager.kt

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,13 @@ import javax.inject.Inject
88

99
class DigestManager @Inject constructor() {
1010

11-
fun md5Digest(input: ByteArray): String {
12-
val digest = getDigest("Md5")
13-
digest.update(input)
14-
return getHexString(digest.digest())
15-
}
11+
fun md5Digest(input: ByteArray): String = computeHash(algorithm = "Md5", input)
1612

17-
fun md5Digest(input: String): String {
18-
val digest = getDigest("Md5")
19-
digest.update(input.toByteArray())
20-
return getHexString(digest.digest())
21-
}
13+
fun md5Digest(input: String): String = md5Digest(input.toByteArray())
2214

23-
fun sha256Digest(input: ByteArray): String {
24-
val digest = getDigest("SHA-256")
25-
digest.update(input)
26-
return getHexString(digest.digest())
27-
}
15+
fun sha256Digest(input: ByteArray): String = computeHash(algorithm = "SHA-256", input)
2816

29-
fun sha256Digest(input: String): String {
30-
val digest = getDigest("SHA-256")
31-
digest.update(input.toByteArray())
32-
return getHexString(digest.digest())
33-
}
17+
fun sha256Digest(input: String): String = sha256Digest(input.toByteArray())
3418

3519
fun byteToHexString(bArray: ByteArray): String {
3620
val sb = StringBuilder(bArray.size)
@@ -61,4 +45,10 @@ class DigestManager @Inject constructor() {
6145
throw RuntimeException(e.message, e)
6246
}
6347
}
48+
49+
private fun computeHash(algorithm: String, input: ByteArray): String {
50+
val digest = getDigest(algorithm)
51+
digest.update(input)
52+
return getHexString(digest.digest())
53+
}
6454
}

0 commit comments

Comments
 (0)