Annotation Interface Instrumented


@Qualifier @Retention(RUNTIME) @Target({FIELD,TYPE,METHOD,PARAMETER}) public @interface Instrumented
CDI qualifier for beans that have been wrapped with observability instrumentation (e.g. distributed tracing, context propagation, metrics).

When an instrumentation module (such as the OpenTelemetry server extra) is on the classpath, it may produce:

  • An @Instrumented A2AHttpClient that wraps the application's own HTTP client (or the default factory-created one) with trace-context header injection.
  • An @Instrumented Executor that wraps a user-provided @Named executor (or a default thread pool) with OpenTelemetry context propagation.

BasePushNotificationSender prefers @Instrumented beans when available, falling back to unqualified / @Named beans, and finally to built-in defaults.

This qualifier lets instrumentation modules add behaviour transparently, without replacing the application's custom configuration (mTLS, proxy, authentication, custom thread pools, etc.).

See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Supports programmatic CDI lookup of @Instrumented beans via CDI.current().select(A2AHttpClient.class, Instrumented.Literal.INSTANCE).