diff --git a/common/src/main/java/org/opensearch/ml/common/connector/McpConnector.java b/common/src/main/java/org/opensearch/ml/common/connector/McpConnector.java index 74d00c8e2d..d6d06eb8b7 100644 --- a/common/src/main/java/org/opensearch/ml/common/connector/McpConnector.java +++ b/common/src/main/java/org/opensearch/ml/common/connector/McpConnector.java @@ -206,19 +206,23 @@ protected Map createDecryptedHeaders(Map headers @Override public void decrypt(String action, BiFunction function, String tenantId) { - Map decrypted = new HashMap<>(); - for (String key : credential.keySet()) { - decrypted.put(key, function.apply(credential.get(key), tenantId)); + if (credential != null) { + Map decrypted = new HashMap<>(); + for (String key : credential.keySet()) { + decrypted.put(key, function.apply(credential.get(key), tenantId)); + } + this.decryptedCredential = decrypted; } - this.decryptedCredential = decrypted; this.decryptedHeaders = createDecryptedHeaders(headers); } @Override public void encrypt(BiFunction function, String tenantId) { - for (String key : credential.keySet()) { - String encrypted = function.apply(credential.get(key), tenantId); - credential.put(key, encrypted); + if (credential != null) { + for (String key : credential.keySet()) { + String encrypted = function.apply(credential.get(key), tenantId); + credential.put(key, encrypted); + } } } diff --git a/common/src/main/java/org/opensearch/ml/common/connector/McpStreamableHttpConnector.java b/common/src/main/java/org/opensearch/ml/common/connector/McpStreamableHttpConnector.java index 1bb2a2f804..5c9a4d2c26 100644 --- a/common/src/main/java/org/opensearch/ml/common/connector/McpStreamableHttpConnector.java +++ b/common/src/main/java/org/opensearch/ml/common/connector/McpStreamableHttpConnector.java @@ -205,19 +205,23 @@ protected Map createDecryptedHeaders(Map headers @Override public void decrypt(String action, BiFunction function, String tenantId) { - Map decrypted = new HashMap<>(); - for (String key : credential.keySet()) { - decrypted.put(key, function.apply(credential.get(key), tenantId)); + if (credential != null) { + Map decrypted = new HashMap<>(); + for (String key : credential.keySet()) { + decrypted.put(key, function.apply(credential.get(key), tenantId)); + } + this.decryptedCredential = decrypted; } - this.decryptedCredential = decrypted; this.decryptedHeaders = createDecryptedHeaders(headers); } @Override public void encrypt(BiFunction function, String tenantId) { - for (String key : credential.keySet()) { - String encrypted = function.apply(credential.get(key), tenantId); - credential.put(key, encrypted); + if (credential != null) { + for (String key : credential.keySet()) { + String encrypted = function.apply(credential.get(key), tenantId); + credential.put(key, encrypted); + } } }