I’m in the process of integrating axon framework into seedstack (http://seedstack.org/) to add cqrs capabilities thanks to axon.
Seedstack takes advantage of Domain-Driven Design to build great Java microservices and applications
by offering a clean API/Specs around DDD tacticals building blocks in one hand and a robust implementation
of that specs in the other hand (mainly guice based via nuun kernel).
It would be great if axon could add a way to configure the annotations it uses to declare its own building blocks to allow clean integration into other stacks.
@AggregateIdentifier (mandatory): for instance today javax.persistence.Id is also a trigger to identify the identifier of an aggregate, we could configure ours.
The external annotation could be configured via the Configuration API.
Configurer configurer = DefaultConfigurer.defaultConfiguration(); configurer.registerAggregateIdentifier(OtherStackAggregateIdentifier.class); ...
I can imagine propose a PR when I understand where to make the modification, if this is something you estimate OK.