/** * Generated by API Builder - https://www.apibuilder.io * Service version: 1.0.1 * User agent: apibuilder app.apibuilder.io/nashtech/order/1.0.1/play_2_9_scala_3_controllers */ package com.nashtech.order.v1.controllers import com.nashtech.order.v1.models.json._ import io.apibuilder.common.v0.models.json._ import io.apibuilder.generator.v0.models.json._ trait OrdersController extends play.api.mvc.BaseController { sealed trait GetByNumber extends Product with Serializable object GetByNumber { final case class HTTP200(body: com.nashtech.order.v1.models.Order) extends GetByNumber case object HTTP401 extends GetByNumber case object HTTP404 extends GetByNumber final case class Undocumented(result: play.api.mvc.Result) extends GetByNumber } def getByNumber( request: play.api.mvc.Request[play.api.mvc.AnyContent], merchantId: String, number: String ): scala.concurrent.Future[GetByNumber] final def getByNumber(merchantId: String, number: String): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => getByNumber(request, merchantId, number) .map { case r: GetByNumber.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case GetByNumber.HTTP401 => Status(401)(play.api.mvc.Results.EmptyContent()) case GetByNumber.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: GetByNumber.Undocumented => r.result }(defaultExecutionContext) } sealed trait Post extends Product with Serializable object Post { final case class HTTP200(body: com.nashtech.order.v1.models.Order) extends Post case object HTTP401 extends Post case object HTTP404 extends Post final case class HTTP422(body: com.nashtech.order.v1.models.Error) extends Post final case class Undocumented(result: play.api.mvc.Result) extends Post } def post( request: play.api.mvc.Request[com.nashtech.order.v1.models.OrderForm], merchantId: String, body: com.nashtech.order.v1.models.OrderForm ): scala.concurrent.Future[Post] final def post(merchantId: String): play.api.mvc.Action[com.nashtech.order.v1.models.OrderForm] = Action.async(parse.json[com.nashtech.order.v1.models.OrderForm]) { request => post(request, merchantId, request.body) .map { case r: Post.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case Post.HTTP401 => Status(401)(play.api.mvc.Results.EmptyContent()) case Post.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: Post.HTTP422 => Status(422)(play.api.libs.json.Json.toJson(r.body)) case r: Post.Undocumented => r.result }(defaultExecutionContext) } sealed trait PutByNumber extends Product with Serializable object PutByNumber { final case class HTTP200(body: com.nashtech.order.v1.models.Order) extends PutByNumber case object HTTP401 extends PutByNumber case object HTTP404 extends PutByNumber final case class HTTP422(body: com.nashtech.order.v1.models.Error) extends PutByNumber final case class Undocumented(result: play.api.mvc.Result) extends PutByNumber } def putByNumber( request: play.api.mvc.Request[com.nashtech.order.v1.models.OrderForm], merchantId: String, number: String, body: com.nashtech.order.v1.models.OrderForm ): scala.concurrent.Future[PutByNumber] final def putByNumber( merchantId: String, number: String ): play.api.mvc.Action[com.nashtech.order.v1.models.OrderForm] = Action.async(parse.json[com.nashtech.order.v1.models.OrderForm]) { request => putByNumber(request, merchantId, number, request.body) .map { case r: PutByNumber.HTTP200 => Status(200)(play.api.libs.json.Json.toJson(r.body)) case PutByNumber.HTTP401 => Status(401)(play.api.mvc.Results.EmptyContent()) case PutByNumber.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: PutByNumber.HTTP422 => Status(422)(play.api.libs.json.Json.toJson(r.body)) case r: PutByNumber.Undocumented => r.result }(defaultExecutionContext) } sealed trait Delete extends Product with Serializable object Delete { case object HTTP200 extends Delete case object HTTP401 extends Delete case object HTTP404 extends Delete final case class HTTP422(body: com.nashtech.order.v1.models.Error) extends Delete final case class Undocumented(result: play.api.mvc.Result) extends Delete } def delete( request: play.api.mvc.Request[play.api.mvc.AnyContent], merchantId: String ): scala.concurrent.Future[Delete] final def delete(merchantId: String): play.api.mvc.Action[play.api.mvc.AnyContent] = Action.async { request => delete(request, merchantId) .map { case Delete.HTTP200 => Status(200)(play.api.mvc.Results.EmptyContent()) case Delete.HTTP401 => Status(401)(play.api.mvc.Results.EmptyContent()) case Delete.HTTP404 => Status(404)(play.api.mvc.Results.EmptyContent()) case r: Delete.HTTP422 => Status(422)(play.api.libs.json.Json.toJson(r.body)) case r: Delete.Undocumented => r.result }(defaultExecutionContext) } }