Example #1
0
        public bool ExistsMessage <TMessage>(TMessage message)
            where TMessage : new()
        {
            var queueName = QueueNameGenerator.GetQueueName <TMessage>();

            return(ExistsMessage(queueName, message));
        }
Example #2
0
        public QueueProducer Send <TMessage>(TMessage message)
            where TMessage : new()
        {
            var queueName = QueueNameGenerator.GetQueueName <TMessage>();

            return(Send(queueName, message));
        }
Example #3
0
        public QueueConsumer(string queueName, int maximumThreads)
        {
            MaximumThreads = maximumThreads;
            HostId         = ConfigSource.GetAppSetting("DQueue.HostId");
            QueueName      = queueName ?? QueueNameGenerator.GetQueueName <TMessage>();
            Timeout        = ConfigSource.FirstAppSetting("DQueue.ConsumerTimeout", "ConsumerTimeout").AsNullableTimeSpan();

            if (string.IsNullOrWhiteSpace(HostId))
            {
                throw new ArgumentNullException("HostId");
            }

            if (string.IsNullOrWhiteSpace(QueueName))
            {
                throw new ArgumentNullException("queueName");
            }

            if (MaximumThreads < 1)
            {
                throw new ArgumentOutOfRangeException("maximumThreads");
            }

            _provider = Constants.DefaultProvider;
            _cts      = new CancellationTokenSource();

            _messageHandlers  = new List <Action <DispatchContext <TMessage> > >();
            _timeoutHandlers  = new List <Action <DispatchContext <TMessage> > >();
            _completeHandlers = new List <Action <DispatchContext <TMessage> > >();
        }