/// <summary>
 /// Creates a new instance, using the init parameters of a <see cref="StatefulService"/>
 /// </summary>
 /// <param name="receiver">(Required) Processes incoming message batches.</param>
 /// <param name="context">(Optional) The context that was used to init the Reliable Service that uses this listener.</param>
 /// <param name="serviceBusTopicName">The name of the monitored Service Bus Topic</param>
 /// <param name="serviceBusSubscriptionName">The name of the monitored Service Bus Topic Subscription</param>
 /// <param name="serviceBusSendConnectionString">(Optional) A Service Bus connection string that can be used for Sending messages.
 /// (Returned as Service Endpoint.) When not supplied, an App.config appSettings value with key 'Microsoft.ServiceBus.ConnectionString.Receive'
 ///  is used.</param>
 /// <param name="serviceBusReceiveConnectionString">(Optional) A Service Bus connection string that can be used for Receiving messages.
 ///  When not supplied, an App.config appSettings value with key 'Microsoft.ServiceBus.ConnectionString.Receive'
 ///  is used.</param>
 /// <param name="requireSessions">Indicates whether the provided Message Queue requires sessions.</param>
 public ServiceBusSubscriptionBatchCommunicationListener(IServiceBusMessageBatchReceiver receiver, ServiceContext context, string serviceBusTopicName, string serviceBusSubscriptionName, string serviceBusSendConnectionString = null, string serviceBusReceiveConnectionString = null, bool requireSessions = false)
     : base(context, serviceBusTopicName, serviceBusSubscriptionName, serviceBusSendConnectionString, serviceBusReceiveConnectionString, requireSessions)
 {
     if (receiver == null)
     {
         throw new ArgumentNullException(nameof(receiver));
     }
     BatchReceiver = receiver;
 }
 /// <summary>
 /// Creates a new instance, using the init parameters of a <see cref="StatefulService"/>
 /// </summary>
 /// <param name="receiver">(Required) Processes incoming message batches.</param>
 /// <param name="context">(Optional) The context that was used to init the Reliable Service that uses this listener.</param>
 /// <param name="serviceBusQueueName">The name of the monitored Service Bus Queue</param>
 /// <param name="serviceBusSendConnectionString">(Optional) A Service Bus connection string that can be used for Sending messages.
 /// (Returned as Service Endpoint.) When not supplied, an App.config appSettings value with key 'Microsoft.ServiceBus.ConnectionString.Receive'
 ///  is used.</param>
 /// <param name="serviceBusReceiveConnectionString">(Optional) A Service Bus connection string that can be used for Receiving messages.
 ///  When not supplied, an App.config appSettings value with key 'Microsoft.ServiceBus.ConnectionString.Receive'
 ///  is used.</param>
 /// <param name="requireSessions">Indicates whether the provided Message Queue requires sessions.</param>
 public ServiceBusQueueBatchCommunicationListener(IServiceBusMessageBatchReceiver receiver, ServiceContext context, string serviceBusQueueName, string serviceBusSendConnectionString = null, string serviceBusReceiveConnectionString = null, bool requireSessions = false)
     : base(context, serviceBusQueueName, serviceBusSendConnectionString, serviceBusReceiveConnectionString, requireSessions)
 {
     BatchReceiver = receiver;
 }