UNPKG

riof

Version:

Rio framework

40 lines (33 loc) 1.18 kB
import { Rio, RioClass, RioClassConstructor, RioMethod, RioMethodError, RioMethodModelType, RioMethodRequest } from "riof"; import {GetStockInputModel, GetStockOutput} from "./models"; @RioClass({description: 'awesome class', accelerated: true}) export class Product extends Rio { constructor(instance?: RioClassConstructor) { super(instance); } @RioMethod({type: 'READ', inputModel: GetStockInputModel, outputModel: GetStockOutput}) async getStock(request: RioMethodRequest<RioMethodModelType<typeof GetStockInputModel>>): Promise<RioMethodModelType<typeof GetStockOutput>> { if (request.body?.storeId === 'fd') { throw new RioMethodError({code: '44', message: 'error detail'}); } return { stock: 2 } } @RioMethod({type: 'READ', inputModel: GetStockInputModel, outputModel: GetStockOutput}) async checkStock(request: RioMethodRequest<RioMethodModelType<typeof GetStockInputModel>>): Promise<RioMethodModelType<typeof GetStockOutput>> { return await this.getStock({ body: { storeId: '123' } }) } }