UNPKG

nope-js-node

Version:

NoPE Runtime for Nodejs. For Browser-Support please use nope-browser

53 lines (52 loc) 2.1 kB
"use strict"; /** * @author Martin Karkowski * @email m.karkowski@zema.de * @create date 2021-03-23 07:30:19 * @modify date 2022-01-03 17:33:53 * @desc [description] */ Object.defineProperty(exports, "__esModule", { value: true }); exports.getLayer = exports.layerDefaultParameters = exports.validLayers = void 0; const idMethods_1 = require("../helpers/idMethods"); const bridge_1 = require("./bridge"); const index_browser_1 = require("./layers/index.browser"); exports.validLayers = { event: bridge_1.Bridge, "io-client": index_browser_1.IoSocketClientLayer, }; exports.layerDefaultParameters = { "io-client": "http://localhost:7000", }; /** * Function, that will create a Bridge, based on the provided function. * Based on the parameter "layer", a corresponding layer or mirror will * be added to the bridge. You can provide custom parameters using the * parameter "parameter". This will receive either the uri or ports. * Additionally you are able to assign a log-level to the bridge. * * @export * @param {validLayerOrMirror} layer the layer to add * @param {(number | string)} [parameter=null] the parameter required for the additonal layer / mirror * @param {LoggerLevel} [level=false] the level of the debugger * @return {ICommunicationBridge} */ function getLayer(layer, parameter = null, logger = false) { // Create the Bridge const communicationBridge = new bridge_1.Bridge((0, idMethods_1.generateId)(), logger); // Assign the Default Setting for the Channel. const params = parameter !== null ? parameter : exports.layerDefaultParameters[layer]; switch (layer) { case "event": break; case "io-client": communicationBridge.addCommunicationLayer(new index_browser_1.IoSocketClientLayer(params, logger), true); break; } // Now that we have added a connection, we will // update the value. communicationBridge.connected.forcePublish(); // Return the Bridge return communicationBridge; } exports.getLayer = getLayer;