[ 
https://issues.apache.org/jira/browse/CAMEL-26245?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen reassigned CAMEL-26245:
-----------------------------------

    Assignee: Claus Ibsen

> camel-api-component-maven-plugin - the catalog method signatures show the 
> argument names before substitution, so inBody with the shown name fails with 
> No matching method
> -------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-26245
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26245
>             Project: Camel
>          Issue Type: Bug
>          Components: tooling
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Minor
>             Fix For: 4.24.0
>
>
> Found while adding the catalog body types of google-calendar, google-drive, 
> google-mail and google-sheets (CAMEL-24961, PR #28403).
> h4. 1. The catalog signatures name the argument content, but the endpoint 
> expects the substituted name
> The google-calendar, google-drive, google-mail and google-sheets {{pom.xml}} 
> rename the {{content}} argument with {{<substitution>}} (for example 
> {{content}} of type {{ModifyMessageRequest}} becomes 
> {{modifyMessageRequest}}, google-mail {{pom.xml}} lines 240-245), and the 
> generated {{*ApiMethod}} enums use the new name 
> ({{GmailUsersMessagesApiMethod}} line 108: {{arg("modifyMessageRequest", 
> ...)}}). The signatures written into the catalog and the 
> {{@ApiMethod(signatures = ...)}} still carry the original names 
> ({{modify(String userId, String id, ModifyMessageRequest content)}}): 
> {{AbstractApiMethodGeneratorMojo}} (main 2a465aa4814c, lines 112 and 592-597) 
> stores {{model.getSignature()}} as it was parsed. A user who follows the 
> catalog and sets {{inBody=content}} gets "No matching method" at endpoint 
> creation. Seen with modifyMessageRequest, values, file, 
> batchUpdateSpreadsheetRequest and others. Checked on 4.24.0-SNAPSHOT with a 
> fake {{MockHttpTransport}} client. camel-braintree and camel-zendesk also use 
> substitutions (not checked).
> Proposed: apply the substitutions to the argument names of the signatures 
> written to the catalog and the {{@ApiMethod}} annotations.
> _Claude Code on behalf of davsclaus_



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to