UNPKG

pandora-hub

Version:

pandora.js messenge hub

36 lines 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const ObjectConsumer_1 = require("./ObjectConsumer"); class ConsumerManager { constructor(hubClient, providerManager) { this.hubClient = hubClient; this.consumerCache = new Map; this.providerManager = providerManager; } /** * Get a Consumer by an ObjectDescription * @param {ObjectDescription} objectDescription * @param {ConsumerExtInfo} extInfo * @return {ObjectConsumer} */ getConsumer(objectDescription, extInfo) { const key = objectDescription.name + ':' + objectDescription.tag; if (!this.consumerCache.has(key)) { const consumer = new ObjectConsumer_1.ObjectConsumer(objectDescription, this.hubClient, this.providerManager, extInfo); this.consumerCache.set(key, consumer); return consumer; } return this.consumerCache.get(key); } /** * get an Object Proxy by an ObjectDescription * @param {ObjectDescription} objectDescription * @param {ConsumerExtInfo} extInfo * @return {Promise<T & DefaultObjectProxy>} */ async getProxy(objectDescription, extInfo) { return this.getConsumer(objectDescription, extInfo).getProxy(); } } exports.ConsumerManager = ConsumerManager; //# sourceMappingURL=ConsumerManager.js.map