UNPKG

trader-server

Version:

OData server for testing strategies, simulating and real trading.

33 lines 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const odata = require("./odata"); const odata_1 = require("./odata"); const utils_1 = require("./utils"); class ODataControllerBase { static on(method, fn, ...keys) { let fnName = (fn.name || fn); odata.method(method)(this.prototype, fnName); if (keys && keys.length > 0) { fn = this.prototype[fnName]; let parameterNames = utils_1.getFunctionParameters(fn); keys.forEach((key) => { odata.key(this.prototype, fnName, parameterNames.indexOf(key)); }); } } /** Enables the filtering * @param fn * @param param */ static enableFilter(fn, param) { let fnName = (fn.name || fn); fn = this.prototype[fnName]; let parameterNames = utils_1.getFunctionParameters(fn); odata.filter(this.prototype, fnName, parameterNames.indexOf(param || parameterNames[0])); } } exports.ODataControllerBase = ODataControllerBase; class ODataController extends odata_1.ODataBase(ODataControllerBase) { } exports.ODataController = ODataController; //# sourceMappingURL=controller.js.map