Use useSystemProperties with Apache connectors

Signed-off-by: jansupol <jan.supol@oracle.com>
diff --git a/connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java b/connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java
index 37183d7..7102f37 100644
--- a/connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java
+++ b/connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java
@@ -260,10 +260,16 @@
             }
         }
 
+        final boolean useSystemProperties =
+                PropertiesHelper.isProperty(config.getProperties(), ApacheClientProperties.USE_SYSTEM_PROPERTIES);
+
         final SSLContext sslContext = client.getSslContext();
         final HttpClientBuilder clientBuilder = HttpClientBuilder.create();
 
-        clientBuilder.setConnectionManager(getConnectionManager(client, config, sslContext));
+        if (useSystemProperties) {
+            clientBuilder.useSystemProperties();
+        }
+        clientBuilder.setConnectionManager(getConnectionManager(client, config, sslContext, useSystemProperties));
         clientBuilder.setConnectionManagerShared(
                 PropertiesHelper.getValue(config.getProperties(), ApacheClientProperties.CONNECTION_MANAGER_SHARED, false, null));
         clientBuilder.setSSLContext(sslContext);
@@ -342,7 +348,8 @@
 
     private HttpClientConnectionManager getConnectionManager(final Client client,
                                                              final Configuration config,
-                                                             final SSLContext sslContext) {
+                                                             final SSLContext sslContext,
+                                                             final boolean useSystemProperties) {
         final Object cmObject = config.getProperties().get(ApacheClientProperties.CONNECTION_MANAGER);
 
         // Connection manager from configuration.
@@ -360,9 +367,6 @@
             }
         }
 
-        final boolean useSystemProperties =
-            PropertiesHelper.isProperty(config.getProperties(), ApacheClientProperties.USE_SYSTEM_PROPERTIES);
-
         // Create custom connection manager.
         return createConnectionManager(
                 client,
diff --git a/connectors/apache5-connector/src/main/java/org/glassfish/jersey/apache5/connector/Apache5Connector.java b/connectors/apache5-connector/src/main/java/org/glassfish/jersey/apache5/connector/Apache5Connector.java
index eb36bdf..d8328ff 100644
--- a/connectors/apache5-connector/src/main/java/org/glassfish/jersey/apache5/connector/Apache5Connector.java
+++ b/connectors/apache5-connector/src/main/java/org/glassfish/jersey/apache5/connector/Apache5Connector.java
@@ -258,10 +258,17 @@
             }
         }
 
+        final boolean useSystemProperties =
+                PropertiesHelper.isProperty(config.getProperties(), Apache5ClientProperties.USE_SYSTEM_PROPERTIES);
+
         final SSLContext sslContext = client.getSslContext();
         final HttpClientBuilder clientBuilder = HttpClientBuilder.create();
 
-        clientBuilder.setConnectionManager(getConnectionManager(client, config, sslContext));
+        if (useSystemProperties) {
+            clientBuilder.useSystemProperties();
+        }
+
+        clientBuilder.setConnectionManager(getConnectionManager(client, config, sslContext, useSystemProperties));
         clientBuilder.setConnectionManagerShared(
                 PropertiesHelper.getValue(
                         config.getProperties(),
@@ -348,7 +355,8 @@
 
     private HttpClientConnectionManager getConnectionManager(final Client client,
                                                              final Configuration config,
-                                                             final SSLContext sslContext) {
+                                                             final SSLContext sslContext,
+                                                             final boolean useSystemProperties) {
         final Object cmObject = config.getProperties().get(Apache5ClientProperties.CONNECTION_MANAGER);
 
         // Connection manager from configuration.
@@ -366,9 +374,6 @@
             }
         }
 
-        final boolean useSystemProperties =
-            PropertiesHelper.isProperty(config.getProperties(), Apache5ClientProperties.USE_SYSTEM_PROPERTIES);
-
         // Create custom connection manager.
         return createConnectionManager(
                 client,