Coverage Summary for Class: Md5Hash (cloud.mindbox.mobile_sdk.monitoring.domain.models)
| Class |
Method, %
|
Branch, %
|
Line, %
|
Instruction, %
|
| Md5Hash |
100%
(1/1)
|
|
100%
(1/1)
|
100%
(6/6)
|
| Md5Hash$Companion |
100%
(2/2)
|
|
100%
(5/5)
|
100%
(36/36)
|
| Md5Hash$Companion$ofDeviceUuid$1 |
100%
(1/1)
|
|
100%
(1/1)
|
100%
(22/22)
|
| Total |
100%
(4/4)
|
|
100%
(7/7)
|
100%
(64/64)
|
package cloud.mindbox.mobile_sdk.monitoring.domain.models
import org.threeten.bp.ZonedDateTime
import java.security.MessageDigest
internal data class LogRequest(
val requestId: String,
val target: Md5Hash,
val from: ZonedDateTime,
val to: ZonedDateTime,
)
@JvmInline
internal value class Md5Hash private constructor(private val hex: String) {
companion object {
fun ofHex(hex: String): Md5Hash = Md5Hash(hex.lowercase())
fun ofDeviceUuid(deviceUuid: String): Md5Hash = Md5Hash(
MessageDigest.getInstance("MD5")
.digest(deviceUuid.lowercase().toByteArray(Charsets.UTF_8))
.joinToString(separator = "") { byte -> "%02x".format(byte) }
)
}
}