public SendSettings GetDeadLetterSettings(ISubscriptionConfigurator configurator, Uri hostAddress) { var description = configurator.GetSubscriptionDescription(); var deadLetterEndpointAddress = new ServiceBusEndpointAddress(hostAddress, description.SubscriptionName + DeadLetterQueueSuffix); var queueDescription = Defaults.CreateQueueDescription(deadLetterEndpointAddress.Path); queueDescription.DefaultMessageTimeToLive = description.DefaultMessageTimeToLive; queueDescription.AutoDeleteOnIdle = description.AutoDeleteOnIdle; return(new QueueSendSettings(queueDescription)); }
public SendSettings GetDeadLetterSettings(ISubscriptionConfigurator configurator, string basePath) { var description = configurator.GetSubscriptionDescription(); basePath = basePath.Trim('/'); var path = description.Name + DeadLetterQueueSuffix; var queuePath = string.IsNullOrEmpty(basePath) ? path : $"{basePath}/{path.Trim('/')}"; var queueDescription = Defaults.CreateQueueDescription(queuePath); queueDescription.DefaultMessageTimeToLive = description.DefaultMessageTimeToLive; queueDescription.AutoDeleteOnIdle = description.AutoDeleteOnIdle; return(new QueueSendSettings(queueDescription)); }
public SendSettings GetErrorSettings(ISubscriptionConfigurator configurator, Uri hostAddress) { var description = configurator.GetSubscriptionDescription(); var errorEndpointAddress = new ServiceBusEndpointAddress(hostAddress, description.SubscriptionName + ErrorQueueSuffix); var queueDescription = Defaults.CreateQueueDescription(errorEndpointAddress.Path); queueDescription.DefaultMessageTimeToLive = description.DefaultMessageTimeToLive; queueDescription.AutoDeleteOnIdle = description.AutoDeleteOnIdle; var errorSettings = new QueueSendSettings(queueDescription); ConfigureErrorSettings?.Invoke(errorSettings); return(errorSettings); }