UNPKG

webdriverio-automation

Version:

WebdriverIO-Automation android ios project

89 lines (62 loc) 8.02 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("source-map-support/register"); var _lruCache = _interopRequireDefault(require("lru-cache")); var _appiumSupport = require("appium-support"); var _driver = _interopRequireDefault(require("../basedriver/driver")); const GENERIC_PROTOCOL = 'GENERIC'; const mjsonwpLog = _appiumSupport.logger.getLogger('MJSONWP'); const w3cLog = _appiumSupport.logger.getLogger('W3C'); const genericProtocolLog = _appiumSupport.logger.getLogger(GENERIC_PROTOCOL); class SessionsCache { constructor(max) { this._cache = new _lruCache.default({ max }); } getLogger(sessionId, protocol) { if (sessionId) { if (this._cache.has(sessionId)) { const value = this._cache.get(sessionId); if (value.logger) { return value.logger; } protocol = protocol || value.protocol; } return _appiumSupport.logger.getLogger(`${protocol || GENERIC_PROTOCOL} ` + `(${sessionId.substring(0, Math.min(sessionId.length, 8))})`); } switch (protocol) { case _driver.default.DRIVER_PROTOCOL.W3C: return w3cLog; case _driver.default.DRIVER_PROTOCOL.MJSONWP: return mjsonwpLog; default: return genericProtocolLog; } } getProtocol(sessionId) { return (this._cache.get(sessionId) || {}).protocol; } putSession(sessionId, value) { if (sessionId && value) { this._cache.set(sessionId, { protocol: value, logger: this.getLogger(sessionId, value) }); } return value; } resetLogger(sessionId) { if (this._cache.has(sessionId)) { this._cache.get(sessionId).logger = null; } } } const SESSIONS_CACHE = new SessionsCache(100); var _default = SESSIONS_CACHE; exports.default = _default;require('source-map-support').install(); //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9wcm90b2NvbC9zZXNzaW9ucy1jYWNoZS5qcyJdLCJuYW1lcyI6WyJHRU5FUklDX1BST1RPQ09MIiwibWpzb253cExvZyIsImxvZ2dlciIsImdldExvZ2dlciIsInczY0xvZyIsImdlbmVyaWNQcm90b2NvbExvZyIsIlNlc3Npb25zQ2FjaGUiLCJjb25zdHJ1Y3RvciIsIm1heCIsIl9jYWNoZSIsIkxSVSIsInNlc3Npb25JZCIsInByb3RvY29sIiwiaGFzIiwidmFsdWUiLCJnZXQiLCJzdWJzdHJpbmciLCJNYXRoIiwibWluIiwibGVuZ3RoIiwiQmFzZURyaXZlciIsIkRSSVZFUl9QUk9UT0NPTCIsIlczQyIsIk1KU09OV1AiLCJnZXRQcm90b2NvbCIsInB1dFNlc3Npb24iLCJzZXQiLCJyZXNldExvZ2dlciIsIlNFU1NJT05TX0NBQ0hFIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUdBLE1BQU1BLGdCQUFnQixHQUFHLFNBQXpCOztBQUNBLE1BQU1DLFVBQVUsR0FBR0Msc0JBQU9DLFNBQVAsQ0FBaUIsU0FBakIsQ0FBbkI7O0FBQ0EsTUFBTUMsTUFBTSxHQUFHRixzQkFBT0MsU0FBUCxDQUFpQixLQUFqQixDQUFmOztBQUNBLE1BQU1FLGtCQUFrQixHQUFHSCxzQkFBT0MsU0FBUCxDQUFpQkgsZ0JBQWpCLENBQTNCOztBQUdBLE1BQU1NLGFBQU4sQ0FBb0I7QUFDbEJDLEVBQUFBLFdBQVcsQ0FBRUMsR0FBRixFQUFPO0FBQ2hCLFNBQUtDLE1BQUwsR0FBYyxJQUFJQyxpQkFBSixDQUFRO0FBQUVGLE1BQUFBO0FBQUYsS0FBUixDQUFkO0FBQ0Q7O0FBRURMLEVBQUFBLFNBQVMsQ0FBRVEsU0FBRixFQUFhQyxRQUFiLEVBQXVCO0FBQzlCLFFBQUlELFNBQUosRUFBZTtBQUNiLFVBQUksS0FBS0YsTUFBTCxDQUFZSSxHQUFaLENBQWdCRixTQUFoQixDQUFKLEVBQWdDO0FBQzlCLGNBQU1HLEtBQUssR0FBRyxLQUFLTCxNQUFMLENBQVlNLEdBQVosQ0FBZ0JKLFNBQWhCLENBQWQ7O0FBQ0EsWUFBSUcsS0FBSyxDQUFDWixNQUFWLEVBQWtCO0FBQ2hCLGlCQUFPWSxLQUFLLENBQUNaLE1BQWI7QUFDRDs7QUFDRFUsUUFBQUEsUUFBUSxHQUFHQSxRQUFRLElBQUlFLEtBQUssQ0FBQ0YsUUFBN0I7QUFDRDs7QUFJRCxhQUFPVixzQkFBT0MsU0FBUCxDQUFrQixHQUFFUyxRQUFRLElBQUlaLGdCQUFpQixHQUFoQyxHQUNyQixJQUFHVyxTQUFTLENBQUNLLFNBQVYsQ0FBb0IsQ0FBcEIsRUFBdUJDLElBQUksQ0FBQ0MsR0FBTCxDQUFTUCxTQUFTLENBQUNRLE1BQW5CLEVBQTJCLENBQTNCLENBQXZCLENBQXNELEdBRHJELENBQVA7QUFFRDs7QUFHRCxZQUFRUCxRQUFSO0FBQ0UsV0FBS1EsZ0JBQVdDLGVBQVgsQ0FBMkJDLEdBQWhDO0FBQ0UsZUFBT2xCLE1BQVA7O0FBQ0YsV0FBS2dCLGdCQUFXQyxlQUFYLENBQTJCRSxPQUFoQztBQUNFLGVBQU90QixVQUFQOztBQUNGO0FBQ0UsZUFBT0ksa0JBQVA7QUFOSjtBQVFEOztBQUVEbUIsRUFBQUEsV0FBVyxDQUFFYixTQUFGLEVBQWE7QUFDdEIsV0FBTyxDQUFDLEtBQUtGLE1BQUwsQ0FBWU0sR0FBWixDQUFnQkosU0FBaEIsS0FBOEIsRUFBL0IsRUFBbUNDLFFBQTFDO0FBQ0Q7O0FBRURhLEVBQUFBLFVBQVUsQ0FBRWQsU0FBRixFQUFhRyxLQUFiLEVBQW9CO0FBQzVCLFFBQUlILFNBQVMsSUFBSUcsS0FBakIsRUFBd0I7QUFDdEIsV0FBS0wsTUFBTCxDQUFZaUIsR0FBWixDQUFnQmYsU0FBaEIsRUFBMkI7QUFDekJDLFFBQUFBLFFBQVEsRUFBRUUsS0FEZTtBQUt6QlosUUFBQUEsTUFBTSxFQUFFLEtBQUtDLFNBQUwsQ0FBZVEsU0FBZixFQUEwQkcsS0FBMUI7QUFMaUIsT0FBM0I7QUFPRDs7QUFDRCxXQUFPQSxLQUFQO0FBQ0Q7O0FBRURhLEVBQUFBLFdBQVcsQ0FBRWhCLFNBQUYsRUFBYTtBQUN0QixRQUFJLEtBQUtGLE1BQUwsQ0FBWUksR0FBWixDQUFnQkYsU0FBaEIsQ0FBSixFQUFnQztBQUM5QixXQUFLRixNQUFMLENBQVlNLEdBQVosQ0FBZ0JKLFNBQWhCLEVBQTJCVCxNQUEzQixHQUFvQyxJQUFwQztBQUNEO0FBQ0Y7O0FBckRpQjs7QUE0RHBCLE1BQU0wQixjQUFjLEdBQUcsSUFBSXRCLGFBQUosQ0FBa0IsR0FBbEIsQ0FBdkI7ZUFFZXNCLGMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTFJVIGZyb20gJ2xydS1jYWNoZSc7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICdhcHBpdW0tc3VwcG9ydCc7XG5pbXBvcnQgQmFzZURyaXZlciBmcm9tICcuLi9iYXNlZHJpdmVyL2RyaXZlcic7XG5cblxuY29uc3QgR0VORVJJQ19QUk9UT0NPTCA9ICdHRU5FUklDJztcbmNvbnN0IG1qc29ud3BMb2cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdNSlNPTldQJyk7XG5jb25zdCB3M2NMb2cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdXM0MnKTtcbmNvbnN0IGdlbmVyaWNQcm90b2NvbExvZyA9IGxvZ2dlci5nZXRMb2dnZXIoR0VORVJJQ19QUk9UT0NPTCk7XG5cblxuY2xhc3MgU2Vzc2lvbnNDYWNoZSB7XG4gIGNvbnN0cnVjdG9yIChtYXgpIHtcbiAgICB0aGlzLl9jYWNoZSA9IG5ldyBMUlUoeyBtYXggfSk7XG4gIH1cblxuICBnZXRMb2dnZXIgKHNlc3Npb25JZCwgcHJvdG9jb2wpIHtcbiAgICBpZiAoc2Vzc2lvbklkKSB7XG4gICAgICBpZiAodGhpcy5fY2FjaGUuaGFzKHNlc3Npb25JZCkpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9jYWNoZS5nZXQoc2Vzc2lvbklkKTtcbiAgICAgICAgaWYgKHZhbHVlLmxvZ2dlcikge1xuICAgICAgICAgIHJldHVybiB2YWx1ZS5sb2dnZXI7XG4gICAgICAgIH1cbiAgICAgICAgcHJvdG9jb2wgPSBwcm90b2NvbCB8fCB2YWx1ZS5wcm90b2NvbDtcbiAgICAgIH1cbiAgICAgIC8vIEFsd2F5cyBjcmVhdGUgYSBuZXcgbG9nZ2VyIGluc3RhbmNlIGZvciBpZHNcbiAgICAgIC8vIHRoYXQgYXJlIG5vdCBpbiB0aGUgY3VycmVudCBzZXNzaW9ucyBsaXN0LFxuICAgICAgLy8gc28gd2UgY2FuIHN0aWxsIHNlZSBzdWNoIGlkcyBhcyBwcmVmaXhlc1xuICAgICAgcmV0dXJuIGxvZ2dlci5nZXRMb2dnZXIoYCR7cHJvdG9jb2wgfHwgR0VORVJJQ19QUk9UT0NPTH0gYCArXG4gICAgICAgIGAoJHtzZXNzaW9uSWQuc3Vic3RyaW5nKDAsIE1hdGgubWluKHNlc3Npb25JZC5sZW5ndGgsIDgpKX0pYCk7XG4gICAgfVxuXG4gICAgLy8gRmFsbCBiYWNrIHRvIHByb3RvY29sIG5hbWUtb25seSBsb2dnZXIgaWYgc2Vzc2lvbiBpZCBpcyB1bmtub3duXG4gICAgc3dpdGNoIChwcm90b2NvbCkge1xuICAgICAgY2FzZSBCYXNlRHJpdmVyLkRSSVZFUl9QUk9UT0NPTC5XM0M6XG4gICAgICAgIHJldHVybiB3M2NMb2c7XG4gICAgICBjYXNlIEJhc2VEcml2ZXIuRFJJVkVSX1BST1RPQ09MLk1KU09OV1A6XG4gICAgICAgIHJldHVybiBtanNvbndwTG9nO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGdlbmVyaWNQcm90b2NvbExvZztcbiAgICB9XG4gIH1cblxuICBnZXRQcm90b2NvbCAoc2Vzc2lvbklkKSB7XG4gICAgcmV0dXJuICh0aGlzLl9jYWNoZS5nZXQoc2Vzc2lvbklkKSB8fCB7fSkucHJvdG9jb2w7XG4gIH1cblxuICBwdXRTZXNzaW9uIChzZXNzaW9uSWQsIHZhbHVlKSB7XG4gICAgaWYgKHNlc3Npb25JZCAmJiB2YWx1ZSkge1xuICAgICAgdGhpcy5fY2FjaGUuc2V0KHNlc3Npb25JZCwge1xuICAgICAgICBwcm90b2NvbDogdmFsdWUsXG4gICAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gY2FjaGUgdGhlIGxvZ2dlciBpbnN0YW5jZSBmb3IgZWFjaCByYW5kb20gc2Vzc2lvbiBpZCBpbiB0aGUgY2FjaGVcbiAgICAgICAgLy8gaW4gb3JkZXIgdG8gc2F2ZSBtZW1vcnkuIEluc3RlYWQgd2Ugb25seSBjYWNoZSBsb2dnZXJzIGZvciB2YWxpZCBpZHMgdGhhdFxuICAgICAgICAvLyBhcmUgcmV0dXJuZWQgYnkgYGNyZWF0ZVNlc3Npb25gIGNhbGwgYW5kIHJlc2V0IHRoZW0gYWZ0ZXIgYGRlbGV0ZVNlc3Npb25gIGlzIGNhbGxlZFxuICAgICAgICBsb2dnZXI6IHRoaXMuZ2V0TG9nZ2VyKHNlc3Npb25JZCwgdmFsdWUpLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHJlc2V0TG9nZ2VyIChzZXNzaW9uSWQpIHtcbiAgICBpZiAodGhpcy5fY2FjaGUuaGFzKHNlc3Npb25JZCkpIHtcbiAgICAgIHRoaXMuX2NhY2hlLmdldChzZXNzaW9uSWQpLmxvZ2dlciA9IG51bGw7XG4gICAgfVxuICB9XG59XG5cbi8vIFRoaXMgY2FjaGUgaXMgdXNlZnVsIHdoZW4gYSBzZXNzaW9uIGdldHMgdGVybWluYXRlZFxuLy8gYW5kIHJlbW92ZWQgZnJvbSB0aGUgc2Vzc2lvbnMgbGlzdCBpbiB0aGUgdW1icmVsbGEgZHJpdmVyLFxuLy8gYnV0IHRoZSBjbGllbnQgc3RpbGwgdHJpZXMgdG8gc2VuZCBhIGNvbW1hbmQgdG8gdGhpcyBzZXNzaW9uIGlkLlxuLy8gU28gd2Uga25vdyBob3cgdG8gcHJvcGVybHkgd3JhcCB0aGUgZXJyb3IgbWVzc2FnZSBmb3IgaXRcbmNvbnN0IFNFU1NJT05TX0NBQ0hFID0gbmV3IFNlc3Npb25zQ2FjaGUoMTAwKTtcblxuZXhwb3J0IGRlZmF1bHQgU0VTU0lPTlNfQ0FDSEU7XG4iXSwiZmlsZSI6ImxpYi9wcm90b2NvbC9zZXNzaW9ucy1jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9