Пример #1
0
        public async Task <string> EnqueueAsync(TData data, string messageId = null)
        {
            try
            {
                var message = _messageFactory.Create(data, messageId);
                var key     = QueueHelpers.GetRedisKey <TData>();

                var count = await _redisCache.ListRightPushAsync(key, message).ConfigureAwait(false);

                _logger.LogDebug($"Current number of elements in the {key} queue: {count}");

                return(message.Id);
            }
            catch (Exception e)
            {
                throw HandleException(nameof(EnqueueAsync), "Error while adding message in the queue.", e);
            }
        }