aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/util/uuid.kt
blob: 14aa83d336e2aa6e7a155d8a7b50219c28e3e2d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package moe.nea.firmament.util

import java.math.BigInteger
import java.util.UUID

fun parsePotentiallyDashlessUUID(unknownFormattedUUID: String): UUID {
	if ("-" in unknownFormattedUUID)
		return UUID.fromString(unknownFormattedUUID)
	return parseDashlessUUID(unknownFormattedUUID)
}

fun parseDashlessUUID(dashlessUuid: String): UUID {
	val most = BigInteger(dashlessUuid.substring(0, 16), 16)
	val least = BigInteger(dashlessUuid.substring(16, 32), 16)
	return UUID(most.toLong(), least.toLong())
}