/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1 * User agent: apibuilder app.apibuilder.io/apicollective/examples-graphql-users/0.0.1/play_2_6_controllers */ package io.apibuilder.examples.graphql.users.controllers import io.apibuilder.examples.graphql.users.models.json._ trait UsersController extends play.api.mvc.BaseController { sealed trait GetById extends Product with Serializable object GetById { final case class HTTP200(body: io.apibuilder.examples.graphql.users.models.User) extends GetById case object HTTP404 extends GetById final case class Undocumented(result: play.api.mvc.Result) extends GetById } def getById( request: play.api.mvc.Request[play.api.mvc.AnyContent], id: _root_.java.util.UUID ): scala.concurrent.Future[GetById] final def getById(id: _root_.java.util.UUID): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => getById(request, id) .map { case r: GetById.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case GetById.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: GetById.Undocumented => r.result }(defaultExecutionContext) } sealed trait Post extends Product with Serializable object Post { final case class HTTP201(body: io.apibuilder.examples.graphql.users.models.User) extends Post final case class HTTP422(body: Seq[String]) extends Post final case class Undocumented(result: play.api.mvc.Result) extends Post } def post( request: play.api.mvc.Request[io.apibuilder.examples.graphql.users.models.UserForm], body: io.apibuilder.examples.graphql.users.models.UserForm ): scala.concurrent.Future[Post] final def post(): play.api.mvc.Action[io.apibuilder.examples.graphql.users.models.UserForm] = Action.async(parse.json[io.apibuilder.examples.graphql.users.models.UserForm]) { request => post(request, request.body) .map { case r: Post.HTTP201 => Status(201)(play.api.libs.json.Json.toJson(r.body)) case r: Post.HTTP422 => Status(422)(play.api.libs.json.Json.toJson(r.body)) case r: Post.Undocumented => r.result }(defaultExecutionContext) } sealed trait Patch extends Product with Serializable object Patch { final case class HTTP200(body: io.apibuilder.examples.graphql.users.models.User) extends Patch final case class HTTP422(body: Seq[String]) extends Patch final case class Undocumented(result: play.api.mvc.Result) extends Patch } def patch( request: play.api.mvc.Request[io.apibuilder.examples.graphql.users.models.UserPatchForm], body: io.apibuilder.examples.graphql.users.models.UserPatchForm ): scala.concurrent.Future[Patch] final def patch(): play.api.mvc.Action[io.apibuilder.examples.graphql.users.models.UserPatchForm] = Action.async(parse.json[io.apibuilder.examples.graphql.users.models.UserPatchForm]) { request => patch(request, request.body) .map { case r: Patch.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: Patch.HTTP422 => Status(422)(play.api.libs.json.Json.toJson(r.body)) case r: Patch.Undocumented => r.result }(defaultExecutionContext) } sealed trait DeleteById extends Product with Serializable object DeleteById { case object HTTP204 extends DeleteById case object HTTP404 extends DeleteById final case class Undocumented(result: play.api.mvc.Result) extends DeleteById } def deleteById( request: play.api.mvc.Request[play.api.mvc.AnyContent], id: _root_.java.util.UUID ): scala.concurrent.Future[DeleteById] final def deleteById(id: _root_.java.util.UUID): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => deleteById(request, id) .map { case DeleteById.HTTP204 => Status(204)(play.api.mvc.Results.EmptyContent()) case DeleteById.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: DeleteById.Undocumented => r.result }(defaultExecutionContext) } }