Skip to content

play json serialisers #1

@prayagupa

Description

@prayagupa

Play Serialisers

scala> import play.api.libs.json.Json._
import play.api.libs.json.Json._

scala> import play.api.libs.json._
import play.api.libs.json._

scala> final case class Android(name: String, version: String)
defined class Android

scala> final case class AiResponse[T](body: T)
defined class AiResponse

scala> implicit val androidFormat: Format[Android] = Json.format[Android]
androidFormat: play.api.libs.json.Format[Android] = play.api.libs.json.OFormat$$anon$1@2cb66c68

scala> val androidAiResponseFormat = Json.format[AiResponse[Android]]
androidAiResponseFormat: play.api.libs.json.OFormat[AiResponse[Android]] = play.api.libs.json.OFormat$$anon$1@704adf36

Serialisation

scala> Json.toJson(AiResponse(body = Android(name = "android", version = "1.0")))
res1: play.api.libs.json.JsValue = {"body":{"name":"android","version":"1.0"}}

Deserialisation

scala> Json.fromJson[AiResponse[Android]](Json.parse("""{"body":{"name":"android","version":"1.0"}}"""))
res3: play.api.libs.json.JsResult[AiResponse[Android]] = JsSuccess(AiResponse(Android(android,1.0)),)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions