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)