Skip to content

[main] Revamp the Extending, Plugins, Architecture, and Programmatic configuration pages - #4230

Open
vpelikh wants to merge 5 commits into
apache:mainfrom
vpelikh:GH-2716-port-to-main
Open

[main] Revamp the Extending, Plugins, Architecture, and Programmatic configuration pages#4230
vpelikh wants to merge 5 commits into
apache:mainfrom
vpelikh:GH-2716-port-to-main

Conversation

@vpelikh

@vpelikh vpelikh commented Jul 30, 2026

Copy link
Copy Markdown

This PR ports the documentation updates from PR #2696 to the current main branch.

The original PR #2716 was inactive for 2 years. I picked it up, cherry-picked its commits, and addressed all outstanding review comments.

Changes (5 commits)

1. Revamp pages (Volkan Yazıcı)

  • Rewrote architecture.adoc, extending.adoc, plugins.adoc, customconfig.adoc with updated content
  • Updated dependencyinjection.adoc with restructured sections (Overview, Injection Points, Names/Qualifiers, Scopes, etc.)
  • Added example files for custom configuration (XML, JSON, YAML, Properties, Java)
  • Removed deprecated articles.adoc, thanks.adoc, Log4jClasses.jpg
  • Updated cross-references across related doc pages

2. Update plugin manual for 3.x plugin API (Matt Sicker)

  • Updated plugins.adoc to use @Plugin + @Configurable + @Namespace pattern instead of @Plugin(category=...)
  • Updated Javadoc links from log4j-core to log4j-plugins
  • Fixed RequiredClass.java Javadoc

3. Update plugins, extending, DI docs (Matt Sicker)

  • Updated appenders.adoc, filters.adoc, lookups.adoc plugin annotation references
  • Updated configuration.adoc with extension point documentation
  • Updated dependencyinjection.adoc, extending.adoc, layouts.adoc

4. Fix typo (Matt Sicker)

  • Fixed denots the thedenotes in pattern-layout.adoc

5. Address review comments (Vasily Pelikh)

  • Updated XmlConfigurationFactory (order 5) and JsonConfigurationFactory (order 6) from @Order to @Ordered
  • OrderComparator now supports both @Order (legacy) and @Ordered (new) via AnnotationUtil.getOrder()
  • Updated ExampleConfigurationFactory.java from @Plugin(category=...) + @Order@Plugin + @Namespace + @Ordered
  • Added conditional annotations section to plugins.adoc (@ConditionalOnMissingBinding, @ConditionalOnPresentBindings)
  • Enhanced @PluginAliases documentation in plugins.adoc with examples

Review status

All items from the review comment have been addressed.

vy and others added 5 commits July 30, 2026 15:30
…nal annotations section

- Update XmlConfigurationFactory and JsonConfigurationFactory from @order to @ordered
- Update OrderComparator to support @ordered via AnnotationUtil
- Update example files and documentation to use @ordered
- Add conditional annotations section to plugins.adoc
- Enhance @PluginAliases documentation in plugins.adoc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

3 participants