Michael Pasternak has uploaded a new change for review.

Change subject: sdk: allow nullifying headers via passing NULL as header value
......................................................................

sdk: allow nullifying headers via passing NULL as header value

Change-Id: I848b909a57345dcbccceaabed06cc946e1c47e57
Signed-off-by: Michael pasternak <mpast...@redhat.com>
---
M ovirt-engine-sdk-java/src/main/java/org/ovirt/engine/sdk/web/HttpProxy.java
1 file changed, 24 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine-sdk-java 
refs/changes/69/16369/1

diff --git 
a/ovirt-engine-sdk-java/src/main/java/org/ovirt/engine/sdk/web/HttpProxy.java 
b/ovirt-engine-sdk-java/src/main/java/org/ovirt/engine/sdk/web/HttpProxy.java
index fca089b..d906d51 100644
--- 
a/ovirt-engine-sdk-java/src/main/java/org/ovirt/engine/sdk/web/HttpProxy.java
+++ 
b/ovirt-engine-sdk-java/src/main/java/org/ovirt/engine/sdk/web/HttpProxy.java
@@ -18,6 +18,7 @@
 
 import java.io.IOException;
 import java.net.URL;
+import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.http.Header;
@@ -131,14 +132,35 @@
     }
 
     /**
+     * Removes headers with NULL value
+     * 
+     * @param headers
+     * 
+     * @return List of {@link Header} where value != null
+     */
+    private List<Header> excludeNullHeaders(List<Header> headers) {
+        if (headers != null && !headers.isEmpty()) {
+            List<Header> updated = new ArrayList<Header>();
+            for (Header header : headers) {
+                if (header.getValue() != null) {
+                    updated.add(header);
+                }
+            }
+            return updated;
+        }
+        return headers;
+    }
+
+    /**
      * Injects HTTP headers in to request
      * 
      * @param request
      * @param headers
      */
     private void injectHeaders(HttpUriRequest request, List<Header> headers) {
-        if (headers != null && !headers.isEmpty()) {
-            request.setHeaders(headers.toArray(new Header[headers.size()]));
+        List<Header> updated = excludeNullHeaders(headers);
+        if (updated != null && !updated.isEmpty()) {
+            request.setHeaders(updated.toArray(new Header[updated.size()]));
         }
 
         // inject .ctr defined static parameters


-- 
To view, visit http://gerrit.ovirt.org/16369
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I848b909a57345dcbccceaabed06cc946e1c47e57
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine-sdk-java
Gerrit-Branch: master
Gerrit-Owner: Michael Pasternak <mpast...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to