We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 7b7dfd0 commit 481d60aCopy full SHA for 481d60a
app/models/domain/storj/FarmerProfile.scala
@@ -0,0 +1,22 @@
1
+package models.domain.storj
2
+
3
+import play.api.libs.json._
4
5
+case class FarmerProfile(created: String, farmerId: String, failureRate: Option[Double])
6
7
+object FarmerProfile {
8
+ implicit val FarmerProfileReads = new Reads[FarmerProfile] {
9
+ def reads(json: JsValue): JsResult[FarmerProfile] = json match {
10
+ case obj: JsObject => try {
11
+ val created = (obj \ "created").as[String]
12
+ val farmerId = (obj \ "farmerId").as[String]
13
+ val failureRate = (obj \\ "failureRate").asOpt[Double]
14
15
+ JsSuccess(FarmerProfile(created, farmerId, failureRate))
16
+ } catch {
17
+ case err: Throwable => JsError(err.getMessage)
18
+ }
19
20
21
+ implicit val FarmerProfileWrites: OWrites[FarmerProfile] = Json.writes[FarmerProfile]
22
+}
0 commit comments