summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2019-07-15 13:09:18 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2019-07-15 13:09:18 +0200
commit568249a0a60484d17eace7e239df92d8726e57a8 (patch)
tree2081427cf11e27a01be16db17fa0348ab9b4ae80 /configserver
parent01fc78f6824d7a9b78989f893160053320d26752 (diff)
Use VespaClientBuilderFactory in ConfigConvergenceChecker
Diffstat (limited to 'configserver')
-rw-r--r--configserver/pom.xml6
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java17
2 files changed, 20 insertions, 3 deletions
diff --git a/configserver/pom.xml b/configserver/pom.xml
index f346cde63a3..8e6209fcef8 100644
--- a/configserver/pom.xml
+++ b/configserver/pom.xml
@@ -185,6 +185,12 @@
<scope>compile</scope>
</dependency>
<dependency>
+ <groupId>com.yahoo.vespa</groupId>
+ <artifactId>jaxrs_client_utils</artifactId>
+ <version>${project.version}</version>
+ <scope>compile</scope> <!-- TODO Should ideally be provided, but this bundle is not installed as part of configserver. Orchestrator bundle has the same issue -->
+ </dependency>
+ <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<scope>provided</scope>
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
index d55e07540d6..d0f8005ace1 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
@@ -1,6 +1,7 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.config.server.application;
+import ai.vespa.util.http.VespaClientBuilderFactory;
import com.fasterxml.jackson.databind.JsonNode;
import com.google.inject.Inject;
import com.yahoo.component.AbstractComponent;
@@ -17,8 +18,9 @@ import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.ProcessingException;
import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.client.ClientRequestFilter;
import javax.ws.rs.client.WebTarget;
+import javax.ws.rs.core.HttpHeaders;
import java.net.URI;
import java.time.Duration;
import java.util.ArrayList;
@@ -55,6 +57,7 @@ public class ConfigConvergenceChecker extends AbstractComponent {
);
private final StateApiFactory stateApiFactory;
+ private final VespaClientBuilderFactory clientBuilderFactory = new VespaClientBuilderFactory();
@Inject
public ConfigConvergenceChecker() {
@@ -97,6 +100,11 @@ public class ConfigConvergenceChecker extends AbstractComponent {
}
}
+ @Override
+ public void deconstruct() {
+ clientBuilderFactory.close();
+ }
+
@Path(statePath)
public interface StateApi {
@Path(configSubPath)
@@ -152,8 +160,11 @@ public class ConfigConvergenceChecker extends AbstractComponent {
return false;
}
- private static Client createClient(Duration timeout) {
- return ClientBuilder.newBuilder()
+ private Client createClient(Duration timeout) {
+ return clientBuilderFactory.newBuilder()
+ .register(
+ (ClientRequestFilter) ctx ->
+ ctx.getHeaders().put(HttpHeaders.USER_AGENT, List.of("config-convergence-checker")))
.property(ClientProperties.CONNECT_TIMEOUT, (int) timeout.toMillis())
.property(ClientProperties.READ_TIMEOUT, (int) timeout.toMillis())
.build();