diff --git a/src/main/scala/lc/core/models.scala b/src/main/scala/lc/core/models.scala index 83835a2..b06a1aa 100644 --- a/src/main/scala/lc/core/models.scala +++ b/src/main/scala/lc/core/models.scala @@ -1,13 +1,16 @@ package lc.core -sealed trait ChallengeResult +import org.json4s.jackson.Serialization.write +import lc.core.Config.formats + +trait ByteConvert { def toBytes(): Array[Byte] } case class Size(height: Int, width: Int) case class Parameters(level: String, media: String, input_type: String, size: Option[Size]) -case class Id(id: String) extends ChallengeResult -case class Image(image: Array[Byte]) extends ChallengeResult +case class Id(id: String) extends ByteConvert { def toBytes(): Array[Byte] = { write(this).getBytes } } +case class Image(image: Array[Byte]) extends ByteConvert { def toBytes(): Array[Byte] = { image } } case class Answer(answer: String, id: String) -case class Result(result: String) extends ChallengeResult -case class Error(message: String) extends ChallengeResult +case class Success(result: String) extends ByteConvert { def toBytes(): Array[Byte] = { write(this).getBytes } } +case class Error(message: String) extends ByteConvert { def toBytes(): Array[Byte] = { write(this).getBytes } } case class Response(statusCode: Int, message: Array[Byte]) case class CaptchaConfig( name: String,