From a6a9c9c7fffeebe5d4a5ae71839f2a2148a8de69 Mon Sep 17 00:00:00 2001 From: David Brooke <38883189+dmbrooke@users.noreply.github.com> Date: Mon, 16 Oct 2023 11:39:57 -0400 Subject: [PATCH 1/3] Include version in User-Agent header --- pom.xml | 6 ++++++ .../coveo/pushapiclient/PlatformClient.java | 20 ++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 42e9db55..56f17587 100644 --- a/pom.xml +++ b/pom.xml @@ -173,6 +173,12 @@ 1.7.0 + + org.apache.maven + maven-model + 3.9.5 + + diff --git a/src/main/java/com/coveo/pushapiclient/PlatformClient.java b/src/main/java/com/coveo/pushapiclient/PlatformClient.java index 9d2c665b..70f451b3 100644 --- a/src/main/java/com/coveo/pushapiclient/PlatformClient.java +++ b/src/main/java/com/coveo/pushapiclient/PlatformClient.java @@ -2,6 +2,7 @@ import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; +import java.io.FileReader; import java.io.IOException; import java.net.URI; import java.net.http.HttpClient; @@ -11,6 +12,8 @@ import java.util.HashMap; import java.util.stream.Stream; import org.apache.logging.log4j.LogManager; +import org.apache.maven.model.Model; +import org.apache.maven.model.io.xpp3.MavenXpp3Reader; /** PlatformClient handles network requests to the Coveo platform */ public class PlatformClient { @@ -567,7 +570,22 @@ private String[] getAuthorizationHeader() { } private String[] getContentTypeApplicationJSONHeader() { - return new String[] {"Content-Type", "application/json", "Accept", "application/json"}; + MavenXpp3Reader reader = new MavenXpp3Reader(); + String version = ""; + try { + Model model = reader.read(new FileReader("pom.xml")); + version = model.getVersion(); + } catch (Exception e) { + } + + return new String[] { + "Content-Type", + "application/json", + "Accept", + "application/json", + "User-Agent", + String.format("CoveoSDKJava/", version) + }; } private String[] getAes256Header() { From aa0d4c7bc9e53cb9c1cc2b6cd95b5472e28eb7be Mon Sep 17 00:00:00 2001 From: David Brooke <38883189+dmbrooke@users.noreply.github.com> Date: Mon, 16 Oct 2023 13:33:10 -0400 Subject: [PATCH 2/3] Use fallback value for version in header --- src/main/java/com/coveo/pushapiclient/PlatformClient.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/coveo/pushapiclient/PlatformClient.java b/src/main/java/com/coveo/pushapiclient/PlatformClient.java index 70f451b3..db4daf46 100644 --- a/src/main/java/com/coveo/pushapiclient/PlatformClient.java +++ b/src/main/java/com/coveo/pushapiclient/PlatformClient.java @@ -576,6 +576,7 @@ private String[] getContentTypeApplicationJSONHeader() { Model model = reader.read(new FileReader("pom.xml")); version = model.getVersion(); } catch (Exception e) { + version = "Not-Available"; } return new String[] { From a719ff500d45b787eaae1c1b925ee53385866cc8 Mon Sep 17 00:00:00 2001 From: David Brooke <38883189+dmbrooke@users.noreply.github.com> Date: Mon, 16 Oct 2023 13:38:48 -0400 Subject: [PATCH 3/3] Whoops --- src/main/java/com/coveo/pushapiclient/PlatformClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/coveo/pushapiclient/PlatformClient.java b/src/main/java/com/coveo/pushapiclient/PlatformClient.java index db4daf46..22a2d067 100644 --- a/src/main/java/com/coveo/pushapiclient/PlatformClient.java +++ b/src/main/java/com/coveo/pushapiclient/PlatformClient.java @@ -585,7 +585,7 @@ private String[] getContentTypeApplicationJSONHeader() { "Accept", "application/json", "User-Agent", - String.format("CoveoSDKJava/", version) + String.format("CoveoSDKJava/%s", version) }; }