oscerd opened a new pull request, #24975:
URL: https://github.com/apache/camel/pull/24975

   ## Description
   
   Fixes [CAMEL-24207](https://issues.apache.org/jira/browse/CAMEL-24207). 
`Transcribe2Operations` declares 30 operations and `Transcribe2Producer` 
switches on all of them, but **21 handler methods had empty bodies**:
   
   ```java
   private void createVocabularyFilter(TranscribeClient transcribeClient, 
Exchange exchange) {
       // Implementation for create vocabulary filter
   }
   ```
   
   Selecting any of those operations was a **silent no-op** — no AWS call, no 
error, exchange unchanged — so a route appeared to succeed while doing nothing.
   
   ## Fix
   
   All 21 are now implemented following the pattern of the working operations 
(POJO request branch + header-driven branch):
   
   | Family | Operations |
   |---|---|
   | Vocabulary filters | create, get, list, update, delete |
   | Custom language models | create, describe, list, delete |
   | Medical vocabularies | create, get, list, update, delete |
   | Medical transcription jobs | start, get, list, delete |
   | Tagging | tagResource, untagResource, listTagsForResource |
   
   Adds the header constants they need (`MAX_RESULTS`, `NEXT_TOKEN`, 
`VOCABULARY_FILE_URI`, `BASE_MODEL_NAME`, `INPUT_DATA_S3_URI`, 
`DATA_ACCESS_ROLE_ARN`, `OUTPUT_BUCKET_NAME`, `SPECIALTY`, `TYPE`) — note the 
pre-existing constants (`VOCABULARY_FILTER_NAME`, `LANGUAGE_MODEL_NAME`, 
`MEDICAL_TRANSCRIPTION_JOB_NAME`, `RESOURCE_ARN`, `TAGS`, `TAG_KEYS`) show 
these operations were always intended to work.
   
   Small private helpers (`applyIfPresent`, `applyMaxResults`, `execute`) keep 
each operation readable and make AWS error logging consistent with the existing 
ones.
   
   Chose to implement rather than remove the enum values, since dropping 
published operations would be a breaking API change.
   
   ## Tests
   
   Adds `Transcribe2ProducerImplementedOperationsTest` — 7 tests covering one 
operation from each family (including the `InputDataConfig` and tag-map 
conversions), asserting the headers reach the AWS request. The 6 pre-existing 
producer tests still pass. Regenerated component/catalog/endpoint-DSL metadata 
is included.
   
   ## Backport
   
   Targeting **4.22.0 only** — this adds a substantial amount of new behaviour 
and is not appropriate for the maintenance branches.
   
   ---
   _Claude Code on behalf of oscerd_


-- 
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]

Reply via email to