Skip to content

CAMEL-23535: camel-api - batches 13-15: enhance class-level Javadoc for management, threading, and observability SPIs#24060

Open
ammachado wants to merge 3 commits into
apache:mainfrom
ammachado:CAMEL-23535
Open

CAMEL-23535: camel-api - batches 13-15: enhance class-level Javadoc for management, threading, and observability SPIs#24060
ammachado wants to merge 3 commits into
apache:mainfrom
ammachado:CAMEL-23535

Conversation

@ammachado

Copy link
Copy Markdown
Contributor

Description

Continues the systematic Javadoc improvement of core/camel-api started in CAMEL-23535.
This PR adds comprehensive class-level Javadoc to 19 SPI types across three logical batches:

Batch 13 — JMX Management SPIs
ManagementAgent, ManagementStrategy, ManagementStrategyFactory, ManagementNameStrategy,
ManagementObjectStrategy, ManagementObjectNameStrategy, ManagementMBeanAssembler,
ManagementInterceptStrategy

Documents the two-level management design (strategy = high-level coordinator, agent = low-level JMX bridge),
the ObjectName construction pipeline, and the instrumentation wrapping used for EIP statistics collection.

Batch 14 — Threading and Scheduling SPIs
ExecutorServiceManager, ThreadPoolProfile, ThreadPoolFactory, BackOffTimerFactory,
ScheduledPollConsumerScheduler, ReactiveExecutor

Documents the layering between the high-level manager (Camel concepts: profiles, naming, lifecycle)
and the low-level factory (pure JDK types, designed for JEE WorkManager substitution), plus the
reactive executor's async dispatch model.

Batch 15 — Observability SPIs
EventNotifier, EventFactory, Tracer, CamelLogger, CamelMDCService

Documents the producer/consumer split between EventFactory (mints event objects) and EventNotifier
(reacts to them), the Tracer before/after node interception model and standby mode, and
CamelMDCService's role in propagating MDC context across async continuation threads.

All types now include at least one link to the relevant Camel user manual page and @see cross-references
to related sibling types. No method signatures, annotations, or non-Javadoc code were changed.

Target

  • I checked that the commit is targeting the correct branch (Camel 4 uses the main branch)

Tracking

  • If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

  • I checked that each commit in the pull request has a meaningful subject line and body.
  • I have run mvn clean install -DskipTests locally from root folder and I have committed all auto-generated changes.

Claude Code on behalf of Adriano Machado

ammachado and others added 3 commits June 16, 2026 15:38
…nagement SPIs

Adds comprehensive class-level Javadoc to the 8 JMX management SPI types in
org.apache.camel.spi: ManagementAgent, ManagementStrategy, ManagementStrategyFactory,
ManagementNameStrategy, ManagementObjectStrategy, ManagementObjectNameStrategy,
ManagementMBeanAssembler, and ManagementInterceptStrategy.

Each type now documents its role in the two-level management design
(strategy = high-level coordinator, agent = low-level JMX bridge), its
relationship to sibling SPIs, and links to the JMX user manual page.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…reading and scheduling SPIs

Adds comprehensive class-level Javadoc to 6 threading/scheduling SPI types:
ExecutorServiceManager, ThreadPoolProfile, ThreadPoolFactory, BackOffTimerFactory,
ScheduledPollConsumerScheduler, and ReactiveExecutor.

Each type now documents its role in Camel's threading model, the layering between
the high-level manager and the low-level factory, and links to the Threading Model
user manual page.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…servability SPIs

Adds comprehensive class-level Javadoc to 5 observability SPI types:
EventNotifier, EventFactory, Tracer, CamelLogger, and CamelMDCService.

Documents the producer/consumer split between EventFactory (mints event objects)
and EventNotifier (observes and reacts), the Tracer's before/after node interception
model and standby mode, CamelLogger's level+marker configuration purpose, and
CamelMDCService's role in propagating MDC across async exchange continuations.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@ammachado ammachado marked this pull request as ready for review June 16, 2026 19:40
@github-actions

Copy link
Copy Markdown
Contributor

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@orpiske orpiske left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good and important work that will benefit multiple projects in the ecosystem.

Thanks for this!

@github-actions github-actions Bot added the core label Jun 16, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🧪 CI tested the following changed modules:

  • core/camel-api

ℹ️ Dependent modules were not tested because the total number of affected modules exceeded the threshold (50). Use the test-dependents label to force testing all dependents.


⚙️ View full build and test results

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants