Update sdk to use configuration dictionaries (#769)

* Update sdk to use configuration maps

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* add ref

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* add ref validate

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* go 1.19

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* fix it test

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* update comments

Signed-off-by: addjuarez <addiajuarez@gmail.com>

* use immutable maps

Signed-off-by: addjuarez <addiajuarez@gmail.com>

Signed-off-by: addjuarez <addiajuarez@gmail.com>
This commit is contained in:
addjuarez 2022-09-05 21:28:34 -05:00 committed by GitHub
parent 997c86d526
commit 2cc9e536c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 123 additions and 104 deletions

View File

@ -20,7 +20,7 @@ jobs:
matrix:
java: [ 11, 13, 15, 16 ]
env:
GOVER: 1.17.7
GOVER: 1.19
GOOS: linux
GOARCH: amd64
GOPROXY: https://proxy.golang.org
@ -29,7 +29,7 @@ jobs:
DAPR_RUNTIME_VER: 1.8.0-rc.3
DAPR_INSTALL_URL: https://raw.githubusercontent.com/dapr/cli/v1.8.0-rc.1/install/install.sh
DAPR_CLI_REF:
DAPR_REF:
DAPR_REF: 683a436ff1367e4ff2d27da2d79069c04ec2c46d
steps:
- uses: actions/checkout@v3
- name: Set up OpenJDK ${{ env.JDK_VER }}

View File

@ -31,7 +31,7 @@ jobs:
matrix:
java: [ 11, 13, 15, 16 ]
env:
GOVER: 1.17.7
GOVER: 1.19
GOOS: linux
GOARCH: amd64
GOPROXY: https://proxy.golang.org
@ -40,7 +40,7 @@ jobs:
DAPR_RUNTIME_VER: 1.8.0-rc.3
DAPR_INSTALL_URL: https://raw.githubusercontent.com/dapr/cli/v1.8.0-rc.1/install/install.sh
DAPR_CLI_REF:
DAPR_REF:
DAPR_REF: 683a436ff1367e4ff2d27da2d79069c04ec2c46d
steps:
- uses: actions/checkout@v3
- name: Set up OpenJDK ${{ env.JDK_VER }}

View File

@ -26,6 +26,7 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicReference;
public class ConfigurationClient {
@ -72,9 +73,9 @@ public class ConfigurationClient {
public static void getConfigurationsUsingVarargs(DaprPreviewClient client) {
System.out.println("*******trying to retrieve configurations for a variable no. of keys********");
try {
Mono<List<ConfigurationItem>> items =
Mono<Map<String, ConfigurationItem>> items =
client.getConfiguration(CONFIG_STORE_NAME, "myconfig1", "myconfig3");
items.block().forEach(ConfigurationClient::print);
items.block().forEach((k,v) -> print(v, k));
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
@ -93,8 +94,8 @@ public class ConfigurationClient {
keys.add("myconfig3");
GetConfigurationRequest req = new GetConfigurationRequest(CONFIG_STORE_NAME, keys);
try {
Mono<List<ConfigurationItem>> items = client.getConfiguration(req);
items.block().forEach(ConfigurationClient::print);
Mono<Map<String, ConfigurationItem>> items = client.getConfiguration(req);
items.block().forEach((k,v) -> print(v, k));
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
@ -110,10 +111,10 @@ public class ConfigurationClient {
AtomicReference<Disposable> disposableAtomicReference = new AtomicReference<>();
SubscribeConfigurationRequest req = new SubscribeConfigurationRequest(CONFIG_STORE_NAME, keys);
Runnable subscribeTask = () -> {
Flux<List<ConfigurationItem>> outFlux = client.subscribeToConfiguration(req);
Flux<Map<String, ConfigurationItem>> outFlux = client.subscribeToConfiguration(req);
disposableAtomicReference.set(outFlux
.subscribe(
cis -> cis.forEach(ConfigurationClient::print)
cis -> cis.forEach((k,v) -> print(v, k))
));
};
new Thread(subscribeTask).start();
@ -140,8 +141,8 @@ public class ConfigurationClient {
}
}
private static void print(ConfigurationItem item) {
System.out.println(item.getValue() + " : key ->" + item.getKey());
private static void print(ConfigurationItem item, String key) {
System.out.println(item.getValue() + " : key ->" + key);
}
private static void executeDockerCommand(int postfix) {

View File

@ -16,7 +16,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<grpc.version>1.42.1</grpc.version>
<protobuf.version>3.17.3</protobuf.version>
<dapr.proto.baseurl>https://raw.githubusercontent.com/dapr/dapr/v1.7.0-rc.2/dapr/proto</dapr.proto.baseurl>
<dapr.proto.baseurl>https://raw.githubusercontent.com/dapr/dapr/683a436ff1367e4ff2d27da2d79069c04ec2c46d/dapr/proto</dapr.proto.baseurl>
<os-maven-plugin.version>1.6.2</os-maven-plugin.version>
<maven-dependency-plugin.version>3.1.1</maven-dependency-plugin.version>
<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>

View File

@ -78,7 +78,6 @@ public class ConfigurationClientIT extends BaseIT {
@Test
public void getConfiguration() {
ConfigurationItem ci = daprPreviewClient.getConfiguration(CONFIG_STORE_NAME, "myconfigkey1").block();
assertEquals(ci.getKey(), "myconfigkey1");
assertEquals(ci.getValue(), "myconfigvalue1");
}
@ -91,10 +90,11 @@ public class ConfigurationClientIT extends BaseIT {
@Test
public void getConfigurations() {
List<ConfigurationItem> cis = daprPreviewClient.getConfiguration(CONFIG_STORE_NAME, "myconfigkey1", "myconfigkey2").block();
Map<String, ConfigurationItem> cis = daprPreviewClient.getConfiguration(CONFIG_STORE_NAME, "myconfigkey1", "myconfigkey2").block();
assertTrue(cis.size() == 2);
assertEquals(cis.get(0).getKey(), "myconfigkey1");
assertEquals(cis.get(1).getValue(), "myconfigvalue2");
assertTrue(cis.containsKey("myconfigkey1"));
assertTrue(cis.containsKey("myconfigkey2"));
assertEquals(cis.get("myconfigkey2").getValue(), "myconfigvalue2");
}
@Test
@ -111,10 +111,13 @@ public class ConfigurationClientIT extends BaseIT {
List<String> updatedValues = new ArrayList<>();
AtomicReference<Disposable> disposable = new AtomicReference<>();
Runnable subscribeTask = () -> {
Flux<List<ConfigurationItem>> outFlux = daprPreviewClient
Flux<Map<String, ConfigurationItem>> outFlux = daprPreviewClient
.subscribeToConfiguration(CONFIG_STORE_NAME, "myconfigkey1", "myconfigkey2");
disposable.set(outFlux.subscribe(update -> {
updatedValues.add(update.get(0).getValue());
updatedValues.add(update.entrySet()
.stream()
.findFirst()
.get().getValue().getValue());
}));
};
Thread subscribeThread = new Thread(subscribeTask);

View File

@ -504,7 +504,7 @@ abstract class AbstractDaprClient implements DaprClient, DaprPreviewClient {
@Override
public Mono<ConfigurationItem> getConfiguration(String storeName, String key) {
GetConfigurationRequest request = new GetConfigurationRequest(storeName, filterEmptyKeys(key));
return this.getConfiguration(request).map(data -> data.get(0));
return this.getConfiguration(request).map(data -> data.get(key));
}
/**
@ -514,14 +514,14 @@ abstract class AbstractDaprClient implements DaprClient, DaprPreviewClient {
public Mono<ConfigurationItem> getConfiguration(String storeName, String key, Map<String, String> metadata) {
GetConfigurationRequest request = new GetConfigurationRequest(storeName, filterEmptyKeys(key));
request.setMetadata(metadata);
return this.getConfiguration(request).map(data -> data.get(0));
return this.getConfiguration(request).map(data -> data.get(key));
}
/**
* {@inheritDoc}
*/
@Override
public Mono<List<ConfigurationItem>> getConfiguration(String storeName, String... keys) {
public Mono<Map<String, ConfigurationItem>> getConfiguration(String storeName, String... keys) {
List<String> listOfKeys = filterEmptyKeys(keys);
GetConfigurationRequest request = new GetConfigurationRequest(storeName, listOfKeys);
return this.getConfiguration(request);
@ -531,7 +531,7 @@ abstract class AbstractDaprClient implements DaprClient, DaprPreviewClient {
* {@inheritDoc}
*/
@Override
public Mono<List<ConfigurationItem>> getConfiguration(
public Mono<Map<String, ConfigurationItem>> getConfiguration(
String storeName,
List<String> keys,
Map<String, String> metadata) {
@ -543,7 +543,7 @@ abstract class AbstractDaprClient implements DaprClient, DaprPreviewClient {
/**
* {@inheritDoc}
*/
public Flux<List<ConfigurationItem>> subscribeToConfiguration(String storeName, String... keys) {
public Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(String storeName, String... keys) {
List<String> listOfKeys = filterEmptyKeys(keys);
SubscribeConfigurationRequest request = new SubscribeConfigurationRequest(storeName, listOfKeys);
return this.subscribeToConfiguration(request);
@ -552,7 +552,7 @@ abstract class AbstractDaprClient implements DaprClient, DaprPreviewClient {
/**
* {@inheritDoc}
*/
public Flux<List<ConfigurationItem>> subscribeToConfiguration(
public Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(
String storeName,
List<String> keys,
Map<String, String> metadata) {

View File

@ -63,6 +63,8 @@ import reactor.util.context.Context;
import java.io.Closeable;
import java.io.IOException;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ExecutionException;
@ -766,7 +768,7 @@ public class DaprClientGrpc extends AbstractDaprClient {
* {@inheritDoc}
*/
@Override
public Mono<List<ConfigurationItem>> getConfiguration(GetConfigurationRequest request) {
public Mono<Map<String, ConfigurationItem>> getConfiguration(GetConfigurationRequest request) {
try {
final String configurationStoreName = request.getStoreName();
final Map<String, String> metadata = request.getMetadata();
@ -791,16 +793,22 @@ public class DaprClientGrpc extends AbstractDaprClient {
}
}
private Mono<List<ConfigurationItem>> getConfigurationAlpha1(DaprProtos.GetConfigurationRequest envelope) {
private Mono<Map<String, ConfigurationItem>> getConfigurationAlpha1(DaprProtos.GetConfigurationRequest envelope) {
return Mono.subscriberContext().flatMap(
context ->
this.<DaprProtos.GetConfigurationResponse>createMono(
it -> intercept(context, asyncStub).getConfigurationAlpha1(envelope, it)
)
).map(
it ->
it.getItemsList().stream()
.map(this::buildConfigurationItem).collect(Collectors.toList())
it -> {
Map<String, ConfigurationItem> configMap = new HashMap<>();
Iterator<Map.Entry<String, CommonProtos.ConfigurationItem>> itr = it.getItems().entrySet().iterator();
while (itr.hasNext()) {
Map.Entry<String, CommonProtos.ConfigurationItem> entry = itr.next();
configMap.put(entry.getKey(), buildConfigurationItem(entry.getValue(), entry.getKey()));
}
return Collections.unmodifiableMap(configMap);
}
);
}
@ -808,7 +816,7 @@ public class DaprClientGrpc extends AbstractDaprClient {
* {@inheritDoc}
*/
@Override
public Flux<List<ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request) {
public Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request) {
try {
final String configurationStoreName = request.getStoreName();
final List<String> keys = request.getKeys();
@ -831,9 +839,15 @@ public class DaprClientGrpc extends AbstractDaprClient {
return this.<DaprProtos.SubscribeConfigurationResponse>createFlux(
it -> intercept(asyncStub).subscribeConfigurationAlpha1(envelope, it)
).map(
it ->
it.getItemsList().stream()
.map(this::buildConfigurationItem).collect(Collectors.toList())
it -> {
Map<String, ConfigurationItem> configMap = new HashMap<>();
Iterator<Map.Entry<String, CommonProtos.ConfigurationItem>> itr = it.getItems().entrySet().iterator();
while (itr.hasNext()) {
Map.Entry<String, CommonProtos.ConfigurationItem> entry = itr.next();
configMap.put(entry.getKey(), buildConfigurationItem(entry.getValue(), entry.getKey()));
}
return Collections.unmodifiableMap(configMap);
}
);
} catch (Exception ex) {
return DaprException.wrapFlux(ex);
@ -847,10 +861,10 @@ public class DaprClientGrpc extends AbstractDaprClient {
* @return io.dapr.client.domain.ConfigurationItem
*/
private ConfigurationItem buildConfigurationItem(
CommonProtos.ConfigurationItem configurationItem) {
CommonProtos.ConfigurationItem configurationItem, String key) {
return new ConfigurationItem(
configurationItem.getKey(),
configurationItem.getValue(),
key,
configurationItem.getValue(),
configurationItem.getVersion(),
configurationItem.getMetadataMap()
);

View File

@ -767,7 +767,7 @@ public class DaprClientHttp extends AbstractDaprClient {
* {@inheritDoc}
*/
@Override
public Mono<List<ConfigurationItem>> getConfiguration(GetConfigurationRequest request) {
public Mono<Map<String, ConfigurationItem>> getConfiguration(GetConfigurationRequest request) {
return DaprException.wrapMono(new UnsupportedOperationException());
}
@ -775,7 +775,7 @@ public class DaprClientHttp extends AbstractDaprClient {
* {@inheritDoc}
*/
@Override
public Flux<List<ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request) {
public Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request) {
return DaprException.wrapFlux(new UnsupportedOperationException());
}

View File

@ -53,41 +53,42 @@ public interface DaprPreviewClient extends AutoCloseable {
Mono<ConfigurationItem> getConfiguration(String storeName, String key, Map<String, String> metadata);
/**
* Retrieve List of configurations based on a provided variable number of keys.
* Retrieve Map of configurations based on a provided variable number of keys.
*
* @param storeName Name of the configuration store
* @param keys keys of the configurations which are to be retrieved
* @return Mono of List of ConfigurationItems
* @return Mono of Map of ConfigurationItems
*/
Mono<List<ConfigurationItem>> getConfiguration(String storeName, String... keys);
Mono<Map<String, ConfigurationItem>> getConfiguration(String storeName, String... keys);
/**
* Retrieve List of configurations based on a provided variable number of keys.
* Retrieve Map of configurations based on a provided variable number of keys.
*
* @param storeName Name of the configuration store
* @param keys keys of the configurations which are to be retrieved
* @param metadata optional metadata
* @return Mono of List of ConfigurationItems
* @return Mono of Map of ConfigurationItems
*/
Mono<List<ConfigurationItem>> getConfiguration(String storeName, List<String> keys, Map<String, String> metadata);
Mono<Map<String, ConfigurationItem>> getConfiguration(String storeName, List<String> keys,
Map<String, String> metadata);
/**
* Retrieve List of configurations based on a provided configuration request object.
* Retrieve Map of configurations based on a provided configuration request object.
*
* @param request request for retrieving Configurations for a list keys
* @return Mono of List of ConfigurationItems
* @return Mono of Map of ConfigurationItems
*/
Mono<List<ConfigurationItem>> getConfiguration(GetConfigurationRequest request);
Mono<Map<String, ConfigurationItem>> getConfiguration(GetConfigurationRequest request);
/**
* Subscribe to the keys for any change.
*
* @param storeName Name of the configuration store
* @param keys keys of the configurations which are to be subscribed
* @return Flux of List of configuration items
* @return Flux of Map of configuration items
*/
Flux<List<ConfigurationItem>> subscribeToConfiguration(String storeName, String... keys);
Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(String storeName, String... keys);
/**
* Subscribe to the keys for any change.
@ -95,18 +96,18 @@ public interface DaprPreviewClient extends AutoCloseable {
* @param storeName Name of the configuration store
* @param keys keys of the configurations which are to be subscribed
* @param metadata optional metadata
* @return Flux of List of configuration items
* @return Flux of Map of configuration items
*/
Flux<List<ConfigurationItem>> subscribeToConfiguration(String storeName, List<String> keys,
Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(String storeName, List<String> keys,
Map<String, String> metadata);
/**
* Subscribe to the keys for any change.
*
* @param request request for subscribing to any change for the given keys in request
* @return Flux of List of configuration items
* @return Flux of Map of configuration items
*/
Flux<List<ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request);
Flux<Map<String, ConfigurationItem>> subscribeToConfiguration(SubscribeConfigurationRequest request);
/**
* Query for states using a query string.

View File

@ -110,7 +110,6 @@ public class DaprPreviewClientGrpcTest {
}).when(daprStub).getConfigurationAlpha1(any(DaprProtos.GetConfigurationRequest.class), any());
ConfigurationItem ci = previewClient.getConfiguration(CONFIG_STORE_NAME, "configkey1").block();
assertEquals("configkey1", ci.getKey());
assertEquals("configvalue1", ci.getValue());
assertEquals("1", ci.getVersion());
}
@ -128,7 +127,6 @@ public class DaprPreviewClientGrpcTest {
Map<String, String> reqMetadata = new HashMap<>();
reqMetadata.put("meta1", "value1");
ConfigurationItem ci = previewClient.getConfiguration(CONFIG_STORE_NAME, "configkey1", reqMetadata).block();
assertEquals("configkey1", ci.getKey());
assertEquals("configvalue1", ci.getValue());
assertEquals("1", ci.getVersion());
}
@ -143,15 +141,14 @@ public class DaprPreviewClientGrpcTest {
return null;
}).when(daprStub).getConfigurationAlpha1(any(DaprProtos.GetConfigurationRequest.class), any());
List<ConfigurationItem> cis = previewClient.getConfiguration(CONFIG_STORE_NAME, "configkey1","configkey2").block();
Map<String, ConfigurationItem> cis = previewClient.getConfiguration(CONFIG_STORE_NAME, "configkey1","configkey2").block();
assertEquals(2, cis.size());
assertEquals("configkey1", cis.stream().findFirst().get().getKey());
assertEquals("configvalue1", cis.stream().findFirst().get().getValue());
assertEquals("1", cis.stream().findFirst().get().getVersion());
assertEquals("configkey2", cis.stream().skip(1).findFirst().get().getKey());
assertEquals("configvalue2", cis.stream().skip(1).findFirst().get().getValue());
assertEquals("1", cis.stream().skip(1).findFirst().get().getVersion());
assertTrue("configkey1", cis.containsKey("configkey1"));
assertEquals("configvalue1", cis.get("configkey1").getValue());
assertEquals("1", cis.get("configkey1").getVersion());
assertTrue("configkey2", cis.containsKey("configkey2"));
assertEquals("configvalue2", cis.get("configkey2").getValue());
assertEquals("1", cis.get("configkey2").getVersion());
}
@Test
@ -167,23 +164,24 @@ public class DaprPreviewClientGrpcTest {
Map<String, String> reqMetadata = new HashMap<>();
reqMetadata.put("meta1", "value1");
List<String> keys = Arrays.asList("configkey1","configkey2");
List<ConfigurationItem> cis = previewClient.getConfiguration(CONFIG_STORE_NAME, keys, reqMetadata).block();
Map<String, ConfigurationItem> cis = previewClient.getConfiguration(CONFIG_STORE_NAME, keys, reqMetadata).block();
assertEquals(2, cis.size());
assertEquals("configkey1", cis.stream().findFirst().get().getKey());
assertEquals("configvalue1", cis.stream().findFirst().get().getValue());
assertTrue("configkey1", cis.containsKey("configkey1"));
assertEquals("configvalue1", cis.get("configkey1").getValue());
}
@Test
public void subscribeConfigurationTest() {
Map<String, String> metadata = new HashMap<>();
metadata.put("meta1", "value1");
Map<String, CommonProtos.ConfigurationItem> configs = new HashMap<>();
configs.put("configkey1", CommonProtos.ConfigurationItem.newBuilder()
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build());
DaprProtos.SubscribeConfigurationResponse responseEnvelope = DaprProtos.SubscribeConfigurationResponse.newBuilder()
.addItems(CommonProtos.ConfigurationItem.newBuilder()
.setKey("configkey1")
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build())
.putAllItems(configs)
.build();
doAnswer((Answer<Void>) invocation -> {
@ -194,23 +192,24 @@ public class DaprPreviewClientGrpcTest {
return null;
}).when(daprStub).subscribeConfigurationAlpha1(any(DaprProtos.SubscribeConfigurationRequest.class), any());
Iterator<List<ConfigurationItem>> itr = previewClient.subscribeToConfiguration(CONFIG_STORE_NAME, "configkey1").toIterable().iterator();
Iterator<Map<String, ConfigurationItem>> itr = previewClient.subscribeToConfiguration(CONFIG_STORE_NAME, "configkey1").toIterable().iterator();
assertTrue(itr.hasNext());
assertEquals("configkey1", itr.next().get(0).getKey());
assertFalse(itr.hasNext());
assertTrue(itr.next().containsKey("configkey1"));
assertFalse(itr.hasNext());
}
@Test
public void subscribeConfigurationTestWithMetadata() {
Map<String, String> metadata = new HashMap<>();
metadata.put("meta1", "value1");
Map<String, CommonProtos.ConfigurationItem> configs = new HashMap<>();
configs.put("configkey1", CommonProtos.ConfigurationItem.newBuilder()
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build());
DaprProtos.SubscribeConfigurationResponse responseEnvelope = DaprProtos.SubscribeConfigurationResponse.newBuilder()
.addItems(CommonProtos.ConfigurationItem.newBuilder()
.setKey("configkey1")
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build())
.putAllItems(configs)
.build();
doAnswer((Answer<Void>) invocation -> {
@ -224,10 +223,10 @@ public class DaprPreviewClientGrpcTest {
Map<String, String> reqMetadata = new HashMap<>();
List<String> keys = Arrays.asList("configkey1");
Iterator<List<ConfigurationItem>> itr = previewClient.subscribeToConfiguration(CONFIG_STORE_NAME, keys, reqMetadata).toIterable().iterator();
Iterator<Map<String, ConfigurationItem>> itr = previewClient.subscribeToConfiguration(CONFIG_STORE_NAME, "configkey1").toIterable().iterator();
assertTrue(itr.hasNext());
assertEquals("configkey1", itr.next().get(0).getKey());
assertFalse(itr.hasNext());
assertTrue(itr.next().containsKey("configkey1"));
assertFalse(itr.hasNext());
}
@Test
@ -257,33 +256,34 @@ public class DaprPreviewClientGrpcTest {
private DaprProtos.GetConfigurationResponse getSingleMockResponse() {
Map<String, String> metadata = new HashMap<>();
metadata.put("meta1", "value1");
Map<String, CommonProtos.ConfigurationItem> configs = new HashMap<>();
configs.put("configkey1", CommonProtos.ConfigurationItem.newBuilder()
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build());
DaprProtos.GetConfigurationResponse responseEnvelope = DaprProtos.GetConfigurationResponse.newBuilder()
.addItems(CommonProtos.ConfigurationItem.newBuilder()
.setKey("configkey1")
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build()
).build();
.putAllItems(configs)
.build();
return responseEnvelope;
}
private DaprProtos.GetConfigurationResponse getMultipleMockResponse() {
Map<String, String> metadata = new HashMap<>();
metadata.put("meta1", "value1");
Map<String, CommonProtos.ConfigurationItem> configs = new HashMap<>();
configs.put("configkey1", CommonProtos.ConfigurationItem.newBuilder()
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build());
configs.put("configkey2", CommonProtos.ConfigurationItem.newBuilder()
.setValue("configvalue2")
.setVersion("1")
.putAllMetadata(metadata)
.build());
DaprProtos.GetConfigurationResponse responseEnvelope = DaprProtos.GetConfigurationResponse.newBuilder()
.addItems(CommonProtos.ConfigurationItem.newBuilder()
.setKey("configkey1")
.setValue("configvalue1")
.setVersion("1")
.putAllMetadata(metadata)
.build())
.addItems(CommonProtos.ConfigurationItem.newBuilder()
.setKey("configkey2")
.setValue("configvalue2")
.setVersion("1")
.putAllMetadata(metadata)
.build())
.putAllItems(configs)
.build();
return responseEnvelope;
}