@signageos/lib 23.8.1 → 23.8.2-master.4405
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AMQP/CQRS/ICommand.d.ts +38 -0
- package/dist/AMQP/CQRS/ICommand.js +3 -0
- package/dist/AMQP/CQRS/ICommand.js.map +1 -0
- package/dist/AMQP/CQRS/ICommandError.d.ts +4 -0
- package/dist/AMQP/CQRS/ICommandError.js +3 -0
- package/dist/AMQP/CQRS/ICommandError.js.map +1 -0
- package/dist/AMQP/CQRS/commandQueue.d.ts +59 -0
- package/dist/AMQP/CQRS/commandQueue.js +313 -0
- package/dist/AMQP/CQRS/commandQueue.js.map +1 -0
- package/dist/AMQP/CQRS/commandResponseHelper.d.ts +3 -0
- package/dist/AMQP/CQRS/commandResponseHelper.js +8 -0
- package/dist/AMQP/CQRS/commandResponseHelper.js.map +1 -0
- package/dist/AMQP/CQRS/storedCommandQueue.d.ts +27 -0
- package/dist/AMQP/CQRS/storedCommandQueue.js +301 -0
- package/dist/AMQP/CQRS/storedCommandQueue.js.map +1 -0
- package/dist/AMQP/ChannelProvider.d.ts +37 -0
- package/dist/AMQP/ChannelProvider.js +886 -0
- package/dist/AMQP/ChannelProvider.js.map +1 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.d.ts +39 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js +292 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js.map +1 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.d.ts +4 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.js +3 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.js.map +1 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.d.ts +83 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.js +538 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.d.ts +47 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js +218 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.d.ts +13 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js +3 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.d.ts +15 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js +76 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/IEvent.d.ts +72 -0
- package/dist/AMQP/EventSourcing/IEvent.js +3 -0
- package/dist/AMQP/EventSourcing/IEvent.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.d.ts +21 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.js +72 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.d.ts +63 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js +261 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.d.ts +24 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js +64 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.d.ts +42 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.js +141 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueue.d.ts +87 -0
- package/dist/AMQP/EventSourcing/eventQueue.js +139 -0
- package/dist/AMQP/EventSourcing/eventQueue.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.d.ts +73 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.js +157 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.d.ts +49 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.js +428 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.d.ts +42 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.js +371 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.d.ts +19 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.js +209 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.js.map +1 -0
- package/dist/AMQP/EventSourcing/synchronization.d.ts +39 -0
- package/dist/AMQP/EventSourcing/synchronization.js +12 -0
- package/dist/AMQP/EventSourcing/synchronization.js.map +1 -0
- package/dist/AMQP/Exchange.d.ts +1 -0
- package/dist/AMQP/Exchange.js +3 -0
- package/dist/AMQP/Exchange.js.map +1 -0
- package/dist/AMQP/IAMQPPool.d.ts +5 -0
- package/dist/AMQP/IAMQPPool.js +3 -0
- package/dist/AMQP/IAMQPPool.js.map +1 -0
- package/dist/AMQP/IAsyncGotMessage.d.ts +15 -0
- package/dist/AMQP/IAsyncGotMessage.js +3 -0
- package/dist/AMQP/IAsyncGotMessage.js.map +1 -0
- package/dist/AMQP/IChannel.d.ts +43 -0
- package/dist/AMQP/IChannel.js +3 -0
- package/dist/AMQP/IChannel.js.map +1 -0
- package/dist/AMQP/IConsumeOptions.d.ts +106 -0
- package/dist/AMQP/IConsumeOptions.js +3 -0
- package/dist/AMQP/IConsumeOptions.js.map +1 -0
- package/dist/AMQP/IMessageOptions.d.ts +6 -0
- package/dist/AMQP/IMessageOptions.js +3 -0
- package/dist/AMQP/IMessageOptions.js.map +1 -0
- package/dist/AMQP/INackOptions.d.ts +4 -0
- package/dist/AMQP/INackOptions.js +3 -0
- package/dist/AMQP/INackOptions.js.map +1 -0
- package/dist/AMQP/IQueueOptions.d.ts +8 -0
- package/dist/AMQP/IQueueOptions.js +3 -0
- package/dist/AMQP/IQueueOptions.js.map +1 -0
- package/dist/AMQP/Logging/IDeviceLog.d.ts +15 -0
- package/dist/AMQP/Logging/IDeviceLog.js +10 -0
- package/dist/AMQP/Logging/IDeviceLog.js.map +1 -0
- package/dist/AMQP/Logging/logDeviceQueue.d.ts +12 -0
- package/dist/AMQP/Logging/logDeviceQueue.js +107 -0
- package/dist/AMQP/Logging/logDeviceQueue.js.map +1 -0
- package/dist/AMQP/QueueFetcher.d.ts +13 -0
- package/dist/AMQP/QueueFetcher.js +166 -0
- package/dist/AMQP/QueueFetcher.js.map +1 -0
- package/dist/AMQP/QueuePublisher.d.ts +7 -0
- package/dist/AMQP/QueuePublisher.js +135 -0
- package/dist/AMQP/QueuePublisher.js.map +1 -0
- package/dist/AMQP/QueueRepeatableSubscription.d.ts +14 -0
- package/dist/AMQP/QueueRepeatableSubscription.js +162 -0
- package/dist/AMQP/QueueRepeatableSubscription.js.map +1 -0
- package/dist/AMQP/QueueSubscriber.d.ts +11 -0
- package/dist/AMQP/QueueSubscriber.js +163 -0
- package/dist/AMQP/QueueSubscriber.js.map +1 -0
- package/dist/AMQP/ResponseProvider.d.ts +20 -0
- package/dist/AMQP/ResponseProvider.js +193 -0
- package/dist/AMQP/ResponseProvider.js.map +1 -0
- package/dist/AMQP/Static/filesQueue.d.ts +12 -0
- package/dist/AMQP/Static/filesQueue.js +220 -0
- package/dist/AMQP/Static/filesQueue.js.map +1 -0
- package/dist/AMQP/amqpConnectionFactory.d.ts +27 -0
- package/dist/AMQP/amqpConnectionFactory.js +236 -0
- package/dist/AMQP/amqpConnectionFactory.js.map +1 -0
- package/dist/AMQP/amqpErrors.d.ts +5 -0
- package/dist/AMQP/amqpErrors.js +30 -0
- package/dist/AMQP/amqpErrors.js.map +1 -0
- package/dist/AMQP/errors.d.ts +3 -0
- package/dist/AMQP/errors.js +30 -0
- package/dist/AMQP/errors.js.map +1 -0
- package/dist/AMQP/fetchNextMessage.d.ts +14 -0
- package/dist/AMQP/fetchNextMessage.js +118 -0
- package/dist/AMQP/fetchNextMessage.js.map +1 -0
- package/dist/AMQP/queueConfigurator.d.ts +5 -0
- package/dist/AMQP/queueConfigurator.js +78 -0
- package/dist/AMQP/queueConfigurator.js.map +1 -0
- package/dist/AWS/S3.d.ts +95 -0
- package/dist/AWS/S3.js +448 -0
- package/dist/AWS/S3.js.map +1 -0
- package/dist/AWS/S3Types.d.ts +113 -0
- package/dist/AWS/S3Types.js +3 -0
- package/dist/AWS/S3Types.js.map +1 -0
- package/dist/AWS/config.d.ts +2 -0
- package/dist/AWS/config.js +23 -0
- package/dist/AWS/config.js.map +1 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.d.ts +30 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js +81 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js.map +1 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.d.ts +5 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js +33 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js.map +1 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.d.ts +41 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.js +137 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.js.map +1 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.d.ts +8 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js +37 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js.map +1 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.d.ts +14 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js +58 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js.map +1 -0
- package/dist/Auth0/auth0.types.d.ts +4 -0
- package/dist/Auth0/auth0.types.js +10 -0
- package/dist/Auth0/auth0.types.js.map +1 -0
- package/dist/Cache/lruCache.d.ts +22 -0
- package/dist/Cache/lruCache.js +42 -0
- package/dist/Cache/lruCache.js.map +1 -0
- package/dist/Cache/memoryCache.d.ts +7 -0
- package/dist/Cache/memoryCache.js +80 -0
- package/dist/Cache/memoryCache.js.map +1 -0
- package/dist/Config/config.d.ts +81 -0
- package/dist/Config/config.js +119 -0
- package/dist/Config/config.js.map +1 -0
- package/dist/Config/environment.d.ts +8 -0
- package/dist/Config/environment.js +13 -0
- package/dist/Config/environment.js.map +1 -0
- package/dist/Config/validation.d.ts +61 -0
- package/dist/Config/validation.js +56 -0
- package/dist/Config/validation.js.map +1 -0
- package/dist/DateTime/dateMonkeyPatch.d.ts +15 -0
- package/dist/DateTime/dateMonkeyPatch.js +149 -0
- package/dist/DateTime/dateMonkeyPatch.js.map +1 -0
- package/dist/DateTime/dateTimeFactory.d.ts +4 -0
- package/dist/DateTime/dateTimeFactory.js +22 -0
- package/dist/DateTime/dateTimeFactory.js.map +1 -0
- package/dist/DateTime/millisecondConstants.d.ts +7 -0
- package/dist/DateTime/millisecondConstants.js +11 -0
- package/dist/DateTime/millisecondConstants.js.map +1 -0
- package/dist/DateTime/posixTimezone.d.ts +1 -0
- package/dist/DateTime/posixTimezone.js +54 -0
- package/dist/DateTime/posixTimezone.js.map +1 -0
- package/dist/DateTime/statistics.d.ts +6 -0
- package/dist/DateTime/statistics.js +30 -0
- package/dist/DateTime/statistics.js.map +1 -0
- package/dist/DateTime/timeConverter.d.ts +1 -0
- package/dist/DateTime/timeConverter.js +11 -0
- package/dist/DateTime/timeConverter.js.map +1 -0
- package/dist/DateTime/timer.d.ts +10 -0
- package/dist/DateTime/timer.js +18 -0
- package/dist/DateTime/timer.js.map +1 -0
- package/dist/DateTime/timestamp.d.ts +2 -0
- package/dist/DateTime/timestamp.js +16 -0
- package/dist/DateTime/timestamp.js.map +1 -0
- package/dist/DateTime/waitUntil.d.ts +20 -0
- package/dist/DateTime/waitUntil.js +148 -0
- package/dist/DateTime/waitUntil.js.map +1 -0
- package/dist/Debug/debugClassDecorator.d.ts +13 -0
- package/dist/Debug/debugClassDecorator.js +63 -0
- package/dist/Debug/debugClassDecorator.js.map +1 -0
- package/dist/Debug/debugDecorator.d.ts +24 -0
- package/dist/Debug/debugDecorator.js +107 -0
- package/dist/Debug/debugDecorator.js.map +1 -0
- package/dist/Encryption/passwordEncryption.d.ts +4 -0
- package/dist/Encryption/passwordEncryption.js +29 -0
- package/dist/Encryption/passwordEncryption.js.map +1 -0
- package/dist/Encryption/tokenEncryption.d.ts +14 -0
- package/dist/Encryption/tokenEncryption.js +32 -0
- package/dist/Encryption/tokenEncryption.js.map +1 -0
- package/dist/Events/AsyncEventEmitter.d.ts +31 -0
- package/dist/Events/AsyncEventEmitter.js +125 -0
- package/dist/Events/AsyncEventEmitter.js.map +1 -0
- package/dist/Events/eventsHelpers.d.ts +3 -0
- package/dist/Events/eventsHelpers.js +24 -0
- package/dist/Events/eventsHelpers.js.map +1 -0
- package/dist/Events/genericGracefulExit.d.ts +11 -0
- package/dist/Events/genericGracefulExit.js +90 -0
- package/dist/Events/genericGracefulExit.js.map +1 -0
- package/dist/FileSystem/moduleDiscoverer.d.ts +7 -0
- package/dist/FileSystem/moduleDiscoverer.js +88 -0
- package/dist/FileSystem/moduleDiscoverer.js.map +1 -0
- package/dist/FileSystem/tmpDir.d.ts +9 -0
- package/dist/FileSystem/tmpDir.js +64 -0
- package/dist/FileSystem/tmpDir.js.map +1 -0
- package/dist/Functional/compose.d.ts +22 -0
- package/dist/Functional/compose.js +44 -0
- package/dist/Functional/compose.js.map +1 -0
- package/dist/GenericPool/options.d.ts +63 -0
- package/dist/GenericPool/options.js +3 -0
- package/dist/GenericPool/options.js.map +1 -0
- package/dist/Hash/checksum.d.ts +5 -0
- package/dist/Hash/checksum.js +20 -0
- package/dist/Hash/checksum.js.map +1 -0
- package/dist/Hash/checksumFile.d.ts +4 -0
- package/dist/Hash/checksumFile.js +82 -0
- package/dist/Hash/checksumFile.js.map +1 -0
- package/dist/Hash/generator.d.ts +2 -0
- package/dist/Hash/generator.js +15 -0
- package/dist/Hash/generator.js.map +1 -0
- package/dist/Http/download.d.ts +1 -0
- package/dist/Http/download.js +91 -0
- package/dist/Http/download.js.map +1 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.js +98 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.js.map +1 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.js +60 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.js.map +1 -0
- package/dist/HttpStatus/checks/redisStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/redisStatusCheck.js +94 -0
- package/dist/HttpStatus/checks/redisStatusCheck.js.map +1 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.d.ts +9 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.js +109 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.js.map +1 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.d.ts +15 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.js +114 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.js.map +1 -0
- package/dist/HttpStatus/sendStatusResponse.d.ts +5 -0
- package/dist/HttpStatus/sendStatusResponse.js +71 -0
- package/dist/HttpStatus/sendStatusResponse.js.map +1 -0
- package/dist/HttpStatus/status.d.ts +19 -0
- package/dist/HttpStatus/status.js +132 -0
- package/dist/HttpStatus/status.js.map +1 -0
- package/dist/HttpStatus/statuses/amqpStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/amqpStatus.js +35 -0
- package/dist/HttpStatus/statuses/amqpStatus.js.map +1 -0
- package/dist/HttpStatus/statuses/mongoStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/mongoStatus.js +35 -0
- package/dist/HttpStatus/statuses/mongoStatus.js.map +1 -0
- package/dist/HttpStatus/statuses/redisStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/redisStatus.js +35 -0
- package/dist/HttpStatus/statuses/redisStatus.js.map +1 -0
- package/dist/InfluxDB/IInfluxDB.d.ts +5 -0
- package/dist/InfluxDB/IInfluxDB.js +3 -0
- package/dist/InfluxDB/IInfluxDB.js.map +1 -0
- package/dist/InfluxDB/influxDBConnectionFactory.d.ts +9 -0
- package/dist/InfluxDB/influxDBConnectionFactory.js +83 -0
- package/dist/InfluxDB/influxDBConnectionFactory.js.map +1 -0
- package/dist/JSON/jsonHelper.d.ts +4 -0
- package/dist/JSON/jsonHelper.js +21 -0
- package/dist/JSON/jsonHelper.js.map +1 -0
- package/dist/Lib/Redis/connection.utils.d.ts +22 -0
- package/dist/Lib/Redis/connection.utils.js +95 -0
- package/dist/Lib/Redis/connection.utils.js.map +1 -0
- package/dist/Lib/String/string.d.ts +1 -0
- package/dist/Lib/String/string.js +6 -0
- package/dist/Lib/String/string.js.map +1 -0
- package/dist/Lock/lockedDecorator.d.ts +12 -0
- package/dist/Lock/lockedDecorator.js +150 -0
- package/dist/Lock/lockedDecorator.js.map +1 -0
- package/dist/Logging/console.d.ts +8 -0
- package/dist/Logging/console.js +50 -0
- package/dist/Logging/console.js.map +1 -0
- package/dist/Logging/debug.d.ts +10 -0
- package/dist/Logging/debug.js +61 -0
- package/dist/Logging/debug.js.map +1 -0
- package/dist/Logging/format.d.ts +10 -0
- package/dist/Logging/format.js +79 -0
- package/dist/Logging/format.js.map +1 -0
- package/dist/Logging/logger.d.ts +53 -0
- package/dist/Logging/logger.js +63 -0
- package/dist/Logging/logger.js.map +1 -0
- package/dist/Logging/logging.d.ts +12 -0
- package/dist/Logging/logging.js +113 -0
- package/dist/Logging/logging.js.map +1 -0
- package/dist/Metrics/MetricsClient.d.ts +46 -0
- package/dist/Metrics/MetricsClient.js +101 -0
- package/dist/Metrics/MetricsClient.js.map +1 -0
- package/dist/Metrics/deviceConsumerMetrics.d.ts +6 -0
- package/dist/Metrics/deviceConsumerMetrics.js +59 -0
- package/dist/Metrics/deviceConsumerMetrics.js.map +1 -0
- package/dist/Metrics/eventConsumerMetrics.d.ts +19 -0
- package/dist/Metrics/eventConsumerMetrics.js +52 -0
- package/dist/Metrics/eventConsumerMetrics.js.map +1 -0
- package/dist/Metrics/eventQueueMetrics.d.ts +7 -0
- package/dist/Metrics/eventQueueMetrics.js +19 -0
- package/dist/Metrics/eventQueueMetrics.js.map +1 -0
- package/dist/Metrics/logMetrics.d.ts +4 -0
- package/dist/Metrics/logMetrics.js +20 -0
- package/dist/Metrics/logMetrics.js.map +1 -0
- package/dist/Metrics/metrics.d.ts +84 -0
- package/dist/Metrics/metrics.js +255 -0
- package/dist/Metrics/metrics.js.map +1 -0
- package/dist/Metrics/mongoDBMetrics.d.ts +35 -0
- package/dist/Metrics/mongoDBMetrics.js +162 -0
- package/dist/Metrics/mongoDBMetrics.js.map +1 -0
- package/dist/Metrics/processSocketsMetrics.d.ts +10 -0
- package/dist/Metrics/processSocketsMetrics.js +92 -0
- package/dist/Metrics/processSocketsMetrics.js.map +1 -0
- package/dist/Metrics/redisMetrics.d.ts +13 -0
- package/dist/Metrics/redisMetrics.js +60 -0
- package/dist/Metrics/redisMetrics.js.map +1 -0
- package/dist/MongoDB/MongoDBConnection.d.ts +19 -0
- package/dist/MongoDB/MongoDBConnection.js +185 -0
- package/dist/MongoDB/MongoDBConnection.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js +106 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js +94 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js +80 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js +51 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/helper.d.ts +13 -0
- package/dist/MongoDB/ProprietaryCluster/helper.js +147 -0
- package/dist/MongoDB/ProprietaryCluster/helper.js.map +1 -0
- package/dist/MongoDB/cursorIterator.d.ts +5 -0
- package/dist/MongoDB/cursorIterator.js +63 -0
- package/dist/MongoDB/cursorIterator.js.map +1 -0
- package/dist/MongoDB/escape.d.ts +4 -0
- package/dist/MongoDB/escape.js +54 -0
- package/dist/MongoDB/escape.js.map +1 -0
- package/dist/MongoDB/mongoDBConnectionFactory.d.ts +13 -0
- package/dist/MongoDB/mongoDBConnectionFactory.js +11 -0
- package/dist/MongoDB/mongoDBConnectionFactory.js.map +1 -0
- package/dist/MongoDB/proprietaryCluster.d.ts +1 -0
- package/dist/MongoDB/proprietaryCluster.js +76 -0
- package/dist/MongoDB/proprietaryCluster.js.map +1 -0
- package/dist/Npm/INpmClient.d.ts +25 -0
- package/dist/Npm/INpmClient.js +3 -0
- package/dist/Npm/INpmClient.js.map +1 -0
- package/dist/Npm/MockNpmClient.d.ts +17 -0
- package/dist/Npm/MockNpmClient.js +124 -0
- package/dist/Npm/MockNpmClient.js.map +1 -0
- package/dist/Npm/NpmClient.d.ts +14 -0
- package/dist/Npm/NpmClient.js +212 -0
- package/dist/Npm/NpmClient.js.map +1 -0
- package/dist/Npm/NpmCredentialsProvider.d.ts +18 -0
- package/dist/Npm/NpmCredentialsProvider.js +111 -0
- package/dist/Npm/NpmCredentialsProvider.js.map +1 -0
- package/dist/Observable/helpers.d.ts +3 -0
- package/dist/Observable/helpers.js +117 -0
- package/dist/Observable/helpers.js.map +1 -0
- package/dist/Parsers/parsers.d.ts +1 -0
- package/dist/Parsers/parsers.js +17 -0
- package/dist/Parsers/parsers.js.map +1 -0
- package/dist/Path/detector.d.ts +9 -0
- package/dist/Path/detector.js +78 -0
- package/dist/Path/detector.js.map +1 -0
- package/dist/Pool/IBasePool.d.ts +6 -0
- package/dist/Pool/IBasePool.js +3 -0
- package/dist/Pool/IBasePool.js.map +1 -0
- package/dist/Promise/cancelable.d.ts +4 -0
- package/dist/Promise/cancelable.js +21 -0
- package/dist/Promise/cancelable.js.map +1 -0
- package/dist/Promise/deferred.d.ts +4 -0
- package/dist/Promise/deferred.js +21 -0
- package/dist/Promise/deferred.js.map +1 -0
- package/dist/Promise/deferredStream.d.ts +4 -0
- package/dist/Promise/deferredStream.js +21 -0
- package/dist/Promise/deferredStream.js.map +1 -0
- package/dist/Promise/lock.d.ts +4 -0
- package/dist/Promise/lock.js +21 -0
- package/dist/Promise/lock.js.map +1 -0
- package/dist/Promise/timeoutable.d.ts +4 -0
- package/dist/Promise/timeoutable.js +21 -0
- package/dist/Promise/timeoutable.js.map +1 -0
- package/dist/Redis/DeviceActions/PostponedAction.d.ts +4 -0
- package/dist/Redis/DeviceActions/PostponedAction.js +3 -0
- package/dist/Redis/DeviceActions/PostponedAction.js.map +1 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.d.ts +8 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.js +333 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.js.map +1 -0
- package/dist/Redis/redisConnectionFactory.d.ts +41 -0
- package/dist/Redis/redisConnectionFactory.js +158 -0
- package/dist/Redis/redisConnectionFactory.js.map +1 -0
- package/dist/Redis/redisLock.d.ts +11 -0
- package/dist/Redis/redisLock.js +213 -0
- package/dist/Redis/redisLock.js.map +1 -0
- package/dist/Retry/retry.d.ts +28 -0
- package/dist/Retry/retry.js +154 -0
- package/dist/Retry/retry.js.map +1 -0
- package/dist/Rsync/copier.d.ts +1 -0
- package/dist/Rsync/copier.js +123 -0
- package/dist/Rsync/copier.js.map +1 -0
- package/dist/SemVer/SemVerLevel.d.ts +6 -0
- package/dist/SemVer/SemVerLevel.js +10 -0
- package/dist/SemVer/SemVerLevel.js.map +1 -0
- package/dist/SemVer/semVerConstants.d.ts +2 -0
- package/dist/SemVer/semVerConstants.js +9 -0
- package/dist/SemVer/semVerConstants.js.map +1 -0
- package/dist/SemVer/semVerHelper.d.ts +7 -0
- package/dist/SemVer/semVerHelper.js +82 -0
- package/dist/SemVer/semVerHelper.js.map +1 -0
- package/dist/Service/HTTP/express/app.d.ts +33 -0
- package/dist/Service/HTTP/express/app.js +82 -0
- package/dist/Service/HTTP/express/app.js.map +1 -0
- package/dist/Service/HTTP/express/expressFactory.d.ts +4 -0
- package/dist/Service/HTTP/express/expressFactory.js +22 -0
- package/dist/Service/HTTP/express/expressFactory.js.map +1 -0
- package/dist/Service/HTTP/express/monitoring.d.ts +8 -0
- package/dist/Service/HTTP/express/monitoring.js +25 -0
- package/dist/Service/HTTP/express/monitoring.js.map +1 -0
- package/dist/Service/HTTP/httpServerFactory.d.ts +54 -0
- package/dist/Service/HTTP/httpServerFactory.js +104 -0
- package/dist/Service/HTTP/httpServerFactory.js.map +1 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.d.ts +20 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.js +90 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.js.map +1 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.d.ts +2 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.js +18 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.js.map +1 -0
- package/dist/Service/HTTP/routes/app/indexPage.d.ts +7 -0
- package/dist/Service/HTTP/routes/app/indexPage.js +12 -0
- package/dist/Service/HTTP/routes/app/indexPage.js.map +1 -0
- package/dist/Service/HTTP/routes/app/router.d.ts +14 -0
- package/dist/Service/HTTP/routes/app/router.js +12 -0
- package/dist/Service/HTTP/routes/app/router.js.map +1 -0
- package/dist/Service/HTTP/routes/app/status.d.ts +13 -0
- package/dist/Service/HTTP/routes/app/status.js +44 -0
- package/dist/Service/HTTP/routes/app/status.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.d.ts +20 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.js +75 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.d.ts +9 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.js +59 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.d.ts +18 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.js +80 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/router.d.ts +10 -0
- package/dist/Service/HTTP/routes/monitoring/router.js +12 -0
- package/dist/Service/HTTP/routes/monitoring/router.js.map +1 -0
- package/dist/Service/HTTP/server/serverFactory.d.ts +10 -0
- package/dist/Service/HTTP/server/serverFactory.js +133 -0
- package/dist/Service/HTTP/server/serverFactory.js.map +1 -0
- package/dist/Service/Service.d.ts +17 -0
- package/dist/Service/Service.js +97 -0
- package/dist/Service/Service.js.map +1 -0
- package/dist/Service/dbConnections.d.ts +8 -0
- package/dist/Service/dbConnections.js +3 -0
- package/dist/Service/dbConnections.js.map +1 -0
- package/dist/Service/metrics/connections.d.ts +3 -0
- package/dist/Service/metrics/connections.js +47 -0
- package/dist/Service/metrics/connections.js.map +1 -0
- package/dist/Service/metrics/mongodb.d.ts +2 -0
- package/dist/Service/metrics/mongodb.js +13 -0
- package/dist/Service/metrics/mongodb.js.map +1 -0
- package/dist/Service/metrics/redis.d.ts +2 -0
- package/dist/Service/metrics/redis.js +11 -0
- package/dist/Service/metrics/redis.js.map +1 -0
- package/dist/Service/process.d.ts +11 -0
- package/dist/Service/process.js +88 -0
- package/dist/Service/process.js.map +1 -0
- package/dist/Service/serviceFactory.d.ts +115 -0
- package/dist/Service/serviceFactory.js +118 -0
- package/dist/Service/serviceFactory.js.map +1 -0
- package/dist/Service/types.d.ts +55 -0
- package/dist/Service/types.js +3 -0
- package/dist/Service/types.js.map +1 -0
- package/dist/Storage/IArrayStorage.d.ts +7 -0
- package/dist/Storage/IArrayStorage.js +3 -0
- package/dist/Storage/IArrayStorage.js.map +1 -0
- package/dist/Storage/MemoryArrayStorage.d.ts +9 -0
- package/dist/Storage/MemoryArrayStorage.js +22 -0
- package/dist/Storage/MemoryArrayStorage.js.map +1 -0
- package/dist/String/pad.d.ts +1 -0
- package/dist/String/pad.js +7 -0
- package/dist/String/pad.js.map +1 -0
- package/dist/String/string.d.ts +3 -0
- package/dist/String/string.js +17 -0
- package/dist/String/string.js.map +1 -0
- package/dist/String/webalize.d.ts +1 -0
- package/dist/String/webalize.js +15 -0
- package/dist/String/webalize.js.map +1 -0
- package/dist/String/word.d.ts +32 -0
- package/dist/String/word.js +97 -0
- package/dist/String/word.js.map +1 -0
- package/dist/System/signalSender.d.ts +1 -0
- package/dist/System/signalSender.js +7 -0
- package/dist/System/signalSender.js.map +1 -0
- package/dist/ThirdParty/connection.d.ts +28 -0
- package/dist/ThirdParty/connection.js +9 -0
- package/dist/ThirdParty/connection.js.map +1 -0
- package/dist/Timer/Power/PowerTimerSettings.d.ts +29 -0
- package/dist/Timer/Power/PowerTimerSettings.js +3 -0
- package/dist/Timer/Power/PowerTimerSettings.js.map +1 -0
- package/dist/Timer/Power/PowerTimerType.d.ts +2 -0
- package/dist/Timer/Power/PowerTimerType.js +3 -0
- package/dist/Timer/Power/PowerTimerType.js.map +1 -0
- package/dist/Timer/Power/PowerTimerWeekday.d.ts +18 -0
- package/dist/Timer/Power/PowerTimerWeekday.js +18 -0
- package/dist/Timer/Power/PowerTimerWeekday.js.map +1 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.d.ts +28 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.js +32 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.js.map +1 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.d.ts +9 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.js +14 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.js.map +1 -0
- package/dist/Timer/Power/powerTimerComputer.d.ts +36 -0
- package/dist/Timer/Power/powerTimerComputer.js +141 -0
- package/dist/Timer/Power/powerTimerComputer.js.map +1 -0
- package/dist/Timer/convertWeekday.d.ts +25 -0
- package/dist/Timer/convertWeekday.js +211 -0
- package/dist/Timer/convertWeekday.js.map +1 -0
- package/dist/Timer/converters.d.ts +44 -0
- package/dist/Timer/converters.js +72 -0
- package/dist/Timer/converters.js.map +1 -0
- package/dist/Timer/increasingInterval.d.ts +2 -0
- package/dist/Timer/increasingInterval.js +108 -0
- package/dist/Timer/increasingInterval.js.map +1 -0
- package/dist/Timer/nonConcurrentInterval.d.ts +4 -0
- package/dist/Timer/nonConcurrentInterval.js +73 -0
- package/dist/Timer/nonConcurrentInterval.js.map +1 -0
- package/dist/Timer/progressiveWait.d.ts +40 -0
- package/dist/Timer/progressiveWait.js +96 -0
- package/dist/Timer/progressiveWait.js.map +1 -0
- package/dist/Timer/timeout.d.ts +4 -0
- package/dist/Timer/timeout.js +21 -0
- package/dist/Timer/timeout.js.map +1 -0
- package/dist/Timer/wait.d.ts +5 -0
- package/dist/Timer/wait.js +27 -0
- package/dist/Timer/wait.js.map +1 -0
- package/dist/TypeScript/asyncIterator.d.ts +1 -0
- package/dist/TypeScript/asyncIterator.js +76 -0
- package/dist/TypeScript/asyncIterator.js.map +1 -0
- package/dist/TypeScript/expect.d.ts +6 -0
- package/dist/TypeScript/expect.js +12 -0
- package/dist/TypeScript/expect.js.map +1 -0
- package/dist/TypeScript/generator.d.ts +1 -0
- package/dist/TypeScript/generator.js +20 -0
- package/dist/TypeScript/generator.js.map +1 -0
- package/dist/TypeScript/object.d.ts +12 -0
- package/dist/TypeScript/object.js +3 -0
- package/dist/TypeScript/object.js.map +1 -0
- package/dist/TypeScript/observable-polyfill.d.ts +1 -0
- package/dist/TypeScript/observable-polyfill.js +33 -0
- package/dist/TypeScript/observable-polyfill.js.map +1 -0
- package/dist/Utils/array.d.ts +2 -0
- package/dist/Utils/array.js +23 -0
- package/dist/Utils/array.js.map +1 -0
- package/dist/Utils/enum.d.ts +24 -0
- package/dist/Utils/enum.js +35 -0
- package/dist/Utils/enum.js.map +1 -0
- package/dist/Utils/file.d.ts +1 -0
- package/dist/Utils/file.js +55 -0
- package/dist/Utils/file.js.map +1 -0
- package/dist/Utils/http.d.ts +23 -0
- package/dist/Utils/http.js +68 -0
- package/dist/Utils/http.js.map +1 -0
- package/dist/Utils/object.d.ts +22 -0
- package/dist/Utils/object.js +112 -0
- package/dist/Utils/object.js.map +1 -0
- package/dist/Utils/sorting.d.ts +1 -0
- package/dist/Utils/sorting.js +33 -0
- package/dist/Utils/sorting.js.map +1 -0
- package/dist/WebSocket/Client/ISocket.d.ts +55 -0
- package/dist/WebSocket/Client/ISocket.js +46 -0
- package/dist/WebSocket/Client/ISocket.js.map +1 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.d.ts +8 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js +81 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js.map +1 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.d.ts +25 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js +174 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js.map +1 -0
- package/dist/WebSocket/Client/WS/createWSSocket.d.ts +8 -0
- package/dist/WebSocket/Client/WS/createWSSocket.js +155 -0
- package/dist/WebSocket/Client/WS/createWSSocket.js.map +1 -0
- package/dist/WebSocket/autoWsServerFactory.d.ts +4 -0
- package/dist/WebSocket/autoWsServerFactory.js +334 -0
- package/dist/WebSocket/autoWsServerFactory.js.map +1 -0
- package/dist/WebSocket/perMessageDeflate.d.ts +14 -0
- package/dist/WebSocket/perMessageDeflate.js +3 -0
- package/dist/WebSocket/perMessageDeflate.js.map +1 -0
- package/dist/WebSocket/socketIOServerFactory.d.ts +6 -0
- package/dist/WebSocket/socketIOServerFactory.js +124 -0
- package/dist/WebSocket/socketIOServerFactory.js.map +1 -0
- package/dist/WebSocket/socketServer.d.ts +30 -0
- package/dist/WebSocket/socketServer.js +3 -0
- package/dist/WebSocket/socketServer.js.map +1 -0
- package/dist/WebSocket/wsServerFactory.d.ts +8 -0
- package/dist/WebSocket/wsServerFactory.js +272 -0
- package/dist/WebSocket/wsServerFactory.js.map +1 -0
- package/dist/Webpack/NpmPackPlugin.d.ts +14 -0
- package/dist/Webpack/NpmPackPlugin.js +90 -0
- package/dist/Webpack/NpmPackPlugin.js.map +1 -0
- package/dist/Zod/zod.d.ts +2 -0
- package/dist/Zod/zod.js +7 -0
- package/dist/Zod/zod.js.map +1 -0
- package/dist/Zod/zodError.d.ts +40 -0
- package/dist/Zod/zodError.js +76 -0
- package/dist/Zod/zodError.js.map +1 -0
- package/package.json +36 -2
|
@@ -0,0 +1,538 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
+
if (ar || !(i in from)) {
|
|
52
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
+
ar[i] = from[i];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
+
};
|
|
58
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
59
|
+
exports.sendToDevice = sendToDevice;
|
|
60
|
+
exports.sendFromDevice = sendFromDevice;
|
|
61
|
+
exports.bindToDevice = bindToDevice;
|
|
62
|
+
exports.bindSpecificFromDevice = bindSpecificFromDevice;
|
|
63
|
+
exports.bindUnspecificFromDevice = bindUnspecificFromDevice;
|
|
64
|
+
exports.bindFailed = bindFailed;
|
|
65
|
+
var errors_1 = require("../errors");
|
|
66
|
+
var deviceConsumerMetrics_1 = require("../../Metrics/deviceConsumerMetrics");
|
|
67
|
+
var EXCHANGE_ACTIONS_TO_DEVICE = 'actionsToDevice';
|
|
68
|
+
var EXCHANGE_ACTIONS_NOT_DELIVERED_TO_DEVICE = 'actionsNotDeliveredToDevice';
|
|
69
|
+
var EXCHANGE_ACTIONS_FROM_DEVICE = 'actionsFromDevice';
|
|
70
|
+
var ALTERNATE_EXCHANGE_ACTIONS_FROM_DEVICE = 'alternateActionsFromDevice';
|
|
71
|
+
var UNSPECIFIC_ACTIONS_FROM_DEVICE_QUEUE_NAME = 'unspecificActionsFromDevice';
|
|
72
|
+
var FAILED_ACTIONS_CONSUMER_QUEUE_NAME = 'actionsNotDeliveredToDevice';
|
|
73
|
+
var DEFAULT_QUEUE_OPTIONS = {
|
|
74
|
+
persistent: false, // default value for messages (all are not persistent)
|
|
75
|
+
confirmable: true, // all messages enqueue promise is resolved after confirmation on rabbitmq
|
|
76
|
+
prefetchCount: 500,
|
|
77
|
+
};
|
|
78
|
+
var TO_DEVICE_CONSUME_OPTIONS = {
|
|
79
|
+
// to device queue is exclusive
|
|
80
|
+
autoDelete: false,
|
|
81
|
+
// to device queue is not recovered on restart
|
|
82
|
+
durable: false,
|
|
83
|
+
// to device queue is exclusive
|
|
84
|
+
exclusive: true,
|
|
85
|
+
respond: true,
|
|
86
|
+
};
|
|
87
|
+
var FROM_DEVICE_CONSUME_OPTIONS = {
|
|
88
|
+
// queue from device and not delivered are persistent (not autoDelete)
|
|
89
|
+
// will be kept even if 0 consumers (could happen only during BC deploys)
|
|
90
|
+
autoDelete: false,
|
|
91
|
+
// queue is durable (will not be deleted on restart to keep messages to be processed later)
|
|
92
|
+
durable: true,
|
|
93
|
+
queueType: 'quorum',
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* @param postponable Postponable actions has to be delivered. When device is not connected at the time, it's postponed for later.
|
|
97
|
+
* @param sessionUid Select a specific session (socket) to send message to. If specified, no other socket of single device get the action.
|
|
98
|
+
* @param sendTimeout Specify how long it will wait for response until action is enqueued as not delivered action.
|
|
99
|
+
*/
|
|
100
|
+
function sendToDevice(_a) {
|
|
101
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
102
|
+
var headers, exchange, routingKey, enqueueArgs, expectingResponse, startTime, duration, error_1;
|
|
103
|
+
var _c, _d;
|
|
104
|
+
var amqpConnection = _b.amqpConnection, action = _b.action, deviceUid = _b.deviceUid, _e = _b.postponable, postponable = _e === void 0 ? false : _e, sessionUid = _b.sessionUid, sendTimeout = _b.sendTimeout, sendToQueue = _b.sendToQueue;
|
|
105
|
+
return __generator(this, function (_f) {
|
|
106
|
+
switch (_f.label) {
|
|
107
|
+
case 0:
|
|
108
|
+
headers = {
|
|
109
|
+
deviceUid: deviceUid,
|
|
110
|
+
sessionUid: sessionUid,
|
|
111
|
+
actionType: action.type,
|
|
112
|
+
postponable: postponable,
|
|
113
|
+
};
|
|
114
|
+
if (sendToQueue) {
|
|
115
|
+
exchange = ''; // Default exchange, send straight to queue defined by routingKey
|
|
116
|
+
routingKey = sendToQueue;
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
exchange = EXCHANGE_ACTIONS_TO_DEVICE;
|
|
120
|
+
routingKey = action.type; // routing using action type to omit not listened actions
|
|
121
|
+
}
|
|
122
|
+
_f.label = 1;
|
|
123
|
+
case 1:
|
|
124
|
+
_f.trys.push([1, 6, , 10]);
|
|
125
|
+
enqueueArgs = [
|
|
126
|
+
createChannelToDevice(amqpConnection, undefined),
|
|
127
|
+
action,
|
|
128
|
+
headers,
|
|
129
|
+
exchange,
|
|
130
|
+
routingKey,
|
|
131
|
+
{
|
|
132
|
+
// delivery to device is not persistent message
|
|
133
|
+
persistent: false,
|
|
134
|
+
// expire messages after some time to prevent queue growing large in case of consumer failure
|
|
135
|
+
expiration: sendTimeout * 2,
|
|
136
|
+
},
|
|
137
|
+
];
|
|
138
|
+
expectingResponse = !Boolean(sessionUid);
|
|
139
|
+
if (!expectingResponse) return [3 /*break*/, 3];
|
|
140
|
+
startTime = Date.now();
|
|
141
|
+
return [4 /*yield*/, (_c = amqpConnection.queuePublisher).enqueueExpectingResponse.apply(_c, __spreadArray(__spreadArray([], enqueueArgs, false), [sendTimeout], false))];
|
|
142
|
+
case 2:
|
|
143
|
+
_f.sent();
|
|
144
|
+
duration = (Date.now() - startTime) / 1000;
|
|
145
|
+
deviceConsumerMetrics_1.metrics.emit('outgoing_actions_successful', { actionType: action.type });
|
|
146
|
+
deviceConsumerMetrics_1.metrics.emit('outgoing_actions_ack_duration', { actionType: action.type }, duration);
|
|
147
|
+
return [3 /*break*/, 5];
|
|
148
|
+
case 3: return [4 /*yield*/, (_d = amqpConnection.queuePublisher).enqueue.apply(_d, enqueueArgs)];
|
|
149
|
+
case 4:
|
|
150
|
+
_f.sent();
|
|
151
|
+
deviceConsumerMetrics_1.metrics.emit('outgoing_actions_successful', { actionType: action.type });
|
|
152
|
+
_f.label = 5;
|
|
153
|
+
case 5: return [3 /*break*/, 10];
|
|
154
|
+
case 6:
|
|
155
|
+
error_1 = _f.sent();
|
|
156
|
+
deviceConsumerMetrics_1.metrics.emit('outgoing_actions_erred', { actionType: action.type });
|
|
157
|
+
if (!(error_1 instanceof errors_1.ResponseTimeoutError)) return [3 /*break*/, 8];
|
|
158
|
+
return [4 /*yield*/, enqueueFailedAction(amqpConnection, action, deviceUid, postponable, sessionUid)];
|
|
159
|
+
case 7:
|
|
160
|
+
_f.sent();
|
|
161
|
+
return [3 /*break*/, 9];
|
|
162
|
+
case 8: throw error_1;
|
|
163
|
+
case 9: return [3 /*break*/, 10];
|
|
164
|
+
case 10: return [2 /*return*/];
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
function enqueueFailedAction(amqpConnection, action, deviceUid, postponable, sessionUid) {
|
|
170
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
171
|
+
var headers;
|
|
172
|
+
return __generator(this, function (_a) {
|
|
173
|
+
switch (_a.label) {
|
|
174
|
+
case 0:
|
|
175
|
+
headers = {
|
|
176
|
+
deviceUid: deviceUid,
|
|
177
|
+
sessionUid: sessionUid,
|
|
178
|
+
actionType: action.type,
|
|
179
|
+
postponable: postponable,
|
|
180
|
+
};
|
|
181
|
+
return [4 /*yield*/, amqpConnection.queuePublisher.enqueue(createChannelToDevice(amqpConnection, undefined), action, headers, EXCHANGE_ACTIONS_NOT_DELIVERED_TO_DEVICE, '', // fanout
|
|
182
|
+
{ persistent: true })];
|
|
183
|
+
case 1:
|
|
184
|
+
_a.sent();
|
|
185
|
+
return [2 /*return*/];
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* @param timestamp of action when it was sent from the device
|
|
192
|
+
*/
|
|
193
|
+
function sendFromDevice(_a) {
|
|
194
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
195
|
+
var headers;
|
|
196
|
+
var amqpConnection = _b.amqpConnection, action = _b.action, deviceUid = _b.deviceUid, sessionUid = _b.sessionUid, socketName = _b.socketName, consumerName = _b.consumerName, processUid = _b.processUid, timestamp = _b.timestamp, _c = _b.persistent, persistent = _c === void 0 ? true : _c;
|
|
197
|
+
return __generator(this, function (_d) {
|
|
198
|
+
switch (_d.label) {
|
|
199
|
+
case 0:
|
|
200
|
+
headers = {
|
|
201
|
+
deviceUid: deviceUid,
|
|
202
|
+
sessionUid: sessionUid,
|
|
203
|
+
socketName: socketName,
|
|
204
|
+
timestamp: timestamp,
|
|
205
|
+
responseQueueName: getActionsToDeviceQueueName(consumerName, processUid),
|
|
206
|
+
};
|
|
207
|
+
return [4 /*yield*/, amqpConnection.queuePublisher.enqueue(createChannelFromDevice(amqpConnection), action, headers, EXCHANGE_ACTIONS_FROM_DEVICE, // all actions are going through one queue from device
|
|
208
|
+
action.type, // routingKey=actionType, messages are routed to specific queue or to unspecific if nothing bound
|
|
209
|
+
{ persistent: persistent })];
|
|
210
|
+
case 1:
|
|
211
|
+
_d.sent();
|
|
212
|
+
return [2 /*return*/];
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
function trackActionMetrics(action, callback) {
|
|
218
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
219
|
+
var startTime, result, error_2, duration;
|
|
220
|
+
return __generator(this, function (_a) {
|
|
221
|
+
switch (_a.label) {
|
|
222
|
+
case 0:
|
|
223
|
+
deviceConsumerMetrics_1.metrics.emit('incoming_actions_received', { actionType: action.type });
|
|
224
|
+
startTime = Date.now();
|
|
225
|
+
_a.label = 1;
|
|
226
|
+
case 1:
|
|
227
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
228
|
+
return [4 /*yield*/, callback()];
|
|
229
|
+
case 2:
|
|
230
|
+
result = _a.sent();
|
|
231
|
+
deviceConsumerMetrics_1.metrics.emit('incoming_actions_successful', { actionType: action.type });
|
|
232
|
+
return [2 /*return*/, result];
|
|
233
|
+
case 3:
|
|
234
|
+
error_2 = _a.sent();
|
|
235
|
+
deviceConsumerMetrics_1.metrics.emit('incoming_actions_erred', { actionType: action.type });
|
|
236
|
+
throw error_2;
|
|
237
|
+
case 4:
|
|
238
|
+
duration = (Date.now() - startTime) / 1000;
|
|
239
|
+
deviceConsumerMetrics_1.metrics.emit('incoming_actions_processing_duration', { actionType: action.type }, duration);
|
|
240
|
+
return [7 /*endfinally*/];
|
|
241
|
+
case 5: return [2 /*return*/];
|
|
242
|
+
}
|
|
243
|
+
});
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
function bindToDevice(amqpConnection, consumerName, processUid, onAction) {
|
|
247
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
248
|
+
var onRelatedAction, cancelConsumption;
|
|
249
|
+
var _this = this;
|
|
250
|
+
return __generator(this, function (_a) {
|
|
251
|
+
switch (_a.label) {
|
|
252
|
+
case 0:
|
|
253
|
+
onRelatedAction = function (action, headers, ack, nack) { return __awaiter(_this, void 0, void 0, function () {
|
|
254
|
+
return __generator(this, function (_a) {
|
|
255
|
+
switch (_a.label) {
|
|
256
|
+
case 0: return [4 /*yield*/, trackActionMetrics(action, function () { return onAction(headers.deviceUid, headers.sessionUid, action, ack, nack); })];
|
|
257
|
+
case 1:
|
|
258
|
+
_a.sent();
|
|
259
|
+
return [2 /*return*/];
|
|
260
|
+
}
|
|
261
|
+
});
|
|
262
|
+
}); };
|
|
263
|
+
return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeExpectingConfirmationRepeatable(createChannelToDevice(amqpConnection, processUid), getActionsToDeviceQueueName(consumerName, processUid), [{ exchangeName: EXCHANGE_ACTIONS_TO_DEVICE, persistent: false }], onRelatedAction, TO_DEVICE_CONSUME_OPTIONS)];
|
|
264
|
+
case 1:
|
|
265
|
+
cancelConsumption = _a.sent();
|
|
266
|
+
return [2 /*return*/, cancelConsumption];
|
|
267
|
+
}
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Binds action messages by a specific actionTypes to a single queue. The queue is named after the input group.
|
|
273
|
+
* So, more action types are grouped together into single queue. This is preventing from stucking messages across more
|
|
274
|
+
* priority leveled groups.
|
|
275
|
+
* E.g.: The priority actions used for authentication, registration & verification should not be affected by telemetry actions in any way.
|
|
276
|
+
* The priority actions has much more strict requirements on SLA.
|
|
277
|
+
*
|
|
278
|
+
* @param consumerType the string name of consumer type which will be used as a part of queue name. For backward compatibility it can be undefined and the queue name will not contain it.
|
|
279
|
+
* @param group the string name of group which will be used as a part of queue name.
|
|
280
|
+
* @param actionTypes all types of actions which are bound to the queue.
|
|
281
|
+
* @param onAction the callback which is called for every action bound above.
|
|
282
|
+
*/
|
|
283
|
+
function bindSpecificFromDevice(amqpConnection, consumerType, group, actionTypes, onAction, options) {
|
|
284
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
285
|
+
var fullOptions, onRelatedAction;
|
|
286
|
+
var _this = this;
|
|
287
|
+
return __generator(this, function (_a) {
|
|
288
|
+
switch (_a.label) {
|
|
289
|
+
case 0:
|
|
290
|
+
fullOptions = __assign(__assign({}, FROM_DEVICE_CONSUME_OPTIONS), options);
|
|
291
|
+
onRelatedAction = function (action, headers) { return __awaiter(_this, void 0, void 0, function () {
|
|
292
|
+
return __generator(this, function (_a) {
|
|
293
|
+
switch (_a.label) {
|
|
294
|
+
case 0: return [4 /*yield*/, trackActionMetrics(action, function () {
|
|
295
|
+
return onAction({
|
|
296
|
+
action: action,
|
|
297
|
+
deviceUid: headers.deviceUid,
|
|
298
|
+
sessionUid: headers.sessionUid,
|
|
299
|
+
socketName: headers.socketName,
|
|
300
|
+
timestamp: headers.timestamp,
|
|
301
|
+
responseQueueName: headers.responseQueueName,
|
|
302
|
+
});
|
|
303
|
+
})];
|
|
304
|
+
case 1:
|
|
305
|
+
_a.sent();
|
|
306
|
+
return [2 /*return*/];
|
|
307
|
+
}
|
|
308
|
+
});
|
|
309
|
+
}); };
|
|
310
|
+
return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeRepeatable(createChannelSpecificFromDevice(amqpConnection, group), getSpecificActionsFromDeviceQueueName(consumerType, group), actionTypes.map(function (actionType) { return ({ exchangeName: EXCHANGE_ACTIONS_FROM_DEVICE, persistent: true, routingKey: actionType }); }), onRelatedAction, fullOptions)];
|
|
311
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
312
|
+
}
|
|
313
|
+
});
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* According to bindSpecificFromDevice, for all action types which were not bound there, the actions are fall backed to this consumption.
|
|
318
|
+
* Those unspecific actions has self alternate exchange and appropriate single queue.
|
|
319
|
+
* This consumption can be used for all not specifically bound actions, for example action logs of devices.
|
|
320
|
+
*
|
|
321
|
+
* @param onAction the callback which is called for every action ever not specifically bound by bindSpecificFromDevice.
|
|
322
|
+
*/
|
|
323
|
+
function bindUnspecificFromDevice(amqpConnection, consumerType, onAction, options) {
|
|
324
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
325
|
+
var fullOptions, onRelatedAction;
|
|
326
|
+
var _this = this;
|
|
327
|
+
return __generator(this, function (_a) {
|
|
328
|
+
switch (_a.label) {
|
|
329
|
+
case 0:
|
|
330
|
+
fullOptions = __assign(__assign({}, FROM_DEVICE_CONSUME_OPTIONS), options);
|
|
331
|
+
onRelatedAction = function (action, headers) { return __awaiter(_this, void 0, void 0, function () {
|
|
332
|
+
return __generator(this, function (_a) {
|
|
333
|
+
switch (_a.label) {
|
|
334
|
+
case 0: return [4 /*yield*/, trackActionMetrics(action, function () {
|
|
335
|
+
return onAction({
|
|
336
|
+
action: action,
|
|
337
|
+
deviceUid: headers.deviceUid,
|
|
338
|
+
sessionUid: headers.sessionUid,
|
|
339
|
+
socketName: headers.socketName,
|
|
340
|
+
timestamp: headers.timestamp,
|
|
341
|
+
responseQueueName: headers.responseQueueName,
|
|
342
|
+
});
|
|
343
|
+
})];
|
|
344
|
+
case 1:
|
|
345
|
+
_a.sent();
|
|
346
|
+
return [2 /*return*/];
|
|
347
|
+
}
|
|
348
|
+
});
|
|
349
|
+
}); };
|
|
350
|
+
return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeRepeatable(createChannelUnspecificFromDevice(amqpConnection), getUnspecificActionsFromDeviceQueueName(consumerType), [{ exchangeName: ALTERNATE_EXCHANGE_ACTIONS_FROM_DEVICE, persistent: true }], onRelatedAction, fullOptions)];
|
|
351
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
352
|
+
}
|
|
353
|
+
});
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
function bindFailed(amqpConnection, onAction, options) {
|
|
357
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
358
|
+
var fullOptions, onActionCallback;
|
|
359
|
+
var _this = this;
|
|
360
|
+
return __generator(this, function (_a) {
|
|
361
|
+
switch (_a.label) {
|
|
362
|
+
case 0:
|
|
363
|
+
fullOptions = __assign(__assign({}, FROM_DEVICE_CONSUME_OPTIONS), options);
|
|
364
|
+
onActionCallback = function (action, headers, ack, nack) { return __awaiter(_this, void 0, void 0, function () {
|
|
365
|
+
return __generator(this, function (_a) {
|
|
366
|
+
switch (_a.label) {
|
|
367
|
+
case 0: return [4 /*yield*/, trackActionMetrics(action, function () { return onAction(action, headers.deviceUid, headers.postponable, ack, nack); })];
|
|
368
|
+
case 1:
|
|
369
|
+
_a.sent();
|
|
370
|
+
return [2 /*return*/];
|
|
371
|
+
}
|
|
372
|
+
});
|
|
373
|
+
}); };
|
|
374
|
+
return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeExpectingConfirmationRepeatable(createChannelFailedToDevice(amqpConnection), FAILED_ACTIONS_CONSUMER_QUEUE_NAME, // failed messages are flat in one queue
|
|
375
|
+
[
|
|
376
|
+
// bind all not delivered actions (dead-lettered during delivering to device)
|
|
377
|
+
{ exchangeName: EXCHANGE_ACTIONS_NOT_DELIVERED_TO_DEVICE, persistent: true },
|
|
378
|
+
], onActionCallback, fullOptions)];
|
|
379
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
380
|
+
}
|
|
381
|
+
});
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
function createChannelFailedToDevice(amqpConnection, options) {
|
|
385
|
+
var _this = this;
|
|
386
|
+
var FAILED_ACTIONS_CHANNEL_NAME = 'actionsNotDeliveredToDevice';
|
|
387
|
+
var fullOptions = __assign(__assign({}, DEFAULT_QUEUE_OPTIONS), options);
|
|
388
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
389
|
+
var channel;
|
|
390
|
+
return __generator(this, function (_a) {
|
|
391
|
+
switch (_a.label) {
|
|
392
|
+
case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(FAILED_ACTIONS_CHANNEL_NAME, fullOptions)];
|
|
393
|
+
case 1:
|
|
394
|
+
channel = _a.sent();
|
|
395
|
+
return [4 /*yield*/, assertExchangeActionsNotDeliveredToDevice(channel)];
|
|
396
|
+
case 2:
|
|
397
|
+
_a.sent();
|
|
398
|
+
return [2 /*return*/, channel];
|
|
399
|
+
}
|
|
400
|
+
});
|
|
401
|
+
}); };
|
|
402
|
+
}
|
|
403
|
+
function createChannelFromDevice(amqpConnection, options) {
|
|
404
|
+
var _this = this;
|
|
405
|
+
var FROM_DEVICE_CHANNEL_NAME = 'actionsFromDevice';
|
|
406
|
+
var fullOptions = __assign(__assign({}, DEFAULT_QUEUE_OPTIONS), options);
|
|
407
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
408
|
+
var channel;
|
|
409
|
+
return __generator(this, function (_a) {
|
|
410
|
+
switch (_a.label) {
|
|
411
|
+
case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(FROM_DEVICE_CHANNEL_NAME, fullOptions)];
|
|
412
|
+
case 1:
|
|
413
|
+
channel = _a.sent();
|
|
414
|
+
return [4 /*yield*/, assertExchangeActionsFromDevice(channel)];
|
|
415
|
+
case 2:
|
|
416
|
+
_a.sent();
|
|
417
|
+
return [2 /*return*/, channel];
|
|
418
|
+
}
|
|
419
|
+
});
|
|
420
|
+
}); };
|
|
421
|
+
}
|
|
422
|
+
function createChannelSpecificFromDevice(amqpConnection, group, options) {
|
|
423
|
+
var _this = this;
|
|
424
|
+
var fromDeviceChannelName = "specificActionsFromDevice.".concat(group);
|
|
425
|
+
var fullOptions = __assign(__assign({}, DEFAULT_QUEUE_OPTIONS), options);
|
|
426
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
427
|
+
var channel;
|
|
428
|
+
return __generator(this, function (_a) {
|
|
429
|
+
switch (_a.label) {
|
|
430
|
+
case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(fromDeviceChannelName, fullOptions)];
|
|
431
|
+
case 1:
|
|
432
|
+
channel = _a.sent();
|
|
433
|
+
return [4 /*yield*/, assertExchangeActionsFromDevice(channel)];
|
|
434
|
+
case 2:
|
|
435
|
+
_a.sent();
|
|
436
|
+
return [2 /*return*/, channel];
|
|
437
|
+
}
|
|
438
|
+
});
|
|
439
|
+
}); };
|
|
440
|
+
}
|
|
441
|
+
function createChannelUnspecificFromDevice(amqpConnection, options) {
|
|
442
|
+
var _this = this;
|
|
443
|
+
var FROM_DEVICE_CHANNEL_NAME = 'unspecificActionsFromDevice';
|
|
444
|
+
var fullOptions = __assign(__assign({}, DEFAULT_QUEUE_OPTIONS), options);
|
|
445
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
446
|
+
var channel;
|
|
447
|
+
return __generator(this, function (_a) {
|
|
448
|
+
switch (_a.label) {
|
|
449
|
+
case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(FROM_DEVICE_CHANNEL_NAME, fullOptions)];
|
|
450
|
+
case 1:
|
|
451
|
+
channel = _a.sent();
|
|
452
|
+
return [4 /*yield*/, assertAlternateExchangeActionsFromDevice(channel)];
|
|
453
|
+
case 2:
|
|
454
|
+
_a.sent();
|
|
455
|
+
return [2 /*return*/, channel];
|
|
456
|
+
}
|
|
457
|
+
});
|
|
458
|
+
}); };
|
|
459
|
+
}
|
|
460
|
+
function createChannelToDevice(amqpConnection, processUid, options) {
|
|
461
|
+
var _this = this;
|
|
462
|
+
var TO_DEVICE_CHANNEL_NAME = 'actionsToDevice' + (typeof processUid === 'undefined' ? '' : '.' + processUid);
|
|
463
|
+
var fullOptions = __assign(__assign({}, DEFAULT_QUEUE_OPTIONS), options);
|
|
464
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
465
|
+
var channel;
|
|
466
|
+
return __generator(this, function (_a) {
|
|
467
|
+
switch (_a.label) {
|
|
468
|
+
case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(TO_DEVICE_CHANNEL_NAME, fullOptions)];
|
|
469
|
+
case 1:
|
|
470
|
+
channel = _a.sent();
|
|
471
|
+
return [4 /*yield*/, assertExchangeActionsToDevice(channel)];
|
|
472
|
+
case 2:
|
|
473
|
+
_a.sent();
|
|
474
|
+
return [2 /*return*/, channel];
|
|
475
|
+
}
|
|
476
|
+
});
|
|
477
|
+
}); };
|
|
478
|
+
}
|
|
479
|
+
function assertExchangeActionsToDevice(channel) {
|
|
480
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
481
|
+
return __generator(this, function (_a) {
|
|
482
|
+
switch (_a.label) {
|
|
483
|
+
case 0: return [4 /*yield*/, channel.assertExchange(EXCHANGE_ACTIONS_TO_DEVICE, 'fanout')];
|
|
484
|
+
case 1:
|
|
485
|
+
_a.sent();
|
|
486
|
+
return [2 /*return*/];
|
|
487
|
+
}
|
|
488
|
+
});
|
|
489
|
+
});
|
|
490
|
+
}
|
|
491
|
+
function assertExchangeActionsNotDeliveredToDevice(channel) {
|
|
492
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
493
|
+
return __generator(this, function (_a) {
|
|
494
|
+
switch (_a.label) {
|
|
495
|
+
case 0: return [4 /*yield*/, channel.assertExchange(EXCHANGE_ACTIONS_NOT_DELIVERED_TO_DEVICE, 'fanout')];
|
|
496
|
+
case 1:
|
|
497
|
+
_a.sent();
|
|
498
|
+
return [2 /*return*/];
|
|
499
|
+
}
|
|
500
|
+
});
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
function assertExchangeActionsFromDevice(channel) {
|
|
504
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
505
|
+
return __generator(this, function (_a) {
|
|
506
|
+
switch (_a.label) {
|
|
507
|
+
case 0: return [4 /*yield*/, channel.assertExchange(EXCHANGE_ACTIONS_FROM_DEVICE, 'direct', {
|
|
508
|
+
alternateExchange: ALTERNATE_EXCHANGE_ACTIONS_FROM_DEVICE,
|
|
509
|
+
})];
|
|
510
|
+
case 1:
|
|
511
|
+
_a.sent();
|
|
512
|
+
return [2 /*return*/];
|
|
513
|
+
}
|
|
514
|
+
});
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
function assertAlternateExchangeActionsFromDevice(channel) {
|
|
518
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
519
|
+
return __generator(this, function (_a) {
|
|
520
|
+
switch (_a.label) {
|
|
521
|
+
case 0: return [4 /*yield*/, channel.assertExchange(ALTERNATE_EXCHANGE_ACTIONS_FROM_DEVICE, 'fanout')];
|
|
522
|
+
case 1:
|
|
523
|
+
_a.sent();
|
|
524
|
+
return [2 /*return*/];
|
|
525
|
+
}
|
|
526
|
+
});
|
|
527
|
+
});
|
|
528
|
+
}
|
|
529
|
+
function getActionsToDeviceQueueName(consumerName, processUid) {
|
|
530
|
+
return 'actionsToDevice.' + consumerName + '.' + processUid;
|
|
531
|
+
}
|
|
532
|
+
function getSpecificActionsFromDeviceQueueName(consumerType, group) {
|
|
533
|
+
return (consumerType ? consumerType + '.' : '') + 'specificActionsFromDevice.' + group;
|
|
534
|
+
}
|
|
535
|
+
function getUnspecificActionsFromDeviceQueueName(consumerType) {
|
|
536
|
+
return (consumerType ? consumerType + '.' : '') + UNSPECIFIC_ACTIONS_FROM_DEVICE_QUEUE_NAME;
|
|
537
|
+
}
|
|
538
|
+
//# sourceMappingURL=deviceActionsQueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceActionsQueue.js","sourceRoot":"","sources":["../../../src/AMQP/DeviceActions/deviceActionsQueue.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { IAMQPConnection } from '../../amqpConnectionFactory';
|
|
2
|
+
import { IEventPayload } from '../IEvent';
|
|
3
|
+
import { IBindOptions } from '../eventQueue.utils';
|
|
4
|
+
import { EventCallback, EventOptions, IEventConsumer } from './IEventConsumer';
|
|
5
|
+
/**
|
|
6
|
+
* High level abstraction of event consumption
|
|
7
|
+
*
|
|
8
|
+
* This implementation uses AMQP queues to consume events.
|
|
9
|
+
*
|
|
10
|
+
* It abstracts all the implementation details of setting up consumption of events
|
|
11
|
+
* and provides a simple interface so that the consumer can focus on just handling the events.
|
|
12
|
+
*
|
|
13
|
+
* All events are consumed from a single queue in a sequential order.
|
|
14
|
+
* The name of the queue will be constructed from the consumer name and the domain as "<consumerName>_<domain>".
|
|
15
|
+
*/
|
|
16
|
+
export declare class AmqpEventConsumer implements IEventConsumer {
|
|
17
|
+
private amqpConnection;
|
|
18
|
+
private consumerName;
|
|
19
|
+
private domain;
|
|
20
|
+
private options?;
|
|
21
|
+
private consumerCallbacks;
|
|
22
|
+
private stopCallback;
|
|
23
|
+
private started;
|
|
24
|
+
/**
|
|
25
|
+
* @param amqpConnection The AMQP connection to use
|
|
26
|
+
* @param consumerName The name of the consumer. This is used to identify the consumer in the AMQP queue
|
|
27
|
+
* @param domain The domain to consume events from. Defaults to 'default'
|
|
28
|
+
* @param options Additional options for the consumer
|
|
29
|
+
*/
|
|
30
|
+
constructor({ amqpConnection, consumerName, domain, options, }: {
|
|
31
|
+
amqpConnection: IAMQPConnection;
|
|
32
|
+
consumerName: string;
|
|
33
|
+
domain?: string;
|
|
34
|
+
options?: IBindOptions;
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* Add a consumer for a specific event type
|
|
38
|
+
*
|
|
39
|
+
* Has to be called before calling listen(), otherwise it will throw an error.
|
|
40
|
+
*/
|
|
41
|
+
addEventConsumer<TPayload extends IEventPayload>(eventType: string, callback: EventCallback<TPayload>, option?: EventOptions): void;
|
|
42
|
+
listen(): Promise<void>;
|
|
43
|
+
close(): Promise<void>;
|
|
44
|
+
private bindEvents;
|
|
45
|
+
private shouldConsumeEvent;
|
|
46
|
+
private consumeEvent;
|
|
47
|
+
}
|