Renaming openecomp to onap
[aai/rest-client.git] / src / main / java / org / onap / aai / restclient / client / RestClient.java
index 02f12b1..b782dad 100644 (file)
@@ -39,12 +39,12 @@ import javax.ws.rs.core.Response;
 import org.onap.aai.restclient.enums.RestAuthenticationMode;
 import org.onap.aai.restclient.logging.RestClientMsgs;
 import org.onap.aai.restclient.rest.RestClientBuilder;
-import org.openecomp.cl.api.LogFields;
-import org.openecomp.cl.api.LogLine;
-import org.openecomp.cl.api.Logger;
-import org.openecomp.cl.eelf.LoggerFactory;
-import org.openecomp.cl.mdc.MdcContext;
-import org.openecomp.cl.mdc.MdcOverride;
+import org.onap.aai.cl.api.LogFields;
+import org.onap.aai.cl.api.LogLine;
+import org.onap.aai.cl.api.Logger;
+import org.onap.aai.cl.eelf.LoggerFactory;
+import org.onap.aai.cl.mdc.MdcContext;
+import org.onap.aai.cl.mdc.MdcOverride;
 
 import com.sun.jersey.api.client.Client;
 import com.sun.jersey.api.client.ClientResponse;
@@ -236,6 +236,19 @@ public class RestClient {
     clientBuilder.setReadTimeoutInMs(timeout);
     return this;
   }
+  
+  /**
+   * Configures the client for a specific SSL protocol
+   *
+   * @param sslProtocol - protocol string constant such as TLS, TLSv1, TLSv1.1, TLSv1.2
+   *
+   * @return The AAIRESTClient instance. 
+   */
+  public RestClient sslProtocol(String sslProtocol) {
+    logger.debug("Set sslProtocol = " + sslProtocol);
+    clientBuilder.setSslProtocol(sslProtocol);
+    return this;
+  }
 
   private boolean shouldRetry(OperationResult operationResult) {
 
@@ -595,7 +608,7 @@ public class RestClient {
 
     if (headers != null) {
       for (Entry<String, List<String>> header : headers.entrySet()) {
-        builder.header(header.getKey(), header.getValue());
+        builder.header(header.getKey(), String.join(";",header.getValue()));
       }
       
       if (clientBuilder.getAuthenticationMode() == RestAuthenticationMode.SSL_BASIC) {