Remove "Default" rule when the class is Instantiated
This commit is contained in:
parent
e454940801
commit
4399d6a4f3
@ -30,7 +30,8 @@
|
||||
_subscriptionClient = new SubscriptionClient(serviceBusPersisterConnection.ServiceBusConnectionStringBuilder,
|
||||
subscriptionClientName);
|
||||
|
||||
CreateConsumerChannel();
|
||||
RemoveDefaultRule();
|
||||
RegisterSubscriptionClientMessageHandler();
|
||||
}
|
||||
|
||||
public void Publish(IntegrationEvent @event)
|
||||
@ -60,7 +61,7 @@
|
||||
var eventName = typeof(T).Name;
|
||||
var containsKey = _subsManager.HasSubscriptionsForEvent<T>();
|
||||
if (!containsKey)
|
||||
{
|
||||
{
|
||||
try
|
||||
{
|
||||
_subscriptionClient.AddRuleAsync(new RuleDescription
|
||||
@ -104,7 +105,7 @@
|
||||
_subsManager.Clear();
|
||||
}
|
||||
|
||||
private void CreateConsumerChannel()
|
||||
private void RegisterSubscriptionClientMessageHandler()
|
||||
{
|
||||
_subscriptionClient.RegisterMessageHandler(
|
||||
async (message, token) =>
|
||||
@ -132,5 +133,20 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void RemoveDefaultRule()
|
||||
{
|
||||
try
|
||||
{
|
||||
_subscriptionClient
|
||||
.RemoveRuleAsync(SubscriptionClient.DefaultRule)
|
||||
.GetAwaiter()
|
||||
.GetResult();
|
||||
}
|
||||
catch (MessagingEntityNotFoundException)
|
||||
{
|
||||
_logger.LogInformation($"The messaging entity {SubscriptionClient.DefaultRule} Could not be found.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user