xmt-base
Version:
Backend Server Framework of XmT Inc.
27 lines • 1.16 kB
JavaScript
;
const interface_1 = require("./interface");
function buildRunList(router, request, runList) {
recurseBuildRunList(router, request.method.toLowerCase(), request.xmt_parsedURL.pathname, runList);
}
exports.buildRunList = buildRunList;
function recurseBuildRunList(router, requestMethod, requestPathname, runList) {
let matchPath = router.xmt_absolutePath;
if (requestPathname.substring(0, matchPath.length) === matchPath) {
for (let serialItem of router.xmt_serialList) {
if (serialItem instanceof interface_1.Router) {
recurseBuildRunList(serialItem, requestMethod, requestPathname, runList);
}
else {
let task = serialItem;
if (task.xmt_httpMethod === "common") {
runList.push(task);
}
else if (requestPathname === router.xmt_absolutePath
&& (task.xmt_httpMethod === requestMethod || task.xmt_httpMethod === "all")) {
runList.push(task);
}
}
}
}
}
//# sourceMappingURL=runList.js.map