/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.2 * User agent: apibuilder app.apibuilder.io/hbc/api-fraud/0.0.2/play_2_9_scala_3_controllers */ package com.hbc.api.fraud.v0.controllers import com.hbc.api.fraud.v0.models.json._ trait DecisionsController extends play.api.mvc.BaseController { sealed trait Post extends Product with Serializable object Post { case object HTTP200 extends Post final case class HTTP400(body: Seq[com.hbc.api.fraud.v0.models.Error]) extends Post final case class Undocumented(result: play.api.mvc.Result) extends Post } def post( request: play.api.mvc.Request[com.hbc.api.fraud.v0.models.Decision], body: com.hbc.api.fraud.v0.models.Decision ): scala.concurrent.Future[Post] final def post(): play.api.mvc.Action[com.hbc.api.fraud.v0.models.Decision] = Action.async(parse.json[com.hbc.api.fraud.v0.models.Decision]) { request => post(request, request.body) .map { case Post.HTTP200 => Status(200)(play.api.mvc.Results.EmptyContent()) case r: Post.HTTP400 => Status(400)(play.api.libs.json.Json.toJson(r.body)) case r: Post.Undocumented => r.result }(defaultExecutionContext) } } trait TransactionsController extends play.api.mvc.BaseController { sealed trait Post extends Product with Serializable object Post { final case class HTTP200(body: com.hbc.api.fraud.v0.models.Decision) extends Post final case class HTTP400(body: Seq[com.hbc.api.fraud.v0.models.Error]) extends Post final case class Undocumented(result: play.api.mvc.Result) extends Post } def post( request: play.api.mvc.Request[com.hbc.api.fraud.v0.models.Transaction], body: com.hbc.api.fraud.v0.models.Transaction ): scala.concurrent.Future[Post] final def post(): play.api.mvc.Action[com.hbc.api.fraud.v0.models.Transaction] = Action.async(parse.json[com.hbc.api.fraud.v0.models.Transaction]) { request => post(request, request.body) .map { case r: Post.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case r: Post.HTTP400 => Status(400)(play.api.libs.json.Json.toJson(r.body)) case r: Post.Undocumented => r.result }(defaultExecutionContext) } }