diff --git a/sdk/src/main/java/io/dapr/client/AbstractDaprClient.java b/sdk/src/main/java/io/dapr/client/AbstractDaprClient.java index d27e9d473..8e54fe35b 100644 --- a/sdk/src/main/java/io/dapr/client/AbstractDaprClient.java +++ b/sdk/src/main/java/io/dapr/client/AbstractDaprClient.java @@ -33,7 +33,6 @@ import io.dapr.utils.TypeRef; import reactor.core.publisher.Mono; import java.util.Collections; -import java.util.HashMap; import java.util.List; import java.util.Map; @@ -91,6 +90,7 @@ abstract class AbstractDaprClient implements DaprClient { /** * {@inheritDoc} */ + @Override public Mono invokeMethod( String appId, String methodName, diff --git a/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java b/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java index 81e4b8c83..c3a348798 100644 --- a/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java +++ b/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java @@ -16,9 +16,8 @@ import java.io.Closeable; /** * A builder for the DaprClient, - * Currently only and HTTP Client will be supported. + * Currently only gRPC and HTTP Client will be supported. */ - public class DaprClientBuilder { /** diff --git a/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java b/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java index f841a4592..48555b374 100644 --- a/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java +++ b/sdk/src/main/java/io/dapr/client/DaprClientGrpc.java @@ -71,7 +71,6 @@ public class DaprClientGrpc extends AbstractDaprClient { */ private DaprGrpc.DaprStub asyncStub; - /** * Default access level constructor, in order to create an instance of this class use io.dapr.client.DaprClientBuilder * diff --git a/sdk/src/main/java/io/dapr/client/DaprClientHttp.java b/sdk/src/main/java/io/dapr/client/DaprClientHttp.java index 5052919c4..feea3f3be 100644 --- a/sdk/src/main/java/io/dapr/client/DaprClientHttp.java +++ b/sdk/src/main/java/io/dapr/client/DaprClientHttp.java @@ -161,6 +161,7 @@ public class DaprClientHttp extends AbstractDaprClient { /** * {@inheritDoc} */ + @Override public Mono invokeMethod(InvokeMethodRequest invokeMethodRequest, TypeRef type) { try { final String appId = invokeMethodRequest.getAppId(); diff --git a/sdk/src/main/java/io/dapr/client/domain/CloudEvent.java b/sdk/src/main/java/io/dapr/client/domain/CloudEvent.java index 56ab80fc6..d303f9692 100644 --- a/sdk/src/main/java/io/dapr/client/domain/CloudEvent.java +++ b/sdk/src/main/java/io/dapr/client/domain/CloudEvent.java @@ -118,7 +118,6 @@ public final class CloudEvent { this.datacontenttype = "application/octet-stream"; this.binaryData = binaryData == null ? null : Arrays.copyOf(binaryData, binaryData.length);; } - /** * Deserialize a message topic from Dapr. diff --git a/sdk/src/main/java/io/dapr/client/domain/HttpExtension.java b/sdk/src/main/java/io/dapr/client/domain/HttpExtension.java index f16d02eae..8f506f1d7 100644 --- a/sdk/src/main/java/io/dapr/client/domain/HttpExtension.java +++ b/sdk/src/main/java/io/dapr/client/domain/HttpExtension.java @@ -18,7 +18,6 @@ import java.util.Optional; * This class is only needed if the app you are calling is listening on HTTP. * It contains properties that represent data that may be populated for an HTTP receiver. */ - public final class HttpExtension { /** * Convenience HttpExtension object for {@link io.dapr.client.DaprHttp.HttpMethods#NONE} with empty queryString. diff --git a/sdk/src/main/java/io/dapr/client/domain/StateOptions.java b/sdk/src/main/java/io/dapr/client/domain/StateOptions.java index 6d9f38eef..12bd9f545 100644 --- a/sdk/src/main/java/io/dapr/client/domain/StateOptions.java +++ b/sdk/src/main/java/io/dapr/client/domain/StateOptions.java @@ -52,15 +52,12 @@ public class StateOptions { */ @JsonIgnore public Map getStateOptionsAsMap() { - Map mapOptions = null; - if (this != null) { - mapOptions = new HashMap<>(); - if (this.getConsistency() != null) { - mapOptions.put("consistency", this.getConsistency().getValue()); - } - if (this.getConcurrency() != null) { - mapOptions.put("concurrency", this.getConcurrency().getValue()); - } + Map mapOptions = new HashMap<>(); + if (this.getConsistency() != null) { + mapOptions.put("consistency", this.getConsistency().getValue()); + } + if (this.getConcurrency() != null) { + mapOptions.put("concurrency", this.getConcurrency().getValue()); } return Collections.unmodifiableMap(Optional.ofNullable(mapOptions).orElse(Collections.EMPTY_MAP)); } @@ -128,6 +125,7 @@ public class StateOptions { } public static class StateOptionDurationDeserializer extends StdDeserializer { + public StateOptionDurationDeserializer(Class vc) { super(vc); } diff --git a/sdk/src/test/java/io/dapr/client/DaprClientHttpTest.java b/sdk/src/test/java/io/dapr/client/DaprClientHttpTest.java index 16854dd5f..5d5961ad9 100644 --- a/sdk/src/test/java/io/dapr/client/DaprClientHttpTest.java +++ b/sdk/src/test/java/io/dapr/client/DaprClientHttpTest.java @@ -742,6 +742,19 @@ public class DaprClientHttpTest { assertEquals(monoMetadata.block().getKey(), "key"); } + @Test + public void getStateWithStateOptions() { + StateOptions stateOptions = new StateOptions(StateOptions.Consistency.STRONG, StateOptions.Concurrency.FIRST_WRITE); + mockInterceptor.addRule() + .get("http://127.0.0.1:3000/v1.0/state/MyStateStore/key?consistency=strong&concurrency=first-write") + .respond("\"" + EXPECTED_RESULT + "\""); + + GetStateRequestBuilder builder = new GetStateRequestBuilder(STATE_STORE_NAME, "key"); + builder.withStateOptions(stateOptions); + Mono> monoOptions = daprClientHttp.getState(builder.build(), TypeRef.get(String.class)); + assertEquals(monoOptions.block().getKey(), "key"); + } + @Test public void getStatesNullEtag() { State stateNullEtag = new State<>("key", "value", null, null);