-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better handling for when AddAWSMessageBus is invoked multiple times? #152
Comments
Needs review with the team. Going with the example mentioned at Dependency injection in ASP.NET Core > Service registration methods, services.AddSingleton<IMyDependency, MyDependency>();
services.AddSingleton<IMyDependency, DifferentDependency>();
public class MyService
{
public MyService(IMyDependency myDependency,
IEnumerable<IMyDependency> myDependencies)
{
Trace.Assert(myDependency is DifferentDependency);
var dependencyArray = myDependencies.ToArray();
Trace.Assert(dependencyArray[0] is MyDependency);
Trace.Assert(dependencyArray[1] is DifferentDependency);
}
}
|
Hi @brendonparker, we have discussed this issue internally and we believe that Option 1 is the best option. We appreciate it if you could submit a PR that would implement Option 1 as that will help us prioritize this issue, review it and get it merged in. Thanks in advance! |
There are a few different ways of accomplishing Option 1.
|
Describe the feature
When
AddAWSMessageBus
is invoked multiple times, previousIMessageConfiguration
configurations are overwritten/lost. Specifically, the subscriber mappings.https://github.com/awslabs/aws-dotnet-messaging/blob/main/src/AWS.Messaging/Configuration/MessageBusBuilder.cs#L311
Use Case
I'm attempting to register message handlers within various sub modules/assemblies, instead of needing to have the top most dependency responsible for all the registration.
Proposed Solution
Various ways this may be addressed...
Option 1: Merge in existing configuration (subscriber mappings) with new configuration on subsequent calls.
Option 2: A separate API for adding message handlers (separate from
AddAWSMessageBus
).Option 3: Decide this is unsupported and make it more clear. Perhaps a runtime check to know if it has already been configured.
Other Information
No response
Acknowledgements
AWS.Messaging (or related) package versions
AWS.Messaging 0.9.1
Targeted .NET Platform
.NET 8
Operating System and version
AmazonLinux
The text was updated successfully, but these errors were encountered: