UNPKG

resolve-local-event-broker

Version:

The reSolve framework's event broker for applications on a local machine.

57 lines (54 loc) 1.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; const createAndInitPublisher = async ({ imports, functions, broker, lifecycle }, activeConfig) => { const { connectConsumer, ...config } = activeConfig; const pool = { ...imports, ...functions, ...broker, ...lifecycle, database: await functions.connectDatabase(imports, { databaseFile: config.databaseFile }), consumer: await connectConsumer({ address: config.consumerAddress }) }; const server = { subscribe: broker.subscribe.bind(null, pool), unsubscribe: broker.unsubscribe.bind(null, pool), resubscribe: broker.resubscribe.bind(null, pool), acknowledge: broker.acknowledge.bind(null, pool), publish: broker.publish.bind(null, pool), status: broker.status.bind(null, pool), resume: broker.resume.bind(null, pool), pause: broker.pause.bind(null, pool), reset: broker.reset.bind(null, pool), listProperties: broker.interopProperty.bind(null, pool, 'listProperties'), getProperty: broker.interopProperty.bind(null, pool, 'getProperty'), setProperty: broker.interopProperty.bind(null, pool, 'setProperty'), deleteProperty: broker.interopProperty.bind(null, pool, 'deleteProperty'), read: broker.read.bind(null, pool), init: lifecycle.createDatabase.bind(null, pool), drop: lifecycle.dropDatabase.bind(null, pool), dispose: pool.database.dispose }; const api = await functions.createServer({ hostObject: server, address: config.publisherAddress }); return api; }; var _default = createAndInitPublisher; exports.default = _default; //# sourceMappingURL=create-and-init-publisher.js.map