Я бы хотел иметь возможность документировать зависимости моих сервисов непосредственно в моем коде, используя аннотации Java. Эти аннотации могут содержать информацию о целевой системе, о том, является ли соединение входящим / исходящим / двухсторонним, и тип соединения (REST, RabbitMQ ...).
Это может выглядеть так:
@Dependency(target = "Twitter API", type = "Outgoing", medium = "REST")
Идея состоит в том, чтобы сгенерировать DOT-файл из всех аннотаций внутри проекта.
У меня есть четкое представление о том, как создать собственную аннотацию с необходимыми атрибутами. Тем не менее, я не уверен на , какую часть жизненного цикла компиляции / обработки я должен обрабатывать эти аннотации.
Я понимаю, что процессоры аннотаций генерируют исходные файлы, но в моем случае сгенерированные файлы вообще не требуются ни компилятором, ни самим приложением.
В идеале я хотел бы иметь возможность запускать обработку аннотаций и создание файла DOT с помощью специальной задачи Maven или Gradle.
Это что-то, что легко выполнимо при написании моих собственных аннотаций?