/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1-dev * User agent: apibuilder app.apibuilder.io/natalia/favorite-places/0.0.1-dev/play_2_9_scala_3_controllers */ package natalia.favorite.places.v0.controllers import natalia.favorite.places.v0.models.json._ trait PlacesController extends play.api.mvc.BaseController { sealed trait Get extends Product with Serializable object Get { final case class HTTP200(body: Seq[natalia.favorite.places.v0.models.Place]) extends Get final case class Undocumented(result: play.api.mvc.Result) extends Get } def get(request: play.api.mvc.Request[play.api.mvc.AnyContent]): scala.concurrent.Future[Get] final def get(): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => get(request) .map { case r: Get.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: Get.Undocumented => r.result }(defaultExecutionContext) } sealed trait Put extends Product with Serializable object Put { case object HTTP201 extends Put final case class Undocumented(result: play.api.mvc.Result) extends Put } def put( request: play.api.mvc.Request[natalia.favorite.places.v0.models.Place], body: natalia.favorite.places.v0.models.Place ): scala.concurrent.Future[Put] final def put(): play.api.mvc.Action[natalia.favorite.places.v0.models.Place] = Action.async(parse.json[natalia.favorite.places.v0.models.Place]) { request => put(request, request.body) .map { case Put.HTTP201 => Status(201)(play.api.mvc.Results.EmptyContent()) case r: Put.Undocumented => r.result }(defaultExecutionContext) } }