From 6ba66513f235cd46eb5d7e606cab061e436dc3a8 Mon Sep 17 00:00:00 2001 From: Marcin Strankowski <74721865+mstrankowski@users.noreply.github.com> Date: Mon, 7 Aug 2023 19:43:38 +0200 Subject: [PATCH] =?UTF-8?q?There=20was=20no=20override=20of=20properties?= =?UTF-8?q?=20related=20to=20HttpClientConfig,=20whic=E2=80=A6=20(#2120)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * There was no override of properties related to HttpClientConfig, which meant that if a property wasn't present in global-properties files, it wouldn't be registered and couldn't be provided through command line. I've amended that here --- .../alfresco/httpclient/HttpClientConfig.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/alfresco/httpclient/HttpClientConfig.java b/core/src/main/java/org/alfresco/httpclient/HttpClientConfig.java index 258d43c4b4..e4decb957d 100644 --- a/core/src/main/java/org/alfresco/httpclient/HttpClientConfig.java +++ b/core/src/main/java/org/alfresco/httpclient/HttpClientConfig.java @@ -85,17 +85,27 @@ public class HttpClientConfig this.keyStore = new AlfrescoKeyStoreImpl(sslEncryptionParameters.getKeyStoreParameters(), keyResourceLoader); this.trustStore = new AlfrescoKeyStoreImpl(sslEncryptionParameters.getTrustStoreParameters(), keyResourceLoader); - config = retrieveConfig(serviceName); + config = retrieveConfig(); checkUnsupportedProperties(config); } /** * Method used for retrieving HttpClient config from Global Properties - * @param serviceName name of used service + * that can also have values provided/overridden through System Properties + * * @return map of properties */ - private Map retrieveConfig(String serviceName) + private Map retrieveConfig() { + Map resultProperties = getHttpClientPropertiesForService(properties); + Map systemProperties = getHttpClientPropertiesForService(System.getProperties()); + + systemProperties.forEach((k, v) -> resultProperties.put(k, v)); //Override/Add to Global Properties results with values from System Properties + + return resultProperties; + } + + private Map getHttpClientPropertiesForService(Properties properties) { return properties.keySet().stream() .filter(key -> key instanceof String) .map(Object::toString)