This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 058d51a6fc7 camel-aws - Add dev console for AWS secrets
058d51a6fc7 is described below

commit 058d51a6fc73bc684989b31cc4ca1c74acd7d39a
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Sep 8 14:09:45 2022 +0200

    camel-aws - Add dev console for AWS secrets
---
 .../camel/component/aws/secretsmanager/SecretsDevConsole.java    | 9 +++++++++
 .../aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java    | 9 +++++++++
 2 files changed, 18 insertions(+)

diff --git 
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
 
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
index cb12c2080dc..6aeb5ebf5a6 100644
--- 
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
+++ 
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
@@ -81,6 +81,9 @@ public class SecretsDevConsole extends AbstractDevConsole {
                 Instant last = secretsRefreshTask.getLastCheckTime();
                 String s = last != null ? 
TimeUtils.printSince(last.toEpochMilli()) : "none";
                 sb.append(String.format("\n    Last Check: %s", s));
+                last = secretsRefreshTask.getLastReloadTime();
+                s = last != null ? TimeUtils.printSince(last.toEpochMilli()) : 
"none";
+                sb.append(String.format("\n    Last Reload: %s", s));
             }
             sb.append("\n\nSecrets in use:");
 
@@ -123,6 +126,12 @@ public class SecretsDevConsole extends AbstractDevConsole {
                     root.put("lastCheckTimestamp", timestamp);
                     root.put("lastCheckAge", TimeUtils.printSince(timestamp));
                 }
+                last = secretsRefreshTask.getLastReloadTime();
+                if (last != null) {
+                    long timestamp = last.toEpochMilli();
+                    root.put("lastReloadTimestamp", timestamp);
+                    root.put("lastReloadAge", TimeUtils.printSince(timestamp));
+                }
             }
             JsonArray arr = new JsonArray();
             root.put("secrets", arr);
diff --git 
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
 
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
index fc5bb848000..f4f8f386769 100644
--- 
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
+++ 
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
@@ -67,6 +67,7 @@ public class CloudTrailReloadTriggerTask extends 
ServiceSupport implements Camel
     private SecretsManagerPropertiesFunction propertiesFunction;
     private volatile Instant lastTime;
     private volatile Instant lastCheckTime;
+    private volatile Instant lastReloadTime;
     private final Map<String, Instant> updates = new HashMap<>();
 
     public CloudTrailReloadTriggerTask() {
@@ -107,6 +108,13 @@ public class CloudTrailReloadTriggerTask extends 
ServiceSupport implements Camel
         return lastCheckTime;
     }
 
+    /**
+     * Last time AWS secrets update triggered reload.
+     */
+    public Instant getLastReloadTime() {
+        return lastReloadTime;
+    }
+
     @Override
     protected void doStart() throws Exception {
         super.doStart();
@@ -206,6 +214,7 @@ public class CloudTrailReloadTriggerTask extends 
ServiceSupport implements Camel
             ContextReloadStrategy reload = 
camelContext.hasService(ContextReloadStrategy.class);
             if (reload != null) {
                 // trigger reload
+                lastReloadTime = Instant.now();
                 reload.onReload(this);
             }
         }

Reply via email to