UNPKG

deepify

Version:
84 lines (66 loc) 1.62 kB
/** * Created by AlexanderC on 3/11/16. */ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.AbstractListener = undefined; var _url = require('url'); var _url2 = _interopRequireDefault(_url); var _path = require('path'); var _path2 = _interopRequireDefault(_path); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class AbstractListener { /** * @param {Instance|Server|*} server */ constructor(server = null) { this._server = server; } /** * @returns {Instance} */ get server() { return this._server; } /** * * @param {Instance} server */ set server(server) { this._server = server; } /** * * @param {String} url * @returns {String} */ getUri(url) { let urlParts = _url2.default.parse(url); return urlParts.pathname; } /** * @param {String} uri * @returns {String} * @private */ _resolveMicroservice(uri) { let parts = uri.replace(/^\/(.+)$/, '$1').split('/'); let microservices = this.server.microservices; if (parts.length > 0) { for (let identifier in microservices) { if (!microservices.hasOwnProperty(identifier)) { continue; } if (identifier === parts[0]) { let microservice = microservices[identifier]; parts.shift(); return _path2.default.join(microservice.frontend, ...parts); } } } return _path2.default.join(this.server.rootMicroservice.frontend, ...parts); } } exports.AbstractListener = AbstractListener;