Claus Ibsen created CAMEL-26248:
-----------------------------------

             Summary: camel-azure-key-vault - deleteSecret always sets a null 
body instead of the DeletedSecret, and a Map or POJO body is stored as its 
toString
                 Key: CAMEL-26248
                 URL: https://issues.apache.org/jira/browse/CAMEL-26248
             Project: Camel
          Issue Type: Bug
          Components: camel-azure
            Reporter: Claus Ibsen
             Fix For: 4.24.0


Found while adding the catalog body types of azure-key-vault (CAMEL-24961, PR 
#28403).

h4. 1. deleteSecret always sets a null body

{{KeyVaultProducer.deleteSecret}} (main 2a465aa4814c, line 106) sets the body 
to {{SyncPoller<DeletedSecret, Void>.getFinalResult()}}, which is always null 
({{Void}}), so the {{DeletedSecret}} (deletion date, recovery id) is lost. 
Checked on 4.24.0-SNAPSHOT with the real {{SecretClient}} against a fake REST 
server.

Proposed: set the body to the {{DeletedSecret}} of the poll response 
({{p.waitForCompletion().getValue()}}).

h4. 2. createSecret stores a Map or POJO body as its toString

{{KeyVaultProducer.createSecret}} (line 69) reads the body with 
{{getMandatoryBody(String.class)}}, so a Map or POJO is stored as 
{{{key=value}}} / {{MyPojo@...}}. Checked on 4.24.0-SNAPSHOT with the fake 
server.

Proposed: store a Map or POJO as JSON, or reject it with a clear message.

_Claude Code on behalf of davsclaus_



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

Reply via email to