holixon / axon-avro

An ecosystem for using Apache Avro as serialization format for Axon messages
Apache License 2.0
6 stars 0 forks source link

Support jmolecule annotations on generated code - first step #141

Open jangalinski opened 1 month ago

jangalinski commented 1 month ago

jmolecules defines a vocabulary as annotations that allow us to mark code as DDD/CQRS behavior.

Examples: data classes that define commands or events should be marked with the Command or DomainEvent annotations, command handlers that accept a command and publish an event should be marked with DomainEventPublisher and CommandHandler, ...

This feature needs to be optional, so if the app using the code generator does not define dependencies on jmolecules, the code should not be added, so we do not get unwanted compile errors and force apps to use jmolecules when they do not want to.

Scope

The first implementation should provide AnnotationSpec abstractions for the relevant jmolecules annotations and processors to enhance generated specs where applicable.

A processor must be added that supports Command and DomainEvent.

jangalinski commented 1 month ago

see #142