Skip to content
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

Mutator registration API #4478

Closed
timbussmann opened this issue Feb 13, 2017 · 7 comments
Closed

Mutator registration API #4478

timbussmann opened this issue Feb 13, 2017 · 7 comments
Assignees
Milestone

Comments

@timbussmann
Copy link
Contributor

Mutators are not registered automatically and in order to the register them, you have to use the container API (see https://docs.particular.net/nservicebus/pipeline/message-mutators#registering-a-mutator) to do so which is:

  • Painful to use
  • Hard to version / evolve
  • Something we want to remove because of the container dependency

Instead there should be a dedicated API which makes it easy to register mutators and also makes clear at what configuration levels mutators can be registered.

Based on the issue here: #4463 we're in favor of an API which does not allow mutator registration from feature setups because of the following arguments:

  • Mutators are a high level abstraction API designed for direct usage by users, custom features which require mutators should instead rely on behaviors and not take a dependency on the mutator API.
  • As we consider mutators as an "optional" feature, other features should not rely on mutators being enabled and usable.
@bording
Copy link
Member

bording commented Feb 13, 2017

Whatever we do with this should also apply to the Unit of Work, because it has the same set of problems:

https://docs.particular.net/nservicebus/pipeline/unit-of-work#implementing-custom-units-of-work-registering-a-unit-of-work

@timbussmann
Copy link
Contributor Author

@bording 👍 but should we raise a dedicated issue?

@bording
Copy link
Member

bording commented Feb 13, 2017

@timbussmann I was thinking that it made sense to consider them together, but I suppose they could be tracked separately.

@andreasohlund
Copy link
Member

Talked to @timbussmann and we propose just removing the mutator api and go with a stage instead

#4493

In short: that issue should cover the UoW parts of this issue?

@danielmarbach
Copy link
Contributor

Should we also revise the decision around connectors? Because every connector is not extendable basically

@andreasohlund
Copy link
Member

andreasohlund commented Feb 22, 2017 via email

@timbussmann timbussmann added this to the 6.2.0 milestone Feb 22, 2017
@timbussmann timbussmann self-assigned this Feb 23, 2017
@timbussmann timbussmann mentioned this issue Feb 23, 2017
1 task
@timbussmann
Copy link
Contributor Author

introduced the new API in #4497 , closing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants