ppkarwasz commented on PR #88: URL: https://github.com/apache/logging-log4j-tools/pull/88#issuecomment-1853938087
@vy, Here are some suggestions on how to review this PR. ### How to review this PR This PR contains multiple contents that might require review: 1. The contents of a `/META-INF/log4j/plugins.xml` file are transformed into Java classes using Modello. These classes are described here: [src/main/mdo/plugins.xml](https://github.com/apache/logging-log4j-tools/blob/f671c034f3d20aef65571456c537b2757e0a9f29/log4j-docgen/src/main/mdo/plugins.xml) The model should be minimal and the attributes should be rationally named (naming is not my strong suite). An example of a `/META-INF/log4j/plugins.xml` file is given here: [test/resources/META-INF/log4j/plugins.xml](https://github.com/apache/logging-log4j-tools/blob/f671c034f3d20aef65571456c537b2757e0a9f29/log4j-docgen/src/test/resources/META-INF/log4j/plugins.xml) 2. From the model I generate an XSD. The `SchemaGenerator` accepts multiple `plugins.xml` files to be merged together. There is actually always an _internal_ file that is added: [src/main/resources/org/apache/logging/log4j/docgen/internal/configuration.xml](https://github.com/apache/logging-log4j-tools/blob/f671c034f3d20aef65571456c537b2757e0a9f29/log4j-docgen/src/main/resources/org/apache/logging/log4j/docgen/internal/configuration.xml) The generated XSD (cf. [src/test/resources/xsd/log4j.xsd](https://github.com/apache/logging-log4j-tools/blob/f671c034f3d20aef65571456c537b2757e0a9f29/log4j-docgen/src/test/resources/xsd/log4j.xsd)) should be powerful enough to easily write a configuration file. Due to the usage of `<group>` each plugin element contains a `<sequence>` of sub-elements, i.e. order matter. If you have a solution that accepts elements in any order let me know (`all` can not contain a `group`). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
