UNPKG

rocket.chat.mqtt

Version:

It's a MQTT Server, using redis to scale horizontally.

34 lines (29 loc) 805 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.Router = undefined; var _routeParser = require('route-parser'); var _routeParser2 = _interopRequireDefault(_routeParser); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class Router { constructor() { this.routes = []; } add(path, cb) { this.routes.push([new _routeParser2.default(path), cb]); } async validate(client, sub, models) { const { routes } = this; for (let index = 0; index < routes.length; index++) { const [path, method] = routes[index]; const tmp = path.match(sub.topic); if (tmp && (await method(client, sub, tmp, models))) { return true; } } return false; } } exports.Router = Router; exports.default = new Router();