diff options
author | Christophe Closset <cc697w@intl.att.com> | 2017-05-02 09:04:56 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2017-05-02 09:04:56 +0000 |
commit | 4fef8a13c2f24d4f973e8fd628284133961ee703 (patch) | |
tree | 792dbdf297a543b7aea500a07a0dfa0a375067a0 /bpmn | |
parent | fe041c7b6e0eb1ee9a2445a41ffd6c1e7f3a95dc (diff) | |
parent | f3cae60106da7bef3ab69ea2423aebda491e5117 (diff) |
Merge "Add missing defensive copy to APIResponse"
Diffstat (limited to 'bpmn')
-rw-r--r-- | bpmn/MSORESTClient/src/main/java/org/openecomp/mso/rest/APIResponse.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/bpmn/MSORESTClient/src/main/java/org/openecomp/mso/rest/APIResponse.java b/bpmn/MSORESTClient/src/main/java/org/openecomp/mso/rest/APIResponse.java index dfb9f36e9a..ea9ca62bf5 100644 --- a/bpmn/MSORESTClient/src/main/java/org/openecomp/mso/rest/APIResponse.java +++ b/bpmn/MSORESTClient/src/main/java/org/openecomp/mso/rest/APIResponse.java @@ -21,6 +21,7 @@ package org.openecomp.mso.rest; import java.io.IOException; +import java.util.Arrays; import org.apache.http.Header; import org.apache.http.HttpResponse; @@ -44,7 +45,7 @@ public class APIResponse { * @param httpResponse used to create headers * @return http headers */ - private HttpHeader[] buildHeaders(final HttpResponse httpResponse) { + private static HttpHeader[] buildHeaders(final HttpResponse httpResponse) { final Header[] headers = httpResponse.getAllHeaders(); HttpHeader[] httpHeaders = new HttpHeader[headers.length]; @@ -102,7 +103,12 @@ public class APIResponse { * @return http response body */ public byte[] getResponseBodyAsByteArray() { - return this.responseBody; + // avoid exposing internals, create copy + if (this.responseBody != null) { + return Arrays.copyOf(this.responseBody, this.responseBody.length); + } else { + return null; + } } /** @@ -125,11 +131,7 @@ public class APIResponse { */ public HttpHeader[] getAllHeaders() { // avoid exposing internals, create copy - HttpHeader[] copy = new HttpHeader[this.headers.length]; - for (int i = 0; i < this.headers.length; ++i) { - copy[i] = headers[i]; - } - return copy; + return Arrays.copyOf(this.headers, this.headers.length); } public String getFirstHeader(String name) { |