gboersma / uml-java-doclet

Doclet to generate UML diagrams for Javadoc using PlantUML.
74 stars 29 forks source link

exclude classes #6

Closed feras-om closed 4 years ago

feras-om commented 5 years ago

hi i try to exclude some classes from appearing in the Diagram,depending on which annotation it has, and this could be solvedby creating function and call this function many times in deferant files (ModelPackage.java,ontextDiagramPrinter.java,Model.java,ModelClass.java) and it works. but in other hand i would like to do the same job using pom.xml parameters but unfortunately it didnt works please help me if you have an idea. you could also check my work Thanks https://github.com/feras-om/uml-java-doclet/tree/master/src/main/java/info/leadinglight/umljavadoclet

gboersma commented 5 years ago

Without being able to spend much time at this, I would think your best approach may be to pass it into the program via JVM parameters / arguments, and use the Maven plugin for executing the program to provide the parameters.

You could expand this idea to "profiles"- so, for example, you may have a standard set of settings for Spring framework, versus Java EE, etc. You can build these profiles into your program so that the caller can choose one of the pre-built or pass in their own settings.

gboersma commented 4 years ago

Taking a closer look, it looks like what you are looking for is a way to fine-tune the diagram generation with different options, such as "blacklisting" certain classes, left-to-right orientation, not generating constructors for the context class, etc. as well as being able to specify these options in the pom.xml file. I'll spend some time looking at that.

gboersma commented 4 years ago

Cleaned up the DiagramOptions class to make it much easier to specify new options. Added exclude-classes to specify a comma-separated list of qualified class names and exclude-packages to specify a comma-separated list of package names for classes to not show on class context diagrams at the other end of relationships.