public static void UseServiceBusQueueMessageProcessor(
            this IAppBuilder app,
            string connectionString,
            string queueName,
            BrokeredMessageSerializer serializer,
            IMessageHandler messageHandler,
            IMessageProcessingExceptionHandler <BrokeredMessage> exceptionHandler)
        {
            if (app == null)
            {
                throw new ArgumentNullException(nameof(app));
            }

            if (connectionString == null)
            {
                throw new ArgumentNullException(nameof(connectionString));
            }

            if (queueName == null)
            {
                throw new ArgumentNullException(nameof(queueName));
            }

            if (serializer == null)
            {
                throw new ArgumentNullException(nameof(serializer));
            }

            if (messageHandler == null)
            {
                throw new ArgumentNullException(nameof(messageHandler));
            }

            if (exceptionHandler == null)
            {
                throw new ArgumentNullException(nameof(exceptionHandler));
            }

            var queueClient = QueueClient.CreateFromConnectionString(connectionString, queueName);

            CancellationToken cancellationToken = new AppProperties(app.Properties).OnAppDisposing;

            var processor = new BrokeredMessageProcessor(
                serializer,
                messageHandler,
                exceptionHandler,
                cancellationToken);

            queueClient.OnMessageAsync(processor.ProcessMessage);

            cancellationToken.Register(queueClient.Close);
        }
 public static void UseServiceBusQueueMessageProcessor(
     this IAppBuilder app,
     string connectionString,
     string queueName,
     BrokeredMessageSerializer serializer,
     IMessageHandler messageHandler)
 {
     app.UseServiceBusQueueMessageProcessor(
         connectionString,
         queueName,
         serializer,
         messageHandler,
         _defaultExceptionHandler);
 }
 public Base()
 {
     _target = new BrokeredMessageSerializer <SchematizedType>();
 }