From 7d0003250a9443fca41391a4422e23fd5afb85fa Mon Sep 17 00:00:00 2001 From: Jeff Ching Date: Tue, 17 Dec 2019 11:10:42 -0800 Subject: [PATCH 1/3] fix: update GoogleUtils#getVersion() to use stable logic --- .../api/client/googleapis/GoogleUtils.java | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java index 9bb2fc74c..481cc5b24 100644 --- a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java +++ b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java @@ -89,20 +89,18 @@ public static synchronized KeyStore getCertificateTrustStore() } private static String getVersion() { - String version = GoogleUtils.class.getPackage().getImplementationVersion(); - // in a non-packaged environment (local), there's no implementation version to read - if (version == null) { - // fall back to reading from a properties file - note this value is expected to be cached - try (InputStream inputStream = - GoogleUtils.class.getResourceAsStream("google-api-client.properties")) { - if (inputStream != null) { - Properties properties = new Properties(); - properties.load(inputStream); - version = properties.getProperty("google-api-client.version"); - } - } catch (IOException e) { - // ignore + // attempt to read the library's version from a properties file generated during the build + // this value should be read and cached for later use + String version = "unknown-version"; + try (InputStream inputStream = + GoogleUtils.class.getResourceAsStream("/google-api-client.properties")) { + if (inputStream != null) { + final Properties properties = new Properties(); + properties.load(inputStream); + version = properties.getProperty("google-http-client.version"); } + } catch (IOException e) { + // ignore } return version; } From 0d3dfd96a4282c05f936f63a76a448c2a4fadac7 Mon Sep 17 00:00:00 2001 From: Jeff Ching Date: Tue, 17 Dec 2019 12:04:45 -0800 Subject: [PATCH 2/3] fix: fix property name --- .../java/com/google/api/client/googleapis/GoogleUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java index 481cc5b24..a058906c4 100644 --- a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java +++ b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java @@ -93,11 +93,11 @@ private static String getVersion() { // this value should be read and cached for later use String version = "unknown-version"; try (InputStream inputStream = - GoogleUtils.class.getResourceAsStream("/google-api-client.properties")) { + GoogleUtils.class.getResourceAsStream("google-api-client.properties")) { if (inputStream != null) { final Properties properties = new Properties(); properties.load(inputStream); - version = properties.getProperty("google-http-client.version"); + version = properties.getProperty("google-api-client.version"); } } catch (IOException e) { // ignore From 1cc4b3df051951a3f2c7e75e09126a8025698b66 Mon Sep 17 00:00:00 2001 From: Jeff Ching Date: Tue, 17 Dec 2019 14:45:10 -0800 Subject: [PATCH 3/3] fix: handle case where property is not found --- .../java/com/google/api/client/googleapis/GoogleUtils.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java index a058906c4..b4eca557f 100644 --- a/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java +++ b/google-api-client/src/main/java/com/google/api/client/googleapis/GoogleUtils.java @@ -91,18 +91,18 @@ public static synchronized KeyStore getCertificateTrustStore() private static String getVersion() { // attempt to read the library's version from a properties file generated during the build // this value should be read and cached for later use - String version = "unknown-version"; + String version = null; try (InputStream inputStream = GoogleUtils.class.getResourceAsStream("google-api-client.properties")) { if (inputStream != null) { - final Properties properties = new Properties(); + Properties properties = new Properties(); properties.load(inputStream); version = properties.getProperty("google-api-client.version"); } } catch (IOException e) { // ignore } - return version; + return version == null ? "unknown-version" : version; } private GoogleUtils() {}