/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1-dev * User agent: apibuilder app.apibuilder.io/shopr/clickouts-api/0.0.1-dev/play_2_9_scala_3_controllers */ package com.shopr.api.clickouts.api.v0.controllers import com.shopr.api.clickouts.api.v0.models.json._ trait ClickoutsController extends play.api.mvc.BaseController { sealed trait Post extends Product with Serializable object Post { final case class HTTP202(body: String) extends Post final case class HTTP422(body: Seq[com.shopr.api.clickouts.api.v0.models.ErrorResponse]) extends Post final case class Undocumented(result: play.api.mvc.Result) extends Post } def post( request: play.api.mvc.Request[com.shopr.api.clickouts.api.v0.models.Clickout], fingerprint: String, body: com.shopr.api.clickouts.api.v0.models.Clickout ): scala.concurrent.Future[Post] final def post(fingerprint: String): play.api.mvc.Action[com.shopr.api.clickouts.api.v0.models.Clickout] = Action.async(parse.json[com.shopr.api.clickouts.api.v0.models.Clickout]) { request => post(request, fingerprint, request.body) .map { case r: Post.HTTP202 => Status(202)(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) } } trait StatusesController extends play.api.mvc.BaseController { sealed trait GetPing extends Product with Serializable object GetPing { final case class HTTP200(body: com.shopr.api.clickouts.api.v0.models.Status) extends GetPing final case class Undocumented(result: play.api.mvc.Result) extends GetPing } def getPing(request: play.api.mvc.Request[play.api.mvc.AnyContent]): scala.concurrent.Future[GetPing] final def getPing(): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => getPing(request) .map { case r: GetPing.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: GetPing.Undocumented => r.result }(defaultExecutionContext) } sealed trait GetStatus extends Product with Serializable object GetStatus { final case class HTTP200(body: com.shopr.api.clickouts.api.v0.models.Status) extends GetStatus final case class Undocumented(result: play.api.mvc.Result) extends GetStatus } def getStatus(request: play.api.mvc.Request[play.api.mvc.AnyContent]): scala.concurrent.Future[GetStatus] final def getStatus(): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => getStatus(request) .map { case r: GetStatus.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: GetStatus.Undocumented => r.result }(defaultExecutionContext) } sealed trait GetVersion extends Product with Serializable object GetVersion { final case class HTTP200(body: String) extends GetVersion final case class Undocumented(result: play.api.mvc.Result) extends GetVersion } def getVersion(request: play.api.mvc.Request[play.api.mvc.AnyContent]): scala.concurrent.Future[GetVersion] final def getVersion(): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => getVersion(request) .map { case r: GetVersion.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: GetVersion.Undocumented => r.result }(defaultExecutionContext) } }