UNPKG

metallic-launcher

Version:
31 lines (22 loc) 2.71 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _metallicInterfaces = require('metallic-interfaces'); var _server = require('./server'); var _server2 = _interopRequireDefault(_server); var _leader = require('./leader'); var _leader2 = _interopRequireDefault(_leader); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const ClusterClassFactories = new Set([_leader2.default, _server2.default]); class ClusterFactory extends _metallicInterfaces.FactoryInterface { static create({ httpServer, metrics, logger, options = { enabled: false } } = {}) { for (let ClusterClassFactory of ClusterClassFactories) { if (ClusterClassFactory.shouldCreate(options.enabled)) { return ClusterClassFactory.create({ httpServer, metrics, logger, options }); } } } } exports.default = ClusterFactory; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbHVzdGVyL2NsdXN0ZXItZmFjdG9yeS5qcyJdLCJuYW1lcyI6WyJDbHVzdGVyQ2xhc3NGYWN0b3JpZXMiLCJTZXQiLCJDbHVzdGVyRmFjdG9yeSIsImNyZWF0ZSIsImh0dHBTZXJ2ZXIiLCJtZXRyaWNzIiwibG9nZ2VyIiwib3B0aW9ucyIsImVuYWJsZWQiLCJDbHVzdGVyQ2xhc3NGYWN0b3J5Iiwic2hvdWxkQ3JlYXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQSxNQUFNQSx3QkFBd0IsSUFBSUMsR0FBSixDQUFRLG9DQUFSLENBQTlCOztBQUVlLE1BQU1DLGNBQU4sOENBQThDO0FBQzNELFNBQU9DLE1BQVAsQ0FBZSxFQUFFQyxVQUFGLEVBQWNDLE9BQWQsRUFBdUJDLE1BQXZCLEVBQStCQyxVQUFVLEVBQUVDLFNBQVMsS0FBWCxFQUF6QyxLQUFnRSxFQUEvRSxFQUFtRjtBQUNqRixTQUFLLElBQUlDLG1CQUFULElBQWdDVCxxQkFBaEMsRUFBdUQ7QUFDckQsVUFBSVMsb0JBQW9CQyxZQUFwQixDQUFpQ0gsUUFBUUMsT0FBekMsQ0FBSixFQUF1RDtBQUNyRCxlQUFPQyxvQkFBb0JOLE1BQXBCLENBQTJCLEVBQUVDLFVBQUYsRUFBY0MsT0FBZCxFQUF1QkMsTUFBdkIsRUFBK0JDLE9BQS9CLEVBQTNCLENBQVA7QUFDRDtBQUNGO0FBQ0Y7QUFQMEQ7a0JBQXhDTCxjIiwiZmlsZSI6ImNsdXN0ZXItZmFjdG9yeS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhY3RvcnlJbnRlcmZhY2UgfSBmcm9tICdtZXRhbGxpYy1pbnRlcmZhY2VzJ1xuaW1wb3J0IFNlcnZlckZhY3RvcnkgZnJvbSAnLi9zZXJ2ZXInXG5pbXBvcnQgTGVhZGVyRmFjdG9yeSBmcm9tICcuL2xlYWRlcidcblxuY29uc3QgQ2x1c3RlckNsYXNzRmFjdG9yaWVzID0gbmV3IFNldChbIExlYWRlckZhY3RvcnksIFNlcnZlckZhY3RvcnkgXSlcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ2x1c3RlckZhY3RvcnkgZXh0ZW5kcyBGYWN0b3J5SW50ZXJmYWNlIHtcbiAgc3RhdGljIGNyZWF0ZSAoeyBodHRwU2VydmVyLCBtZXRyaWNzLCBsb2dnZXIsIG9wdGlvbnMgPSB7IGVuYWJsZWQ6IGZhbHNlIH0gfSA9IHt9KSB7XG4gICAgZm9yIChsZXQgQ2x1c3RlckNsYXNzRmFjdG9yeSBvZiBDbHVzdGVyQ2xhc3NGYWN0b3JpZXMpIHtcbiAgICAgIGlmIChDbHVzdGVyQ2xhc3NGYWN0b3J5LnNob3VsZENyZWF0ZShvcHRpb25zLmVuYWJsZWQpKSB7XG4gICAgICAgIHJldHVybiBDbHVzdGVyQ2xhc3NGYWN0b3J5LmNyZWF0ZSh7IGh0dHBTZXJ2ZXIsIG1ldHJpY3MsIGxvZ2dlciwgb3B0aW9ucyB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19