From c3187054e3b05f9938345424dd5f11cbd0fda899 Mon Sep 17 00:00:00 2001 From: Matheus Cruz <56329339+mcruzdev@users.noreply.github.com> Date: Wed, 16 Apr 2025 15:19:46 -0300 Subject: [PATCH 01/25] Add coverage for some properties (#1297) Signed-off-by: sirivarma --- .../client/DaprClientPropertiesTest.java | 25 ++++---- .../pubsub/DaprPubSubPropertiesTest.java | 60 ++++++++++++++++++ .../DaprStateStorePropertiesTest.java | 63 +++++++++++++++++++ pom.xml | 1 + sdk/pom.xml | 5 ++ .../client/domain/BulkPublishEntryTest.java | 44 +++++++++++++ .../client/domain/BulkPublishRequestTest.java | 16 ++++- .../client/domain/ConfigurationItemTest.java | 50 +++++++++++++++ .../dapr/client/domain/HttpExtensionTest.java | 60 ++++++++++++++++++ .../client/domain/SaveStateRequestTest.java | 27 +++++++- .../java/io/dapr/client/domain/StateTest.java | 14 +++++ .../domain/TransactionalStateRequestTest.java | 63 +++++++++++++++++++ .../io/dapr/config/IntegerPropertyTest.java | 39 ++++++++++++ 13 files changed, 451 insertions(+), 16 deletions(-) create mode 100644 dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/pubsub/DaprPubSubPropertiesTest.java create mode 100644 dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/statestore/DaprStateStorePropertiesTest.java create mode 100644 sdk/src/test/java/io/dapr/client/domain/BulkPublishEntryTest.java create mode 100644 sdk/src/test/java/io/dapr/client/domain/ConfigurationItemTest.java create mode 100644 sdk/src/test/java/io/dapr/client/domain/HttpExtensionTest.java create mode 100644 sdk/src/test/java/io/dapr/client/domain/TransactionalStateRequestTest.java create mode 100644 sdk/src/test/java/io/dapr/config/IntegerPropertyTest.java diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientPropertiesTest.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientPropertiesTest.java index 219e59bf4e..85bd605a7b 100644 --- a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientPropertiesTest.java +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientPropertiesTest.java @@ -1,5 +1,5 @@ /* - * Copyright 2024 The Dapr Authors + * Copyright 2025 The Dapr Authors * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -14,8 +14,9 @@ package io.dapr.spring.boot.autoconfigure.client; import org.assertj.core.api.SoftAssertions; -import org.junit.Test; + import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.test.context.runner.ApplicationContextRunner; @@ -33,11 +34,11 @@ public void shouldCreateDaprClientPropertiesCorrectly() { "http://localhost", "localhost", 3500, 50001 ); - SoftAssertions.assertSoftly(softAssertions -> { - softAssertions.assertThat(properties.getGrpcEndpoint()).isEqualTo("localhost"); - softAssertions.assertThat(properties.getHttpEndpoint()).isEqualTo("http://localhost"); - softAssertions.assertThat(properties.getHttpPort()).isEqualTo(3500); - softAssertions.assertThat(properties.getGrpcPort()).isEqualTo(50001); + SoftAssertions.assertSoftly(softly -> { + softly.assertThat(properties.getGrpcEndpoint()).isEqualTo("localhost"); + softly.assertThat(properties.getHttpEndpoint()).isEqualTo("http://localhost"); + softly.assertThat(properties.getHttpPort()).isEqualTo(3500); + softly.assertThat(properties.getGrpcPort()).isEqualTo(50001); }); } @@ -71,11 +72,11 @@ public void shouldMapDaprClientProperties() { "dapr.client.grpc-port=50001" ).run(context -> { DaprClientProperties properties = context.getBean(DaprClientProperties.class); - SoftAssertions.assertSoftly(softAssertions -> { - softAssertions.assertThat(properties.getGrpcEndpoint()).isEqualTo("localhost"); - softAssertions.assertThat(properties.getHttpEndpoint()).isEqualTo("http://localhost"); - softAssertions.assertThat(properties.getHttpPort()).isEqualTo(3500); - softAssertions.assertThat(properties.getGrpcPort()).isEqualTo(50001); + SoftAssertions.assertSoftly(softly -> { + softly.assertThat(properties.getGrpcEndpoint()).isEqualTo("localhost"); + softly.assertThat(properties.getHttpEndpoint()).isEqualTo("http://localhost"); + softly.assertThat(properties.getHttpPort()).isEqualTo(3500); + softly.assertThat(properties.getGrpcPort()).isEqualTo(50001); }); }); diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/pubsub/DaprPubSubPropertiesTest.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/pubsub/DaprPubSubPropertiesTest.java new file mode 100644 index 0000000000..ab02166d77 --- /dev/null +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/pubsub/DaprPubSubPropertiesTest.java @@ -0,0 +1,60 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.spring.boot.autoconfigure.pubsub; + +import org.assertj.core.api.SoftAssertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; + +public class DaprPubSubPropertiesTest { + + final ApplicationContextRunner runner = new ApplicationContextRunner() + .withUserConfiguration(EnableDaprPubSubProperties.class); + + + @Test + @DisplayName("Should configure properties with setters") + void shouldSetProperties() { + DaprPubSubProperties properties = new DaprPubSubProperties(); + properties.setName("pubsub"); + properties.setObservationEnabled(false); + + SoftAssertions.assertSoftly(softAssertions -> { + softAssertions.assertThat(properties.getName()).isEqualTo("pubsub"); + softAssertions.assertThat(properties.isObservationEnabled()).isEqualTo(false); + }); + } + + @Test + @DisplayName("Should map DaprPubSubProperties correctly") + void shouldMapDaprPubSubPropertiesCorrectly() { + runner.withPropertyValues( + "dapr.pubsub.name=pubsub", + "dapr.pubsub.observation-enabled=true" + ).run(context -> { + DaprPubSubProperties properties = context.getBean(DaprPubSubProperties.class); + + SoftAssertions.assertSoftly(softAssertions -> { + softAssertions.assertThat(properties.getName()).isEqualTo("pubsub"); + softAssertions.assertThat(properties.isObservationEnabled()).isEqualTo(true); + }); + }); + } + + @EnableConfigurationProperties(DaprPubSubProperties.class) + static class EnableDaprPubSubProperties { + } +} diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/statestore/DaprStateStorePropertiesTest.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/statestore/DaprStateStorePropertiesTest.java new file mode 100644 index 0000000000..8084300c1e --- /dev/null +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/statestore/DaprStateStorePropertiesTest.java @@ -0,0 +1,63 @@ +/* + * Copyright 2021 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.spring.boot.autoconfigure.statestore; + +import org.assertj.core.api.SoftAssertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; + +public class DaprStateStorePropertiesTest { + + + final ApplicationContextRunner runner = new ApplicationContextRunner() + .withUserConfiguration(EnableDaprStateStoreProperties.class); + + @Test + @DisplayName("Should create DaprStateStoreProperties via constructor") + void shouldSetDaprStateStorePropertiesCorrectly() { + DaprStateStoreProperties properties = new DaprStateStoreProperties(); + properties.setBinding("binding"); + properties.setName("name"); + + SoftAssertions.assertSoftly(softAssertions -> { + softAssertions.assertThat(properties.getName()).isEqualTo("name"); + softAssertions.assertThat(properties.getBinding()).isEqualTo("binding"); + }); + } + + @Test + @DisplayName("Should map Dapr state store properties correctly") + void shouldMapDaprStateStoreProperties() { + runner.withPropertyValues( + "dapr.statestore.name=name", + "dapr.statestore.binding=binding" + ).run(context -> { + DaprStateStoreProperties properties = context.getBean(DaprStateStoreProperties.class); + + SoftAssertions.assertSoftly(softly -> { + softly.assertThat(properties.getBinding()).isEqualTo("binding"); + softly.assertThat(properties.getName()).isEqualTo("name"); + }); + }); + + } + + @EnableConfigurationProperties(DaprStateStoreProperties.class) + static class EnableDaprStateStoreProperties { + + } + +} diff --git a/pom.xml b/pom.xml index 45344dac67..2be2a6ab2b 100644 --- a/pom.xml +++ b/pom.xml @@ -50,6 +50,7 @@ 1.20.5 3.4.3 1.7.0 + 3.27.3 diff --git a/sdk/pom.xml b/sdk/pom.xml index 0f8563f224..cea518bcb4 100644 --- a/sdk/pom.xml +++ b/sdk/pom.xml @@ -127,6 +127,11 @@ ${jackson.version} test + + org.assertj + assertj-core + ${assertj.version} + diff --git a/sdk/src/test/java/io/dapr/client/domain/BulkPublishEntryTest.java b/sdk/src/test/java/io/dapr/client/domain/BulkPublishEntryTest.java new file mode 100644 index 0000000000..e02764ba83 --- /dev/null +++ b/sdk/src/test/java/io/dapr/client/domain/BulkPublishEntryTest.java @@ -0,0 +1,44 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ +package io.dapr.client.domain; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; + +class BulkPublishEntryTest { + + @Test + @DisplayName("Should create an empty metadata when metadata argument is null") + public void shouldCreateWithEmptyMetadataWhenMetadataIsNull() { + BulkPublishEntry entry = new BulkPublishEntry<>( + "entryId", "event", "contentType", null + ); + assertThat(entry.getMetadata()).isEmpty(); + } + + @Test + @DisplayName("Should create with non null metadata") + public void shouldCreateWithMetadata() { + BulkPublishEntry entry = new BulkPublishEntry<>( + "entryId", "event", "application/json", Map.of( + "repo", "dapr/java-sdk" + )); + assertThat(entry.getMetadata()).hasSize(1); + } + +} diff --git a/sdk/src/test/java/io/dapr/client/domain/BulkPublishRequestTest.java b/sdk/src/test/java/io/dapr/client/domain/BulkPublishRequestTest.java index 5211cec483..f633428a97 100644 --- a/sdk/src/test/java/io/dapr/client/domain/BulkPublishRequestTest.java +++ b/sdk/src/test/java/io/dapr/client/domain/BulkPublishRequestTest.java @@ -10,16 +10,17 @@ * See the License for the specific language governing permissions and limitations under the License. */ - package io.dapr.client.domain; -import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import java.util.Collections; import java.util.HashMap; +import java.util.List; import java.util.Map; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertNull; public class BulkPublishRequestTest { @@ -36,6 +37,15 @@ public void testSetMetadata() { request.setMetadata(metadata); Map initial = request.getMetadata(); request.setMetadata(metadata); - Assertions.assertNotSame( request.getMetadata(), initial, "Should not be same map"); + + assertThat(request.getMetadata()).isNotSameAs(initial); + } + + @Test + @DisplayName("Should create a BulkPublishRequest with empty list when entries is null") + public void shouldCreateWithEmptyListWhenEntriesIsNull() { + BulkPublishRequest request = new BulkPublishRequest<>("testPubsub", "testTopic", null); + List> entries = request.getEntries(); + assertThat(entries).isNotNull(); } } diff --git a/sdk/src/test/java/io/dapr/client/domain/ConfigurationItemTest.java b/sdk/src/test/java/io/dapr/client/domain/ConfigurationItemTest.java new file mode 100644 index 0000000000..e37af91a5c --- /dev/null +++ b/sdk/src/test/java/io/dapr/client/domain/ConfigurationItemTest.java @@ -0,0 +1,50 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ +package io.dapr.client.domain; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +class ConfigurationItemTest { + + @Test + @DisplayName("Should create ConfigurationItem correctly") + void shouldCreateConfigurationItemCorrectly() { + ConfigurationItem item = new ConfigurationItem("application", "java-sdk", "0.0.1", Map.of( + "creator", "devs" + )); + + assertThat(item.getKey()).isEqualTo("application"); + assertThat(item.getValue()).isEqualTo("java-sdk"); + assertThat(item.getVersion()).isEqualTo("0.0.1"); + assertThat(item.getMetadata()).hasSize(1); + assertThat(item.getMetadata()).hasEntrySatisfying("creator", value -> { + assertThat(value).isEqualTo("devs"); + }); + } + + @Test + @DisplayName("Should create with immutable metadata") + void shouldCreateWithImmutableMetadata() { + ConfigurationItem item = new ConfigurationItem("application", "java-sdk", "0.0.1", Map.of( + "creator", "devs" + )); + assertThatThrownBy(() -> item.getMetadata().put("language", "javascript")); + } +} diff --git a/sdk/src/test/java/io/dapr/client/domain/HttpExtensionTest.java b/sdk/src/test/java/io/dapr/client/domain/HttpExtensionTest.java new file mode 100644 index 0000000000..717ef7206a --- /dev/null +++ b/sdk/src/test/java/io/dapr/client/domain/HttpExtensionTest.java @@ -0,0 +1,60 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.client.domain; + +import io.dapr.client.DaprHttp; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +class HttpExtensionTest { + + + @Test + @DisplayName("Should encode query params correctly") + void shouldEncodeQueryParamsCorrectly() { + HttpExtension httpExtension = new HttpExtension(DaprHttp.HttpMethods.GET, + Map.of("traceparent", List.of("00-4bf92f3577b34da6a3ce929d0e0e4733-00f067aa0ba902b7-01")), Map.of()); + + String encoded = httpExtension.encodeQueryString(); + + Assertions.assertEquals("traceparent=00-4bf92f3577b34da6a3ce929d0e0e4733-00f067aa0ba902b7-01", encoded); + } + + @Test + @DisplayName("Should encode multiple values for same query param key") + void shouldEncodeMultipleValuesForSameQueryParamKey() { + HttpExtension httpExtension = new HttpExtension(DaprHttp.HttpMethods.GET, + Map.of("category", List.of("books", "electronics")), Map.of()); + + String encoded = httpExtension.encodeQueryString(); + + Assertions.assertEquals("category=books&category=electronics", encoded); + } + + @Test + @DisplayName("Should encode query param with spaces, accents, and special characters") + void shouldEncodeQueryParamWithSpacesAndSpecialCharacters() { + HttpExtension httpExtension = new HttpExtension(DaprHttp.HttpMethods.GET, + Map.of("user name", List.of("John Doƫ & Co.")), Map.of()); + + String encoded = httpExtension.encodeQueryString(); + + Assertions.assertEquals("user+name=John+Do%C3%AB+%26+Co.", encoded); + } + +} diff --git a/sdk/src/test/java/io/dapr/client/domain/SaveStateRequestTest.java b/sdk/src/test/java/io/dapr/client/domain/SaveStateRequestTest.java index 09889bd549..8bc2efa842 100644 --- a/sdk/src/test/java/io/dapr/client/domain/SaveStateRequestTest.java +++ b/sdk/src/test/java/io/dapr/client/domain/SaveStateRequestTest.java @@ -1,10 +1,24 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ package io.dapr.client.domain; +import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import java.util.ArrayList; import java.util.List; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotSame; import static org.junit.jupiter.api.Assertions.assertNull; @@ -31,4 +45,15 @@ public void testSetStates(){ assertEquals("test var args 1", request.getStates().get(0).getKey(), "Value incorrectly set"); assertEquals("test var args 2", request.getStates().get(1).getKey(), "Value incorrectly set"); } -} \ No newline at end of file + + @Test + @DisplayName("Should set states as null when the argument is null") + void testSetStateWithNullParameter() { + + SaveStateRequest request = new SaveStateRequest(STORE_NAME); + request.setStates((List>) null); + List> states = request.getStates(); + + assertThat(states).isNull(); + } +} diff --git a/sdk/src/test/java/io/dapr/client/domain/StateTest.java b/sdk/src/test/java/io/dapr/client/domain/StateTest.java index 30870d9cd3..9f9d6af7a2 100644 --- a/sdk/src/test/java/io/dapr/client/domain/StateTest.java +++ b/sdk/src/test/java/io/dapr/client/domain/StateTest.java @@ -1,10 +1,12 @@ package io.dapr.client.domain; +import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.Map; +import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -106,4 +108,16 @@ public void testEqualsAndHashcode() { assertNotEquals(state1.hashCode(), state4.hashCode()); assertNotEquals(state1, state4); } + + @Test + @DisplayName("Should hashCode and equals method work with null metadata") + public void testEqualsAndHashcodeWithNullValues() { + State state1 = new State<>(KEY, "value", ETAG, null, OPTIONS); + State state2 = new State<>(KEY, "value", ETAG, null, OPTIONS); + + assertThat(state1.toString()).isEqualTo(state2.toString()); + assertThat(state1.hashCode()).isEqualTo(state1.hashCode()); + assertThat(state1).isEqualTo(state2); + } + } diff --git a/sdk/src/test/java/io/dapr/client/domain/TransactionalStateRequestTest.java b/sdk/src/test/java/io/dapr/client/domain/TransactionalStateRequestTest.java new file mode 100644 index 0000000000..af2a6597c7 --- /dev/null +++ b/sdk/src/test/java/io/dapr/client/domain/TransactionalStateRequestTest.java @@ -0,0 +1,63 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ +package io.dapr.client.domain; + +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; + +class TransactionalStateRequestTest { + + + @Test + @DisplayName("Should create with non empty collections") + void shouldCreateCorrectlyWithNonEmptyCollections() { + + State users = new State<>("users"); + TransactionalStateOperation operation = + new TransactionalStateOperation<>(TransactionalStateOperation.OperationType.DELETE, users); + + TransactionalStateRequest request = new TransactionalStateRequest<>( + List.of(operation), Map.of("application", "java-sdk") + ); + + assertThat(request.getMetadata()).hasSize(1); + assertThat(request.getOperations()).hasSize(1); + } + + @Test + @DisplayName("Should create correctly with empty collections") + void shouldCreateCorrectlyWithEmptyCollections() { + TransactionalStateRequest request = new TransactionalStateRequest<>( + List.of(), Map.of() + ); + assertThat(request.getMetadata()).isEmpty(); + assertThat(request.getOperations()).isEmpty(); + } + + @Test + @DisplayName("Should create correctly with null value") + void shouldCreateWhenArgumentIsNull() { + TransactionalStateRequest request = new TransactionalStateRequest<>( + null, null + ); + assertThat(request.getMetadata()).isNull(); + assertThat(request.getOperations()).isNull(); + } + + +} diff --git a/sdk/src/test/java/io/dapr/config/IntegerPropertyTest.java b/sdk/src/test/java/io/dapr/config/IntegerPropertyTest.java new file mode 100644 index 0000000000..2ea65d37cc --- /dev/null +++ b/sdk/src/test/java/io/dapr/config/IntegerPropertyTest.java @@ -0,0 +1,39 @@ +/* + * Copyright 2025 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ +package io.dapr.config; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +public class IntegerPropertyTest { + + @Test + @DisplayName("Should create IntegerProperty correctly") + void shouldCreateIntegerPropertyCorrectly() { + IntegerProperty property = new IntegerProperty("int", "INT", 0); + Integer twoHundreds = property.parse("200"); + assertThat(twoHundreds).isEqualTo(200); + } + + @Test + @DisplayName("Should throws NumberFormatException when parsing non number") + void shouldThrowsExceptionWhenParsingNonNumber() { + IntegerProperty property = new IntegerProperty("int", "INT", 0); + assertThatThrownBy(() -> property.parse("TWO_THOUSANDS")); + } + +} From 8683d8b9e8e787072cd350bcffb9e28a3760e2de Mon Sep 17 00:00:00 2001 From: Siri Varma Vegiraju Date: Sat, 19 Apr 2025 04:29:56 +0530 Subject: [PATCH 02/25] Make the DAPR version being used consistent across all tests (#1299) Signed-off-by: sirivarma --- .github/workflows/build.yml | 2 +- .github/workflows/validate.yml | 2 +- .../en/java-sdk-docs/spring-boot/_index.md | 4 +-- pom.xml | 2 +- .../io/dapr/springboot/MockController.java | 4 ++- .../dapr/it/resiliency/SdkResiliencyIT.java | 7 ++-- .../spring/data/DaprKeyValueRepositoryIT.java | 8 +++-- .../data/MySQLDaprKeyValueTemplateIT.java | 4 +-- .../PostgreSQLDaprKeyValueTemplateIT.java | 10 ++++-- .../messaging/DaprSpringMessagingIT.java | 4 +-- .../it/testcontainers/ContainerConstants.java | 9 ----- .../dapr/it/testcontainers/DaprActorsIT.java | 8 +++-- .../DaprContainerConstants.java | 8 +++++ .../it/testcontainers/DaprContainerIT.java | 7 ++-- .../io/dapr/it/testcontainers/DaprJobsIT.java | 3 +- .../DaprPlacementContainerIT.java | 2 +- .../DaprSchedulerContainerIT.java | 36 +++++++++++++++++++ .../it/testcontainers/DaprWorkflowsIT.java | 4 +-- .../consumer/DaprTestContainersConfig.java | 4 ++- spring-boot-examples/kubernetes/README.md | 2 +- .../producer/DaprTestContainersConfig.java | 4 ++- .../io/dapr/testcontainers/DaprContainer.java | 22 +++++++++--- .../DaprContainerConstants.java | 8 +++++ .../DaprSchedulerContainer.java | 2 +- .../testcontainers/DaprComponentTest.java | 5 +-- .../converter/ComponentYamlConverterTest.java | 5 +-- .../ConfigurationYamlConverterTest.java | 3 +- .../HttpEndpointYamlConverterTest.java | 3 +- .../SubscriptionYamlConverterTest.java | 5 +-- 29 files changed, 130 insertions(+), 57 deletions(-) delete mode 100644 sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java create mode 100644 sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java create mode 100644 sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java create mode 100644 testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 021e6f5f19..ba2f0c2a39 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -39,7 +39,7 @@ jobs: GOPROXY: https://proxy.golang.org JDK_VER: ${{ matrix.java }} DAPR_CLI_VER: 1.15.0 - DAPR_RUNTIME_VER: 1.15.3 + DAPR_RUNTIME_VER: 1.15.4 DAPR_INSTALL_URL: https://raw.githubusercontent.com/dapr/cli/v1.15.0/install/install.sh DAPR_CLI_REF: DAPR_REF: diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 1559f5aef4..7f09a2325a 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -38,7 +38,7 @@ jobs: GOPROXY: https://proxy.golang.org JDK_VER: ${{ matrix.java }} DAPR_CLI_VER: 1.15.0 - DAPR_RUNTIME_VER: 1.15.3 + DAPR_RUNTIME_VER: 1.15.4 DAPR_INSTALL_URL: https://raw.githubusercontent.com/dapr/cli/v1.15.0/install/install.sh DAPR_CLI_REF: DAPR_REF: diff --git a/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md b/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md index e515e2b39c..4a53e21b2b 100644 --- a/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md +++ b/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md @@ -80,7 +80,7 @@ public class DaprTestContainersConfig { @ServiceConnection public DaprContainer daprContainer(Network daprNetwork, PostgreSQLContainer postgreSQLContainer){ - return new DaprContainer("daprio/daprd:1.14.1") + return new DaprContainer("daprio/daprd:1.15.4") .withAppName("producer-app") .withNetwork(daprNetwork) .withComponent(new Component("kvstore", "state.postgresql", "v1", STATE_STORE_PROPERTIES)) @@ -235,7 +235,7 @@ Finally, because Dapr PubSub requires a bidirectional connection between your ap @ServiceConnection public DaprContainer daprContainer(Network daprNetwork, PostgreSQLContainer postgreSQLContainer, RabbitMQContainer rabbitMQContainer){ - return new DaprContainer("daprio/daprd:1.14.1") + return new DaprContainer("daprio/daprd:1.15.4") .withAppName("producer-app") .withNetwork(daprNetwork) .withComponent(new Component("kvstore", "state.postgresql", "v1", STATE_STORE_PROPERTIES)) diff --git a/pom.xml b/pom.xml index 2be2a6ab2b..51f5070027 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ 1.69.0 3.25.5 protoc - https://raw.githubusercontent.com/dapr/dapr/v1.15.3/dapr/proto + https://raw.githubusercontent.com/dapr/dapr/v1.15.4/dapr/proto 1.15.0-SNAPSHOT 0.15.0-SNAPSHOT 1.7.1 diff --git a/sdk-springboot/src/test/java/io/dapr/springboot/MockController.java b/sdk-springboot/src/test/java/io/dapr/springboot/MockController.java index e4251e120d..943431d760 100644 --- a/sdk-springboot/src/test/java/io/dapr/springboot/MockController.java +++ b/sdk-springboot/src/test/java/io/dapr/springboot/MockController.java @@ -13,7 +13,9 @@ package io.dapr.springboot; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; @RequestMapping(value = {"v1", "v2"}) public class MockController { diff --git a/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java b/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java index bb194bf1f2..b0591e4eec 100644 --- a/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java @@ -58,8 +58,7 @@ import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching; import static com.github.tomakehurst.wiremock.client.WireMock.verify; import static io.dapr.it.resiliency.SdkResiliencyIT.WIREMOCK_PORT; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; -import static io.dapr.it.testcontainers.ContainerConstants.TOXIPROXY_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -74,7 +73,7 @@ public class SdkResiliencyIT { private static final int INFINITE_RETRY = -1; @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(WIREMOCK_PORT) .withDaprLogLevel(DaprLogLevel.DEBUG) @@ -85,7 +84,7 @@ public class SdkResiliencyIT { .withNetwork(NETWORK); @Container - private static final ToxiproxyContainer TOXIPROXY = new ToxiproxyContainer(TOXIPROXY_IMAGE_TAG) + private static final ToxiproxyContainer TOXIPROXY = new ToxiproxyContainer("ghcr.io/shopify/toxiproxy:2.5.0") .withNetwork(NETWORK); private static Proxy proxy; diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java index 351e405cd9..0d541fff99 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java @@ -35,8 +35,10 @@ import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; -import static org.junit.jupiter.api.Assertions.*; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * Integration tests for {@link DaprKeyValueRepositoryIT}. @@ -65,7 +67,7 @@ public class DaprKeyValueRepositoryIT { @Container @ServiceConnection - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("postgresql-repository-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component(STATE_STORE_NAME, "state.postgresql", "v1", STATE_STORE_PROPERTIES)) diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java index bdcbc61aed..f07ab1002c 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java @@ -44,7 +44,7 @@ import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -80,7 +80,7 @@ public class MySQLDaprKeyValueTemplateIT { @Container @ServiceConnection - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("mysql-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component(STATE_STORE_NAME, "state.mysql", "v1", STATE_STORE_PROPERTIES)) diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java index 56c8f9f88c..956343985c 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java @@ -32,11 +32,15 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -67,7 +71,7 @@ public class PostgreSQLDaprKeyValueTemplateIT { @Container @ServiceConnection - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("postgresql-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component(STATE_STORE_NAME, "state.postgresql", "v1", STATE_STORE_PROPERTIES)) diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java index a7ae667ddf..ba0366d407 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java @@ -37,7 +37,7 @@ import java.util.Collections; import java.util.List; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest( @@ -61,7 +61,7 @@ public class DaprSpringMessagingIT { @Container @ServiceConnection - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("messaging-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component("pubsub", "pubsub.in-memory", "v1", Collections.emptyMap())) diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java deleted file mode 100644 index 76cadb815d..0000000000 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java +++ /dev/null @@ -1,9 +0,0 @@ -package io.dapr.it.testcontainers; - -public interface ContainerConstants { - String TOXIPROXY_IMAGE_TAG = "ghcr.io/shopify/toxiproxy:2.5.0"; - String DAPR_RUNTIME_VERSION = "1.15.3"; - String DAPR_IMAGE_TAG = "daprio/daprd:" + DAPR_RUNTIME_VERSION; - String DAPR_PLACEMENT_IMAGE_TAG = "daprio/placement:" + DAPR_RUNTIME_VERSION; - String DAPR_SCHEDULER_IMAGE_TAG = "daprio/scheduler:" + DAPR_RUNTIME_VERSION; -} diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java index 69eefd9624..8878359391 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java @@ -37,6 +37,7 @@ import java.util.Random; import java.util.UUID; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; @SpringBootTest( @@ -53,10 +54,10 @@ public class DaprActorsIT { private static final Random RANDOM = new Random(); private static final int PORT = RANDOM.nextInt(1000) + 8000; - private static final String ACTORS_MESSAGE_PATTERN = ".*Actor API level in the cluster has been updated to 10.*"; + private static final String ACTORS_MESSAGE_PATTERN = ".*Actor runtime started.*"; @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer("daprio/daprd:1.14.4") + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("actor-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component("kvstore", "state.in-memory", "v1", @@ -88,7 +89,8 @@ static void daprProperties(DynamicPropertyRegistry registry) { public void setUp(){ org.testcontainers.Testcontainers.exposeHostPorts(PORT); daprActorRuntime.registerActor(TestActorImpl.class); - // Ensure the subscriptions are registered + + // Wait for actor runtime to start. Wait.forLogMessage(ACTORS_MESSAGE_PATTERN, 1).waitUntilReady(DAPR_CONTAINER); } diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java new file mode 100644 index 0000000000..9e47ebdbb5 --- /dev/null +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java @@ -0,0 +1,8 @@ +package io.dapr.it.testcontainers; + +public interface DaprContainerConstants { + String DAPR_RUNTIME_VERSION = "1.15.4"; + String DAPR_RUNTIME_IMAGE_TAG = "daprio/daprd:" + DAPR_RUNTIME_VERSION; + String DAPR_PLACEMENT_IMAGE_TAG = "daprio/placement:" + DAPR_RUNTIME_VERSION; + String DAPR_SCHEDULER_IMAGE_TAG = "daprio/scheduler:" + DAPR_RUNTIME_VERSION; +} diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java index bd94ddd114..55096d5998 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java @@ -18,7 +18,6 @@ import io.dapr.client.DaprClientBuilder; import io.dapr.client.domain.Metadata; import io.dapr.client.domain.State; - import io.dapr.config.Properties; import io.dapr.testcontainers.DaprContainer; import org.junit.jupiter.api.BeforeEach; @@ -27,7 +26,6 @@ import org.testcontainers.containers.wait.strategy.Wait; import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; -import static org.testcontainers.shaded.org.awaitility.Awaitility.await; import org.testcontainers.shaded.org.awaitility.core.ConditionTimeoutException; import java.io.IOException; @@ -49,10 +47,11 @@ import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching; import static com.github.tomakehurst.wiremock.client.WireMock.verify; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.fail; +import static org.testcontainers.shaded.org.awaitility.Awaitility.await; @Testcontainers @@ -69,7 +68,7 @@ public class DaprContainerIT { private static final String APP_FOUND_MESSAGE_PATTERN = ".*application discovered on port 8081.*"; @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withAppHealthCheckPath("/actuator/health") diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java index 78e2ec7ecf..b9bf55d718 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java @@ -34,7 +34,6 @@ import org.testcontainers.junit.jupiter.Testcontainers; import java.time.Instant; -import java.time.OffsetDateTime; import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; @@ -58,7 +57,7 @@ public class DaprJobsIT { private static final int PORT = RANDOM.nextInt(1000) + 8000; @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(ContainerConstants.DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG) .withAppName("jobs-dapr-app") .withNetwork(DAPR_NETWORK) .withDaprLogLevel(DaprLogLevel.DEBUG) diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java index d7069a3f14..592a7afb0f 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java @@ -27,7 +27,7 @@ public class DaprPlacementContainerIT { @Container private static final DaprPlacementContainer PLACEMENT_CONTAINER = - new DaprPlacementContainer(ContainerConstants.DAPR_PLACEMENT_IMAGE_TAG); + new DaprPlacementContainer(DaprContainerConstants.DAPR_PLACEMENT_IMAGE_TAG); @Test public void testDaprPlacementContainerDefaults() { diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java new file mode 100644 index 0000000000..16a79730cc --- /dev/null +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java @@ -0,0 +1,36 @@ +/* + * Copyright 2024 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.it.testcontainers; + +import io.dapr.testcontainers.DaprSchedulerContainer; +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; +import org.testcontainers.junit.jupiter.Container; +import org.testcontainers.junit.jupiter.Testcontainers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +@Testcontainers +@Tag("testcontainers") +public class DaprSchedulerContainerIT { + + @Container + private static final DaprSchedulerContainer SCHEDULER_CONTAINER = + new DaprSchedulerContainer(DaprContainerConstants.DAPR_SCHEDULER_IMAGE_TAG); + + @Test + public void testDaprSchedulerContainerDefaults() { + assertEquals(51005, SCHEDULER_CONTAINER.getPort(), "The default port is not set"); + } +} diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java index 576d85508d..a389081f39 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java @@ -39,7 +39,7 @@ import java.util.Collections; import java.util.Map; -import static io.dapr.it.testcontainers.ContainerConstants.DAPR_IMAGE_TAG; +import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -57,7 +57,7 @@ public class DaprWorkflowsIT { private static final Network DAPR_NETWORK = Network.newNetwork(); @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("workflow-dapr-app") .withNetwork(DAPR_NETWORK) .withComponent(new Component("kvstore", "state.in-memory", "v1", diff --git a/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java b/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java index dc584b26b9..9afafae26c 100644 --- a/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java +++ b/spring-boot-examples/consumer-app/src/test/java/io/dapr/springboot/examples/consumer/DaprTestContainersConfig.java @@ -31,6 +31,8 @@ import java.util.List; import java.util.Map; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; + @TestConfiguration(proxyBeanMethods = false) public class DaprTestContainersConfig { @@ -87,7 +89,7 @@ public DaprContainer daprContainer(Network daprNetwork, RabbitMQContainer rabbit rabbitMqProperties.put("user", "guest"); rabbitMqProperties.put("password", "guest"); - return new DaprContainer("daprio/daprd:1.14.4") + return new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("consumer-app") .withNetwork(daprNetwork).withComponent(new Component("pubsub", "pubsub.rabbitmq", "v1", rabbitMqProperties)) diff --git a/spring-boot-examples/kubernetes/README.md b/spring-boot-examples/kubernetes/README.md index 3bb5da421e..9f047d76f3 100644 --- a/spring-boot-examples/kubernetes/README.md +++ b/spring-boot-examples/kubernetes/README.md @@ -30,7 +30,7 @@ Once you have the cluster up and running you can install Dapr: helm repo add dapr https://dapr.github.io/helm-charts/ helm repo update helm upgrade --install dapr dapr/dapr \ ---version=1.14.4 \ +--version=1.15.4 \ --namespace dapr-system \ --create-namespace \ --wait diff --git a/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java b/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java index 5d38f5841e..95603a36f1 100644 --- a/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java +++ b/spring-boot-examples/producer-app/src/test/java/io/dapr/springboot/examples/producer/DaprTestContainersConfig.java @@ -33,6 +33,8 @@ import java.util.List; import java.util.Map; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; + @TestConfiguration(proxyBeanMethods = false) public class DaprTestContainersConfig { @@ -110,7 +112,7 @@ public DaprContainer daprContainer(Network daprNetwork, PostgreSQLContainer p rabbitMqProperties.put("user", "guest"); rabbitMqProperties.put("password", "guest"); - return new DaprContainer("daprio/daprd:1.14.4") + return new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("producer-app") .withNetwork(daprNetwork) .withComponent(new Component("kvstore", "state.postgresql", "v1", STATE_STORE_PROPERTIES)) diff --git a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java index 8959d91439..dd008ed33f 100644 --- a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java +++ b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java @@ -27,7 +27,6 @@ import org.testcontainers.containers.wait.strategy.WaitStrategy; import org.testcontainers.images.builder.Transferable; import org.testcontainers.utility.DockerImageName; -import org.testcontainers.utility.MountableFile; import org.yaml.snakeyaml.Yaml; import java.io.IOException; @@ -41,12 +40,17 @@ import java.util.Map; import java.util.Set; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_PLACEMENT_IMAGE_TAG; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_SCHEDULER_IMAGE_TAG; + public class DaprContainer extends GenericContainer { private static final Logger LOGGER = LoggerFactory.getLogger(DaprContainer.class); private static final int DAPRD_DEFAULT_HTTP_PORT = 3500; private static final int DAPRD_DEFAULT_GRPC_PORT = 50001; private static final DaprProtocol DAPR_PROTOCOL = DaprProtocol.HTTP; - private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse("daprio/daprd"); + private static final DockerImageName DEFAULT_IMAGE_NAME = + DockerImageName.parse(DAPR_RUNTIME_IMAGE_TAG); private static final Yaml YAML_MAPPER = YamlMapperFactory.create(); private static final YamlConverter COMPONENT_CONVERTER = new ComponentYamlConverter(YAML_MAPPER); private static final YamlConverter SUBSCRIPTION_CONVERTER = new SubscriptionYamlConverter(YAML_MAPPER); @@ -64,8 +68,8 @@ public class DaprContainer extends GenericContainer { private String appChannelAddress = "localhost"; private String placementService = "placement"; private String schedulerService = "scheduler"; - private String placementDockerImageName = "daprio/placement"; - private String schedulerDockerImageName = "daprio/scheduler"; + private String placementDockerImageName = DAPR_PLACEMENT_IMAGE_TAG; + private String schedulerDockerImageName = DAPR_SCHEDULER_IMAGE_TAG; private Configuration configuration; private DaprPlacementContainer placementContainer; @@ -137,6 +141,11 @@ public DaprContainer withPlacementService(String placementService) { return this; } + public DaprContainer withSchedulerService(String schedulerService) { + this.schedulerService = schedulerService; + return this; + } + public DaprContainer withAppName(String appName) { this.appName = appName; return this; @@ -162,6 +171,11 @@ public DaprContainer withPlacementImage(String placementDockerImageName) { return this; } + public DaprContainer withSchedulerImage(String schedulerDockerImageName) { + this.schedulerDockerImageName = schedulerDockerImageName; + return this; + } + public DaprContainer withReusablePlacement(boolean shouldReusePlacement) { this.shouldReusePlacement = shouldReusePlacement; return this; diff --git a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java new file mode 100644 index 0000000000..4ec620bba9 --- /dev/null +++ b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java @@ -0,0 +1,8 @@ +package io.dapr.testcontainers; + +public interface DaprContainerConstants { + String DAPR_VERSION = "1.15.4"; + String DAPR_PLACEMENT_IMAGE_TAG = "daprio/placement:" + DAPR_VERSION; + String DAPR_SCHEDULER_IMAGE_TAG = "daprio/scheduler:" + DAPR_VERSION; + String DAPR_RUNTIME_IMAGE_TAG = "daprio/daprd:" + DAPR_VERSION; +} diff --git a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprSchedulerContainer.java b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprSchedulerContainer.java index bcac6a426e..96f530adc7 100644 --- a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprSchedulerContainer.java +++ b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprSchedulerContainer.java @@ -40,7 +40,7 @@ public DaprSchedulerContainer(DockerImageName dockerImageName) { } /** - * Creates a new Dapr scheduler container. + * Creates a new Dapr schedulers container. * @param image Docker image name. */ public DaprSchedulerContainer(String image) { diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java index b0d3387228..d02a6c1cd7 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java @@ -26,6 +26,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertThrows; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; public class DaprComponentTest { private final Yaml MAPPER = YamlMapperFactory.create(); @@ -33,7 +34,7 @@ public class DaprComponentTest { @Test public void containerConfigurationTest() { - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withDaprLogLevel(DaprLogLevel.DEBUG) @@ -50,7 +51,7 @@ public void withComponentFromPath() { URL stateStoreYaml = this.getClass().getClassLoader().getResource("dapr-resources/statestore.yaml"); Path path = Paths.get(stateStoreYaml.getPath()); - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withComponent(path) diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ComponentYamlConverterTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ComponentYamlConverterTest.java index eced458096..405b9f3436 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ComponentYamlConverterTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ComponentYamlConverterTest.java @@ -8,6 +8,7 @@ import java.util.Map; import java.util.Set; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; @@ -17,7 +18,7 @@ class ComponentYamlConverterTest { @Test public void testComponentToYaml() { - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withComponent(new Component( @@ -50,7 +51,7 @@ public void testComponentToYaml() { @Test public void testComponentWithInLineStringToYaml() { - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withComponent(new Component( diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ConfigurationYamlConverterTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ConfigurationYamlConverterTest.java index 01b8968d56..fe798611b5 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ConfigurationYamlConverterTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/ConfigurationYamlConverterTest.java @@ -22,6 +22,7 @@ import org.junit.jupiter.api.Test; import org.yaml.snakeyaml.Yaml; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -52,7 +53,7 @@ public void testConfigurationToYaml() { AppHttpPipeline appHttpPipeline = new AppHttpPipeline(handlers); - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withConfiguration(new Configuration("my-config", tracing, appHttpPipeline)) diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/HttpEndpointYamlConverterTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/HttpEndpointYamlConverterTest.java index ec2540fe92..e83aed3f3c 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/HttpEndpointYamlConverterTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/HttpEndpointYamlConverterTest.java @@ -7,6 +7,7 @@ import java.util.Set; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; class HttpEndpointYamlConverterTest { @@ -16,7 +17,7 @@ class HttpEndpointYamlConverterTest { @Test void testHttpEndpointToYaml() { - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withHttpEndpoint(new HttpEndpoint("my-endpoint", "http://localhost:8080")) diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/SubscriptionYamlConverterTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/SubscriptionYamlConverterTest.java index a17984e603..2df4c6998d 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/SubscriptionYamlConverterTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/converter/SubscriptionYamlConverterTest.java @@ -7,7 +7,8 @@ import java.util.Set; -import static org.junit.jupiter.api.Assertions.*; +import static io.dapr.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static org.junit.jupiter.api.Assertions.assertEquals; class SubscriptionYamlConverterTest { private final Yaml MAPPER = YamlMapperFactory.create(); @@ -15,7 +16,7 @@ class SubscriptionYamlConverterTest { @Test public void testSubscriptionToYaml() { - DaprContainer dapr = new DaprContainer("daprio/daprd") + DaprContainer dapr = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("dapr-app") .withAppPort(8081) .withSubscription(new Subscription("my-subscription", "pubsub", "topic", "/events")) From b2c130d61536bc500e2101b9a891334f0e7a4cb5 Mon Sep 17 00:00:00 2001 From: artur-ciocanu Date: Tue, 22 Apr 2025 21:09:48 +0300 Subject: [PATCH 03/25] Separate Dapr constants from IT container constants (#1315) Signed-off-by: Artur Ciocanu Co-authored-by: Artur Ciocanu Signed-off-by: sirivarma --- .../java/io/dapr/it/resiliency/SdkResiliencyIT.java | 5 +++-- .../dapr/it/spring/data/DaprKeyValueRepositoryIT.java | 2 +- .../it/spring/data/MySQLDaprKeyValueTemplateIT.java | 2 +- .../spring/data/PostgreSQLDaprKeyValueTemplateIT.java | 2 +- .../it/spring/messaging/DaprSpringMessagingIT.java | 2 +- .../io/dapr/it/testcontainers/ContainerConstants.java | 10 ++++++++++ .../java/io/dapr/it/testcontainers/DaprActorsIT.java | 2 +- .../dapr/it/testcontainers/DaprContainerConstants.java | 8 -------- .../io/dapr/it/testcontainers/DaprContainerIT.java | 2 +- .../java/io/dapr/it/testcontainers/DaprJobsIT.java | 3 ++- .../it/testcontainers/DaprPlacementContainerIT.java | 3 ++- .../it/testcontainers/DaprSchedulerContainerIT.java | 3 ++- .../io/dapr/it/testcontainers/DaprWorkflowsIT.java | 2 +- .../io/dapr/testcontainers/DaprContainerConstants.java | 2 +- 14 files changed, 27 insertions(+), 21 deletions(-) create mode 100644 sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java delete mode 100644 sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java diff --git a/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java b/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java index b0591e4eec..bf17f7d88d 100644 --- a/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/resiliency/SdkResiliencyIT.java @@ -58,7 +58,8 @@ import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching; import static com.github.tomakehurst.wiremock.client.WireMock.verify; import static io.dapr.it.resiliency.SdkResiliencyIT.WIREMOCK_PORT; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.TOXI_PROXY_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -84,7 +85,7 @@ public class SdkResiliencyIT { .withNetwork(NETWORK); @Container - private static final ToxiproxyContainer TOXIPROXY = new ToxiproxyContainer("ghcr.io/shopify/toxiproxy:2.5.0") + private static final ToxiproxyContainer TOXIPROXY = new ToxiproxyContainer(TOXI_PROXY_IMAGE_TAG) .withNetwork(NETWORK); private static Proxy proxy; diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java index 0d541fff99..5a7ceb2920 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/DaprKeyValueRepositoryIT.java @@ -35,7 +35,7 @@ import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java index f07ab1002c..1e1d959eef 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/MySQLDaprKeyValueTemplateIT.java @@ -44,7 +44,7 @@ import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java index 956343985c..3f5253758a 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/data/PostgreSQLDaprKeyValueTemplateIT.java @@ -40,7 +40,7 @@ import static io.dapr.it.spring.data.DaprSpringDataConstants.BINDING_NAME; import static io.dapr.it.spring.data.DaprSpringDataConstants.STATE_STORE_NAME; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java b/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java index ba0366d407..106519f8d2 100644 --- a/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/spring/messaging/DaprSpringMessagingIT.java @@ -37,7 +37,7 @@ import java.util.Collections; import java.util.List; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest( diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java new file mode 100644 index 0000000000..e66f81285d --- /dev/null +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/ContainerConstants.java @@ -0,0 +1,10 @@ +package io.dapr.it.testcontainers; + +import io.dapr.testcontainers.DaprContainerConstants; + +public interface ContainerConstants { + String DAPR_RUNTIME_IMAGE_TAG = DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; + String DAPR_PLACEMENT_IMAGE_TAG = DaprContainerConstants.DAPR_PLACEMENT_IMAGE_TAG; + String DAPR_SCHEDULER_IMAGE_TAG = DaprContainerConstants.DAPR_SCHEDULER_IMAGE_TAG; + String TOXI_PROXY_IMAGE_TAG = "ghcr.io/shopify/toxiproxy:2.5.0"; +} diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java index 8878359391..6416d4efd6 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprActorsIT.java @@ -37,7 +37,7 @@ import java.util.Random; import java.util.UUID; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; @SpringBootTest( diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java deleted file mode 100644 index 9e47ebdbb5..0000000000 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package io.dapr.it.testcontainers; - -public interface DaprContainerConstants { - String DAPR_RUNTIME_VERSION = "1.15.4"; - String DAPR_RUNTIME_IMAGE_TAG = "daprio/daprd:" + DAPR_RUNTIME_VERSION; - String DAPR_PLACEMENT_IMAGE_TAG = "daprio/placement:" + DAPR_RUNTIME_VERSION; - String DAPR_SCHEDULER_IMAGE_TAG = "daprio/scheduler:" + DAPR_RUNTIME_VERSION; -} diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java index 55096d5998..2bebdae7e4 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprContainerIT.java @@ -47,7 +47,7 @@ import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching; import static com.github.tomakehurst.wiremock.client.WireMock.verify; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.fail; diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java index b9bf55d718..3cb433cf13 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprJobsIT.java @@ -39,6 +39,7 @@ import java.time.temporal.ChronoUnit; import java.util.Random; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.Assert.assertEquals; @SpringBootTest( @@ -57,7 +58,7 @@ public class DaprJobsIT { private static final int PORT = RANDOM.nextInt(1000) + 8000; @Container - private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG) + private static final DaprContainer DAPR_CONTAINER = new DaprContainer(DAPR_RUNTIME_IMAGE_TAG) .withAppName("jobs-dapr-app") .withNetwork(DAPR_NETWORK) .withDaprLogLevel(DaprLogLevel.DEBUG) diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java index 592a7afb0f..fd7b78ffd2 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprPlacementContainerIT.java @@ -19,6 +19,7 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_PLACEMENT_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; @Testcontainers @@ -27,7 +28,7 @@ public class DaprPlacementContainerIT { @Container private static final DaprPlacementContainer PLACEMENT_CONTAINER = - new DaprPlacementContainer(DaprContainerConstants.DAPR_PLACEMENT_IMAGE_TAG); + new DaprPlacementContainer(DAPR_PLACEMENT_IMAGE_TAG); @Test public void testDaprPlacementContainerDefaults() { diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java index 16a79730cc..682bd9a27e 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprSchedulerContainerIT.java @@ -19,6 +19,7 @@ import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_SCHEDULER_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; @Testcontainers @@ -27,7 +28,7 @@ public class DaprSchedulerContainerIT { @Container private static final DaprSchedulerContainer SCHEDULER_CONTAINER = - new DaprSchedulerContainer(DaprContainerConstants.DAPR_SCHEDULER_IMAGE_TAG); + new DaprSchedulerContainer(DAPR_SCHEDULER_IMAGE_TAG); @Test public void testDaprSchedulerContainerDefaults() { diff --git a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java index a389081f39..ca8678e2d7 100644 --- a/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/testcontainers/DaprWorkflowsIT.java @@ -39,7 +39,7 @@ import java.util.Collections; import java.util.Map; -import static io.dapr.it.testcontainers.DaprContainerConstants.DAPR_RUNTIME_IMAGE_TAG; +import static io.dapr.it.testcontainers.ContainerConstants.DAPR_RUNTIME_IMAGE_TAG; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; diff --git a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java index 4ec620bba9..89bdb09b0a 100644 --- a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java +++ b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainerConstants.java @@ -2,7 +2,7 @@ public interface DaprContainerConstants { String DAPR_VERSION = "1.15.4"; + String DAPR_RUNTIME_IMAGE_TAG = "daprio/daprd:" + DAPR_VERSION; String DAPR_PLACEMENT_IMAGE_TAG = "daprio/placement:" + DAPR_VERSION; String DAPR_SCHEDULER_IMAGE_TAG = "daprio/scheduler:" + DAPR_VERSION; - String DAPR_RUNTIME_IMAGE_TAG = "daprio/daprd:" + DAPR_VERSION; } From aa241ca862c255fec96d500c8eca22efb0118ba7 Mon Sep 17 00:00:00 2001 From: artur-ciocanu Date: Wed, 23 Apr 2025 00:00:42 +0300 Subject: [PATCH 04/25] Use Java Bean for connection details and add more tests (#1317) * Use Java Bean for connection details and add more tests Signed-off-by: Artur Ciocanu * Simplify mock setup Signed-off-by: Artur Ciocanu * Adding even more tests for test coverage Signed-off-by: Artur Ciocanu --------- Signed-off-by: Artur Ciocanu Co-authored-by: Artur Ciocanu Co-authored-by: Cassie Coyle Signed-off-by: sirivarma --- .../client/DaprClientAutoConfiguration.java | 78 ++++++-- .../client/DaprConnectionDetails.java | 8 +- .../PropertiesDaprConnectionDetails.java | 8 +- .../DaprClientAutoConfigurationTest.java | 176 ++++++++++++++++++ .../DaprClientAutoConfigurationTests.java | 42 ----- ...DaprContainerConnectionDetailsFactory.java | 8 +- .../io/dapr/client/DaprClientBuilder.java | 9 +- 7 files changed, 252 insertions(+), 77 deletions(-) create mode 100644 dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTest.java delete mode 100644 dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTests.java diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfiguration.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfiguration.java index e692016ba5..11e7d6c159 100644 --- a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfiguration.java +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfiguration.java @@ -43,19 +43,31 @@ DaprConnectionDetails daprConnectionDetails(DaprClientProperties properties) { @Bean @ConditionalOnMissingBean DaprClientBuilder daprClientBuilder(DaprConnectionDetails daprConnectionDetails) { - DaprClientBuilder builder = new DaprClientBuilder(); - if (daprConnectionDetails.httpEndpoint() != null) { - builder.withPropertyOverride(Properties.HTTP_ENDPOINT, daprConnectionDetails.httpEndpoint()); + DaprClientBuilder builder = createDaprClientBuilder(); + String httpEndpoint = daprConnectionDetails.getHttpEndpoint(); + + if (httpEndpoint != null) { + builder.withPropertyOverride(Properties.HTTP_ENDPOINT, httpEndpoint); } - if (daprConnectionDetails.grpcEndpoint() != null) { - builder.withPropertyOverride(Properties.GRPC_ENDPOINT, daprConnectionDetails.grpcEndpoint()); + + String grpcEndpoint = daprConnectionDetails.getGrpcEndpoint(); + + if (grpcEndpoint != null) { + builder.withPropertyOverride(Properties.GRPC_ENDPOINT, grpcEndpoint); } - if (daprConnectionDetails.httpPort() != null) { - builder.withPropertyOverride(Properties.HTTP_PORT, String.valueOf(daprConnectionDetails.httpPort())); + + Integer httpPort = daprConnectionDetails.getHttpPort(); + + if (httpPort != null) { + builder.withPropertyOverride(Properties.HTTP_PORT, String.valueOf(httpPort)); } - if (daprConnectionDetails.grpcPort() != null) { - builder.withPropertyOverride(Properties.GRPC_PORT, String.valueOf(daprConnectionDetails.grpcPort())); + + Integer grpcPort = daprConnectionDetails.getGrpcPort(); + + if (grpcPort != null) { + builder.withPropertyOverride(Properties.GRPC_PORT, String.valueOf(grpcPort)); } + return builder; } @@ -90,22 +102,50 @@ ActorRuntime daprActorRuntime(DaprConnectionDetails daprConnectionDetails) { @ConditionalOnMissingBean WorkflowRuntimeBuilder daprWorkflowRuntimeBuilder(DaprConnectionDetails daprConnectionDetails) { Properties properties = createPropertiesFromConnectionDetails(daprConnectionDetails); + return new WorkflowRuntimeBuilder(properties); } - private Properties createPropertiesFromConnectionDetails(DaprConnectionDetails daprConnectionDetails) { - final Map propertyOverrides = new HashMap<>(); - propertyOverrides.put(Properties.HTTP_ENDPOINT.getName(), daprConnectionDetails.httpEndpoint()); - if (daprConnectionDetails.httpPort() != null) { - propertyOverrides.put(Properties.HTTP_PORT.getName(), String.valueOf(daprConnectionDetails.httpPort())); + /** + * We use this method in tests to override the default DaprClientBuilder. + */ + protected DaprClientBuilder createDaprClientBuilder() { + return new DaprClientBuilder(); + } + + /** + * Creates a Properties object from the DaprConnectionDetails. + * + * @param daprConnectionDetails the DaprConnectionDetails + * @return the Properties object + */ + protected Properties createPropertiesFromConnectionDetails(DaprConnectionDetails daprConnectionDetails) { + Map propertyOverrides = new HashMap<>(); + String httpEndpoint = daprConnectionDetails.getHttpEndpoint(); + + if (httpEndpoint != null) { + propertyOverrides.put(Properties.HTTP_ENDPOINT.getName(), httpEndpoint); } - propertyOverrides.put(Properties.GRPC_ENDPOINT.getName(), daprConnectionDetails.grpcEndpoint()); - if (daprConnectionDetails.grpcPort() != null) { - propertyOverrides.put(Properties.GRPC_PORT.getName(), String.valueOf(daprConnectionDetails.grpcPort())); + + Integer httpPort = daprConnectionDetails.getHttpPort(); + + if (httpPort != null) { + propertyOverrides.put(Properties.HTTP_PORT.getName(), String.valueOf(httpPort)); } - return new Properties(propertyOverrides); - } + String grpcEndpoint = daprConnectionDetails.getGrpcEndpoint(); + + if (grpcEndpoint != null) { + propertyOverrides.put(Properties.GRPC_ENDPOINT.getName(), grpcEndpoint); + } + Integer grpcPort = daprConnectionDetails.getGrpcPort(); + + if (grpcPort != null) { + propertyOverrides.put(Properties.GRPC_PORT.getName(), String.valueOf(grpcPort)); + } + + return new Properties(propertyOverrides); + } } diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprConnectionDetails.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprConnectionDetails.java index 4a95af014e..a2b3ddaff4 100644 --- a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprConnectionDetails.java +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/DaprConnectionDetails.java @@ -16,11 +16,11 @@ import org.springframework.boot.autoconfigure.service.connection.ConnectionDetails; public interface DaprConnectionDetails extends ConnectionDetails { - String httpEndpoint(); + String getHttpEndpoint(); - String grpcEndpoint(); + String getGrpcEndpoint(); - Integer httpPort(); + Integer getHttpPort(); - Integer grpcPort(); + Integer getGrpcPort(); } diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/PropertiesDaprConnectionDetails.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/PropertiesDaprConnectionDetails.java index e7b98b1021..ec46dde995 100644 --- a/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/PropertiesDaprConnectionDetails.java +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/main/java/io/dapr/spring/boot/autoconfigure/client/PropertiesDaprConnectionDetails.java @@ -22,22 +22,22 @@ public PropertiesDaprConnectionDetails(DaprClientProperties daprClientProperties } @Override - public String httpEndpoint() { + public String getHttpEndpoint() { return this.daprClientProperties.getHttpEndpoint(); } @Override - public String grpcEndpoint() { + public String getGrpcEndpoint() { return this.daprClientProperties.getGrpcEndpoint(); } @Override - public Integer httpPort() { + public Integer getHttpPort() { return this.daprClientProperties.getHttpPort(); } @Override - public Integer grpcPort() { + public Integer getGrpcPort() { return this.daprClientProperties.getGrpcPort(); } } diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTest.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTest.java new file mode 100644 index 0000000000..f7b3a999ad --- /dev/null +++ b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTest.java @@ -0,0 +1,176 @@ +/* + * Copyright 2024 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.spring.boot.autoconfigure.client; + +import io.dapr.client.DaprClient; +import io.dapr.client.DaprClientBuilder; +import io.dapr.config.Properties; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; + +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +/** + * Unit tests for {@link DaprClientAutoConfiguration}. + */ +@ExtendWith(MockitoExtension.class) +class DaprClientAutoConfigurationTest { + + private final ApplicationContextRunner contextRunner = new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of(DaprClientAutoConfiguration.class)); + + @Mock + private DaprConnectionDetails connectionDetails; + + @Mock + private DaprClientBuilder builder; + + private DaprClientAutoConfiguration configuration; + + @Test + void daprClientBuilder() { + contextRunner.run(context -> assertThat(context).hasSingleBean(DaprClientBuilder.class)); + } + + @Test + void daprClient() { + contextRunner.run(context -> assertThat(context).hasSingleBean(DaprClient.class)); + } + + @BeforeEach + void setUp() { + configuration = new TestDaprClientAutoConfiguration(builder); + } + + @Test + @DisplayName("Should override HTTP endpoint if it exists") + void shouldOverrideHttpEndpointIfExists() { + String httpEndpoint = "http://localhost:3500"; + + when(connectionDetails.getHttpEndpoint()).thenReturn(httpEndpoint); + + configuration.daprClientBuilder(connectionDetails); + + verify(builder).withPropertyOverride(Properties.HTTP_ENDPOINT, httpEndpoint); + } + + @Test + @DisplayName("Should override GRPC endpoint if it exists") + void shouldOverrideGrpcEndpointIfExists() { + String grpcEndpoint = "grpc://localhost:5001"; + + when(connectionDetails.getGrpcEndpoint()).thenReturn(grpcEndpoint); + + configuration.daprClientBuilder(connectionDetails); + + verify(builder).withPropertyOverride(Properties.GRPC_ENDPOINT, grpcEndpoint); + } + + @Test + @DisplayName("Should override HTTP port if it exists") + void shouldOverrideHttpPortIfExists() { + Integer httpPort = 3600; + + when(connectionDetails.getHttpPort()).thenReturn(httpPort); + + configuration.daprClientBuilder(connectionDetails); + + verify(builder).withPropertyOverride(Properties.HTTP_PORT, String.valueOf(httpPort)); + } + + @Test + @DisplayName("Should override GRPC port if it exists") + void shouldOverrideGrpcPortIfExists() { + Integer grpcPort = 6001; + + when(connectionDetails.getGrpcPort()).thenReturn(grpcPort); + + configuration.daprClientBuilder(connectionDetails); + + verify(builder).withPropertyOverride(Properties.GRPC_PORT, String.valueOf(grpcPort)); + } + + @Test + @DisplayName("Should override HTTP endpoint in properties if it exists") + void shouldOverrideHttpEndpointInPropertiesIfExists() { + String httpEndpoint = "http://localhost:3500"; + + when(connectionDetails.getHttpEndpoint()).thenReturn(httpEndpoint); + + Properties reuslt = configuration.createPropertiesFromConnectionDetails(connectionDetails); + + assertThat(reuslt.getValue(Properties.HTTP_ENDPOINT)).isEqualTo(httpEndpoint); + } + + @Test + @DisplayName("Should override GRPC endpoint in properties if it exists") + void shouldOverrideGrpcEndpointPropertiesIfExists() { + String grpcEndpoint = "grpc://localhost:3500"; + + when(connectionDetails.getGrpcEndpoint()).thenReturn(grpcEndpoint); + + Properties result = configuration.createPropertiesFromConnectionDetails(connectionDetails); + + assertThat(result.getValue(Properties.GRPC_ENDPOINT)).isEqualTo(grpcEndpoint); + } + + @Test + @DisplayName("Should override HTTP port in properties if it exists") + void shouldOverrideHttpPortPropertiesIfExists() { + Integer httpPort = 3600; + + when(connectionDetails.getHttpPort()).thenReturn(httpPort); + + Properties result = configuration.createPropertiesFromConnectionDetails(connectionDetails); + + assertThat(result.getValue(Properties.HTTP_PORT)).isEqualTo(httpPort); + } + + @Test + @DisplayName("Should override GRPC port in properties if it exists") + void shouldOverrideGrpcPortPropertiesIfExists() { + Integer grpcPort = 6001; + + when(connectionDetails.getGrpcPort()).thenReturn(grpcPort); + + Properties result = configuration.createPropertiesFromConnectionDetails(connectionDetails); + + assertThat(result.getValue(Properties.GRPC_PORT)).isEqualTo(grpcPort); + } + + private static class TestDaprClientAutoConfiguration extends DaprClientAutoConfiguration { + + private final DaprClientBuilder daprClientBuilder; + + public TestDaprClientAutoConfiguration(DaprClientBuilder daprClientBuilder) { + this.daprClientBuilder = daprClientBuilder; + } + + @Override + protected DaprClientBuilder createDaprClientBuilder() { + return daprClientBuilder; + } + } + +} diff --git a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTests.java b/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTests.java deleted file mode 100644 index 0545df1788..0000000000 --- a/dapr-spring/dapr-spring-boot-autoconfigure/src/test/java/io/dapr/spring/boot/autoconfigure/client/DaprClientAutoConfigurationTests.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright 2024 The Dapr Authors - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and -limitations under the License. -*/ - -package io.dapr.spring.boot.autoconfigure.client; - -import io.dapr.client.DaprClient; -import io.dapr.client.DaprClientBuilder; -import org.junit.jupiter.api.Test; -import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.test.context.runner.ApplicationContextRunner; - -import static org.assertj.core.api.Assertions.assertThat; - -/** - * Unit tests for {@link DaprClientAutoConfiguration}. - */ -class DaprClientAutoConfigurationTests { - - private final ApplicationContextRunner contextRunner = new ApplicationContextRunner() - .withConfiguration(AutoConfigurations.of(DaprClientAutoConfiguration.class)); - - @Test - void daprClientBuilder() { - contextRunner.run(context -> assertThat(context).hasSingleBean(DaprClientBuilder.class)); - } - - @Test - void daprClient() { - contextRunner.run(context -> assertThat(context).hasSingleBean(DaprClient.class)); - } - -} diff --git a/dapr-spring/dapr-spring-boot-tests/src/main/java/io/dapr/spring/boot/testcontainers/service/connection/DaprContainerConnectionDetailsFactory.java b/dapr-spring/dapr-spring-boot-tests/src/main/java/io/dapr/spring/boot/testcontainers/service/connection/DaprContainerConnectionDetailsFactory.java index 4b4f9c1a76..12a822966f 100644 --- a/dapr-spring/dapr-spring-boot-tests/src/main/java/io/dapr/spring/boot/testcontainers/service/connection/DaprContainerConnectionDetailsFactory.java +++ b/dapr-spring/dapr-spring-boot-tests/src/main/java/io/dapr/spring/boot/testcontainers/service/connection/DaprContainerConnectionDetailsFactory.java @@ -23,22 +23,22 @@ private DaprContainerConnectionDetails(ContainerConnectionSource } @Override - public String httpEndpoint() { + public String getHttpEndpoint() { return getContainer().getHttpEndpoint(); } @Override - public String grpcEndpoint() { + public String getGrpcEndpoint() { return getContainer().getGrpcEndpoint(); } @Override - public Integer httpPort() { + public Integer getHttpPort() { return getContainer().getHttpPort(); } @Override - public Integer grpcPort() { + public Integer getGrpcPort() { return getContainer().getGrpcPort(); } } diff --git a/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java b/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java index 964b28e1dc..abb6b8524f 100644 --- a/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java +++ b/sdk/src/main/java/io/dapr/client/DaprClientBuilder.java @@ -162,11 +162,12 @@ public DaprPreviewClient buildPreviewClient() { * @throws java.lang.IllegalStateException if either host is missing or if port is missing or a negative number. */ private DaprClientImpl buildDaprClient() { - final Properties properties = new Properties(this.propertyOverrides); - final ManagedChannel channel = NetworkUtils.buildGrpcManagedChannel(properties); - final DaprHttp daprHttp = this.daprHttpBuilder.build(properties); - final GrpcChannelFacade channelFacade = new GrpcChannelFacade(channel); + Properties properties = new Properties(this.propertyOverrides); + ManagedChannel channel = NetworkUtils.buildGrpcManagedChannel(properties); + DaprHttp daprHttp = this.daprHttpBuilder.build(properties); + GrpcChannelFacade channelFacade = new GrpcChannelFacade(channel); DaprGrpc.DaprStub asyncStub = DaprGrpc.newStub(channel); + return new DaprClientImpl( channelFacade, asyncStub, From 84d16ea2f13ebc75f9d0b08a09d9eec0f2eca525 Mon Sep 17 00:00:00 2001 From: Siri Varma Vegiraju Date: Tue, 29 Apr 2025 06:27:02 -0700 Subject: [PATCH 05/25] Update CONTRIBUTING.md Signed-off-by: Siri Varma Vegiraju Signed-off-by: sirivarma --- CONTRIBUTING.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4009213b11..c094f92fa1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -51,6 +51,11 @@ Before you file an issue, make sure you've checked the following: This section describes the guidelines for contributing code / docs to Dapr. +### Things to consider when adding new API to SDK + +1. All the new API's go under [dapr-sdk maven package](https://github.com/dapr/java-sdk/tree/master/sdk) +2. Make sure there is an example talking about how to use the API along with a README. [Example](https://github.com/dapr/java-sdk/pull/1235/files#diff-69ed756c4c01fd5fa884aac030dccb8f3f4d4fefa0dc330862d55a6f87b34a14) + ### Pull Requests All contributions come through pull requests. To submit a proposed change, we recommend following this workflow: @@ -64,6 +69,7 @@ All contributions come through pull requests. To submit a proposed change, we re 6. Commit and open a PR 7. Wait for the CI process to finish and make sure all checks are green 8. A maintainer of the project will be assigned, and you can expect a review within a few days +9. All the files have the Copyright header. ### Configure the code style with checkstyle From 1ee9e1eb96768f9f0018923e0fac4e6f4dea7f12 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Apr 2025 15:34:31 -0700 Subject: [PATCH 06/25] Bump codecov/codecov-action from 5.4.0 to 5.4.2 (#1318) Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.4.0 to 5.4.2. - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/codecov/codecov-action/compare/v5.4.0...v5.4.2) --- updated-dependencies: - dependency-name: codecov/codecov-action dependency-version: 5.4.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cassie Coyle Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com> Signed-off-by: sirivarma --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ba2f0c2a39..5ee95452e1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -121,7 +121,7 @@ jobs: env: DOCKER_HOST: ${{steps.setup_docker.outputs.sock}} - name: Codecov - uses: codecov/codecov-action@v5.4.0 + uses: codecov/codecov-action@v5.4.2 - name: Install jars run: ./mvnw install -q -B -DskipTests - name: Integration tests using spring boot version ${{ matrix.spring-boot-version }} From 4df77144ade61b78b0708cbea4643a647c1c3aa2 Mon Sep 17 00:00:00 2001 From: artur-ciocanu Date: Tue, 29 Apr 2025 20:06:05 +0300 Subject: [PATCH 07/25] Fix URL building logic (#1320) * Fix URL building logic Signed-off-by: Artur Ciocanu * Add test for query params Signed-off-by: Artur Ciocanu * Fix the assertion in the test Signed-off-by: Artur Ciocanu * Adjust the tests Signed-off-by: Artur Ciocanu * Remove uneeded changes from IT test Signed-off-by: Artur Ciocanu * Revert some unintended changes Signed-off-by: Artur Ciocanu * Simplify the testing a little bit Signed-off-by: Artur Ciocanu * Adjust the test to use ServerRequest Signed-off-by: Artur Ciocanu * Test removing things from method invoke controller Signed-off-by: Artur Ciocanu * Add query param encoding test Signed-off-by: Artur Ciocanu * Revert some unintended changes Signed-off-by: Artur Ciocanu * Some tiny styles Signed-off-by: Artur Ciocanu --------- Signed-off-by: Artur Ciocanu Co-authored-by: Artur Ciocanu Signed-off-by: sirivarma --- .../http/MethodInvokeController.java | 6 +++++ .../it/methodinvoke/http/MethodInvokeIT.java | 23 ++++++++++++++++++- .../main/java/io/dapr/client/DaprHttp.java | 21 ++++++++++++++--- 3 files changed, 46 insertions(+), 4 deletions(-) diff --git a/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeController.java b/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeController.java index 8ff77985b7..d381e2ac69 100644 --- a/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeController.java +++ b/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeController.java @@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; @@ -88,6 +89,11 @@ public void sleep(@RequestBody int seconds) throws InterruptedException { Thread.sleep(seconds * 1000); } + @GetMapping(path = "/query") + public Map getQuery(@RequestParam("uri") String uri) { + return Map.of("uri", uri); + } + @GetMapping(path = "/health") public void health() { } diff --git a/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeIT.java b/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeIT.java index ba7b485ca6..9d9ac02f8b 100644 --- a/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeIT.java +++ b/sdk-tests/src/test/java/io/dapr/it/methodinvoke/http/MethodInvokeIT.java @@ -1,7 +1,8 @@ package io.dapr.it.methodinvoke.http; +import com.fasterxml.jackson.databind.JsonNode; import io.dapr.client.DaprClient; -import io.dapr.client.DaprClientBuilder; +import io.dapr.client.DaprHttp; import io.dapr.client.domain.HttpExtension; import io.dapr.exceptions.DaprException; import io.dapr.it.BaseIT; @@ -140,4 +141,24 @@ public void testInvokeException() throws Exception { assertTrue(new String(exception.getPayload()).contains("Internal Server Error")); } } + + @Test + public void testInvokeQueryParamEncoding() throws Exception { + try (DaprClient client = daprRun.newDaprClientBuilder().build()) { + client.waitForSidecar(10000).block(); + + String uri = "abc/pqr"; + Map> queryParams = Map.of("uri", List.of(uri)); + HttpExtension httpExtension = new HttpExtension(DaprHttp.HttpMethods.GET, queryParams, Map.of()); + JsonNode result = client.invokeMethod( + daprRun.getAppName(), + "/query", + null, + httpExtension, + JsonNode.class + ).block(); + + assertEquals(uri, result.get("uri").asText()); + } + } } diff --git a/sdk/src/main/java/io/dapr/client/DaprHttp.java b/sdk/src/main/java/io/dapr/client/DaprHttp.java index 5b23d733ec..489fd40491 100644 --- a/sdk/src/main/java/io/dapr/client/DaprHttp.java +++ b/sdk/src/main/java/io/dapr/client/DaprHttp.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.net.URI; -import java.net.URISyntaxException; import java.net.URLEncoder; import java.net.http.HttpClient; import java.net.http.HttpRequest; @@ -324,10 +323,17 @@ private static String getContentType(Map headers) { private static URI createUri(URI uri, String[] pathSegments, Map> urlParameters) { String path = createPath(uri, pathSegments); String query = createQuery(urlParameters); + StringBuilder result = new StringBuilder(); + + result.append(uri.getScheme()).append("://").append(uri.getAuthority()).append(path); + + if (query != null) { + result.append("?").append(query); + } try { - return new URI(uri.getScheme(), uri.getAuthority(), path, query, null); - } catch (URISyntaxException exception) { + return URI.create(result.toString()); + } catch (IllegalArgumentException exception) { throw new DaprException(exception); } } @@ -346,6 +352,10 @@ private static String createPath(URI uri, String[] pathSegments) { } for (String segment : pathSegments) { + if (segment == null || segment.isEmpty()) { + continue; // Skip empty segments + } + pathBuilder.append(encodePathSegment(segment)).append("/"); // Encode each segment } @@ -363,6 +373,11 @@ private static String createQuery(Map> urlParameters) { for (Map.Entry> entry : urlParameters.entrySet()) { String key = entry.getKey(); + + if (key == null || key.isEmpty()) { + continue; // Skip empty keys + } + List values = entry.getValue(); for (String value : values) { From 5151bc76e75d169ec44486bdcb03ed837f81783a Mon Sep 17 00:00:00 2001 From: Dapr Bot Date: Wed, 30 Apr 2025 14:01:23 +0000 Subject: [PATCH 08/25] Generate updated javadocs for 1.14.1 Signed-off-by: Dapr Bot Signed-off-by: sirivarma --- README.md | 12 +++++----- daprdocs/content/en/java-sdk-docs/_index.md | 24 ++++++++++++++----- .../en/java-sdk-docs/spring-boot/_index.md | 4 ++-- docs/allclasses-index.html | 6 ++--- docs/allpackages-index.html | 6 ++--- docs/constant-values.html | 6 ++--- docs/dapr-sdk-workflows/allclasses-index.html | 6 ++--- .../dapr-sdk-workflows/allpackages-index.html | 6 ++--- docs/dapr-sdk-workflows/help-doc.html | 6 ++--- docs/dapr-sdk-workflows/index-all.html | 6 ++--- docs/dapr-sdk-workflows/index.html | 8 +++---- .../io/dapr/workflows/Workflow.html | 6 ++--- .../io/dapr/workflows/WorkflowContext.html | 6 ++--- .../io/dapr/workflows/WorkflowStub.html | 6 ++--- .../io/dapr/workflows/class-use/Workflow.html | 6 ++--- .../workflows/class-use/WorkflowContext.html | 6 ++--- .../workflows/class-use/WorkflowStub.html | 6 ++--- .../workflows/client/DaprWorkflowClient.html | 6 ++--- .../client/WorkflowFailureDetails.html | 6 ++--- .../client/WorkflowInstanceStatus.html | 6 ++--- .../client/class-use/DaprWorkflowClient.html | 6 ++--- .../class-use/WorkflowFailureDetails.html | 6 ++--- .../class-use/WorkflowInstanceStatus.html | 6 ++--- .../workflows/client/package-summary.html | 6 ++--- .../dapr/workflows/client/package-tree.html | 6 ++--- .../io/dapr/workflows/client/package-use.html | 6 ++--- .../internal/ApiTokenClientInterceptor.html | 6 ++--- .../class-use/ApiTokenClientInterceptor.html | 6 ++--- .../workflows/internal/package-summary.html | 6 ++--- .../dapr/workflows/internal/package-tree.html | 6 ++--- .../dapr/workflows/internal/package-use.html | 6 ++--- .../io/dapr/workflows/package-summary.html | 6 ++--- .../io/dapr/workflows/package-tree.html | 6 ++--- .../io/dapr/workflows/package-use.html | 6 ++--- .../workflows/runtime/WorkflowRuntime.html | 6 ++--- .../runtime/WorkflowRuntimeBuilder.html | 6 ++--- .../runtime/WorkflowRuntimeStatus.html | 6 ++--- .../runtime/class-use/WorkflowRuntime.html | 6 ++--- .../class-use/WorkflowRuntimeBuilder.html | 6 ++--- .../class-use/WorkflowRuntimeStatus.html | 6 ++--- .../workflows/runtime/package-summary.html | 6 ++--- .../dapr/workflows/runtime/package-tree.html | 6 ++--- .../dapr/workflows/runtime/package-use.html | 6 ++--- docs/dapr-sdk-workflows/overview-summary.html | 6 ++--- docs/dapr-sdk-workflows/overview-tree.html | 6 ++--- docs/dapr-sdk-workflows/project-reports.html | 6 ++--- docs/deprecated-list.html | 6 ++--- docs/help-doc.html | 6 ++--- docs/index-all.html | 6 ++--- docs/index.html | 8 +++---- docs/io/dapr/Rule.html | 6 ++--- docs/io/dapr/Topic.html | 6 ++--- docs/io/dapr/actors/ActorId.html | 6 ++--- docs/io/dapr/actors/ActorMethod.html | 6 ++--- docs/io/dapr/actors/ActorTrace.html | 6 ++--- docs/io/dapr/actors/ActorType.html | 6 ++--- docs/io/dapr/actors/ActorUtils.html | 6 ++--- docs/io/dapr/actors/class-use/ActorId.html | 6 ++--- .../io/dapr/actors/class-use/ActorMethod.html | 6 ++--- docs/io/dapr/actors/class-use/ActorTrace.html | 6 ++--- docs/io/dapr/actors/class-use/ActorType.html | 6 ++--- docs/io/dapr/actors/class-use/ActorUtils.html | 6 ++--- docs/io/dapr/actors/client/ActorClient.html | 6 ++--- docs/io/dapr/actors/client/ActorProxy.html | 6 ++--- .../dapr/actors/client/ActorProxyBuilder.html | 6 ++--- .../actors/client/class-use/ActorClient.html | 6 ++--- .../actors/client/class-use/ActorProxy.html | 6 ++--- .../client/class-use/ActorProxyBuilder.html | 6 ++--- .../dapr/actors/client/package-summary.html | 6 ++--- docs/io/dapr/actors/client/package-tree.html | 6 ++--- docs/io/dapr/actors/client/package-use.html | 6 ++--- docs/io/dapr/actors/package-summary.html | 6 ++--- docs/io/dapr/actors/package-tree.html | 6 ++--- docs/io/dapr/actors/package-use.html | 6 ++--- .../io/dapr/actors/runtime/AbstractActor.html | 6 ++--- docs/io/dapr/actors/runtime/ActorFactory.html | 6 ++--- .../actors/runtime/ActorMethodContext.html | 6 ++--- .../actors/runtime/ActorObjectSerializer.html | 6 ++--- docs/io/dapr/actors/runtime/ActorRuntime.html | 6 ++--- .../actors/runtime/ActorRuntimeConfig.html | 6 ++--- .../actors/runtime/ActorRuntimeContext.html | 6 ++--- .../dapr/actors/runtime/ActorStateChange.html | 6 ++--- .../actors/runtime/ActorStateChangeKind.html | 6 ++--- .../actors/runtime/ActorStateManager.html | 6 ++--- .../dapr/actors/runtime/ActorTypeConfig.html | 6 ++--- docs/io/dapr/actors/runtime/Remindable.html | 6 ++--- .../runtime/class-use/AbstractActor.html | 6 ++--- .../runtime/class-use/ActorFactory.html | 6 ++--- .../runtime/class-use/ActorMethodContext.html | 6 ++--- .../class-use/ActorObjectSerializer.html | 6 ++--- .../runtime/class-use/ActorRuntime.html | 6 ++--- .../runtime/class-use/ActorRuntimeConfig.html | 6 ++--- .../class-use/ActorRuntimeContext.html | 6 ++--- .../runtime/class-use/ActorStateChange.html | 6 ++--- .../class-use/ActorStateChangeKind.html | 6 ++--- .../runtime/class-use/ActorStateManager.html | 6 ++--- .../runtime/class-use/ActorTypeConfig.html | 6 ++--- .../actors/runtime/class-use/Remindable.html | 6 ++--- .../dapr/actors/runtime/package-summary.html | 6 ++--- docs/io/dapr/actors/runtime/package-tree.html | 6 ++--- docs/io/dapr/actors/runtime/package-use.html | 6 ++--- docs/io/dapr/class-use/Rule.html | 6 ++--- docs/io/dapr/class-use/Topic.html | 6 ++--- docs/io/dapr/client/DaprClient.html | 6 ++--- docs/io/dapr/client/DaprClientBuilder.html | 6 ++--- docs/io/dapr/client/DaprClientImpl.html | 6 ++--- docs/io/dapr/client/DaprHttp.HttpMethods.html | 6 ++--- docs/io/dapr/client/DaprHttp.Response.html | 6 ++--- docs/io/dapr/client/DaprHttp.html | 6 ++--- docs/io/dapr/client/DaprHttpBuilder.html | 6 ++--- docs/io/dapr/client/DaprPreviewClient.html | 6 ++--- docs/io/dapr/client/Headers.html | 6 ++--- docs/io/dapr/client/ObjectSerializer.html | 6 ++--- docs/io/dapr/client/class-use/DaprClient.html | 6 ++--- .../client/class-use/DaprClientBuilder.html | 6 ++--- .../dapr/client/class-use/DaprClientImpl.html | 6 ++--- .../class-use/DaprHttp.HttpMethods.html | 6 ++--- .../client/class-use/DaprHttp.Response.html | 6 ++--- docs/io/dapr/client/class-use/DaprHttp.html | 6 ++--- .../client/class-use/DaprHttpBuilder.html | 6 ++--- .../client/class-use/DaprPreviewClient.html | 6 ++--- docs/io/dapr/client/class-use/Headers.html | 6 ++--- .../client/class-use/ObjectSerializer.html | 6 ++--- docs/io/dapr/client/domain/ActorMetadata.html | 6 ++--- ...AppConnectionPropertiesHealthMetadata.html | 6 ++--- .../AppConnectionPropertiesMetadata.html | 6 ++--- .../dapr/client/domain/BulkPublishEntry.html | 6 ++--- .../client/domain/BulkPublishRequest.html | 6 ++--- .../client/domain/BulkPublishResponse.html | 6 ++--- .../BulkPublishResponseFailedEntry.html | 6 ++--- .../domain/BulkSubscribeAppResponse.html | 6 ++--- .../domain/BulkSubscribeAppResponseEntry.html | 6 ++--- .../BulkSubscribeAppResponseStatus.html | 6 ++--- .../client/domain/BulkSubscribeMessage.html | 6 ++--- .../domain/BulkSubscribeMessageEntry.html | 6 ++--- docs/io/dapr/client/domain/CloudEvent.html | 6 ++--- .../dapr/client/domain/ComponentMetadata.html | 6 ++--- .../dapr/client/domain/ConfigurationItem.html | 6 ++--- docs/io/dapr/client/domain/DaprMetadata.html | 6 ++--- .../client/domain/DeleteStateRequest.html | 6 ++--- .../ExecuteStateTransactionRequest.html | 6 ++--- .../client/domain/GetBulkSecretRequest.html | 6 ++--- .../client/domain/GetBulkStateRequest.html | 6 ++--- .../domain/GetConfigurationRequest.html | 6 ++--- .../dapr/client/domain/GetSecretRequest.html | 6 ++--- .../dapr/client/domain/GetStateRequest.html | 6 ++--- .../client/domain/HttpEndpointMetadata.html | 6 ++--- docs/io/dapr/client/domain/HttpExtension.html | 6 ++--- .../client/domain/InvokeBindingRequest.html | 6 ++--- .../client/domain/InvokeMethodRequest.html | 6 ++--- docs/io/dapr/client/domain/LockRequest.html | 6 ++--- docs/io/dapr/client/domain/Metadata.html | 6 ++--- .../client/domain/PublishEventRequest.html | 6 ++--- .../io/dapr/client/domain/QueryStateItem.html | 6 ++--- .../dapr/client/domain/QueryStateRequest.html | 6 ++--- .../client/domain/QueryStateResponse.html | 6 ++--- docs/io/dapr/client/domain/RuleMetadata.html | 6 ++--- .../dapr/client/domain/SaveStateRequest.html | 6 ++--- docs/io/dapr/client/domain/State.html | 6 ++--- .../domain/StateOptions.Concurrency.html | 6 ++--- .../domain/StateOptions.Consistency.html | 6 ++--- ...tions.StateOptionDurationDeserializer.html | 6 ++--- ...Options.StateOptionDurationSerializer.html | 6 ++--- docs/io/dapr/client/domain/StateOptions.html | 6 ++--- .../domain/SubscribeConfigurationRequest.html | 6 ++--- .../SubscribeConfigurationResponse.html | 6 ++--- .../client/domain/SubscriptionMetadata.html | 6 ++--- ...sactionalStateOperation.OperationType.html | 6 ++--- .../domain/TransactionalStateOperation.html | 6 ++--- .../domain/TransactionalStateRequest.html | 6 ++--- docs/io/dapr/client/domain/UnlockRequest.html | 6 ++--- .../client/domain/UnlockResponseStatus.html | 6 ++--- .../UnsubscribeConfigurationRequest.html | 6 ++--- .../UnsubscribeConfigurationResponse.html | 6 ++--- .../domain/class-use/ActorMetadata.html | 6 ++--- ...AppConnectionPropertiesHealthMetadata.html | 6 ++--- .../AppConnectionPropertiesMetadata.html | 6 ++--- .../domain/class-use/BulkPublishEntry.html | 6 ++--- .../domain/class-use/BulkPublishRequest.html | 6 ++--- .../domain/class-use/BulkPublishResponse.html | 6 ++--- .../BulkPublishResponseFailedEntry.html | 6 ++--- .../class-use/BulkSubscribeAppResponse.html | 6 ++--- .../BulkSubscribeAppResponseEntry.html | 6 ++--- .../BulkSubscribeAppResponseStatus.html | 6 ++--- .../class-use/BulkSubscribeMessage.html | 6 ++--- .../class-use/BulkSubscribeMessageEntry.html | 6 ++--- .../client/domain/class-use/CloudEvent.html | 6 ++--- .../domain/class-use/ComponentMetadata.html | 6 ++--- .../domain/class-use/ConfigurationItem.html | 6 ++--- .../client/domain/class-use/DaprMetadata.html | 6 ++--- .../domain/class-use/DeleteStateRequest.html | 6 ++--- .../ExecuteStateTransactionRequest.html | 6 ++--- .../class-use/GetBulkSecretRequest.html | 6 ++--- .../domain/class-use/GetBulkStateRequest.html | 6 ++--- .../class-use/GetConfigurationRequest.html | 6 ++--- .../domain/class-use/GetSecretRequest.html | 6 ++--- .../domain/class-use/GetStateRequest.html | 6 ++--- .../class-use/HttpEndpointMetadata.html | 6 ++--- .../domain/class-use/HttpExtension.html | 6 ++--- .../class-use/InvokeBindingRequest.html | 6 ++--- .../domain/class-use/InvokeMethodRequest.html | 6 ++--- .../client/domain/class-use/LockRequest.html | 6 ++--- .../client/domain/class-use/Metadata.html | 6 ++--- .../domain/class-use/PublishEventRequest.html | 6 ++--- .../domain/class-use/QueryStateItem.html | 6 ++--- .../domain/class-use/QueryStateRequest.html | 6 ++--- .../domain/class-use/QueryStateResponse.html | 6 ++--- .../client/domain/class-use/RuleMetadata.html | 6 ++--- .../domain/class-use/SaveStateRequest.html | 6 ++--- .../dapr/client/domain/class-use/State.html | 6 ++--- .../class-use/StateOptions.Concurrency.html | 6 ++--- .../class-use/StateOptions.Consistency.html | 6 ++--- ...tions.StateOptionDurationDeserializer.html | 6 ++--- ...Options.StateOptionDurationSerializer.html | 6 ++--- .../client/domain/class-use/StateOptions.html | 6 ++--- .../SubscribeConfigurationRequest.html | 6 ++--- .../SubscribeConfigurationResponse.html | 6 ++--- .../class-use/SubscriptionMetadata.html | 6 ++--- ...sactionalStateOperation.OperationType.html | 6 ++--- .../TransactionalStateOperation.html | 6 ++--- .../class-use/TransactionalStateRequest.html | 6 ++--- .../domain/class-use/UnlockRequest.html | 6 ++--- .../class-use/UnlockResponseStatus.html | 6 ++--- .../UnsubscribeConfigurationRequest.html | 6 ++--- .../UnsubscribeConfigurationResponse.html | 6 ++--- .../dapr/client/domain/package-summary.html | 6 ++--- docs/io/dapr/client/domain/package-tree.html | 6 ++--- docs/io/dapr/client/domain/package-use.html | 6 ++--- .../dapr/client/domain/query/Pagination.html | 6 ++--- docs/io/dapr/client/domain/query/Query.html | 6 ++--- .../client/domain/query/Sorting.Order.html | 6 ++--- docs/io/dapr/client/domain/query/Sorting.html | 6 ++--- .../domain/query/class-use/Pagination.html | 6 ++--- .../client/domain/query/class-use/Query.html | 6 ++--- .../domain/query/class-use/Sorting.Order.html | 6 ++--- .../domain/query/class-use/Sorting.html | 6 ++--- .../domain/query/filters/AndFilter.html | 6 ++--- .../client/domain/query/filters/EqFilter.html | 6 ++--- .../client/domain/query/filters/Filter.html | 6 ++--- .../client/domain/query/filters/InFilter.html | 6 ++--- .../client/domain/query/filters/OrFilter.html | 6 ++--- .../query/filters/class-use/AndFilter.html | 6 ++--- .../query/filters/class-use/EqFilter.html | 6 ++--- .../query/filters/class-use/Filter.html | 6 ++--- .../query/filters/class-use/InFilter.html | 6 ++--- .../query/filters/class-use/OrFilter.html | 6 ++--- .../domain/query/filters/package-summary.html | 6 ++--- .../domain/query/filters/package-tree.html | 6 ++--- .../domain/query/filters/package-use.html | 6 ++--- .../client/domain/query/package-summary.html | 6 ++--- .../client/domain/query/package-tree.html | 6 ++--- .../dapr/client/domain/query/package-use.html | 6 ++--- docs/io/dapr/client/package-summary.html | 6 ++--- docs/io/dapr/client/package-tree.html | 6 ++--- docs/io/dapr/client/package-use.html | 6 ++--- .../client/resiliency/ResiliencyOptions.html | 6 ++--- .../class-use/ResiliencyOptions.html | 6 ++--- .../client/resiliency/package-summary.html | 6 ++--- .../dapr/client/resiliency/package-tree.html | 6 ++--- .../dapr/client/resiliency/package-use.html | 6 ++--- docs/io/dapr/config/BooleanProperty.html | 6 ++--- docs/io/dapr/config/GenericProperty.html | 6 ++--- docs/io/dapr/config/IntegerProperty.html | 6 ++--- .../config/MillisecondsDurationProperty.html | 6 ++--- docs/io/dapr/config/Properties.html | 6 ++--- docs/io/dapr/config/Property.html | 6 ++--- docs/io/dapr/config/StringProperty.html | 6 ++--- .../config/class-use/BooleanProperty.html | 6 ++--- .../config/class-use/GenericProperty.html | 6 ++--- .../config/class-use/IntegerProperty.html | 6 ++--- .../MillisecondsDurationProperty.html | 6 ++--- docs/io/dapr/config/class-use/Properties.html | 6 ++--- docs/io/dapr/config/class-use/Property.html | 6 ++--- .../dapr/config/class-use/StringProperty.html | 6 ++--- docs/io/dapr/config/package-summary.html | 6 ++--- docs/io/dapr/config/package-tree.html | 6 ++--- docs/io/dapr/config/package-use.html | 6 ++--- docs/io/dapr/exceptions/DaprError.html | 6 ++--- .../DaprErrorDetails.ErrorDetailType.html | 6 ++--- docs/io/dapr/exceptions/DaprErrorDetails.html | 6 ++--- docs/io/dapr/exceptions/DaprException.html | 6 ++--- .../dapr/exceptions/class-use/DaprError.html | 6 ++--- .../DaprErrorDetails.ErrorDetailType.html | 6 ++--- .../class-use/DaprErrorDetails.html | 6 ++--- .../exceptions/class-use/DaprException.html | 6 ++--- docs/io/dapr/exceptions/package-summary.html | 6 ++--- docs/io/dapr/exceptions/package-tree.html | 6 ++--- docs/io/dapr/exceptions/package-use.html | 6 ++--- .../grpc/DaprClientGrpcInterceptors.html | 6 ++--- .../class-use/DaprClientGrpcInterceptors.html | 6 ++--- .../interceptors/DaprApiTokenInterceptor.html | 6 ++--- .../interceptors/DaprAppIdInterceptor.html | 6 ++--- .../interceptors/DaprTimeoutInterceptor.html | 6 ++--- .../interceptors/DaprTracingInterceptor.html | 6 ++--- .../class-use/DaprApiTokenInterceptor.html | 6 ++--- .../class-use/DaprAppIdInterceptor.html | 6 ++--- .../class-use/DaprTimeoutInterceptor.html | 6 ++--- .../class-use/DaprTracingInterceptor.html | 6 ++--- .../grpc/interceptors/package-summary.html | 6 ++--- .../grpc/interceptors/package-tree.html | 6 ++--- .../grpc/interceptors/package-use.html | 6 ++--- .../dapr/internal/grpc/package-summary.html | 6 ++--- docs/io/dapr/internal/grpc/package-tree.html | 6 ++--- docs/io/dapr/internal/grpc/package-use.html | 6 ++--- .../dapr/internal/opencensus/GrpcHelper.html | 6 ++--- .../opencensus/class-use/GrpcHelper.html | 6 ++--- .../internal/opencensus/package-summary.html | 6 ++--- .../internal/opencensus/package-tree.html | 6 ++--- .../dapr/internal/opencensus/package-use.html | 6 ++--- .../dapr/internal/resiliency/RetryPolicy.html | 6 ++--- .../internal/resiliency/TimeoutPolicy.html | 6 ++--- .../resiliency/class-use/RetryPolicy.html | 6 ++--- .../resiliency/class-use/TimeoutPolicy.html | 6 ++--- .../internal/resiliency/package-summary.html | 6 ++--- .../internal/resiliency/package-tree.html | 6 ++--- .../dapr/internal/resiliency/package-use.html | 6 ++--- docs/io/dapr/package-summary.html | 6 ++--- docs/io/dapr/package-tree.html | 6 ++--- docs/io/dapr/package-use.html | 6 ++--- .../dapr/serializer/DaprObjectSerializer.html | 6 ++--- .../serializer/DefaultObjectSerializer.html | 6 ++--- .../class-use/DaprObjectSerializer.html | 6 ++--- .../class-use/DefaultObjectSerializer.html | 6 ++--- docs/io/dapr/serializer/package-summary.html | 6 ++--- docs/io/dapr/serializer/package-tree.html | 6 ++--- docs/io/dapr/serializer/package-use.html | 6 ++--- .../utils/DefaultContentTypeConverter.html | 6 ++--- docs/io/dapr/utils/DurationUtils.html | 6 ++--- docs/io/dapr/utils/NetworkUtils.html | 6 ++--- docs/io/dapr/utils/TypeRef.html | 6 ++--- docs/io/dapr/utils/Version.html | 6 ++--- .../DefaultContentTypeConverter.html | 6 ++--- .../dapr/utils/class-use/DurationUtils.html | 6 ++--- .../io/dapr/utils/class-use/NetworkUtils.html | 6 ++--- docs/io/dapr/utils/class-use/TypeRef.html | 6 ++--- docs/io/dapr/utils/class-use/Version.html | 6 ++--- docs/io/dapr/utils/package-summary.html | 6 ++--- docs/io/dapr/utils/package-tree.html | 6 ++--- docs/io/dapr/utils/package-use.html | 6 ++--- ...lphaGrpc.AppCallbackAlphaBlockingStub.html | 6 ++--- ...kAlphaGrpc.AppCallbackAlphaFutureStub.html | 6 ++--- ...ackAlphaGrpc.AppCallbackAlphaImplBase.html | 6 ++--- ...allbackAlphaGrpc.AppCallbackAlphaStub.html | 6 ++--- .../v1/AppCallbackAlphaGrpc.AsyncService.html | 6 ++--- docs/io/dapr/v1/AppCallbackAlphaGrpc.html | 6 ++--- ...pCallbackGrpc.AppCallbackBlockingStub.html | 6 ++--- ...AppCallbackGrpc.AppCallbackFutureStub.html | 6 ++--- .../AppCallbackGrpc.AppCallbackImplBase.html | 6 ++--- .../v1/AppCallbackGrpc.AppCallbackStub.html | 6 ++--- .../dapr/v1/AppCallbackGrpc.AsyncService.html | 6 ++--- docs/io/dapr/v1/AppCallbackGrpc.html | 6 ++--- ...pc.AppCallbackHealthCheckBlockingStub.html | 6 ++--- ...Grpc.AppCallbackHealthCheckFutureStub.html | 6 ++--- ...ckGrpc.AppCallbackHealthCheckImplBase.html | 6 ++--- ...hCheckGrpc.AppCallbackHealthCheckStub.html | 6 ++--- ...pCallbackHealthCheckGrpc.AsyncService.html | 6 ++--- .../dapr/v1/AppCallbackHealthCheckGrpc.html | 6 ++--- ...ommonProtos.ConfigurationItem.Builder.html | 6 ++--- .../v1/CommonProtos.ConfigurationItem.html | 6 ++--- ...mmonProtos.ConfigurationItemOrBuilder.html | 6 ++--- .../io/dapr/v1/CommonProtos.Etag.Builder.html | 6 ++--- docs/io/dapr/v1/CommonProtos.Etag.html | 6 ++--- .../dapr/v1/CommonProtos.EtagOrBuilder.html | 6 ++--- .../CommonProtos.HTTPExtension.Builder.html | 6 ++--- .../v1/CommonProtos.HTTPExtension.Verb.html | 6 ++--- .../dapr/v1/CommonProtos.HTTPExtension.html | 6 ++--- .../CommonProtos.HTTPExtensionOrBuilder.html | 6 ++--- .../CommonProtos.InvokeRequest.Builder.html | 6 ++--- .../dapr/v1/CommonProtos.InvokeRequest.html | 6 ++--- .../CommonProtos.InvokeRequestOrBuilder.html | 6 ++--- .../CommonProtos.InvokeResponse.Builder.html | 6 ++--- .../dapr/v1/CommonProtos.InvokeResponse.html | 6 ++--- .../CommonProtos.InvokeResponseOrBuilder.html | 6 ++--- .../v1/CommonProtos.StateItem.Builder.html | 6 ++--- docs/io/dapr/v1/CommonProtos.StateItem.html | 6 ++--- .../v1/CommonProtos.StateItemOrBuilder.html | 6 ++--- .../v1/CommonProtos.StateOptions.Builder.html | 6 ++--- ...nProtos.StateOptions.StateConcurrency.html | 6 ++--- ...nProtos.StateOptions.StateConsistency.html | 6 ++--- .../io/dapr/v1/CommonProtos.StateOptions.html | 6 ++--- .../CommonProtos.StateOptionsOrBuilder.html | 6 ++--- .../CommonProtos.StreamPayload.Builder.html | 6 ++--- .../dapr/v1/CommonProtos.StreamPayload.html | 6 ++--- .../CommonProtos.StreamPayloadOrBuilder.html | 6 ++--- docs/io/dapr/v1/CommonProtos.html | 6 ++--- ...ackProtos.BindingEventRequest.Builder.html | 6 ++--- ...AppCallbackProtos.BindingEventRequest.html | 6 ++--- ...ckProtos.BindingEventRequestOrBuilder.html | 6 ++--- ...EventResponse.BindingEventConcurrency.html | 6 ++--- ...ckProtos.BindingEventResponse.Builder.html | 6 ++--- ...ppCallbackProtos.BindingEventResponse.html | 6 ++--- ...kProtos.BindingEventResponseOrBuilder.html | 6 ++--- ...ackProtos.BulkSubscribeConfig.Builder.html | 6 ++--- ...AppCallbackProtos.BulkSubscribeConfig.html | 6 ++--- ...ckProtos.BulkSubscribeConfigOrBuilder.html | 6 ++--- ...ackProtos.HealthCheckResponse.Builder.html | 6 ++--- ...AppCallbackProtos.HealthCheckResponse.html | 6 ++--- ...ckProtos.HealthCheckResponseOrBuilder.html | 6 ++--- ...allbackProtos.JobEventRequest.Builder.html | 6 ++--- ...DaprAppCallbackProtos.JobEventRequest.html | 6 ++--- ...llbackProtos.JobEventRequestOrBuilder.html | 6 ++--- ...llbackProtos.JobEventResponse.Builder.html | 6 ++--- ...aprAppCallbackProtos.JobEventResponse.html | 6 ++--- ...lbackProtos.JobEventResponseOrBuilder.html | 6 ++--- ...tos.ListInputBindingsResponse.Builder.html | 6 ++--- ...lbackProtos.ListInputBindingsResponse.html | 6 ++--- ...os.ListInputBindingsResponseOrBuilder.html | 6 ++--- ...istTopicSubscriptionsResponse.Builder.html | 6 ++--- ...Protos.ListTopicSubscriptionsResponse.html | 6 ++--- ...stTopicSubscriptionsResponseOrBuilder.html | 6 ++--- ...kProtos.TopicEventBulkRequest.Builder.html | 6 ++--- ...pCallbackProtos.TopicEventBulkRequest.html | 6 ++--- ...os.TopicEventBulkRequestEntry.Builder.html | 6 ++--- ....TopicEventBulkRequestEntry.EventCase.html | 6 ++--- ...backProtos.TopicEventBulkRequestEntry.html | 6 ++--- ...s.TopicEventBulkRequestEntryOrBuilder.html | 6 ++--- ...Protos.TopicEventBulkRequestOrBuilder.html | 6 ++--- ...Protos.TopicEventBulkResponse.Builder.html | 6 ++--- ...CallbackProtos.TopicEventBulkResponse.html | 6 ++--- ...s.TopicEventBulkResponseEntry.Builder.html | 6 ++--- ...ackProtos.TopicEventBulkResponseEntry.html | 6 ++--- ....TopicEventBulkResponseEntryOrBuilder.html | 6 ++--- ...rotos.TopicEventBulkResponseOrBuilder.html | 6 ++--- ...ackProtos.TopicEventCERequest.Builder.html | 6 ++--- ...AppCallbackProtos.TopicEventCERequest.html | 6 ++--- ...ckProtos.TopicEventCERequestOrBuilder.html | 6 ++--- ...lbackProtos.TopicEventRequest.Builder.html | 6 ++--- ...prAppCallbackProtos.TopicEventRequest.html | 6 ++--- ...backProtos.TopicEventRequestOrBuilder.html | 6 ++--- ...backProtos.TopicEventResponse.Builder.html | 6 ++--- ...ventResponse.TopicEventResponseStatus.html | 6 ++--- ...rAppCallbackProtos.TopicEventResponse.html | 6 ++--- ...ackProtos.TopicEventResponseOrBuilder.html | 6 ++--- ...AppCallbackProtos.TopicRoutes.Builder.html | 6 ++--- .../v1/DaprAppCallbackProtos.TopicRoutes.html | 6 ++--- ...ppCallbackProtos.TopicRoutesOrBuilder.html | 6 ++--- ...prAppCallbackProtos.TopicRule.Builder.html | 6 ++--- .../v1/DaprAppCallbackProtos.TopicRule.html | 6 ++--- ...rAppCallbackProtos.TopicRuleOrBuilder.html | 6 ++--- ...lbackProtos.TopicSubscription.Builder.html | 6 ++--- ...prAppCallbackProtos.TopicSubscription.html | 6 ++--- ...backProtos.TopicSubscriptionOrBuilder.html | 6 ++--- docs/io/dapr/v1/DaprAppCallbackProtos.html | 6 ++--- docs/io/dapr/v1/DaprGrpc.AsyncService.html | 6 ++--- .../io/dapr/v1/DaprGrpc.DaprBlockingStub.html | 6 ++--- docs/io/dapr/v1/DaprGrpc.DaprFutureStub.html | 6 ++--- docs/io/dapr/v1/DaprGrpc.DaprImplBase.html | 6 ++--- docs/io/dapr/v1/DaprGrpc.DaprStub.html | 6 ++--- docs/io/dapr/v1/DaprGrpc.html | 6 ++--- .../DaprProtos.ActiveActorsCount.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.ActiveActorsCount.html | 6 ++--- ...DaprProtos.ActiveActorsCountOrBuilder.html | 6 ++--- ...rotos.ActorRuntime.ActorRuntimeStatus.html | 6 ++--- .../v1/DaprProtos.ActorRuntime.Builder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.ActorRuntime.html | 6 ++--- .../v1/DaprProtos.ActorRuntimeOrBuilder.html | 6 ++--- ...AppConnectionHealthProperties.Builder.html | 6 ++--- ...rProtos.AppConnectionHealthProperties.html | 6 ++--- ...ppConnectionHealthPropertiesOrBuilder.html | 6 ++--- ...rotos.AppConnectionProperties.Builder.html | 6 ++--- .../DaprProtos.AppConnectionProperties.html | 6 ++--- ...otos.AppConnectionPropertiesOrBuilder.html | 6 ++--- ...DaprProtos.BulkPublishRequest.Builder.html | 6 ++--- .../v1/DaprProtos.BulkPublishRequest.html | 6 ++--- ...rotos.BulkPublishRequestEntry.Builder.html | 6 ++--- .../DaprProtos.BulkPublishRequestEntry.html | 6 ++--- ...otos.BulkPublishRequestEntryOrBuilder.html | 6 ++--- ...aprProtos.BulkPublishRequestOrBuilder.html | 6 ++--- ...aprProtos.BulkPublishResponse.Builder.html | 6 ++--- .../v1/DaprProtos.BulkPublishResponse.html | 6 ++--- ...ulkPublishResponseFailedEntry.Builder.html | 6 ++--- ...Protos.BulkPublishResponseFailedEntry.html | 6 ++--- ...lkPublishResponseFailedEntryOrBuilder.html | 6 ++--- ...prProtos.BulkPublishResponseOrBuilder.html | 6 ++--- .../v1/DaprProtos.BulkStateItem.Builder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.BulkStateItem.html | 6 ++--- .../v1/DaprProtos.BulkStateItemOrBuilder.html | 6 ++--- .../v1/DaprProtos.DecryptRequest.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.DecryptRequest.html | 6 ++--- ...rProtos.DecryptRequestOptions.Builder.html | 6 ++--- .../v1/DaprProtos.DecryptRequestOptions.html | 6 ++--- ...Protos.DecryptRequestOptionsOrBuilder.html | 6 ++--- .../DaprProtos.DecryptRequestOrBuilder.html | 6 ++--- .../DaprProtos.DecryptResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.DecryptResponse.html | 6 ++--- .../DaprProtos.DecryptResponseOrBuilder.html | 6 ++--- ...Protos.DeleteBulkStateRequest.Builder.html | 6 ++--- .../v1/DaprProtos.DeleteBulkStateRequest.html | 6 ++--- ...rotos.DeleteBulkStateRequestOrBuilder.html | 6 ++--- .../DaprProtos.DeleteJobRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.DeleteJobRequest.html | 6 ++--- .../DaprProtos.DeleteJobRequestOrBuilder.html | 6 ++--- .../DaprProtos.DeleteJobResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.DeleteJobResponse.html | 6 ++--- ...DaprProtos.DeleteJobResponseOrBuilder.html | 6 ++--- ...DaprProtos.DeleteStateRequest.Builder.html | 6 ++--- .../v1/DaprProtos.DeleteStateRequest.html | 6 ++--- ...aprProtos.DeleteStateRequestOrBuilder.html | 6 ++--- .../v1/DaprProtos.EncryptRequest.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.EncryptRequest.html | 6 ++--- ...rProtos.EncryptRequestOptions.Builder.html | 6 ++--- .../v1/DaprProtos.EncryptRequestOptions.html | 6 ++--- ...Protos.EncryptRequestOptionsOrBuilder.html | 6 ++--- .../DaprProtos.EncryptRequestOrBuilder.html | 6 ++--- .../DaprProtos.EncryptResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.EncryptResponse.html | 6 ++--- .../DaprProtos.EncryptResponseOrBuilder.html | 6 ++--- ...eActorStateTransactionRequest.Builder.html | 6 ++--- ...s.ExecuteActorStateTransactionRequest.html | 6 ++--- ...ActorStateTransactionRequestOrBuilder.html | 6 ++--- ...xecuteStateTransactionRequest.Builder.html | 6 ++--- ...Protos.ExecuteStateTransactionRequest.html | 6 ++--- ...ecuteStateTransactionRequestOrBuilder.html | 6 ++--- ...prProtos.GetActorStateRequest.Builder.html | 6 ++--- .../v1/DaprProtos.GetActorStateRequest.html | 6 ++--- ...rProtos.GetActorStateRequestOrBuilder.html | 6 ++--- ...rProtos.GetActorStateResponse.Builder.html | 6 ++--- .../v1/DaprProtos.GetActorStateResponse.html | 6 ++--- ...Protos.GetActorStateResponseOrBuilder.html | 6 ++--- ...prProtos.GetBulkSecretRequest.Builder.html | 6 ++--- .../v1/DaprProtos.GetBulkSecretRequest.html | 6 ++--- ...rProtos.GetBulkSecretRequestOrBuilder.html | 6 ++--- ...rProtos.GetBulkSecretResponse.Builder.html | 6 ++--- .../v1/DaprProtos.GetBulkSecretResponse.html | 6 ++--- ...Protos.GetBulkSecretResponseOrBuilder.html | 6 ++--- ...aprProtos.GetBulkStateRequest.Builder.html | 6 ++--- .../v1/DaprProtos.GetBulkStateRequest.html | 6 ++--- ...prProtos.GetBulkStateRequestOrBuilder.html | 6 ++--- ...prProtos.GetBulkStateResponse.Builder.html | 6 ++--- .../v1/DaprProtos.GetBulkStateResponse.html | 6 ++--- ...rProtos.GetBulkStateResponseOrBuilder.html | 6 ++--- ...rotos.GetConfigurationRequest.Builder.html | 6 ++--- .../DaprProtos.GetConfigurationRequest.html | 6 ++--- ...otos.GetConfigurationRequestOrBuilder.html | 6 ++--- ...otos.GetConfigurationResponse.Builder.html | 6 ++--- .../DaprProtos.GetConfigurationResponse.html | 6 ++--- ...tos.GetConfigurationResponseOrBuilder.html | 6 ++--- .../v1/DaprProtos.GetJobRequest.Builder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.GetJobRequest.html | 6 ++--- .../v1/DaprProtos.GetJobRequestOrBuilder.html | 6 ++--- .../v1/DaprProtos.GetJobResponse.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.GetJobResponse.html | 6 ++--- .../DaprProtos.GetJobResponseOrBuilder.html | 6 ++--- ...DaprProtos.GetMetadataRequest.Builder.html | 6 ++--- .../v1/DaprProtos.GetMetadataRequest.html | 6 ++--- ...aprProtos.GetMetadataRequestOrBuilder.html | 6 ++--- ...aprProtos.GetMetadataResponse.Builder.html | 6 ++--- .../v1/DaprProtos.GetMetadataResponse.html | 6 ++--- ...prProtos.GetMetadataResponseOrBuilder.html | 6 ++--- .../DaprProtos.GetSecretRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.GetSecretRequest.html | 6 ++--- .../DaprProtos.GetSecretRequestOrBuilder.html | 6 ++--- .../DaprProtos.GetSecretResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.GetSecretResponse.html | 6 ++--- ...DaprProtos.GetSecretResponseOrBuilder.html | 6 ++--- .../DaprProtos.GetStateRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.GetStateRequest.html | 6 ++--- .../DaprProtos.GetStateRequestOrBuilder.html | 6 ++--- .../DaprProtos.GetStateResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.GetStateResponse.html | 6 ++--- .../DaprProtos.GetStateResponseOrBuilder.html | 6 ++--- ...DaprProtos.GetWorkflowRequest.Builder.html | 6 ++--- .../v1/DaprProtos.GetWorkflowRequest.html | 6 ++--- ...aprProtos.GetWorkflowRequestOrBuilder.html | 6 ++--- ...aprProtos.GetWorkflowResponse.Builder.html | 6 ++--- .../v1/DaprProtos.GetWorkflowResponse.html | 6 ++--- ...prProtos.GetWorkflowResponseOrBuilder.html | 6 ++--- ...DaprProtos.InvokeActorRequest.Builder.html | 6 ++--- .../v1/DaprProtos.InvokeActorRequest.html | 6 ++--- ...aprProtos.InvokeActorRequestOrBuilder.html | 6 ++--- ...aprProtos.InvokeActorResponse.Builder.html | 6 ++--- .../v1/DaprProtos.InvokeActorResponse.html | 6 ++--- ...prProtos.InvokeActorResponseOrBuilder.html | 6 ++--- ...prProtos.InvokeBindingRequest.Builder.html | 6 ++--- .../v1/DaprProtos.InvokeBindingRequest.html | 6 ++--- ...rProtos.InvokeBindingRequestOrBuilder.html | 6 ++--- ...rProtos.InvokeBindingResponse.Builder.html | 6 ++--- .../v1/DaprProtos.InvokeBindingResponse.html | 6 ++--- ...Protos.InvokeBindingResponseOrBuilder.html | 6 ++--- ...prProtos.InvokeServiceRequest.Builder.html | 6 ++--- .../v1/DaprProtos.InvokeServiceRequest.html | 6 ++--- ...rProtos.InvokeServiceRequestOrBuilder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.Job.Builder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.Job.html | 6 ++--- docs/io/dapr/v1/DaprProtos.JobOrBuilder.html | 6 ++--- ...prProtos.MetadataHTTPEndpoint.Builder.html | 6 ++--- .../v1/DaprProtos.MetadataHTTPEndpoint.html | 6 ++--- ...rProtos.MetadataHTTPEndpointOrBuilder.html | 6 ++--- ...prProtos.PauseWorkflowRequest.Builder.html | 6 ++--- .../v1/DaprProtos.PauseWorkflowRequest.html | 6 ++--- ...rProtos.PauseWorkflowRequestOrBuilder.html | 6 ++--- ...aprProtos.PublishEventRequest.Builder.html | 6 ++--- .../v1/DaprProtos.PublishEventRequest.html | 6 ++--- ...prProtos.PublishEventRequestOrBuilder.html | 6 ++--- ...DaprProtos.PubsubSubscription.Builder.html | 6 ++--- .../v1/DaprProtos.PubsubSubscription.html | 6 ++--- ...aprProtos.PubsubSubscriptionOrBuilder.html | 6 ++--- ...Protos.PubsubSubscriptionRule.Builder.html | 6 ++--- .../v1/DaprProtos.PubsubSubscriptionRule.html | 6 ++--- ...rotos.PubsubSubscriptionRuleOrBuilder.html | 6 ++--- ...rotos.PubsubSubscriptionRules.Builder.html | 6 ++--- .../DaprProtos.PubsubSubscriptionRules.html | 6 ++--- ...otos.PubsubSubscriptionRulesOrBuilder.html | 6 ++--- .../v1/DaprProtos.PubsubSubscriptionType.html | 6 ++--- ...prProtos.PurgeWorkflowRequest.Builder.html | 6 ++--- .../v1/DaprProtos.PurgeWorkflowRequest.html | 6 ++--- ...rProtos.PurgeWorkflowRequestOrBuilder.html | 6 ++--- .../v1/DaprProtos.QueryStateItem.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.QueryStateItem.html | 6 ++--- .../DaprProtos.QueryStateItemOrBuilder.html | 6 ++--- .../DaprProtos.QueryStateRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.QueryStateRequest.html | 6 ++--- ...DaprProtos.QueryStateRequestOrBuilder.html | 6 ++--- ...DaprProtos.QueryStateResponse.Builder.html | 6 ++--- .../v1/DaprProtos.QueryStateResponse.html | 6 ++--- ...aprProtos.QueryStateResponseOrBuilder.html | 6 ++--- ...tos.RaiseEventWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.RaiseEventWorkflowRequest.html | 6 ++--- ...os.RaiseEventWorkflowRequestOrBuilder.html | 6 ++--- ....RegisterActorReminderRequest.Builder.html | 6 ++--- ...prProtos.RegisterActorReminderRequest.html | 6 ++--- ...RegisterActorReminderRequestOrBuilder.html | 6 ++--- ...tos.RegisterActorTimerRequest.Builder.html | 6 ++--- .../DaprProtos.RegisterActorTimerRequest.html | 6 ++--- ...os.RegisterActorTimerRequestOrBuilder.html | 6 ++--- ...prProtos.RegisteredComponents.Builder.html | 6 ++--- .../v1/DaprProtos.RegisteredComponents.html | 6 ++--- ...rProtos.RegisteredComponentsOrBuilder.html | 6 ++--- ...rProtos.ResumeWorkflowRequest.Builder.html | 6 ++--- .../v1/DaprProtos.ResumeWorkflowRequest.html | 6 ++--- ...Protos.ResumeWorkflowRequestOrBuilder.html | 6 ++--- .../DaprProtos.SaveStateRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.SaveStateRequest.html | 6 ++--- .../DaprProtos.SaveStateRequestOrBuilder.html | 6 ++--- ...DaprProtos.ScheduleJobRequest.Builder.html | 6 ++--- .../v1/DaprProtos.ScheduleJobRequest.html | 6 ++--- ...aprProtos.ScheduleJobRequestOrBuilder.html | 6 ++--- ...aprProtos.ScheduleJobResponse.Builder.html | 6 ++--- .../v1/DaprProtos.ScheduleJobResponse.html | 6 ++--- ...prProtos.ScheduleJobResponseOrBuilder.html | 6 ++--- .../v1/DaprProtos.SecretResponse.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.SecretResponse.html | 6 ++--- .../DaprProtos.SecretResponseOrBuilder.html | 6 ++--- ...DaprProtos.SetMetadataRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SetMetadataRequest.html | 6 ++--- ...aprProtos.SetMetadataRequestOrBuilder.html | 6 ++--- .../DaprProtos.ShutdownRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.ShutdownRequest.html | 6 ++--- .../DaprProtos.ShutdownRequestOrBuilder.html | 6 ++--- ...prProtos.StartWorkflowRequest.Builder.html | 6 ++--- .../v1/DaprProtos.StartWorkflowRequest.html | 6 ++--- ...rProtos.StartWorkflowRequestOrBuilder.html | 6 ++--- ...rProtos.StartWorkflowResponse.Builder.html | 6 ++--- .../v1/DaprProtos.StartWorkflowResponse.html | 6 ++--- ...Protos.StartWorkflowResponseOrBuilder.html | 6 ++--- ...SubscribeConfigurationRequest.Builder.html | 6 ++--- ...rProtos.SubscribeConfigurationRequest.html | 6 ++--- ...ubscribeConfigurationRequestOrBuilder.html | 6 ++--- ...ubscribeConfigurationResponse.Builder.html | 6 ++--- ...Protos.SubscribeConfigurationResponse.html | 6 ++--- ...bscribeConfigurationResponseOrBuilder.html | 6 ++--- ...cribeTopicEventsRequestAlpha1.Builder.html | 6 ++--- ...1.SubscribeTopicEventsRequestTypeCase.html | 6 ++--- ...tos.SubscribeTopicEventsRequestAlpha1.html | 6 ++--- ...ribeTopicEventsRequestAlpha1OrBuilder.html | 6 ++--- ...ribeTopicEventsResponseAlpha1.Builder.html | 6 ++--- ...os.SubscribeTopicEventsResponseAlpha1.html | 6 ++--- ...ibeTopicEventsResponseAlpha1OrBuilder.html | 6 ++--- ...prProtos.SubtleDecryptRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleDecryptRequest.html | 6 ++--- ...rProtos.SubtleDecryptRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleDecryptResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleDecryptResponse.html | 6 ++--- ...Protos.SubtleDecryptResponseOrBuilder.html | 6 ++--- ...prProtos.SubtleEncryptRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleEncryptRequest.html | 6 ++--- ...rProtos.SubtleEncryptRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleEncryptResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleEncryptResponse.html | 6 ++--- ...Protos.SubtleEncryptResponseOrBuilder.html | 6 ++--- ...aprProtos.SubtleGetKeyRequest.Builder.html | 6 ++--- ...rProtos.SubtleGetKeyRequest.KeyFormat.html | 6 ++--- .../v1/DaprProtos.SubtleGetKeyRequest.html | 6 ++--- ...prProtos.SubtleGetKeyRequestOrBuilder.html | 6 ++--- ...prProtos.SubtleGetKeyResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleGetKeyResponse.html | 6 ++--- ...rProtos.SubtleGetKeyResponseOrBuilder.html | 6 ++--- .../DaprProtos.SubtleSignRequest.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.SubtleSignRequest.html | 6 ++--- ...DaprProtos.SubtleSignRequestOrBuilder.html | 6 ++--- ...DaprProtos.SubtleSignResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleSignResponse.html | 6 ++--- ...aprProtos.SubtleSignResponseOrBuilder.html | 6 ++--- ...Protos.SubtleUnwrapKeyRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleUnwrapKeyRequest.html | 6 ++--- ...rotos.SubtleUnwrapKeyRequestOrBuilder.html | 6 ++--- ...rotos.SubtleUnwrapKeyResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleUnwrapKeyResponse.html | 6 ++--- ...otos.SubtleUnwrapKeyResponseOrBuilder.html | 6 ++--- ...aprProtos.SubtleVerifyRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleVerifyRequest.html | 6 ++--- ...prProtos.SubtleVerifyRequestOrBuilder.html | 6 ++--- ...prProtos.SubtleVerifyResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleVerifyResponse.html | 6 ++--- ...rProtos.SubtleVerifyResponseOrBuilder.html | 6 ++--- ...prProtos.SubtleWrapKeyRequest.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleWrapKeyRequest.html | 6 ++--- ...rProtos.SubtleWrapKeyRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleWrapKeyResponse.Builder.html | 6 ++--- .../v1/DaprProtos.SubtleWrapKeyResponse.html | 6 ++--- ...Protos.SubtleWrapKeyResponseOrBuilder.html | 6 ++--- ...otos.TerminateWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.TerminateWorkflowRequest.html | 6 ++--- ...tos.TerminateWorkflowRequestOrBuilder.html | 6 ++--- ...nsactionalActorStateOperation.Builder.html | 6 ++--- ...otos.TransactionalActorStateOperation.html | 6 ++--- ...sactionalActorStateOperationOrBuilder.html | 6 ++--- ...s.TransactionalStateOperation.Builder.html | 6 ++--- ...aprProtos.TransactionalStateOperation.html | 6 ++--- ....TransactionalStateOperationOrBuilder.html | 6 ++--- .../v1/DaprProtos.TryLockRequest.Builder.html | 6 ++--- .../io/dapr/v1/DaprProtos.TryLockRequest.html | 6 ++--- .../DaprProtos.TryLockRequestOrBuilder.html | 6 ++--- .../DaprProtos.TryLockResponse.Builder.html | 6 ++--- .../dapr/v1/DaprProtos.TryLockResponse.html | 6 ++--- .../DaprProtos.TryLockResponseOrBuilder.html | 6 ++--- .../v1/DaprProtos.UnlockRequest.Builder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.UnlockRequest.html | 6 ++--- .../v1/DaprProtos.UnlockRequestOrBuilder.html | 6 ++--- .../v1/DaprProtos.UnlockResponse.Builder.html | 6 ++--- .../v1/DaprProtos.UnlockResponse.Status.html | 6 ++--- .../io/dapr/v1/DaprProtos.UnlockResponse.html | 6 ++--- .../DaprProtos.UnlockResponseOrBuilder.html | 6 ++--- ...nregisterActorReminderRequest.Builder.html | 6 ++--- ...Protos.UnregisterActorReminderRequest.html | 6 ++--- ...registerActorReminderRequestOrBuilder.html | 6 ++--- ...s.UnregisterActorTimerRequest.Builder.html | 6 ++--- ...aprProtos.UnregisterActorTimerRequest.html | 6 ++--- ....UnregisterActorTimerRequestOrBuilder.html | 6 ++--- ...subscribeConfigurationRequest.Builder.html | 6 ++--- ...rotos.UnsubscribeConfigurationRequest.html | 6 ++--- ...ubscribeConfigurationRequestOrBuilder.html | 6 ++--- ...ubscribeConfigurationResponse.Builder.html | 6 ++--- ...otos.UnsubscribeConfigurationResponse.html | 6 ++--- ...bscribeConfigurationResponseOrBuilder.html | 6 ++--- docs/io/dapr/v1/DaprProtos.html | 6 ++--- ...lphaGrpc.AppCallbackAlphaBlockingStub.html | 6 ++--- ...kAlphaGrpc.AppCallbackAlphaFutureStub.html | 6 ++--- ...ackAlphaGrpc.AppCallbackAlphaImplBase.html | 6 ++--- ...allbackAlphaGrpc.AppCallbackAlphaStub.html | 6 ++--- .../AppCallbackAlphaGrpc.AsyncService.html | 6 ++--- .../v1/class-use/AppCallbackAlphaGrpc.html | 6 ++--- ...pCallbackGrpc.AppCallbackBlockingStub.html | 6 ++--- ...AppCallbackGrpc.AppCallbackFutureStub.html | 6 ++--- .../AppCallbackGrpc.AppCallbackImplBase.html | 6 ++--- .../AppCallbackGrpc.AppCallbackStub.html | 6 ++--- .../AppCallbackGrpc.AsyncService.html | 6 ++--- .../io/dapr/v1/class-use/AppCallbackGrpc.html | 6 ++--- ...pc.AppCallbackHealthCheckBlockingStub.html | 6 ++--- ...Grpc.AppCallbackHealthCheckFutureStub.html | 6 ++--- ...ckGrpc.AppCallbackHealthCheckImplBase.html | 6 ++--- ...hCheckGrpc.AppCallbackHealthCheckStub.html | 6 ++--- ...pCallbackHealthCheckGrpc.AsyncService.html | 6 ++--- .../class-use/AppCallbackHealthCheckGrpc.html | 6 ++--- ...ommonProtos.ConfigurationItem.Builder.html | 6 ++--- .../CommonProtos.ConfigurationItem.html | 6 ++--- ...mmonProtos.ConfigurationItemOrBuilder.html | 6 ++--- .../class-use/CommonProtos.Etag.Builder.html | 6 ++--- .../dapr/v1/class-use/CommonProtos.Etag.html | 6 ++--- .../class-use/CommonProtos.EtagOrBuilder.html | 6 ++--- .../CommonProtos.HTTPExtension.Builder.html | 6 ++--- .../CommonProtos.HTTPExtension.Verb.html | 6 ++--- .../class-use/CommonProtos.HTTPExtension.html | 6 ++--- .../CommonProtos.HTTPExtensionOrBuilder.html | 6 ++--- .../CommonProtos.InvokeRequest.Builder.html | 6 ++--- .../class-use/CommonProtos.InvokeRequest.html | 6 ++--- .../CommonProtos.InvokeRequestOrBuilder.html | 6 ++--- .../CommonProtos.InvokeResponse.Builder.html | 6 ++--- .../CommonProtos.InvokeResponse.html | 6 ++--- .../CommonProtos.InvokeResponseOrBuilder.html | 6 ++--- .../CommonProtos.StateItem.Builder.html | 6 ++--- .../v1/class-use/CommonProtos.StateItem.html | 6 ++--- .../CommonProtos.StateItemOrBuilder.html | 6 ++--- .../CommonProtos.StateOptions.Builder.html | 6 ++--- ...nProtos.StateOptions.StateConcurrency.html | 6 ++--- ...nProtos.StateOptions.StateConsistency.html | 6 ++--- .../class-use/CommonProtos.StateOptions.html | 6 ++--- .../CommonProtos.StateOptionsOrBuilder.html | 6 ++--- .../CommonProtos.StreamPayload.Builder.html | 6 ++--- .../class-use/CommonProtos.StreamPayload.html | 6 ++--- .../CommonProtos.StreamPayloadOrBuilder.html | 6 ++--- docs/io/dapr/v1/class-use/CommonProtos.html | 6 ++--- ...ackProtos.BindingEventRequest.Builder.html | 6 ++--- ...AppCallbackProtos.BindingEventRequest.html | 6 ++--- ...ckProtos.BindingEventRequestOrBuilder.html | 6 ++--- ...EventResponse.BindingEventConcurrency.html | 6 ++--- ...ckProtos.BindingEventResponse.Builder.html | 6 ++--- ...ppCallbackProtos.BindingEventResponse.html | 6 ++--- ...kProtos.BindingEventResponseOrBuilder.html | 6 ++--- ...ackProtos.BulkSubscribeConfig.Builder.html | 6 ++--- ...AppCallbackProtos.BulkSubscribeConfig.html | 6 ++--- ...ckProtos.BulkSubscribeConfigOrBuilder.html | 6 ++--- ...ackProtos.HealthCheckResponse.Builder.html | 6 ++--- ...AppCallbackProtos.HealthCheckResponse.html | 6 ++--- ...ckProtos.HealthCheckResponseOrBuilder.html | 6 ++--- ...allbackProtos.JobEventRequest.Builder.html | 6 ++--- ...DaprAppCallbackProtos.JobEventRequest.html | 6 ++--- ...llbackProtos.JobEventRequestOrBuilder.html | 6 ++--- ...llbackProtos.JobEventResponse.Builder.html | 6 ++--- ...aprAppCallbackProtos.JobEventResponse.html | 6 ++--- ...lbackProtos.JobEventResponseOrBuilder.html | 6 ++--- ...tos.ListInputBindingsResponse.Builder.html | 6 ++--- ...lbackProtos.ListInputBindingsResponse.html | 6 ++--- ...os.ListInputBindingsResponseOrBuilder.html | 6 ++--- ...istTopicSubscriptionsResponse.Builder.html | 6 ++--- ...Protos.ListTopicSubscriptionsResponse.html | 6 ++--- ...stTopicSubscriptionsResponseOrBuilder.html | 6 ++--- ...kProtos.TopicEventBulkRequest.Builder.html | 6 ++--- ...pCallbackProtos.TopicEventBulkRequest.html | 6 ++--- ...os.TopicEventBulkRequestEntry.Builder.html | 6 ++--- ....TopicEventBulkRequestEntry.EventCase.html | 6 ++--- ...backProtos.TopicEventBulkRequestEntry.html | 6 ++--- ...s.TopicEventBulkRequestEntryOrBuilder.html | 6 ++--- ...Protos.TopicEventBulkRequestOrBuilder.html | 6 ++--- ...Protos.TopicEventBulkResponse.Builder.html | 6 ++--- ...CallbackProtos.TopicEventBulkResponse.html | 6 ++--- ...s.TopicEventBulkResponseEntry.Builder.html | 6 ++--- ...ackProtos.TopicEventBulkResponseEntry.html | 6 ++--- ....TopicEventBulkResponseEntryOrBuilder.html | 6 ++--- ...rotos.TopicEventBulkResponseOrBuilder.html | 6 ++--- ...ackProtos.TopicEventCERequest.Builder.html | 6 ++--- ...AppCallbackProtos.TopicEventCERequest.html | 6 ++--- ...ckProtos.TopicEventCERequestOrBuilder.html | 6 ++--- ...lbackProtos.TopicEventRequest.Builder.html | 6 ++--- ...prAppCallbackProtos.TopicEventRequest.html | 6 ++--- ...backProtos.TopicEventRequestOrBuilder.html | 6 ++--- ...backProtos.TopicEventResponse.Builder.html | 6 ++--- ...ventResponse.TopicEventResponseStatus.html | 6 ++--- ...rAppCallbackProtos.TopicEventResponse.html | 6 ++--- ...ackProtos.TopicEventResponseOrBuilder.html | 6 ++--- ...AppCallbackProtos.TopicRoutes.Builder.html | 6 ++--- .../DaprAppCallbackProtos.TopicRoutes.html | 6 ++--- ...ppCallbackProtos.TopicRoutesOrBuilder.html | 6 ++--- ...prAppCallbackProtos.TopicRule.Builder.html | 6 ++--- .../DaprAppCallbackProtos.TopicRule.html | 6 ++--- ...rAppCallbackProtos.TopicRuleOrBuilder.html | 6 ++--- ...lbackProtos.TopicSubscription.Builder.html | 6 ++--- ...prAppCallbackProtos.TopicSubscription.html | 6 ++--- ...backProtos.TopicSubscriptionOrBuilder.html | 6 ++--- .../v1/class-use/DaprAppCallbackProtos.html | 6 ++--- .../v1/class-use/DaprGrpc.AsyncService.html | 6 ++--- .../class-use/DaprGrpc.DaprBlockingStub.html | 6 ++--- .../v1/class-use/DaprGrpc.DaprFutureStub.html | 6 ++--- .../v1/class-use/DaprGrpc.DaprImplBase.html | 6 ++--- .../dapr/v1/class-use/DaprGrpc.DaprStub.html | 6 ++--- docs/io/dapr/v1/class-use/DaprGrpc.html | 6 ++--- .../DaprProtos.ActiveActorsCount.Builder.html | 6 ++--- .../DaprProtos.ActiveActorsCount.html | 6 ++--- ...DaprProtos.ActiveActorsCountOrBuilder.html | 6 ++--- ...rotos.ActorRuntime.ActorRuntimeStatus.html | 6 ++--- .../DaprProtos.ActorRuntime.Builder.html | 6 ++--- .../v1/class-use/DaprProtos.ActorRuntime.html | 6 ++--- .../DaprProtos.ActorRuntimeOrBuilder.html | 6 ++--- ...AppConnectionHealthProperties.Builder.html | 6 ++--- ...rProtos.AppConnectionHealthProperties.html | 6 ++--- ...ppConnectionHealthPropertiesOrBuilder.html | 6 ++--- ...rotos.AppConnectionProperties.Builder.html | 6 ++--- .../DaprProtos.AppConnectionProperties.html | 6 ++--- ...otos.AppConnectionPropertiesOrBuilder.html | 6 ++--- ...DaprProtos.BulkPublishRequest.Builder.html | 6 ++--- .../DaprProtos.BulkPublishRequest.html | 6 ++--- ...rotos.BulkPublishRequestEntry.Builder.html | 6 ++--- .../DaprProtos.BulkPublishRequestEntry.html | 6 ++--- ...otos.BulkPublishRequestEntryOrBuilder.html | 6 ++--- ...aprProtos.BulkPublishRequestOrBuilder.html | 6 ++--- ...aprProtos.BulkPublishResponse.Builder.html | 6 ++--- .../DaprProtos.BulkPublishResponse.html | 6 ++--- ...ulkPublishResponseFailedEntry.Builder.html | 6 ++--- ...Protos.BulkPublishResponseFailedEntry.html | 6 ++--- ...lkPublishResponseFailedEntryOrBuilder.html | 6 ++--- ...prProtos.BulkPublishResponseOrBuilder.html | 6 ++--- .../DaprProtos.BulkStateItem.Builder.html | 6 ++--- .../class-use/DaprProtos.BulkStateItem.html | 6 ++--- .../DaprProtos.BulkStateItemOrBuilder.html | 6 ++--- .../DaprProtos.DecryptRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.DecryptRequest.html | 6 ++--- ...rProtos.DecryptRequestOptions.Builder.html | 6 ++--- .../DaprProtos.DecryptRequestOptions.html | 6 ++--- ...Protos.DecryptRequestOptionsOrBuilder.html | 6 ++--- .../DaprProtos.DecryptRequestOrBuilder.html | 6 ++--- .../DaprProtos.DecryptResponse.Builder.html | 6 ++--- .../class-use/DaprProtos.DecryptResponse.html | 6 ++--- .../DaprProtos.DecryptResponseOrBuilder.html | 6 ++--- ...Protos.DeleteBulkStateRequest.Builder.html | 6 ++--- .../DaprProtos.DeleteBulkStateRequest.html | 6 ++--- ...rotos.DeleteBulkStateRequestOrBuilder.html | 6 ++--- .../DaprProtos.DeleteJobRequest.Builder.html | 6 ++--- .../DaprProtos.DeleteJobRequest.html | 6 ++--- .../DaprProtos.DeleteJobRequestOrBuilder.html | 6 ++--- .../DaprProtos.DeleteJobResponse.Builder.html | 6 ++--- .../DaprProtos.DeleteJobResponse.html | 6 ++--- ...DaprProtos.DeleteJobResponseOrBuilder.html | 6 ++--- ...DaprProtos.DeleteStateRequest.Builder.html | 6 ++--- .../DaprProtos.DeleteStateRequest.html | 6 ++--- ...aprProtos.DeleteStateRequestOrBuilder.html | 6 ++--- .../DaprProtos.EncryptRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.EncryptRequest.html | 6 ++--- ...rProtos.EncryptRequestOptions.Builder.html | 6 ++--- .../DaprProtos.EncryptRequestOptions.html | 6 ++--- ...Protos.EncryptRequestOptionsOrBuilder.html | 6 ++--- .../DaprProtos.EncryptRequestOrBuilder.html | 6 ++--- .../DaprProtos.EncryptResponse.Builder.html | 6 ++--- .../class-use/DaprProtos.EncryptResponse.html | 6 ++--- .../DaprProtos.EncryptResponseOrBuilder.html | 6 ++--- ...eActorStateTransactionRequest.Builder.html | 6 ++--- ...s.ExecuteActorStateTransactionRequest.html | 6 ++--- ...ActorStateTransactionRequestOrBuilder.html | 6 ++--- ...xecuteStateTransactionRequest.Builder.html | 6 ++--- ...Protos.ExecuteStateTransactionRequest.html | 6 ++--- ...ecuteStateTransactionRequestOrBuilder.html | 6 ++--- ...prProtos.GetActorStateRequest.Builder.html | 6 ++--- .../DaprProtos.GetActorStateRequest.html | 6 ++--- ...rProtos.GetActorStateRequestOrBuilder.html | 6 ++--- ...rProtos.GetActorStateResponse.Builder.html | 6 ++--- .../DaprProtos.GetActorStateResponse.html | 6 ++--- ...Protos.GetActorStateResponseOrBuilder.html | 6 ++--- ...prProtos.GetBulkSecretRequest.Builder.html | 6 ++--- .../DaprProtos.GetBulkSecretRequest.html | 6 ++--- ...rProtos.GetBulkSecretRequestOrBuilder.html | 6 ++--- ...rProtos.GetBulkSecretResponse.Builder.html | 6 ++--- .../DaprProtos.GetBulkSecretResponse.html | 6 ++--- ...Protos.GetBulkSecretResponseOrBuilder.html | 6 ++--- ...aprProtos.GetBulkStateRequest.Builder.html | 6 ++--- .../DaprProtos.GetBulkStateRequest.html | 6 ++--- ...prProtos.GetBulkStateRequestOrBuilder.html | 6 ++--- ...prProtos.GetBulkStateResponse.Builder.html | 6 ++--- .../DaprProtos.GetBulkStateResponse.html | 6 ++--- ...rProtos.GetBulkStateResponseOrBuilder.html | 6 ++--- ...rotos.GetConfigurationRequest.Builder.html | 6 ++--- .../DaprProtos.GetConfigurationRequest.html | 6 ++--- ...otos.GetConfigurationRequestOrBuilder.html | 6 ++--- ...otos.GetConfigurationResponse.Builder.html | 6 ++--- .../DaprProtos.GetConfigurationResponse.html | 6 ++--- ...tos.GetConfigurationResponseOrBuilder.html | 6 ++--- .../DaprProtos.GetJobRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.GetJobRequest.html | 6 ++--- .../DaprProtos.GetJobRequestOrBuilder.html | 6 ++--- .../DaprProtos.GetJobResponse.Builder.html | 6 ++--- .../class-use/DaprProtos.GetJobResponse.html | 6 ++--- .../DaprProtos.GetJobResponseOrBuilder.html | 6 ++--- ...DaprProtos.GetMetadataRequest.Builder.html | 6 ++--- .../DaprProtos.GetMetadataRequest.html | 6 ++--- ...aprProtos.GetMetadataRequestOrBuilder.html | 6 ++--- ...aprProtos.GetMetadataResponse.Builder.html | 6 ++--- .../DaprProtos.GetMetadataResponse.html | 6 ++--- ...prProtos.GetMetadataResponseOrBuilder.html | 6 ++--- .../DaprProtos.GetSecretRequest.Builder.html | 6 ++--- .../DaprProtos.GetSecretRequest.html | 6 ++--- .../DaprProtos.GetSecretRequestOrBuilder.html | 6 ++--- .../DaprProtos.GetSecretResponse.Builder.html | 6 ++--- .../DaprProtos.GetSecretResponse.html | 6 ++--- ...DaprProtos.GetSecretResponseOrBuilder.html | 6 ++--- .../DaprProtos.GetStateRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.GetStateRequest.html | 6 ++--- .../DaprProtos.GetStateRequestOrBuilder.html | 6 ++--- .../DaprProtos.GetStateResponse.Builder.html | 6 ++--- .../DaprProtos.GetStateResponse.html | 6 ++--- .../DaprProtos.GetStateResponseOrBuilder.html | 6 ++--- ...DaprProtos.GetWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.GetWorkflowRequest.html | 6 ++--- ...aprProtos.GetWorkflowRequestOrBuilder.html | 6 ++--- ...aprProtos.GetWorkflowResponse.Builder.html | 6 ++--- .../DaprProtos.GetWorkflowResponse.html | 6 ++--- ...prProtos.GetWorkflowResponseOrBuilder.html | 6 ++--- ...DaprProtos.InvokeActorRequest.Builder.html | 6 ++--- .../DaprProtos.InvokeActorRequest.html | 6 ++--- ...aprProtos.InvokeActorRequestOrBuilder.html | 6 ++--- ...aprProtos.InvokeActorResponse.Builder.html | 6 ++--- .../DaprProtos.InvokeActorResponse.html | 6 ++--- ...prProtos.InvokeActorResponseOrBuilder.html | 6 ++--- ...prProtos.InvokeBindingRequest.Builder.html | 6 ++--- .../DaprProtos.InvokeBindingRequest.html | 6 ++--- ...rProtos.InvokeBindingRequestOrBuilder.html | 6 ++--- ...rProtos.InvokeBindingResponse.Builder.html | 6 ++--- .../DaprProtos.InvokeBindingResponse.html | 6 ++--- ...Protos.InvokeBindingResponseOrBuilder.html | 6 ++--- ...prProtos.InvokeServiceRequest.Builder.html | 6 ++--- .../DaprProtos.InvokeServiceRequest.html | 6 ++--- ...rProtos.InvokeServiceRequestOrBuilder.html | 6 ++--- .../v1/class-use/DaprProtos.Job.Builder.html | 6 ++--- docs/io/dapr/v1/class-use/DaprProtos.Job.html | 6 ++--- .../v1/class-use/DaprProtos.JobOrBuilder.html | 6 ++--- ...prProtos.MetadataHTTPEndpoint.Builder.html | 6 ++--- .../DaprProtos.MetadataHTTPEndpoint.html | 6 ++--- ...rProtos.MetadataHTTPEndpointOrBuilder.html | 6 ++--- ...prProtos.PauseWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.PauseWorkflowRequest.html | 6 ++--- ...rProtos.PauseWorkflowRequestOrBuilder.html | 6 ++--- ...aprProtos.PublishEventRequest.Builder.html | 6 ++--- .../DaprProtos.PublishEventRequest.html | 6 ++--- ...prProtos.PublishEventRequestOrBuilder.html | 6 ++--- ...DaprProtos.PubsubSubscription.Builder.html | 6 ++--- .../DaprProtos.PubsubSubscription.html | 6 ++--- ...aprProtos.PubsubSubscriptionOrBuilder.html | 6 ++--- ...Protos.PubsubSubscriptionRule.Builder.html | 6 ++--- .../DaprProtos.PubsubSubscriptionRule.html | 6 ++--- ...rotos.PubsubSubscriptionRuleOrBuilder.html | 6 ++--- ...rotos.PubsubSubscriptionRules.Builder.html | 6 ++--- .../DaprProtos.PubsubSubscriptionRules.html | 6 ++--- ...otos.PubsubSubscriptionRulesOrBuilder.html | 6 ++--- .../DaprProtos.PubsubSubscriptionType.html | 6 ++--- ...prProtos.PurgeWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.PurgeWorkflowRequest.html | 6 ++--- ...rProtos.PurgeWorkflowRequestOrBuilder.html | 6 ++--- .../DaprProtos.QueryStateItem.Builder.html | 6 ++--- .../class-use/DaprProtos.QueryStateItem.html | 6 ++--- .../DaprProtos.QueryStateItemOrBuilder.html | 6 ++--- .../DaprProtos.QueryStateRequest.Builder.html | 6 ++--- .../DaprProtos.QueryStateRequest.html | 6 ++--- ...DaprProtos.QueryStateRequestOrBuilder.html | 6 ++--- ...DaprProtos.QueryStateResponse.Builder.html | 6 ++--- .../DaprProtos.QueryStateResponse.html | 6 ++--- ...aprProtos.QueryStateResponseOrBuilder.html | 6 ++--- ...tos.RaiseEventWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.RaiseEventWorkflowRequest.html | 6 ++--- ...os.RaiseEventWorkflowRequestOrBuilder.html | 6 ++--- ....RegisterActorReminderRequest.Builder.html | 6 ++--- ...prProtos.RegisterActorReminderRequest.html | 6 ++--- ...RegisterActorReminderRequestOrBuilder.html | 6 ++--- ...tos.RegisterActorTimerRequest.Builder.html | 6 ++--- .../DaprProtos.RegisterActorTimerRequest.html | 6 ++--- ...os.RegisterActorTimerRequestOrBuilder.html | 6 ++--- ...prProtos.RegisteredComponents.Builder.html | 6 ++--- .../DaprProtos.RegisteredComponents.html | 6 ++--- ...rProtos.RegisteredComponentsOrBuilder.html | 6 ++--- ...rProtos.ResumeWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.ResumeWorkflowRequest.html | 6 ++--- ...Protos.ResumeWorkflowRequestOrBuilder.html | 6 ++--- .../DaprProtos.SaveStateRequest.Builder.html | 6 ++--- .../DaprProtos.SaveStateRequest.html | 6 ++--- .../DaprProtos.SaveStateRequestOrBuilder.html | 6 ++--- ...DaprProtos.ScheduleJobRequest.Builder.html | 6 ++--- .../DaprProtos.ScheduleJobRequest.html | 6 ++--- ...aprProtos.ScheduleJobRequestOrBuilder.html | 6 ++--- ...aprProtos.ScheduleJobResponse.Builder.html | 6 ++--- .../DaprProtos.ScheduleJobResponse.html | 6 ++--- ...prProtos.ScheduleJobResponseOrBuilder.html | 6 ++--- .../DaprProtos.SecretResponse.Builder.html | 6 ++--- .../class-use/DaprProtos.SecretResponse.html | 6 ++--- .../DaprProtos.SecretResponseOrBuilder.html | 6 ++--- ...DaprProtos.SetMetadataRequest.Builder.html | 6 ++--- .../DaprProtos.SetMetadataRequest.html | 6 ++--- ...aprProtos.SetMetadataRequestOrBuilder.html | 6 ++--- .../DaprProtos.ShutdownRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.ShutdownRequest.html | 6 ++--- .../DaprProtos.ShutdownRequestOrBuilder.html | 6 ++--- ...prProtos.StartWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.StartWorkflowRequest.html | 6 ++--- ...rProtos.StartWorkflowRequestOrBuilder.html | 6 ++--- ...rProtos.StartWorkflowResponse.Builder.html | 6 ++--- .../DaprProtos.StartWorkflowResponse.html | 6 ++--- ...Protos.StartWorkflowResponseOrBuilder.html | 6 ++--- ...SubscribeConfigurationRequest.Builder.html | 6 ++--- ...rProtos.SubscribeConfigurationRequest.html | 6 ++--- ...ubscribeConfigurationRequestOrBuilder.html | 6 ++--- ...ubscribeConfigurationResponse.Builder.html | 6 ++--- ...Protos.SubscribeConfigurationResponse.html | 6 ++--- ...bscribeConfigurationResponseOrBuilder.html | 6 ++--- ...cribeTopicEventsRequestAlpha1.Builder.html | 6 ++--- ...1.SubscribeTopicEventsRequestTypeCase.html | 6 ++--- ...tos.SubscribeTopicEventsRequestAlpha1.html | 6 ++--- ...ribeTopicEventsRequestAlpha1OrBuilder.html | 6 ++--- ...ribeTopicEventsResponseAlpha1.Builder.html | 6 ++--- ...os.SubscribeTopicEventsResponseAlpha1.html | 6 ++--- ...ibeTopicEventsResponseAlpha1OrBuilder.html | 6 ++--- ...prProtos.SubtleDecryptRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleDecryptRequest.html | 6 ++--- ...rProtos.SubtleDecryptRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleDecryptResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleDecryptResponse.html | 6 ++--- ...Protos.SubtleDecryptResponseOrBuilder.html | 6 ++--- ...prProtos.SubtleEncryptRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleEncryptRequest.html | 6 ++--- ...rProtos.SubtleEncryptRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleEncryptResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleEncryptResponse.html | 6 ++--- ...Protos.SubtleEncryptResponseOrBuilder.html | 6 ++--- ...aprProtos.SubtleGetKeyRequest.Builder.html | 6 ++--- ...rProtos.SubtleGetKeyRequest.KeyFormat.html | 6 ++--- .../DaprProtos.SubtleGetKeyRequest.html | 6 ++--- ...prProtos.SubtleGetKeyRequestOrBuilder.html | 6 ++--- ...prProtos.SubtleGetKeyResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleGetKeyResponse.html | 6 ++--- ...rProtos.SubtleGetKeyResponseOrBuilder.html | 6 ++--- .../DaprProtos.SubtleSignRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleSignRequest.html | 6 ++--- ...DaprProtos.SubtleSignRequestOrBuilder.html | 6 ++--- ...DaprProtos.SubtleSignResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleSignResponse.html | 6 ++--- ...aprProtos.SubtleSignResponseOrBuilder.html | 6 ++--- ...Protos.SubtleUnwrapKeyRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleUnwrapKeyRequest.html | 6 ++--- ...rotos.SubtleUnwrapKeyRequestOrBuilder.html | 6 ++--- ...rotos.SubtleUnwrapKeyResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleUnwrapKeyResponse.html | 6 ++--- ...otos.SubtleUnwrapKeyResponseOrBuilder.html | 6 ++--- ...aprProtos.SubtleVerifyRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleVerifyRequest.html | 6 ++--- ...prProtos.SubtleVerifyRequestOrBuilder.html | 6 ++--- ...prProtos.SubtleVerifyResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleVerifyResponse.html | 6 ++--- ...rProtos.SubtleVerifyResponseOrBuilder.html | 6 ++--- ...prProtos.SubtleWrapKeyRequest.Builder.html | 6 ++--- .../DaprProtos.SubtleWrapKeyRequest.html | 6 ++--- ...rProtos.SubtleWrapKeyRequestOrBuilder.html | 6 ++--- ...rProtos.SubtleWrapKeyResponse.Builder.html | 6 ++--- .../DaprProtos.SubtleWrapKeyResponse.html | 6 ++--- ...Protos.SubtleWrapKeyResponseOrBuilder.html | 6 ++--- ...otos.TerminateWorkflowRequest.Builder.html | 6 ++--- .../DaprProtos.TerminateWorkflowRequest.html | 6 ++--- ...tos.TerminateWorkflowRequestOrBuilder.html | 6 ++--- ...nsactionalActorStateOperation.Builder.html | 6 ++--- ...otos.TransactionalActorStateOperation.html | 6 ++--- ...sactionalActorStateOperationOrBuilder.html | 6 ++--- ...s.TransactionalStateOperation.Builder.html | 6 ++--- ...aprProtos.TransactionalStateOperation.html | 6 ++--- ....TransactionalStateOperationOrBuilder.html | 6 ++--- .../DaprProtos.TryLockRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.TryLockRequest.html | 6 ++--- .../DaprProtos.TryLockRequestOrBuilder.html | 6 ++--- .../DaprProtos.TryLockResponse.Builder.html | 6 ++--- .../class-use/DaprProtos.TryLockResponse.html | 6 ++--- .../DaprProtos.TryLockResponseOrBuilder.html | 6 ++--- .../DaprProtos.UnlockRequest.Builder.html | 6 ++--- .../class-use/DaprProtos.UnlockRequest.html | 6 ++--- .../DaprProtos.UnlockRequestOrBuilder.html | 6 ++--- .../DaprProtos.UnlockResponse.Builder.html | 6 ++--- .../DaprProtos.UnlockResponse.Status.html | 6 ++--- .../class-use/DaprProtos.UnlockResponse.html | 6 ++--- .../DaprProtos.UnlockResponseOrBuilder.html | 6 ++--- ...nregisterActorReminderRequest.Builder.html | 6 ++--- ...Protos.UnregisterActorReminderRequest.html | 6 ++--- ...registerActorReminderRequestOrBuilder.html | 6 ++--- ...s.UnregisterActorTimerRequest.Builder.html | 6 ++--- ...aprProtos.UnregisterActorTimerRequest.html | 6 ++--- ....UnregisterActorTimerRequestOrBuilder.html | 6 ++--- ...subscribeConfigurationRequest.Builder.html | 6 ++--- ...rotos.UnsubscribeConfigurationRequest.html | 6 ++--- ...ubscribeConfigurationRequestOrBuilder.html | 6 ++--- ...ubscribeConfigurationResponse.Builder.html | 6 ++--- ...otos.UnsubscribeConfigurationResponse.html | 6 ++--- ...bscribeConfigurationResponseOrBuilder.html | 6 ++--- docs/io/dapr/v1/class-use/DaprProtos.html | 6 ++--- docs/io/dapr/v1/package-summary.html | 6 ++--- docs/io/dapr/v1/package-tree.html | 6 ++--- docs/io/dapr/v1/package-use.html | 6 ++--- docs/io/dapr/workflows/Workflow.html | 6 ++--- docs/io/dapr/workflows/WorkflowContext.html | 6 ++--- docs/io/dapr/workflows/WorkflowStub.html | 6 ++--- .../io/dapr/workflows/class-use/Workflow.html | 6 ++--- .../workflows/class-use/WorkflowContext.html | 6 ++--- .../workflows/class-use/WorkflowStub.html | 6 ++--- .../workflows/client/DaprWorkflowClient.html | 6 ++--- .../client/WorkflowFailureDetails.html | 6 ++--- .../client/WorkflowInstanceStatus.html | 6 ++--- .../client/class-use/DaprWorkflowClient.html | 6 ++--- .../class-use/WorkflowFailureDetails.html | 6 ++--- .../class-use/WorkflowInstanceStatus.html | 6 ++--- .../workflows/client/package-summary.html | 6 ++--- .../dapr/workflows/client/package-tree.html | 6 ++--- .../io/dapr/workflows/client/package-use.html | 6 ++--- .../internal/ApiTokenClientInterceptor.html | 6 ++--- .../class-use/ApiTokenClientInterceptor.html | 6 ++--- .../workflows/internal/package-summary.html | 6 ++--- .../dapr/workflows/internal/package-tree.html | 6 ++--- .../dapr/workflows/internal/package-use.html | 6 ++--- docs/io/dapr/workflows/package-summary.html | 6 ++--- docs/io/dapr/workflows/package-tree.html | 6 ++--- docs/io/dapr/workflows/package-use.html | 6 ++--- .../workflows/runtime/WorkflowRuntime.html | 6 ++--- .../runtime/WorkflowRuntimeBuilder.html | 6 ++--- .../runtime/WorkflowRuntimeStatus.html | 6 ++--- .../runtime/class-use/WorkflowRuntime.html | 6 ++--- .../class-use/WorkflowRuntimeBuilder.html | 6 ++--- .../class-use/WorkflowRuntimeStatus.html | 6 ++--- .../workflows/runtime/package-summary.html | 6 ++--- .../dapr/workflows/runtime/package-tree.html | 6 ++--- .../dapr/workflows/runtime/package-use.html | 6 ++--- docs/overview-summary.html | 6 ++--- docs/overview-tree.html | 6 ++--- docs/project-reports.html | 6 ++--- docs/serialized-form.html | 6 ++--- 1192 files changed, 3595 insertions(+), 3583 deletions(-) diff --git a/README.md b/README.md index 035f0258ba..2ff4bff932 100644 --- a/README.md +++ b/README.md @@ -50,19 +50,19 @@ For a Maven project, add the following to your `pom.xml` file: io.dapr dapr-sdk - 1.14.0 + 1.14.1 io.dapr dapr-sdk-actors - 1.14.0 + 1.14.1 io.dapr dapr-sdk-springboot - 1.14.0 + 1.14.1 ... @@ -76,11 +76,11 @@ For a Gradle project, add the following to your `build.gradle` file: dependencies { ... // Dapr's core SDK with all features, except Actors. - compile('io.dapr:dapr-sdk:1.14.0') + compile('io.dapr:dapr-sdk:1.14.1') // Dapr's SDK for Actors (optional). - compile('io.dapr:dapr-sdk-actors:1.14.0') + compile('io.dapr:dapr-sdk-actors:1.14.1') // Dapr's SDK integration with SpringBoot (optional). - compile('io.dapr:dapr-sdk-springboot:1.14.0') + compile('io.dapr:dapr-sdk-springboot:1.14.1') } ``` diff --git a/daprdocs/content/en/java-sdk-docs/_index.md b/daprdocs/content/en/java-sdk-docs/_index.md index a418de5fbb..b2a0c68570 100644 --- a/daprdocs/content/en/java-sdk-docs/_index.md +++ b/daprdocs/content/en/java-sdk-docs/_index.md @@ -46,19 +46,19 @@ For a Maven project, add the following to your `pom.xml` file: io.dapr dapr-sdk - 1.14.0 + 1.14.1 io.dapr dapr-sdk-actors - 1.14.0 + 1.14.1 io.dapr dapr-sdk-springboot - 1.14.0 + 1.14.1 ... @@ -76,11 +76,11 @@ For a Gradle project, add the following to your `build.gradle` file: dependencies { ... // Dapr's core SDK with all features, except Actors. - compile('io.dapr:dapr-sdk:1.14.0') + compile('io.dapr:dapr-sdk:1.14.1') // Dapr's SDK for Actors (optional). - compile('io.dapr:dapr-sdk-actors:1.14.0') + compile('io.dapr:dapr-sdk-actors:1.14.1') // Dapr's SDK integration with SpringBoot (optional). - compile('io.dapr:dapr-sdk-springboot:1.14.0') + compile('io.dapr:dapr-sdk-springboot:1.14.1') } ``` @@ -88,6 +88,18 @@ dependencies { {{< /tabs >}} +If you are also using Spring Boot, you may run into a common issue where the `OkHttp` version that the Dapr SDK uses conflicts with the one specified in the Spring Boot _Bill of Materials_. + +You can fix this by specifying a compatible `OkHttp` version in your project to match the version that the Dapr SDK uses: + +```xml + + com.squareup.okhttp3 + okhttp + 1.14.1 + +``` + ## Try it out Put the Dapr Java SDK to the test. Walk through the Java quickstarts and tutorials to see Dapr in action: diff --git a/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md b/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md index 4a53e21b2b..3d5e945e34 100644 --- a/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md +++ b/daprdocs/content/en/java-sdk-docs/spring-boot/_index.md @@ -25,12 +25,12 @@ If you already have a Spring Boot application (Spring Boot 3.x+), you can direct io.dapr.spring dapr-spring-boot-starter - 0.14.0 + 0.14.1 io.dapr.spring dapr-spring-boot-starter-test - 0.14.0 + 0.14.1 test ``` diff --git a/docs/allclasses-index.html b/docs/allclasses-index.html index 536dff83b6..306a09708e 100644 --- a/docs/allclasses-index.html +++ b/docs/allclasses-index.html @@ -1,11 +1,11 @@ - -All Classes and Interfaces (dapr-sdk-parent 1.14.0 API) + +All Classes and Interfaces (dapr-sdk-parent 1.14.1 API) - + diff --git a/docs/allpackages-index.html b/docs/allpackages-index.html index 8eb6b94866..cd4103c09e 100644 --- a/docs/allpackages-index.html +++ b/docs/allpackages-index.html @@ -1,11 +1,11 @@ - -All Packages (dapr-sdk-parent 1.14.0 API) + +All Packages (dapr-sdk-parent 1.14.1 API) - + diff --git a/docs/constant-values.html b/docs/constant-values.html index 65a3f06b0a..2b252674c6 100644 --- a/docs/constant-values.html +++ b/docs/constant-values.html @@ -1,11 +1,11 @@ - -Constant Field Values (dapr-sdk-parent 1.14.0 API) + +Constant Field Values (dapr-sdk-parent 1.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/allclasses-index.html b/docs/dapr-sdk-workflows/allclasses-index.html index 4e1dafc735..56bc7eb81a 100644 --- a/docs/dapr-sdk-workflows/allclasses-index.html +++ b/docs/dapr-sdk-workflows/allclasses-index.html @@ -1,11 +1,11 @@ - -All Classes and Interfaces (dapr-sdk-workflows 0.14.0 API) + +All Classes and Interfaces (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/allpackages-index.html b/docs/dapr-sdk-workflows/allpackages-index.html index 8c9eefc595..985c7d16a1 100644 --- a/docs/dapr-sdk-workflows/allpackages-index.html +++ b/docs/dapr-sdk-workflows/allpackages-index.html @@ -1,11 +1,11 @@ - -All Packages (dapr-sdk-workflows 0.14.0 API) + +All Packages (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/help-doc.html b/docs/dapr-sdk-workflows/help-doc.html index 872f56f186..bddc0a0c07 100644 --- a/docs/dapr-sdk-workflows/help-doc.html +++ b/docs/dapr-sdk-workflows/help-doc.html @@ -1,11 +1,11 @@ - -API Help (dapr-sdk-workflows 0.14.0 API) + +API Help (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/index-all.html b/docs/dapr-sdk-workflows/index-all.html index 742bf0b1e2..87016ef266 100644 --- a/docs/dapr-sdk-workflows/index-all.html +++ b/docs/dapr-sdk-workflows/index-all.html @@ -1,11 +1,11 @@ - -Index (dapr-sdk-workflows 0.14.0 API) + +Index (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/index.html b/docs/dapr-sdk-workflows/index.html index 1e71081add..59c8294ed0 100644 --- a/docs/dapr-sdk-workflows/index.html +++ b/docs/dapr-sdk-workflows/index.html @@ -1,11 +1,11 @@ - -Overview (dapr-sdk-workflows 0.14.0 API) + +Overview (dapr-sdk-workflows 0.14.1 API) - + @@ -49,7 +49,7 @@
-

dapr-sdk-workflows 0.14.0 API

+

dapr-sdk-workflows 0.14.1 API

Packages
diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/Workflow.html b/docs/dapr-sdk-workflows/io/dapr/workflows/Workflow.html index 7fbe935a8e..346eb2b775 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/Workflow.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/Workflow.html @@ -1,11 +1,11 @@ - -Workflow (dapr-sdk-workflows 0.14.0 API) + +Workflow (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html index 932e3333ca..be75c783af 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html @@ -1,11 +1,11 @@ - -WorkflowContext (dapr-sdk-workflows 0.14.0 API) + +WorkflowContext (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowStub.html b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowStub.html index bad5f3e7fb..e5b9352cc5 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowStub.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowStub.html @@ -1,11 +1,11 @@ - -WorkflowStub (dapr-sdk-workflows 0.14.0 API) + +WorkflowStub (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/Workflow.html b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/Workflow.html index 36c9e2da9b..67cb3319a6 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/Workflow.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/Workflow.html @@ -1,11 +1,11 @@ - -Uses of Interface io.dapr.workflows.Workflow (dapr-sdk-workflows 0.14.0 API) + +Uses of Interface io.dapr.workflows.Workflow (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowContext.html b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowContext.html index 177dfd9bd0..1da33d1161 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowContext.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowContext.html @@ -1,11 +1,11 @@ - -Uses of Interface io.dapr.workflows.WorkflowContext (dapr-sdk-workflows 0.14.0 API) + +Uses of Interface io.dapr.workflows.WorkflowContext (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowStub.html b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowStub.html index 862aa4f0ff..d8bb2dc109 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowStub.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/class-use/WorkflowStub.html @@ -1,11 +1,11 @@ - -Uses of Interface io.dapr.workflows.WorkflowStub (dapr-sdk-workflows 0.14.0 API) + +Uses of Interface io.dapr.workflows.WorkflowStub (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/DaprWorkflowClient.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/DaprWorkflowClient.html index e5207ae989..e944a62205 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/DaprWorkflowClient.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/DaprWorkflowClient.html @@ -1,11 +1,11 @@ - -DaprWorkflowClient (dapr-sdk-workflows 0.14.0 API) + +DaprWorkflowClient (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowFailureDetails.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowFailureDetails.html index 9e1356bb9c..7ae13756bc 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowFailureDetails.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowFailureDetails.html @@ -1,11 +1,11 @@ - -WorkflowFailureDetails (dapr-sdk-workflows 0.14.0 API) + +WorkflowFailureDetails (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowInstanceStatus.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowInstanceStatus.html index 150674f825..630387cfee 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowInstanceStatus.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/WorkflowInstanceStatus.html @@ -1,11 +1,11 @@ - -WorkflowInstanceStatus (dapr-sdk-workflows 0.14.0 API) + +WorkflowInstanceStatus (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/DaprWorkflowClient.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/DaprWorkflowClient.html index ffbb2f522c..628909ba37 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/DaprWorkflowClient.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/DaprWorkflowClient.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.client.DaprWorkflowClient (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.client.DaprWorkflowClient (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowFailureDetails.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowFailureDetails.html index e1d94408ba..6ab7c60a33 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowFailureDetails.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowFailureDetails.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.client.WorkflowFailureDetails (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.client.WorkflowFailureDetails (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowInstanceStatus.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowInstanceStatus.html index 3f3154e6d2..ba103ab2c5 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowInstanceStatus.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/class-use/WorkflowInstanceStatus.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.client.WorkflowInstanceStatus (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.client.WorkflowInstanceStatus (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-summary.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-summary.html index 8ee9302ef6..25e7ff7b02 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-summary.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-summary.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.client (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.client (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-tree.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-tree.html index 5b1ecae495..3e12950302 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-tree.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-tree.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.client Class Hierarchy (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.client Class Hierarchy (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-use.html b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-use.html index 0752ec5f3a..106e81a5fd 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-use.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/client/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package io.dapr.workflows.client (dapr-sdk-workflows 0.14.0 API) + +Uses of Package io.dapr.workflows.client (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/ApiTokenClientInterceptor.html b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/ApiTokenClientInterceptor.html index 9fd81d2c05..f75bcab1df 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/ApiTokenClientInterceptor.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/ApiTokenClientInterceptor.html @@ -1,11 +1,11 @@ - -ApiTokenClientInterceptor (dapr-sdk-workflows 0.14.0 API) + +ApiTokenClientInterceptor (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/class-use/ApiTokenClientInterceptor.html b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/class-use/ApiTokenClientInterceptor.html index 6d9dadb3dc..3c1ebfe6ab 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/class-use/ApiTokenClientInterceptor.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/class-use/ApiTokenClientInterceptor.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.internal.ApiTokenClientInterceptor (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.internal.ApiTokenClientInterceptor (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-summary.html b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-summary.html index c6b92f0f42..a1bad791f9 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-summary.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-summary.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.internal (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.internal (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-tree.html b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-tree.html index 5dd663bcb4..905b225f54 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-tree.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-tree.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.internal Class Hierarchy (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.internal Class Hierarchy (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-use.html b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-use.html index d6bbc42e75..bce41900c5 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-use.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/internal/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package io.dapr.workflows.internal (dapr-sdk-workflows 0.14.0 API) + +Uses of Package io.dapr.workflows.internal (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/package-summary.html b/docs/dapr-sdk-workflows/io/dapr/workflows/package-summary.html index f81a308c17..0d771de217 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/package-summary.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/package-summary.html @@ -1,11 +1,11 @@ - -io.dapr.workflows (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/package-tree.html b/docs/dapr-sdk-workflows/io/dapr/workflows/package-tree.html index b764ed778e..e490f77f73 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/package-tree.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/package-tree.html @@ -1,11 +1,11 @@ - -io.dapr.workflows Class Hierarchy (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows Class Hierarchy (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/package-use.html b/docs/dapr-sdk-workflows/io/dapr/workflows/package-use.html index d56f58a31c..52d67e66f5 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/package-use.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package io.dapr.workflows (dapr-sdk-workflows 0.14.0 API) + +Uses of Package io.dapr.workflows (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntime.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntime.html index 50dfde9ffa..01d3a9e69c 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntime.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntime.html @@ -1,11 +1,11 @@ - -WorkflowRuntime (dapr-sdk-workflows 0.14.0 API) + +WorkflowRuntime (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.html index b07fe81c17..b7b6e0516a 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.html @@ -1,11 +1,11 @@ - -WorkflowRuntimeBuilder (dapr-sdk-workflows 0.14.0 API) + +WorkflowRuntimeBuilder (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeStatus.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeStatus.html index ee16aa8d08..e87d3eab24 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeStatus.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/WorkflowRuntimeStatus.html @@ -1,11 +1,11 @@ - -WorkflowRuntimeStatus (dapr-sdk-workflows 0.14.0 API) + +WorkflowRuntimeStatus (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntime.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntime.html index 8f3b25e2b3..c4e8de65ad 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntime.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntime.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.runtime.WorkflowRuntime (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.runtime.WorkflowRuntime (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeBuilder.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeBuilder.html index 672d7c0c82..c93b6cf624 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeBuilder.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeBuilder.html @@ -1,11 +1,11 @@ - -Uses of Class io.dapr.workflows.runtime.WorkflowRuntimeBuilder (dapr-sdk-workflows 0.14.0 API) + +Uses of Class io.dapr.workflows.runtime.WorkflowRuntimeBuilder (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeStatus.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeStatus.html index e73bc14eb9..8cdce2f636 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeStatus.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/class-use/WorkflowRuntimeStatus.html @@ -1,11 +1,11 @@ - -Uses of Enum io.dapr.workflows.runtime.WorkflowRuntimeStatus (dapr-sdk-workflows 0.14.0 API) + +Uses of Enum io.dapr.workflows.runtime.WorkflowRuntimeStatus (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-summary.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-summary.html index 15443a843b..d42910dbdf 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-summary.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-summary.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.runtime (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.runtime (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-tree.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-tree.html index 3ab59795c7..66e664257e 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-tree.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-tree.html @@ -1,11 +1,11 @@ - -io.dapr.workflows.runtime Class Hierarchy (dapr-sdk-workflows 0.14.0 API) + +io.dapr.workflows.runtime Class Hierarchy (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-use.html b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-use.html index 8b25823c65..48e23e8c89 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-use.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/runtime/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package io.dapr.workflows.runtime (dapr-sdk-workflows 0.14.0 API) + +Uses of Package io.dapr.workflows.runtime (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/overview-summary.html b/docs/dapr-sdk-workflows/overview-summary.html index 2c3c61d018..98b7a5f78e 100644 --- a/docs/dapr-sdk-workflows/overview-summary.html +++ b/docs/dapr-sdk-workflows/overview-summary.html @@ -1,11 +1,11 @@ - -dapr-sdk-workflows 0.14.0 API + +dapr-sdk-workflows 0.14.1 API - + diff --git a/docs/dapr-sdk-workflows/overview-tree.html b/docs/dapr-sdk-workflows/overview-tree.html index f3b87c4a53..1bf2bb5cd7 100644 --- a/docs/dapr-sdk-workflows/overview-tree.html +++ b/docs/dapr-sdk-workflows/overview-tree.html @@ -1,11 +1,11 @@ - -Class Hierarchy (dapr-sdk-workflows 0.14.0 API) + +Class Hierarchy (dapr-sdk-workflows 0.14.1 API) - + diff --git a/docs/dapr-sdk-workflows/project-reports.html b/docs/dapr-sdk-workflows/project-reports.html index 4b6b719dd6..0548388f4e 100644 --- a/docs/dapr-sdk-workflows/project-reports.html +++ b/docs/dapr-sdk-workflows/project-reports.html @@ -1,6 +1,6 @@ @@ -25,8 +25,8 @@