summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2020-01-16 13:07:14 +0100
committerHarald Musum <musum@verizonmedia.com>2020-01-16 13:07:14 +0100
commitf5ae96dcd47dddc9e393d6b0251794919888ce6f (patch)
tree630e1ea8a3cacc011e9455ced5fa374d936b8c7c /configserver
parent4a4969bb2e9f5871b78ed05377619365d35c1fd3 (diff)
Move ProxyResponse to its own class so it can be reused
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/http/LogRetriever.java25
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/http/ProxyResponse.java36
2 files changed, 36 insertions, 25 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/LogRetriever.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/LogRetriever.java
index 0f5642525d3..6549f359b29 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/LogRetriever.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/LogRetriever.java
@@ -4,13 +4,10 @@ package com.yahoo.vespa.config.server.http;
import ai.vespa.util.http.VespaHttpClientBuilder;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.yolean.Exceptions;
-import org.apache.http.Header;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import java.io.IOException;
-import java.io.OutputStream;
-import java.util.Optional;
import java.util.logging.Logger;
/**
@@ -31,26 +28,4 @@ public class LogRetriever {
}
}
- private static class ProxyResponse extends HttpResponse {
-
- private final org.apache.http.HttpResponse clientResponse;
-
- private ProxyResponse(org.apache.http.HttpResponse clientResponse) {
- super(clientResponse.getStatusLine().getStatusCode());
- this.clientResponse = clientResponse;
- }
-
- @Override
- public String getContentType() {
- return Optional.ofNullable(clientResponse.getFirstHeader("Content-Type"))
- .map(Header::getValue)
- .orElseGet(super::getContentType);
- }
-
- @Override
- public void render(OutputStream outputStream) throws IOException {
- clientResponse.getEntity().writeTo(outputStream);
- }
- }
-
}
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/ProxyResponse.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/ProxyResponse.java
new file mode 100644
index 00000000000..4c310dd8a0d
--- /dev/null
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/ProxyResponse.java
@@ -0,0 +1,36 @@
+// Copyright 2019 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.config.server.http;
+
+import com.yahoo.container.jdisc.HttpResponse;
+import org.apache.http.Header;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Optional;
+
+/**
+ * Proxies response back to client, keeps Content-Type header if it is present
+ *
+ * @author Ola Aunrønning
+ */
+class ProxyResponse extends HttpResponse {
+
+ private final org.apache.http.HttpResponse clientResponse;
+
+ ProxyResponse(org.apache.http.HttpResponse clientResponse) {
+ super(clientResponse.getStatusLine().getStatusCode());
+ this.clientResponse = clientResponse;
+ }
+
+ @Override
+ public String getContentType() {
+ return Optional.ofNullable(clientResponse.getFirstHeader("Content-Type"))
+ .map(Header::getValue)
+ .orElseGet(super::getContentType);
+ }
+
+ @Override
+ public void render(OutputStream outputStream) throws IOException {
+ clientResponse.getEntity().writeTo(outputStream);
+ }
+}