Andrea Cosentino created CAMEL-26844:
----------------------------------------
Summary: camel-opa/openfga/spiffe - support asynchronous decision
processing
Key: CAMEL-26844
URL: https://issues.apache.org/jira/browse/CAMEL-26844
Project: Camel
Issue Type: Improvement
Components: camel-spiffe
Reporter: Andrea Cosentino
Assignee: Andrea Cosentino
h2. Problem / motivation
The three producers extend DefaultProducer. Remote authorization/identity calls
block the invoking routing thread; OpenFGA already returns CompletableFuture
values that can be bridged into Camel callbacks.
h2. Proposed scope
Add asynchronous producer/security-policy processing where useful, starting
with OpenFGA futures. Define managed executor offload for genuinely blocking
OPA/SPIFFE paths instead of assuming they have nonblocking SDK APIs. Keep
downstream async routing intact. Document connect/read/request/total deadlines,
cancellation and executor bounds without renaming existing options
unnecessarily.
h2. Acceptance criteria / validation
* Test callback exactly once, completion failure, interruption/cancellation,
shutdown and bounded saturation.
* Preserve exchange state and exception/fail-open semantics.
* Demonstrate concurrency benefit without unbounded thread creation.
* Verify equivalent synchronous ProducerTemplate use.
h2. References
*
https://github.com/apache/camel/blob/5686684cb418/components/camel-openfga/src/main/java/org/apache/camel/component/openfga/OpenFgaProducer.java#L64
*
https://github.com/apache/camel/blob/5686684cb418/components/camel-opa/src/main/java/org/apache/camel/component/opa/OpaProducer.java#L27
*
https://github.com/apache/camel/blob/5686684cb418/components/camel-spiffe/src/main/java/org/apache/camel/component/spiffe/SpiffeProducer.java#L30
Source: read-only component audit at 5686684cb418. Recheck current main before
implementing; historical references identify the audited code.
_AI-generated by Codex on behalf of oscerd (JIRA: acosentino)._
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)