Skip to content

Commit e6ba67a

Browse files
committed
[DE-437] added jvm version to user agent header
1 parent d3cd212 commit e6ba67a

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

driver/src/main/java/com/arangodb/internal/http/HttpConnection.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public class HttpConnection implements Connection {
7171
private static final Logger LOGGER = LoggerFactory.getLogger(HttpConnection.class);
7272
private static final String CONTENT_TYPE_APPLICATION_JSON_UTF8 = "application/json; charset=utf-8";
7373
private static final String CONTENT_TYPE_VPACK = "application/x-velocypack";
74-
private static final String USER_AGENT = "JavaDriver/" + PackageVersion.VERSION;
74+
private static final String USER_AGENT = getUserAgent();
7575
private static final AtomicInteger THREAD_COUNT = new AtomicInteger();
7676
private final InternalSerde util;
7777
private final ContentType contentType;
@@ -80,6 +80,10 @@ public class HttpConnection implements Connection {
8080
private final Integer timeout;
8181
private final Vertx vertx;
8282

83+
private static String getUserAgent() {
84+
return "JavaDriver/" + PackageVersion.VERSION + " (JVM/" + System.getProperty("java.specification.version") + ")";
85+
}
86+
8387
private HttpConnection(final HostDescription host, final Integer timeout, final String user, final String password,
8488
final Boolean useSsl, final SSLContext sslContext, final Boolean verifyHost,
8589
final InternalSerde util, final Protocol protocol, final Long ttl) {

driver/src/test/java/com/arangodb/PackageVersionTest.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,12 @@ void userAgentHeader(Protocol protocol) {
4343
.method(Request.Method.GET)
4444
.path("/_admin/echo")
4545
.build(), JsonNode.class);
46-
assertThat(resp.getBody().get("headers").get("x-arango-driver").textValue()).endsWith(PackageVersion.VERSION);
46+
String headerValue = resp.getBody().get("headers").get("x-arango-driver").textValue();
47+
48+
String jvmVersion = System.getProperty("java.specification.version");
49+
String expected = "JavaDriver/" + PackageVersion.VERSION + " (JVM/" + jvmVersion + ")";
50+
51+
assertThat(headerValue).isEqualTo(expected);
4752
adb.shutdown();
4853
}
4954
}

0 commit comments

Comments
 (0)