Riduidel / aadarchi

A maven archetype to generate easily projects allowing architecture description using a mix of C4, agile architecture, Asciidoc and PlantUML
https://riduidel.github.io/aadarchi/
Apache License 2.0
40 stars 12 forks source link

Update views after enhancements #274

Closed Riduidel closed 1 year ago

Riduidel commented 1 year ago

Currently, views are created at workspace.dsl loading. This prevents enhancements (typically maven ones).

Hopefully, the enhancer already exists : it is ViewUpdater, located into architecture-documentation.

So

  1. Move ViewUpdater into base project org.ndx.aadarchi.base.enhancers.graph package
  2. In ViewUpdater, remove the name based check and only apply view updating on filtered view (https://github.com/structurizr/dsl/blob/master/docs/language-reference.md#filtered-view)
  3. Add in documentation (but where?) the fact that view updating will be based on filtered view
Riduidel commented 1 year ago

@AcevedoR In this issue we're talking about updating views after having let all enhancers run. What would you prefer ?

Se-C12 commented 1 year ago

do I have to include or exclude some elements for the filtered view?

Riduidel commented 1 year ago

No, you take all elements added during discovery to current diagram. That's exactly what ViewUpdater do. However, if you have any idea on how to have some views updated while others are not it could be very cool.

Riduidel commented 1 year ago

So, steps are

Riduidel commented 1 year ago

Seems like updating structurizr to latest version would allow definition of properties in views (see https://github.com/structurizr/java/releases/tag/v1.16.1) which in turn would allow us to reuse the initial view updated with an aadarchi.auto.include property set to true (or any non-false value).

@Sese-collab Can you take a look at that possibility ?