Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ public final class ConfigurationAsyncClient {

private final String serviceEndpoint;
private final ConfigurationService service;
private final String apiVersion = ConfigurationServiceVersion.getLatest().getVersion();

/**
* Creates a ConfigurationAsyncClient that sends requests to the configuration service at {@code serviceEndpoint}.
Expand Down Expand Up @@ -134,7 +135,7 @@ Mono<Response<ConfigurationSetting>> addConfigurationSetting(ConfigurationSettin
// This service method call is similar to setConfigurationSetting except we're passing If-Not-Match = "*".
// If the service finds any existing configuration settings, then its e-tag will match and the service will
// return an error.
return service.setKey(serviceEndpoint, setting.getKey(), setting.getLabel(), setting, null,
return service.setKey(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion, setting, null,
getETagValue(ETAG_ANY), context)
.onErrorResume(HttpResponseException.class,
(Function<Throwable, Mono<Response<ConfigurationSetting>>>) throwable -> {
Expand Down Expand Up @@ -234,8 +235,8 @@ Mono<Response<ConfigurationSetting>> setConfigurationSetting(ConfigurationSettin
// Otherwise, the service throws an exception because the current configuration value was updated and we have an
// old value locally.
// If no ETag value was passed in, then the value is always added or updated.
return service.setKey(serviceEndpoint, setting.getKey(), setting.getLabel(), setting,
ifMatchETag, null, context)
return service.setKey(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion, setting, ifMatchETag,
null, context)
.doOnSubscribe(ignoredValue -> logger.info("Setting ConfigurationSetting - {}", setting))
.doOnSuccess(response -> logger.info("Set ConfigurationSetting - {}", response.getValue()))
.doOnError(error -> logger.warning("Failed to set ConfigurationSetting - {}", setting, error));
Expand Down Expand Up @@ -340,7 +341,7 @@ Mono<Response<ConfigurationSetting>> getConfigurationSetting(ConfigurationSettin
validateSetting(setting);

final String ifNoneMatchETag = onlyIfChanged ? getETagValue(setting.getETag()) : null;
return service.getKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(), null,
return service.getKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion, null,
acceptDateTime == null ? null : acceptDateTime.toString(), null, ifNoneMatchETag, context)
.onErrorResume(HttpResponseException.class,
(Function<Throwable, Mono<Response<ConfigurationSetting>>>) throwable -> {
Expand Down Expand Up @@ -431,7 +432,7 @@ Mono<Response<ConfigurationSetting>> deleteConfigurationSetting(ConfigurationSet
// Validate that setting and key is not null. The key is used in the service URL so it cannot be null.
validateSetting(setting);
final String ifMatchETag = ifUnchanged ? getETagValue(setting.getETag()) : null;
return service.delete(serviceEndpoint, setting.getKey(), setting.getLabel(), ifMatchETag,
return service.delete(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion, ifMatchETag,
null, context)
.doOnSubscribe(ignoredValue -> logger.info("Deleting ConfigurationSetting - {}", setting))
.doOnSuccess(response -> logger.info("Deleted ConfigurationSetting - {}", response.getValue()))
Expand Down Expand Up @@ -511,14 +512,14 @@ Mono<Response<ConfigurationSetting>> setReadOnly(ConfigurationSetting setting, b
validateSetting(setting);

if (isReadOnly) {
return service.lockKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(), null,
return service.lockKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion, null,
null, context)
.doOnSubscribe(ignoredValue -> logger.verbose("Setting read only ConfigurationSetting - {}", setting))
.doOnSuccess(response -> logger.info("Set read only ConfigurationSetting - {}", response.getValue()))
.doOnError(error -> logger.warning("Failed to set read only ConfigurationSetting - {}", setting,
error));
} else {
return service.unlockKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(),
return service.unlockKeyValue(serviceEndpoint, setting.getKey(), setting.getLabel(), apiVersion,
null, null, context)
.doOnSubscribe(ignoredValue -> logger.verbose("Clearing read only ConfigurationSetting - {}", setting))
.doOnSuccess(
Expand Down Expand Up @@ -578,7 +579,7 @@ private Mono<PagedResponse<ConfigurationSetting>> listNextPageSettings(Context c
private Mono<PagedResponse<ConfigurationSetting>> listFirstPageSettings(SettingSelector selector, Context context) {
try {
if (selector == null) {
return service.listKeyValues(serviceEndpoint, null, null, null, null, context)
return service.listKeyValues(serviceEndpoint, null, null, apiVersion, null, null, context)
.doOnRequest(ignoredValue -> logger.info("Listing all ConfigurationSettings"))
.doOnSuccess(response -> logger.info("Listed all ConfigurationSettings"))
.doOnError(error -> logger.warning("Failed to list all ConfigurationSetting", error));
Expand All @@ -588,7 +589,8 @@ private Mono<PagedResponse<ConfigurationSetting>> listFirstPageSettings(SettingS
String keys = CoreUtils.arrayToString(selector.getKeys(), key -> key);
String labels = CoreUtils.arrayToString(selector.getLabels(), label -> label);

return service.listKeyValues(serviceEndpoint, keys, labels, fields, selector.getAcceptDateTime(), context)
return service.listKeyValues(serviceEndpoint, keys, labels, apiVersion, fields,
selector.getAcceptDateTime(), context)
.doOnSubscribe(ignoredValue -> logger.info("Listing ConfigurationSettings - {}", selector))
.doOnSuccess(response -> logger.info("Listed ConfigurationSettings - {}", selector))
.doOnError(error -> logger.warning("Failed to list ConfigurationSetting - {}", selector, error));
Expand Down Expand Up @@ -636,14 +638,14 @@ Mono<PagedResponse<ConfigurationSetting>> listRevisionsFirstPage(SettingSelector
String labels = CoreUtils.arrayToString(selector.getLabels(), label -> label);

result = service.listKeyValueRevisions(
serviceEndpoint, keys, labels, fields, selector.getAcceptDateTime(), null, context)
serviceEndpoint, keys, labels, apiVersion, fields, selector.getAcceptDateTime(), null, context)
.doOnRequest(ignoredValue -> logger.info("Listing ConfigurationSetting revisions - {}", selector))
.doOnSuccess(response -> logger.info("Listed ConfigurationSetting revisions - {}", selector))
.doOnError(error ->
logger.warning("Failed to list ConfigurationSetting revisions - {}", selector, error));
} else {
result = service.listKeyValueRevisions(
serviceEndpoint, null, null, null, null, null, context)
serviceEndpoint, null, null, apiVersion, null, null, null, context)
.doOnRequest(ignoredValue -> logger.info("Listing ConfigurationSetting revisions"))
.doOnSuccess(response -> logger.info("Listed ConfigurationSetting revisions"))
.doOnError(error -> logger.warning("Failed to list all ConfigurationSetting revisions", error));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ Mono<Response<ConfigurationSetting>> getKeyValue(
@HostParam("url") String url,
@PathParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@QueryParam("$select") String fields,
@HeaderParam("Accept-Datetime") String acceptDatetime,
@HeaderParam("If-Match") String ifMatch,
Expand All @@ -54,6 +55,7 @@ Mono<Response<ConfigurationSetting>> setKey(
@HostParam("url") String url,
@PathParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@BodyParam(ContentType.APPLICATION_JSON) ConfigurationSetting keyValueParameters,
@HeaderParam("If-Match") String ifMatch,
@HeaderParam("If-None-Match") String ifNoneMatch,
Expand All @@ -66,6 +68,7 @@ Mono<Response<ConfigurationSetting>> delete(
@HostParam("url") String url,
@PathParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@HeaderParam("If-Match") String ifMatch,
@HeaderParam("If-None-Match") String ifNoneMatch,
Context context);
Expand All @@ -77,6 +80,7 @@ Mono<Response<ConfigurationSetting>> lockKeyValue(
@HostParam("url") String url,
@PathParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@HeaderParam("If-Match") String ifMatch,
@HeaderParam("If-None-Match") String ifNoneMatch,
Context context);
Expand All @@ -88,6 +92,7 @@ Mono<Response<ConfigurationSetting>> unlockKeyValue(
@HostParam("url") String url,
@PathParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@HeaderParam("If-Match") String ifMatch,
@HeaderParam("If-None-Match") String ifNoneMatch,
Context context);
Expand All @@ -100,6 +105,7 @@ Mono<PagedResponse<ConfigurationSetting>> listKeyValues(
@HostParam("url") String url,
@QueryParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@QueryParam("$select") String fields,
@HeaderParam("Accept-Datetime") String acceptDatetime,
Context context);
Expand All @@ -121,6 +127,7 @@ Mono<PagedResponse<ConfigurationSetting>> listKeyValueRevisions(
@HostParam("url") String url,
@QueryParam("key") String key,
@QueryParam("label") String label,
@QueryParam("api-version") String apiVersion,
@QueryParam("$select") String fields,
@HeaderParam("Accept-Datetime") String acceptDatetime,
@HeaderParam("Range") String range,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"networkCallRecords" : [ {
"Method" : "PUT",
"Uri" : "https://appconfigtestshawnfang.azconfig.io/kv/newKey",
"Uri" : "https://appconfigtestshawnfang.azconfig.io/kv/newKey?api-version=1.0",
"Headers" : {
"User-Agent" : "azsdk-java-UnknownName/UnknownVersion (11.0.4; Windows 10 10.0)",
"x-ms-client-request-id" : "bf5da5b3-47d9-4f71-8e4d-91388f0df4e3",
"x-ms-client-request-id" : "8758e18e-43e3-4965-8ddb-68926f91470d",
"Content-Type" : "application/json"
},
"Response" : {
Expand All @@ -13,20 +13,20 @@
"Access-Control-Allow-Origin" : "*",
"Access-Control-Allow-Methods" : "GET, PUT, POST, DELETE, PATCH, OPTIONS",
"Connection" : "keep-alive",
"Last-Modified" : "Thu, 21 Nov 2019 17:30:03 GMT",
"Last-Modified" : "Sun, 24 Nov 2019 16:05:15 GMT",
"retry-after" : "0",
"StatusCode" : "200",
"Date" : "Thu, 21 Nov 2019 17:30:03 GMT",
"Date" : "Sun, 24 Nov 2019 16:05:14 GMT",
"Access-Control-Allow-Headers" : "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since, Cache-Control, Content-Type, Authorization, x-ms-client-request-id, x-ms-content-sha256, x-ms-date, host, Accept, Accept-Datetime, Date, If-Match, If-None-Match, Sync-Token, x-ms-return-client-request-id, ETag, Last-Modified, Link, Memento-Datetime, x-ms-retry-after, x-ms-request-id, WWW-Authenticate",
"x-ms-correlation-request-id" : "3332ac9e-5b1e-4e8e-a7c5-361f91117959",
"x-ms-correlation-request-id" : "b96803a1-d123-4eac-9b1a-a546888087f2",
"Strict-Transport-Security" : "max-age=15724800; includeSubDomains",
"Access-Control-Expose-Headers" : "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since, Cache-Control, Content-Type, Authorization, x-ms-client-request-id, x-ms-content-sha256, x-ms-date, host, Accept, Accept-Datetime, Date, If-Match, If-None-Match, Sync-Token, x-ms-return-client-request-id, ETag, Last-Modified, Link, Memento-Datetime, x-ms-retry-after, x-ms-request-id, WWW-Authenticate",
"ETag" : "\"4VVhpP5AOwTdjstwNqnm3IBw5vS\"",
"ETag" : "\"mRbQHloEVRE3X0nAg0QPNWGKCBB\"",
"Access-Control-Allow-Credentials" : "true",
"Sync-Token" : "zAJw6V16=MDotMSM1NTc5MjA=;sn=557920",
"x-ms-request-id" : "3332ac9e-5b1e-4e8e-a7c5-361f91117959",
"Body" : "{\"etag\":\"4VVhpP5AOwTdjstwNqnm3IBw5vS\",\"key\":\"newKey\",\"label\":null,\"content_type\":null,\"value\":\"newValue\",\"tags\":{},\"locked\":false,\"last_modified\":\"2019-11-21T17:30:03+00:00\"}",
"x-ms-client-request-id" : "bf5da5b3-47d9-4f71-8e4d-91388f0df4e3",
"Sync-Token" : "zAJw6V16=MDotMSM1Njg4NDA=;sn=568840",
"x-ms-request-id" : "b96803a1-d123-4eac-9b1a-a546888087f2",
"Body" : "{\"etag\":\"mRbQHloEVRE3X0nAg0QPNWGKCBB\",\"key\":\"newKey\",\"label\":null,\"content_type\":null,\"value\":\"newValue\",\"tags\":{},\"locked\":false,\"last_modified\":\"2019-11-24T16:05:15+00:00\"}",
"x-ms-client-request-id" : "8758e18e-43e3-4965-8ddb-68926f91470d",
"Content-Type" : "application/vnd.microsoft.appconfig.kv+json; charset=utf-8"
},
"Exception" : null
Expand Down
Loading