From a0aa264ab919147eccfe552272c482af055c0c79 Mon Sep 17 00:00:00 2001 From: pruthvidhodda Date: Mon, 31 Aug 2020 14:52:53 -0700 Subject: [PATCH] Add dapr api token as system property --- .../main/java/io/dapr/client/DaprClientGrpc.java | 3 +-- sdk/src/main/java/io/dapr/client/DaprHttp.java | 2 +- sdk/src/main/java/io/dapr/utils/Properties.java | 13 ++++++++++--- sdk/src/test/java/io/dapr/client/DaprHttpTest.java | 5 +++-- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java b/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java index 5279812ea..79581a7c4 100644 --- a/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java +++ b/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java @@ -489,8 +489,7 @@ public class DaprClientGrpc extends AbstractDaprClient { headers.put(Key.of("grpc-trace-bin", Metadata.BINARY_BYTE_MARSHALLER), grpcTraceBin); } - String daprApiToken = Properties.getStringOrDefault(Constants.DAPR_API_TOKEN, - Constants.DAPR_API_TOKEN, null); + String daprApiToken = Properties.DAPR_API_TOKEN.get(); if (daprApiToken != null) { headers.put(Key.of(Constants.DAPR_API_TOKEN_HEADER, Metadata.ASCII_STRING_MARSHALLER), daprApiToken); } diff --git a/sdk/src/main/java/io/dapr/client/DaprHttp.java b/sdk/src/main/java/io/dapr/client/DaprHttp.java index c61bf2c3a..7962c0be2 100644 --- a/sdk/src/main/java/io/dapr/client/DaprHttp.java +++ b/sdk/src/main/java/io/dapr/client/DaprHttp.java @@ -260,7 +260,7 @@ public class DaprHttp implements Closeable { requestBuilder.method(method, body); } - String daprApiToken = Properties.getStringOrDefault(Constants.DAPR_API_TOKEN, Constants.DAPR_API_TOKEN, null); + String daprApiToken = Properties.DAPR_API_TOKEN.get(); if (daprApiToken != null) { requestBuilder.addHeader(Constants.DAPR_API_TOKEN_HEADER, daprApiToken); } diff --git a/sdk/src/main/java/io/dapr/utils/Properties.java b/sdk/src/main/java/io/dapr/utils/Properties.java index 2f0ce7774..6009c3005 100644 --- a/sdk/src/main/java/io/dapr/utils/Properties.java +++ b/sdk/src/main/java/io/dapr/utils/Properties.java @@ -35,6 +35,13 @@ public class Properties { */ private static final String DEFAULT_STRING_CHARSET = StandardCharsets.UTF_8.name(); + /** + * API token for Dapr after checking system property and environment variable. + */ + public static final Supplier DAPR_API_TOKEN = () -> getStringOrDefault( + "dapr.api.token", + Constants.DAPR_API_TOKEN, null); + /** * HTTP port for Dapr after checking system property and environment variable. */ @@ -70,7 +77,7 @@ public class Properties { * * @return Integer from system property (1st) or env variable (2nd) or default (last). */ - public static Integer getIntOrDefault(String propName, String envName, Integer defaultValue) { + private static Integer getIntOrDefault(String propName, String envName, Integer defaultValue) { return getValueOrDefault(propName, envName, defaultValue, s -> Integer.valueOf(s)); } @@ -82,7 +89,7 @@ public class Properties { * * @return Boolean from system property (1st) or env variable (2nd) or default (last). */ - public static Boolean getBooleanOrDefault(String propName, String envName, Boolean defaultValue) { + private static Boolean getBooleanOrDefault(String propName, String envName, Boolean defaultValue) { return getValueOrDefault(propName, envName, defaultValue, s -> Boolean.valueOf(s)); } @@ -94,7 +101,7 @@ public class Properties { * * @return String from system property (1st) or env variable (2nd) or default (last). */ - public static String getStringOrDefault(String propName, String envName, String defaultValue) { + private static String getStringOrDefault(String propName, String envName, String defaultValue) { return getValueOrDefault(propName, envName, defaultValue, s -> s); } diff --git a/sdk/src/test/java/io/dapr/client/DaprHttpTest.java b/sdk/src/test/java/io/dapr/client/DaprHttpTest.java index a93597765..ba2415935 100644 --- a/sdk/src/test/java/io/dapr/client/DaprHttpTest.java +++ b/sdk/src/test/java/io/dapr/client/DaprHttpTest.java @@ -6,6 +6,7 @@ package io.dapr.client; import io.dapr.exceptions.DaprException; import io.dapr.utils.Constants; +import io.dapr.utils.Properties; import io.grpc.Context; import okhttp3.MediaType; import okhttp3.OkHttpClient; @@ -54,7 +55,7 @@ public class DaprHttpTest { .hasHeader(Constants.DAPR_API_TOKEN_HEADER) .respond(serializer.serialize(EXPECTED_RESULT)); environmentVariables.set(Constants.DAPR_API_TOKEN, "xyz"); - assertEquals("xyz", System.getenv(Constants.DAPR_API_TOKEN)); + assertEquals("xyz", Properties.DAPR_API_TOKEN.get()); DaprHttp daprHttp = new DaprHttp(3500, okHttpClient); Mono mono = daprHttp.invokeApi("POST", "v1.0/state", null, (byte[]) null, null, Context.current()); @@ -70,7 +71,7 @@ public class DaprHttpTest { .not() .hasHeader(Constants.DAPR_API_TOKEN_HEADER) .respond(serializer.serialize(EXPECTED_RESULT)); - assertNull(System.getenv(Constants.DAPR_API_TOKEN)); + assertNull(Properties.DAPR_API_TOKEN.get()); DaprHttp daprHttp = new DaprHttp(3500, okHttpClient); Mono mono = daprHttp.invokeApi("POST", "v1.0/state", null, (byte[]) null, null, Context.current());