aboutsummaryrefslogtreecommitdiff
path: root/common/shared/src/main/scala/Message.scala
diff options
context:
space:
mode:
Diffstat (limited to 'common/shared/src/main/scala/Message.scala')
-rw-r--r--common/shared/src/main/scala/Message.scala42
1 files changed, 0 insertions, 42 deletions
diff --git a/common/shared/src/main/scala/Message.scala b/common/shared/src/main/scala/Message.scala
deleted file mode 100644
index 84c733e..0000000
--- a/common/shared/src/main/scala/Message.scala
+++ /dev/null
@@ -1,42 +0,0 @@
-package triad
-
-import java.security.MessageDigest
-import java.time.Instant
-
-case class Message(content: String,
- author: String,
- timestamp: Instant = Instant.now()) {
-
- lazy val id: String = {
- val digest = MessageDigest.getInstance("SHA-256")
- digest.update(content.getBytes)
- digest.update(author.getBytes)
- digest.update((timestamp.getEpochSecond & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 8) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 16) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 24) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 32) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 40) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 48) & 0xff).toByte)
- digest.update(((timestamp.getEpochSecond >> 56) & 0xff).toByte)
- Message.bytesToHex(digest.digest())
- }
-
- def hashTags: Seq[String] =
- content.split("\\s").filter(_.startsWith("#")).map(_.drop(1))
-
-}
-
-object Message {
- private def bytesToHex(hash: Array[Byte]): String = {
- val hexString = new StringBuffer(hash.length * 2)
- var i = 0
- while (i < hash.length) {
- val hex = Integer.toHexString(0xff & hash(i))
- if (hex.length == 1) hexString.append('0')
- hexString.append(hex)
- i += 1
- }
- hexString.toString
- }
-}