public SystemInformationMessageQueueWorkerFactory(ISystemInformationSender systemInformationSender, IMessageQueueProvider <SystemInformation> messageQueueProvider)
        {
            if (systemInformationSender == null)
            {
                throw new ArgumentNullException("systemInformationSender");
            }

            if (messageQueueProvider == null)
            {
                throw new ArgumentNullException("messageQueueProvider");
            }

            this.systemInformationSender = systemInformationSender;
            this.messageQueueProvider    = messageQueueProvider;
        }
        public SystemInformationMessageQueueWorkerFactory(ISystemInformationSender systemInformationSender, IMessageQueueProvider<SystemInformation> messageQueueProvider)
        {
            if (systemInformationSender == null)
            {
                throw new ArgumentNullException("systemInformationSender");
            }

            if (messageQueueProvider == null)
            {
                throw new ArgumentNullException("messageQueueProvider");
            }

            this.systemInformationSender = systemInformationSender;
            this.messageQueueProvider = messageQueueProvider;
        }
        public SystemInformationMessageQueueWorker(ISystemInformationSender systemInformationSender, IMessageQueue <SystemInformation> workQueue, IMessageQueue <SystemInformation> errorQueue)
        {
            if (systemInformationSender == null)
            {
                throw new ArgumentNullException("systemInformationSender");
            }

            if (workQueue == null)
            {
                throw new ArgumentNullException("workQueue");
            }

            if (errorQueue == null)
            {
                throw new ArgumentNullException("errorQueue");
            }

            this.systemInformationSender = systemInformationSender;
            this.workQueue  = workQueue;
            this.errorQueue = errorQueue;
        }
        public SystemInformationMessageQueueWorker(ISystemInformationSender systemInformationSender, IMessageQueue<SystemInformation> workQueue, IMessageQueue<SystemInformation> errorQueue)
        {
            if (systemInformationSender == null)
            {
                throw new ArgumentNullException("systemInformationSender");
            }

            if (workQueue == null)
            {
                throw new ArgumentNullException("workQueue");
            }

            if (errorQueue == null)
            {
                throw new ArgumentNullException("errorQueue");
            }

            this.systemInformationSender = systemInformationSender;
            this.workQueue = workQueue;
            this.errorQueue = errorQueue;
        }