diff --git a/sdk/appconfiguration/azure-data-appconfiguration/CHANGELOG.md b/sdk/appconfiguration/azure-data-appconfiguration/CHANGELOG.md
index 13b728bb4f15..439571fce0aa 100644
--- a/sdk/appconfiguration/azure-data-appconfiguration/CHANGELOG.md
+++ b/sdk/appconfiguration/azure-data-appconfiguration/CHANGELOG.md
@@ -4,11 +4,43 @@
### Features Added
-### Breaking Changes
+* `models.Snapshot` was added
-### Bugs Fixed
+* `models.OperationDetails` was added
-### Other Changes
+* `AzureAppConfigurationClient` was added
+
+* `models.KeyValueFields` was added
+
+* `implementation.OperationLocationPollingStrategy` was added
+
+* `AzureAppConfigurationServiceVersion` was added
+
+* `models.Label` was added
+
+* `models.Key` was added
+
+* `models.CompositionType` was added
+
+* `models.OperationState` was added
+
+* `implementation.AzureAppConfigurationClientImpl$AzureAppConfigurationClientService` was added
+
+* `models.KeyValue` was added
+
+* `AzureAppConfigurationAsyncClient` was added
+
+* `implementation.SyncOperationLocationPollingStrategy` was added
+
+* `AzureAppConfigurationClientBuilder` was added
+
+* `models.LabelFields` was added
+
+* `implementation.AzureAppConfigurationClientImpl` was added
+
+* `models.KeyValueFilter` was added
+
+* `models.SnapshotStatus` was added
## 1.8.0 (2025-03-12)
diff --git a/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationAsyncClient.java b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationAsyncClient.java
new file mode 100644
index 000000000000..172409ac55f4
--- /dev/null
+++ b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationAsyncClient.java
@@ -0,0 +1,2557 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.data.appconfiguration;
+
+import com.azure.core.annotation.Generated;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceClient;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.exception.ClientAuthenticationException;
+import com.azure.core.exception.HttpResponseException;
+import com.azure.core.exception.ResourceModifiedException;
+import com.azure.core.exception.ResourceNotFoundException;
+import com.azure.core.http.HttpHeaderName;
+import com.azure.core.http.MatchConditions;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.RequestOptions;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.BinaryData;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.data.appconfiguration.implementation.AzureAppConfigurationClientImpl;
+import com.azure.data.appconfiguration.models.Key;
+import com.azure.data.appconfiguration.models.KeyValue;
+import com.azure.data.appconfiguration.models.KeyValueFields;
+import com.azure.data.appconfiguration.models.Label;
+import com.azure.data.appconfiguration.models.LabelFields;
+import com.azure.data.appconfiguration.models.OperationDetails;
+import com.azure.data.appconfiguration.models.Snapshot;
+import com.azure.data.appconfiguration.models.SnapshotFields;
+import com.azure.data.appconfiguration.models.SnapshotStatus;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/**
+ * Initializes a new instance of the asynchronous AzureAppConfigurationClient type.
+ */
+@ServiceClient(builder = AzureAppConfigurationClientBuilder.class, isAsync = true)
+public final class AzureAppConfigurationAsyncClient {
+ @Generated
+ private final AzureAppConfigurationClientImpl serviceClient;
+
+ /**
+ * Initializes an instance of AzureAppConfigurationAsyncClient class.
+ *
+ * @param serviceClient the service client implementation.
+ */
+ @Generated
+ AzureAppConfigurationAsyncClient(AzureAppConfigurationClientImpl serviceClient) {
+ this.serviceClient = serviceClient;
+ }
+
+ /**
+ * Gets a list of keys.
+ *
Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeys(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getKeysAsync(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeysWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkKeysWithResponseAsync(requestOptions);
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeyValues(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getKeyValuesAsync(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeyValuesWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkKeyValuesWithResponseAsync(requestOptions);
+ }
+
+ /**
+ * Gets a single key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getKeyValueWithResponse(String key, String accept,
+ RequestOptions requestOptions) {
+ return this.serviceClient.getKeyValueWithResponseAsync(key, accept, requestOptions);
+ }
+
+ /**
+ * Creates a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to create.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to create.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> putKeyValueWithResponse(String key, String accept,
+ RequestOptions requestOptions) {
+ // Operation 'putKeyValue' can be invoked with multiple content-type. It is difficult to form a correct method
+ // signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.putKeyValueWithResponseAsync(key, accept, requestOptions);
+ }
+
+ /**
+ * Deletes a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to delete.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> deleteKeyValueWithResponse(String key, String accept,
+ RequestOptions requestOptions) {
+ return this.serviceClient.deleteKeyValueWithResponseAsync(key, accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeyValueWithResponse(String key, RequestOptions requestOptions) {
+ return this.serviceClient.checkKeyValueWithResponseAsync(key, requestOptions);
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getSnapshots(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getSnapshotsAsync(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkSnapshotsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkSnapshotsWithResponseAsync(requestOptions);
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value snapshot along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getSnapshotWithResponse(String name, String accept,
+ RequestOptions requestOptions) {
+ return this.serviceClient.getSnapshotWithResponseAsync(name, accept, requestOptions);
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * id: String (Required)
+ * status: String(NotStarted/Running/Succeeded/Failed/Canceled) (Required)
+ * error (Optional): {
+ * code: String (Required)
+ * message: String (Required)
+ * target: String (Optional)
+ * details (Optional): [
+ * (recursive schema, see above)
+ * ]
+ * innererror (Optional): {
+ * code: String (Optional)
+ * innererror (Optional): (recursive schema, see innererror above)
+ * }
+ * }
+ * }
+ * }
+ *
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the state of a long running operation along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getOperationDetailsWithResponse(String snapshot, RequestOptions requestOptions) {
+ return this.serviceClient.getOperationDetailsWithResponseAsync(snapshot, requestOptions);
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link PollerFlux} for polling of a snapshot is a named, immutable subset of an App Configuration
+ * store's key-values.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux beginCreateSnapshot(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ // Operation 'createSnapshot' can be invoked with multiple content-type. It is difficult to form a correct
+ // method signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.beginCreateSnapshotAsync(contentType, name, accept, entity, requestOptions);
+ }
+
+ /**
+ * Updates the state of a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/merge-patch+json", "application/json".
+ * @param name The name of the key-value snapshot to update.
+ * @param accept The accept parameter.
+ * @param entity The parameters used to update the snapshot.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> updateSnapshotWithResponse(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ // Operation 'updateSnapshot' can be invoked with multiple content-type. It is difficult to form a correct
+ // method signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.updateSnapshotWithResponseAsync(contentType, name, accept, entity, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkSnapshotWithResponse(String name, RequestOptions requestOptions) {
+ return this.serviceClient.checkSnapshotWithResponseAsync(name, requestOptions);
+ }
+
+ /**
+ * Gets a list of labels.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned labels.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of labels as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getLabels(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getLabelsAsync(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned labels.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkLabelsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkLabelsWithResponseAsync(requestOptions);
+ }
+
+ /**
+ * Locks a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label, if any, of the key-value to lock.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> putLockWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.putLockWithResponseAsync(key, accept, requestOptions);
+ }
+
+ /**
+ * Unlocks a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label, if any, of the key-value to unlock.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> deleteLockWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.deleteLockWithResponseAsync(key, accept, requestOptions);
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value revisions as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getRevisions(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getRevisionsAsync(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkRevisionsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkRevisionsWithResponseAsync(requestOptions);
+ }
+
+ /**
+ * Gets a list of keys.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned keys.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of keys as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeys(String accept, String name, String after, String syncToken, String acceptDatetime) {
+ // Generated convenience method for getKeys
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ PagedFlux pagedFluxResponse = getKeys(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Key.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Gets a list of keys.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of keys as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeys(String accept) {
+ // Generated convenience method for getKeys
+ RequestOptions requestOptions = new RequestOptions();
+ PagedFlux pagedFluxResponse = getKeys(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Key.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name A filter for the name of the returned keys.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeys(String name, String after, String syncToken, String acceptDatetime) {
+ // Generated convenience method for checkKeysWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ return checkKeysWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeys() {
+ // Generated convenience method for checkKeysWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkKeysWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Gets a list of key-values.
+ *
+ * @param accept The accept parameter.
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param snapshot A filter used get key-values for a snapshot. The value should be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-values as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeyValues(String accept, String key, String label, String syncToken, String after,
+ String acceptDatetime, List select, String snapshot, List tags,
+ MatchConditions matchConditions) {
+ // Generated convenience method for getKeyValues
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (snapshot != null) {
+ requestOptions.addQueryParam("snapshot", snapshot, false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ PagedFlux pagedFluxResponse = getKeyValues(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Gets a list of key-values.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-values as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeyValues(String accept) {
+ // Generated convenience method for getKeyValues
+ RequestOptions requestOptions = new RequestOptions();
+ PagedFlux pagedFluxResponse = getKeyValues(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param snapshot A filter used get key-values for a snapshot. The value should be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeyValues(String key, String label, String syncToken, String after, String acceptDatetime,
+ List select, String snapshot, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for checkKeyValuesWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (snapshot != null) {
+ requestOptions.addQueryParam("snapshot", snapshot, false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return checkKeyValuesWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeyValues() {
+ // Generated convenience method for checkKeyValuesWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkKeyValuesWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Gets a single key-value.
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param label The label of the key-value to retrieve.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getKeyValue(String key, String accept, String label, List select,
+ String syncToken, String acceptDatetime, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for getKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return getKeyValueWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Gets a single key-value.
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getKeyValue(String key, String accept) {
+ // Generated convenience method for getKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getKeyValueWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Deletes a key-value.
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param label The label of the key-value to delete.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param ifMatch Used to perform an operation only if the targeted resource's etag matches the
+ * value provided.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteKeyValue(String key, String accept, String label, String syncToken, String ifMatch) {
+ // Generated convenience method for deleteKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ return deleteKeyValueWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Deletes a key-value.
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteKeyValue(String key, String accept) {
+ // Generated convenience method for deleteKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return deleteKeyValueWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param label The label of the key-value to retrieve.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeyValue(String key, String label, String syncToken, String acceptDatetime,
+ List select, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for checkKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return checkKeyValueWithResponse(key, requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key The key of the key-value to retrieve.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkKeyValue(String key) {
+ // Generated convenience method for checkKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkKeyValueWithResponse(key, requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned snapshots.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param status Used to filter returned snapshots by their status property.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value snapshots as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getSnapshots(String accept, String name, String after, List select,
+ List status, String syncToken) {
+ // Generated convenience method for getSnapshots
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (status != null) {
+ requestOptions.addQueryParam("status",
+ status.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ PagedFlux pagedFluxResponse = getSnapshots(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Snapshot.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value snapshots as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getSnapshots(String accept) {
+ // Generated convenience method for getSnapshots
+ RequestOptions requestOptions = new RequestOptions();
+ PagedFlux pagedFluxResponse = getSnapshots(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Snapshot.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkSnapshots(String syncToken, String after) {
+ // Generated convenience method for checkSnapshotsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ return checkSnapshotsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkSnapshots() {
+ // Generated convenience method for checkSnapshotsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkSnapshotsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value snapshot on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getSnapshot(String name, String accept, List select, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for getSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return getSnapshotWithResponse(name, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(Snapshot.class));
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value snapshot on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getSnapshot(String name, String accept) {
+ // Generated convenience method for getSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getSnapshotWithResponse(name, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(Snapshot.class));
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the state of a long running operation on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getOperationDetails(String snapshot) {
+ // Generated convenience method for getOperationDetailsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getOperationDetailsWithResponse(snapshot, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(OperationDetails.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkSnapshot(String name, String syncToken, MatchConditions matchConditions) {
+ // Generated convenience method for checkSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return checkSnapshotWithResponse(name, requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkSnapshot(String name) {
+ // Generated convenience method for checkSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkSnapshotWithResponse(name, requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Gets a list of labels.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned labels.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of labels as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getLabels(String accept, String name, String syncToken, String after, String acceptDatetime,
+ List select) {
+ // Generated convenience method for getLabels
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ PagedFlux pagedFluxResponse = getLabels(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Label.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Gets a list of labels.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of labels as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getLabels(String accept) {
+ // Generated convenience method for getLabels
+ RequestOptions requestOptions = new RequestOptions();
+ PagedFlux pagedFluxResponse = getLabels(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(Label.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name A filter for the name of the returned labels.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkLabels(String name, String syncToken, String after, String acceptDatetime,
+ List select) {
+ // Generated convenience method for checkLabelsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ return checkLabelsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkLabels() {
+ // Generated convenience method for checkLabelsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkLabelsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Locks a key-value.
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @param label The label, if any, of the key-value to lock.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono putLock(String key, String accept, String label, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for putLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return putLockWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Locks a key-value.
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono putLock(String key, String accept) {
+ // Generated convenience method for putLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return putLockWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Unlocks a key-value.
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @param label The label, if any, of the key-value to unlock.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteLock(String key, String accept, String label, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for deleteLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return deleteLockWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Unlocks a key-value.
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings on successful completion of {@link Mono}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteLock(String key, String accept) {
+ // Generated convenience method for deleteLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return deleteLockWithResponse(key, accept, requestOptions).flatMap(FluxUtil::toMono)
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class));
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ *
+ * @param accept The accept parameter.
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value revisions as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getRevisions(String accept, String key, String label, String syncToken, String after,
+ String acceptDatetime, List select, List tags) {
+ // Generated convenience method for getRevisions
+ RequestOptions requestOptions = new RequestOptions();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ PagedFlux pagedFluxResponse = getRevisions(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value revisions as paginated response with {@link PagedFlux}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getRevisions(String accept) {
+ // Generated convenience method for getRevisions
+ RequestOptions requestOptions = new RequestOptions();
+ PagedFlux pagedFluxResponse = getRevisions(accept, requestOptions);
+ return PagedFlux.create(() -> (continuationTokenParam, pageSizeParam) -> {
+ Flux> flux = (continuationTokenParam == null)
+ ? pagedFluxResponse.byPage().take(1)
+ : pagedFluxResponse.byPage(continuationTokenParam).take(1);
+ return flux.map(pagedResponse -> new PagedResponseBase(pagedResponse.getRequest(),
+ pagedResponse.getStatusCode(), pagedResponse.getHeaders(),
+ pagedResponse.getValue()
+ .stream()
+ .map(protocolMethodData -> protocolMethodData.toObject(KeyValue.class))
+ .collect(Collectors.toList()),
+ pagedResponse.getContinuationToken(), null));
+ });
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkRevisions(String key, String label, String syncToken, String after, String acceptDatetime,
+ List select, List tags) {
+ // Generated convenience method for checkRevisionsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ return checkRevisionsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono checkRevisions() {
+ // Generated convenience method for checkRevisionsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return checkRevisionsWithResponse(requestOptions).flatMap(FluxUtil::toMono);
+ }
+}
diff --git a/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClient.java b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClient.java
new file mode 100644
index 000000000000..99422b85c34b
--- /dev/null
+++ b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClient.java
@@ -0,0 +1,2409 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.data.appconfiguration;
+
+import com.azure.core.annotation.Generated;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceClient;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.exception.ClientAuthenticationException;
+import com.azure.core.exception.HttpResponseException;
+import com.azure.core.exception.ResourceModifiedException;
+import com.azure.core.exception.ResourceNotFoundException;
+import com.azure.core.http.HttpHeaderName;
+import com.azure.core.http.MatchConditions;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.RequestOptions;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.BinaryData;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.data.appconfiguration.implementation.AzureAppConfigurationClientImpl;
+import com.azure.data.appconfiguration.models.Key;
+import com.azure.data.appconfiguration.models.KeyValue;
+import com.azure.data.appconfiguration.models.KeyValueFields;
+import com.azure.data.appconfiguration.models.Label;
+import com.azure.data.appconfiguration.models.LabelFields;
+import com.azure.data.appconfiguration.models.OperationDetails;
+import com.azure.data.appconfiguration.models.Snapshot;
+import com.azure.data.appconfiguration.models.SnapshotFields;
+import com.azure.data.appconfiguration.models.SnapshotStatus;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * Initializes a new instance of the synchronous AzureAppConfigurationClient type.
+ */
+@ServiceClient(builder = AzureAppConfigurationClientBuilder.class)
+public final class AzureAppConfigurationClient {
+ @Generated
+ private final AzureAppConfigurationClientImpl serviceClient;
+
+ /**
+ * Initializes an instance of AzureAppConfigurationClient class.
+ *
+ * @param serviceClient the service client implementation.
+ */
+ @Generated
+ AzureAppConfigurationClient(AzureAppConfigurationClientImpl serviceClient) {
+ this.serviceClient = serviceClient;
+ }
+
+ /**
+ * Gets a list of keys.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeys(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getKeys(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeysWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkKeysWithResponse(requestOptions);
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeyValues(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getKeyValues(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeyValuesWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkKeyValuesWithResponse(requestOptions);
+ }
+
+ /**
+ * Gets a single key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getKeyValueWithResponse(key, accept, requestOptions);
+ }
+
+ /**
+ * Creates a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to create.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to create.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response putKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ // Operation 'putKeyValue' can be invoked with multiple content-type. It is difficult to form a correct method
+ // signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.putKeyValueWithResponse(key, accept, requestOptions);
+ }
+
+ /**
+ * Deletes a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to delete.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.deleteKeyValueWithResponse(key, accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeyValueWithResponse(String key, RequestOptions requestOptions) {
+ return this.serviceClient.checkKeyValueWithResponse(key, requestOptions);
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getSnapshots(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getSnapshots(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkSnapshotsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkSnapshotsWithResponse(requestOptions);
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value snapshot along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getSnapshotWithResponse(String name, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getSnapshotWithResponse(name, accept, requestOptions);
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * id: String (Required)
+ * status: String(NotStarted/Running/Succeeded/Failed/Canceled) (Required)
+ * error (Optional): {
+ * code: String (Required)
+ * message: String (Required)
+ * target: String (Optional)
+ * details (Optional): [
+ * (recursive schema, see above)
+ * ]
+ * innererror (Optional): {
+ * code: String (Optional)
+ * innererror (Optional): (recursive schema, see innererror above)
+ * }
+ * }
+ * }
+ * }
+ *
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the state of a long running operation along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getOperationDetailsWithResponse(String snapshot, RequestOptions requestOptions) {
+ return this.serviceClient.getOperationDetailsWithResponse(snapshot, requestOptions);
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link SyncPoller} for polling of a snapshot is a named, immutable subset of an App Configuration
+ * store's key-values.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller beginCreateSnapshot(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ // Operation 'createSnapshot' can be invoked with multiple content-type. It is difficult to form a correct
+ // method signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.beginCreateSnapshot(contentType, name, accept, entity, requestOptions);
+ }
+
+ /**
+ * Updates the state of a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/merge-patch+json", "application/json".
+ * @param name The name of the key-value snapshot to update.
+ * @param accept The accept parameter.
+ * @param entity The parameters used to update the snapshot.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response updateSnapshotWithResponse(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ // Operation 'updateSnapshot' can be invoked with multiple content-type. It is difficult to form a correct
+ // method signature for convenience API, and hence the convenience API is not generated.
+ return this.serviceClient.updateSnapshotWithResponse(contentType, name, accept, entity, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkSnapshotWithResponse(String name, RequestOptions requestOptions) {
+ return this.serviceClient.checkSnapshotWithResponse(name, requestOptions);
+ }
+
+ /**
+ * Gets a list of labels.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned labels.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of labels as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getLabels(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getLabels(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned labels.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkLabelsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkLabelsWithResponse(requestOptions);
+ }
+
+ /**
+ * Locks a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label, if any, of the key-value to lock.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response putLockWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.putLockWithResponse(key, accept, requestOptions);
+ }
+
+ /**
+ * Unlocks a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label, if any, of the key-value to unlock.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteLockWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return this.serviceClient.deleteLockWithResponse(key, accept, requestOptions);
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value revisions as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getRevisions(String accept, RequestOptions requestOptions) {
+ return this.serviceClient.getRevisions(accept, requestOptions);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkRevisionsWithResponse(RequestOptions requestOptions) {
+ return this.serviceClient.checkRevisionsWithResponse(requestOptions);
+ }
+
+ /**
+ * Gets a list of keys.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned keys.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of keys as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeys(String accept, String name, String after, String syncToken,
+ String acceptDatetime) {
+ // Generated convenience method for getKeys
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ return serviceClient.getKeys(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Key.class));
+ }
+
+ /**
+ * Gets a list of keys.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of keys as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeys(String accept) {
+ // Generated convenience method for getKeys
+ RequestOptions requestOptions = new RequestOptions();
+ return serviceClient.getKeys(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Key.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name A filter for the name of the returned keys.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeys(String name, String after, String syncToken, String acceptDatetime) {
+ // Generated convenience method for checkKeysWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ checkKeysWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeys() {
+ // Generated convenience method for checkKeysWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkKeysWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Gets a list of key-values.
+ *
+ * @param accept The accept parameter.
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param snapshot A filter used get key-values for a snapshot. The value should be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-values as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeyValues(String accept, String key, String label, String syncToken, String after,
+ String acceptDatetime, List select, String snapshot, List tags,
+ MatchConditions matchConditions) {
+ // Generated convenience method for getKeyValues
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (snapshot != null) {
+ requestOptions.addQueryParam("snapshot", snapshot, false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return serviceClient.getKeyValues(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(KeyValue.class));
+ }
+
+ /**
+ * Gets a list of key-values.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-values as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeyValues(String accept) {
+ // Generated convenience method for getKeyValues
+ RequestOptions requestOptions = new RequestOptions();
+ return serviceClient.getKeyValues(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(KeyValue.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param snapshot A filter used get key-values for a snapshot. The value should be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeyValues(String key, String label, String syncToken, String after, String acceptDatetime,
+ List select, String snapshot, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for checkKeyValuesWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (snapshot != null) {
+ requestOptions.addQueryParam("snapshot", snapshot, false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ checkKeyValuesWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeyValues() {
+ // Generated convenience method for checkKeyValuesWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkKeyValuesWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Gets a single key-value.
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param label The label of the key-value to retrieve.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue getKeyValue(String key, String accept, String label, List select, String syncToken,
+ String acceptDatetime, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for getKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return getKeyValueWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Gets a single key-value.
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue getKeyValue(String key, String accept) {
+ // Generated convenience method for getKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getKeyValueWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Deletes a key-value.
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param label The label of the key-value to delete.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param ifMatch Used to perform an operation only if the targeted resource's etag matches the
+ * value provided.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue deleteKeyValue(String key, String accept, String label, String syncToken, String ifMatch) {
+ // Generated convenience method for deleteKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ return deleteKeyValueWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Deletes a key-value.
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue deleteKeyValue(String key, String accept) {
+ // Generated convenience method for deleteKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return deleteKeyValueWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param label The label of the key-value to retrieve.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeyValue(String key, String label, String syncToken, String acceptDatetime,
+ List select, List tags, MatchConditions matchConditions) {
+ // Generated convenience method for checkKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ checkKeyValueWithResponse(key, requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key The key of the key-value to retrieve.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkKeyValue(String key) {
+ // Generated convenience method for checkKeyValueWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkKeyValueWithResponse(key, requestOptions).getValue();
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned snapshots.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param status Used to filter returned snapshots by their status property.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value snapshots as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getSnapshots(String accept, String name, String after, List select,
+ List status, String syncToken) {
+ // Generated convenience method for getSnapshots
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (status != null) {
+ requestOptions.addQueryParam("status",
+ status.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ return serviceClient.getSnapshots(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Snapshot.class));
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value snapshots as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getSnapshots(String accept) {
+ // Generated convenience method for getSnapshots
+ RequestOptions requestOptions = new RequestOptions();
+ return serviceClient.getSnapshots(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Snapshot.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkSnapshots(String syncToken, String after) {
+ // Generated convenience method for checkSnapshotsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ checkSnapshotsWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkSnapshots() {
+ // Generated convenience method for checkSnapshotsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkSnapshotsWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value snapshot.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Snapshot getSnapshot(String name, String accept, List select, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for getSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return getSnapshotWithResponse(name, accept, requestOptions).getValue().toObject(Snapshot.class);
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a single key-value snapshot.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Snapshot getSnapshot(String name, String accept) {
+ // Generated convenience method for getSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getSnapshotWithResponse(name, accept, requestOptions).getValue().toObject(Snapshot.class);
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the state of a long running operation.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public OperationDetails getOperationDetails(String snapshot) {
+ // Generated convenience method for getOperationDetailsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return getOperationDetailsWithResponse(snapshot, requestOptions).getValue().toObject(OperationDetails.class);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkSnapshot(String name, String syncToken, MatchConditions matchConditions) {
+ // Generated convenience method for checkSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ checkSnapshotWithResponse(name, requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkSnapshot(String name) {
+ // Generated convenience method for checkSnapshotWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkSnapshotWithResponse(name, requestOptions).getValue();
+ }
+
+ /**
+ * Gets a list of labels.
+ *
+ * @param accept The accept parameter.
+ * @param name A filter for the name of the returned labels.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of labels as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getLabels(String accept, String name, String syncToken, String after,
+ String acceptDatetime, List select) {
+ // Generated convenience method for getLabels
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ return serviceClient.getLabels(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Label.class));
+ }
+
+ /**
+ * Gets a list of labels.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of labels as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getLabels(String accept) {
+ // Generated convenience method for getLabels
+ RequestOptions requestOptions = new RequestOptions();
+ return serviceClient.getLabels(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(Label.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param name A filter for the name of the returned labels.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkLabels(String name, String syncToken, String after, String acceptDatetime,
+ List select) {
+ // Generated convenience method for checkLabelsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (name != null) {
+ requestOptions.addQueryParam("name", name, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ checkLabelsWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkLabels() {
+ // Generated convenience method for checkLabelsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkLabelsWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Locks a key-value.
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @param label The label, if any, of the key-value to lock.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue putLock(String key, String accept, String label, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for putLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return putLockWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Locks a key-value.
+ *
+ * @param key The key of the key-value to lock.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue putLock(String key, String accept) {
+ // Generated convenience method for putLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return putLockWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Unlocks a key-value.
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @param label The label, if any, of the key-value to unlock.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param matchConditions Specifies HTTP options for conditional requests.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue deleteLock(String key, String accept, String label, String syncToken,
+ MatchConditions matchConditions) {
+ // Generated convenience method for deleteLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ String ifMatch = matchConditions == null ? null : matchConditions.getIfMatch();
+ String ifNoneMatch = matchConditions == null ? null : matchConditions.getIfNoneMatch();
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (ifMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_MATCH, ifMatch);
+ }
+ if (ifNoneMatch != null) {
+ requestOptions.setHeader(HttpHeaderName.IF_NONE_MATCH, ifNoneMatch);
+ }
+ return deleteLockWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Unlocks a key-value.
+ *
+ * @param key The key of the key-value to unlock.
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a key-value pair representing application settings.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public KeyValue deleteLock(String key, String accept) {
+ // Generated convenience method for deleteLockWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ return deleteLockWithResponse(key, accept, requestOptions).getValue().toObject(KeyValue.class);
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ *
+ * @param accept The accept parameter.
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value revisions as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getRevisions(String accept, String key, String label, String syncToken, String after,
+ String acceptDatetime, List select, List tags) {
+ // Generated convenience method for getRevisions
+ RequestOptions requestOptions = new RequestOptions();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ return serviceClient.getRevisions(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(KeyValue.class));
+ }
+
+ /**
+ * Gets a list of key-value revisions.
+ *
+ * @param accept The accept parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of key-value revisions as paginated response with {@link PagedIterable}.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getRevisions(String accept) {
+ // Generated convenience method for getRevisions
+ RequestOptions requestOptions = new RequestOptions();
+ return serviceClient.getRevisions(accept, requestOptions)
+ .mapPage(bodyItemValue -> bodyItemValue.toObject(KeyValue.class));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @param key A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param label A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @param syncToken Used to guarantee real-time consistency between requests.
+ * @param after Instructs the server to return elements that appear after the element referred
+ * to by the specified token.
+ * @param acceptDatetime Requests the server to respond with the state of the resource at the specified
+ * time.
+ * @param select Used to select what fields are present in the returned resource(s).
+ * @param tags A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/restapirevisions.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkRevisions(String key, String label, String syncToken, String after, String acceptDatetime,
+ List select, List tags) {
+ // Generated convenience method for checkRevisionsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ if (key != null) {
+ requestOptions.addQueryParam("key", key, false);
+ }
+ if (label != null) {
+ requestOptions.addQueryParam("label", label, false);
+ }
+ if (syncToken != null) {
+ requestOptions.setHeader(HttpHeaderName.fromString("Sync-Token"), syncToken);
+ }
+ if (after != null) {
+ requestOptions.addQueryParam("After", after, false);
+ }
+ if (acceptDatetime != null) {
+ requestOptions.setHeader(HttpHeaderName.ACCEPT_DATETIME, acceptDatetime);
+ }
+ if (select != null) {
+ requestOptions.addQueryParam("$Select",
+ select.stream()
+ .map(paramItemValue -> Objects.toString(paramItemValue, ""))
+ .collect(Collectors.joining(",")),
+ false);
+ }
+ if (tags != null) {
+ for (String paramItemValue : tags) {
+ if (paramItemValue != null) {
+ requestOptions.addQueryParam("tags", paramItemValue, false);
+ }
+ }
+ }
+ checkRevisionsWithResponse(requestOptions).getValue();
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ *
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @Generated
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void checkRevisions() {
+ // Generated convenience method for checkRevisionsWithResponse
+ RequestOptions requestOptions = new RequestOptions();
+ checkRevisionsWithResponse(requestOptions).getValue();
+ }
+}
diff --git a/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClientBuilder.java b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClientBuilder.java
new file mode 100644
index 000000000000..269e8d3aa14d
--- /dev/null
+++ b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClientBuilder.java
@@ -0,0 +1,356 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.data.appconfiguration;
+
+import com.azure.core.annotation.Generated;
+import com.azure.core.annotation.ServiceClientBuilder;
+import com.azure.core.client.traits.ConfigurationTrait;
+import com.azure.core.client.traits.EndpointTrait;
+import com.azure.core.client.traits.HttpTrait;
+import com.azure.core.client.traits.KeyCredentialTrait;
+import com.azure.core.client.traits.TokenCredentialTrait;
+import com.azure.core.credential.KeyCredential;
+import com.azure.core.credential.TokenCredential;
+import com.azure.core.http.HttpClient;
+import com.azure.core.http.HttpHeaders;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
+import com.azure.core.http.policy.AddDatePolicy;
+import com.azure.core.http.policy.AddHeadersFromContextPolicy;
+import com.azure.core.http.policy.AddHeadersPolicy;
+import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
+import com.azure.core.http.policy.HttpLogOptions;
+import com.azure.core.http.policy.HttpLoggingPolicy;
+import com.azure.core.http.policy.HttpPipelinePolicy;
+import com.azure.core.http.policy.HttpPolicyProviders;
+import com.azure.core.http.policy.KeyCredentialPolicy;
+import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryOptions;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.util.ClientOptions;
+import com.azure.core.util.Configuration;
+import com.azure.core.util.CoreUtils;
+import com.azure.core.util.builder.ClientBuilderUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.core.util.serializer.JacksonAdapter;
+import com.azure.data.appconfiguration.implementation.AzureAppConfigurationClientImpl;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * A builder for creating a new instance of the AzureAppConfigurationClient type.
+ */
+@ServiceClientBuilder(serviceClients = { AzureAppConfigurationClient.class, AzureAppConfigurationAsyncClient.class })
+public final class AzureAppConfigurationClientBuilder implements HttpTrait,
+ ConfigurationTrait, TokenCredentialTrait,
+ KeyCredentialTrait, EndpointTrait {
+ @Generated
+ private static final String SDK_NAME = "name";
+
+ @Generated
+ private static final String SDK_VERSION = "version";
+
+ @Generated
+ private static final String[] DEFAULT_SCOPES = new String[] { "https://azconfig.io/.default" };
+
+ @Generated
+ private static final Map PROPERTIES
+ = CoreUtils.getProperties("azure-data-appconfiguration.properties");
+
+ @Generated
+ private final List pipelinePolicies;
+
+ /**
+ * Create an instance of the AzureAppConfigurationClientBuilder.
+ */
+ @Generated
+ public AzureAppConfigurationClientBuilder() {
+ this.pipelinePolicies = new ArrayList<>();
+ }
+
+ /*
+ * The HTTP pipeline to send requests through.
+ */
+ @Generated
+ private HttpPipeline pipeline;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder pipeline(HttpPipeline pipeline) {
+ if (this.pipeline != null && pipeline == null) {
+ LOGGER.atInfo().log("HttpPipeline is being set to 'null' when it was previously configured.");
+ }
+ this.pipeline = pipeline;
+ return this;
+ }
+
+ /*
+ * The HTTP client used to send the request.
+ */
+ @Generated
+ private HttpClient httpClient;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder httpClient(HttpClient httpClient) {
+ this.httpClient = httpClient;
+ return this;
+ }
+
+ /*
+ * The logging configuration for HTTP requests and responses.
+ */
+ @Generated
+ private HttpLogOptions httpLogOptions;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder httpLogOptions(HttpLogOptions httpLogOptions) {
+ this.httpLogOptions = httpLogOptions;
+ return this;
+ }
+
+ /*
+ * The client options such as application ID and custom headers to set on a request.
+ */
+ @Generated
+ private ClientOptions clientOptions;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder clientOptions(ClientOptions clientOptions) {
+ this.clientOptions = clientOptions;
+ return this;
+ }
+
+ /*
+ * The retry options to configure retry policy for failed requests.
+ */
+ @Generated
+ private RetryOptions retryOptions;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder retryOptions(RetryOptions retryOptions) {
+ this.retryOptions = retryOptions;
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder addPolicy(HttpPipelinePolicy customPolicy) {
+ Objects.requireNonNull(customPolicy, "'customPolicy' cannot be null.");
+ pipelinePolicies.add(customPolicy);
+ return this;
+ }
+
+ /*
+ * The configuration store that is used during construction of the service client.
+ */
+ @Generated
+ private Configuration configuration;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder configuration(Configuration configuration) {
+ this.configuration = configuration;
+ return this;
+ }
+
+ /*
+ * The TokenCredential used for authentication.
+ */
+ @Generated
+ private TokenCredential tokenCredential;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder credential(TokenCredential tokenCredential) {
+ this.tokenCredential = tokenCredential;
+ return this;
+ }
+
+ /*
+ * The KeyCredential used for authentication.
+ */
+ @Generated
+ private KeyCredential keyCredential;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder credential(KeyCredential keyCredential) {
+ this.keyCredential = keyCredential;
+ return this;
+ }
+
+ /*
+ * The service endpoint
+ */
+ @Generated
+ private String endpoint;
+
+ /**
+ * {@inheritDoc}.
+ */
+ @Generated
+ @Override
+ public AzureAppConfigurationClientBuilder endpoint(String endpoint) {
+ this.endpoint = endpoint;
+ return this;
+ }
+
+ /*
+ * Service version
+ */
+ @Generated
+ private AzureAppConfigurationServiceVersion serviceVersion;
+
+ /**
+ * Sets Service version.
+ *
+ * @param serviceVersion the serviceVersion value.
+ * @return the AzureAppConfigurationClientBuilder.
+ */
+ @Generated
+ public AzureAppConfigurationClientBuilder serviceVersion(AzureAppConfigurationServiceVersion serviceVersion) {
+ this.serviceVersion = serviceVersion;
+ return this;
+ }
+
+ /*
+ * The retry policy that will attempt to retry failed requests, if applicable.
+ */
+ @Generated
+ private RetryPolicy retryPolicy;
+
+ /**
+ * Sets The retry policy that will attempt to retry failed requests, if applicable.
+ *
+ * @param retryPolicy the retryPolicy value.
+ * @return the AzureAppConfigurationClientBuilder.
+ */
+ @Generated
+ public AzureAppConfigurationClientBuilder retryPolicy(RetryPolicy retryPolicy) {
+ this.retryPolicy = retryPolicy;
+ return this;
+ }
+
+ /**
+ * Builds an instance of AzureAppConfigurationClientImpl with the provided parameters.
+ *
+ * @return an instance of AzureAppConfigurationClientImpl.
+ */
+ @Generated
+ private AzureAppConfigurationClientImpl buildInnerClient() {
+ this.validateClient();
+ HttpPipeline localPipeline = (pipeline != null) ? pipeline : createHttpPipeline();
+ AzureAppConfigurationServiceVersion localServiceVersion
+ = (serviceVersion != null) ? serviceVersion : AzureAppConfigurationServiceVersion.getLatest();
+ AzureAppConfigurationClientImpl client = new AzureAppConfigurationClientImpl(localPipeline,
+ JacksonAdapter.createDefaultSerializerAdapter(), this.endpoint, localServiceVersion);
+ return client;
+ }
+
+ @Generated
+ private void validateClient() {
+ // This method is invoked from 'buildInnerClient'/'buildClient' method.
+ // Developer can customize this method, to validate that the necessary conditions are met for the new client.
+ Objects.requireNonNull(endpoint, "'endpoint' cannot be null.");
+ }
+
+ @Generated
+ private HttpPipeline createHttpPipeline() {
+ Configuration buildConfiguration
+ = (configuration == null) ? Configuration.getGlobalConfiguration() : configuration;
+ HttpLogOptions localHttpLogOptions = this.httpLogOptions == null ? new HttpLogOptions() : this.httpLogOptions;
+ ClientOptions localClientOptions = this.clientOptions == null ? new ClientOptions() : this.clientOptions;
+ List policies = new ArrayList<>();
+ String clientName = PROPERTIES.getOrDefault(SDK_NAME, "UnknownName");
+ String clientVersion = PROPERTIES.getOrDefault(SDK_VERSION, "UnknownVersion");
+ String applicationId = CoreUtils.getApplicationId(localClientOptions, localHttpLogOptions);
+ policies.add(new UserAgentPolicy(applicationId, clientName, clientVersion, buildConfiguration));
+ policies.add(new RequestIdPolicy());
+ policies.add(new AddHeadersFromContextPolicy());
+ HttpHeaders headers = CoreUtils.createHttpHeadersFromClientOptions(localClientOptions);
+ if (headers != null) {
+ policies.add(new AddHeadersPolicy(headers));
+ }
+ this.pipelinePolicies.stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+ .forEach(p -> policies.add(p));
+ HttpPolicyProviders.addBeforeRetryPolicies(policies);
+ policies.add(ClientBuilderUtil.validateAndGetRetryPolicy(retryPolicy, retryOptions, new RetryPolicy()));
+ policies.add(new AddDatePolicy());
+ if (keyCredential != null) {
+ policies.add(new KeyCredentialPolicy("Connection String", keyCredential));
+ }
+ if (tokenCredential != null) {
+ policies.add(new BearerTokenAuthenticationPolicy(tokenCredential, DEFAULT_SCOPES));
+ }
+ this.pipelinePolicies.stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+ .forEach(p -> policies.add(p));
+ HttpPolicyProviders.addAfterRetryPolicies(policies);
+ policies.add(new HttpLoggingPolicy(localHttpLogOptions));
+ HttpPipeline httpPipeline = new HttpPipelineBuilder().policies(policies.toArray(new HttpPipelinePolicy[0]))
+ .httpClient(httpClient)
+ .clientOptions(localClientOptions)
+ .build();
+ return httpPipeline;
+ }
+
+ /**
+ * Builds an instance of AzureAppConfigurationAsyncClient class.
+ *
+ * @return an instance of AzureAppConfigurationAsyncClient.
+ */
+ @Generated
+ public AzureAppConfigurationAsyncClient buildAsyncClient() {
+ return new AzureAppConfigurationAsyncClient(buildInnerClient());
+ }
+
+ /**
+ * Builds an instance of AzureAppConfigurationClient class.
+ *
+ * @return an instance of AzureAppConfigurationClient.
+ */
+ @Generated
+ public AzureAppConfigurationClient buildClient() {
+ return new AzureAppConfigurationClient(buildInnerClient());
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(AzureAppConfigurationClientBuilder.class);
+}
diff --git a/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationServiceVersion.java b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationServiceVersion.java
new file mode 100644
index 000000000000..e033f44e0af7
--- /dev/null
+++ b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationServiceVersion.java
@@ -0,0 +1,45 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.data.appconfiguration;
+
+import com.azure.core.util.ServiceVersion;
+
+/**
+ * Service version of AzureAppConfigurationClient.
+ */
+public enum AzureAppConfigurationServiceVersion implements ServiceVersion {
+ /**
+ * Enum value 2023-11-01.
+ */
+ V2023_11_01("2023-11-01"),
+
+ /**
+ * Enum value 2024-09-01.
+ */
+ V2024_09_01("2024-09-01");
+
+ private final String version;
+
+ AzureAppConfigurationServiceVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public String getVersion() {
+ return this.version;
+ }
+
+ /**
+ * Gets the latest service version supported by this client library.
+ *
+ * @return The latest {@link AzureAppConfigurationServiceVersion}.
+ */
+ public static AzureAppConfigurationServiceVersion getLatest() {
+ return V2024_09_01;
+ }
+}
diff --git a/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/implementation/AzureAppConfigurationClientImpl.java b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/implementation/AzureAppConfigurationClientImpl.java
new file mode 100644
index 000000000000..31d2b7ee4f20
--- /dev/null
+++ b/sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/implementation/AzureAppConfigurationClientImpl.java
@@ -0,0 +1,4456 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.data.appconfiguration.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.Head;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.exception.ClientAuthenticationException;
+import com.azure.core.exception.HttpResponseException;
+import com.azure.core.exception.ResourceModifiedException;
+import com.azure.core.exception.ResourceNotFoundException;
+import com.azure.core.http.HttpHeaderName;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.RequestOptions;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.util.BinaryData;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.DefaultPollingStrategy;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.PollingStrategyOptions;
+import com.azure.core.util.polling.SyncDefaultPollingStrategy;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.core.util.serializer.JacksonAdapter;
+import com.azure.core.util.serializer.SerializerAdapter;
+import com.azure.core.util.serializer.TypeReference;
+import com.azure.data.appconfiguration.AzureAppConfigurationServiceVersion;
+import java.time.Duration;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+import reactor.core.publisher.Mono;
+
+/**
+ * Initializes a new instance of the AzureAppConfigurationClient type.
+ */
+public final class AzureAppConfigurationClientImpl {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final AzureAppConfigurationClientService service;
+
+ /**
+ */
+ private final String endpoint;
+
+ /**
+ * Gets.
+ *
+ * @return the endpoint value.
+ */
+ public String getEndpoint() {
+ return this.endpoint;
+ }
+
+ /**
+ * Service version.
+ */
+ private final AzureAppConfigurationServiceVersion serviceVersion;
+
+ /**
+ * Gets Service version.
+ *
+ * @return the serviceVersion value.
+ */
+ public AzureAppConfigurationServiceVersion getServiceVersion() {
+ return this.serviceVersion;
+ }
+
+ /**
+ * The HTTP pipeline to send requests through.
+ */
+ private final HttpPipeline httpPipeline;
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ public HttpPipeline getHttpPipeline() {
+ return this.httpPipeline;
+ }
+
+ /**
+ * The serializer to serialize an object into a string.
+ */
+ private final SerializerAdapter serializerAdapter;
+
+ /**
+ * Gets The serializer to serialize an object into a string.
+ *
+ * @return the serializerAdapter value.
+ */
+ public SerializerAdapter getSerializerAdapter() {
+ return this.serializerAdapter;
+ }
+
+ /**
+ * Initializes an instance of AzureAppConfigurationClient client.
+ *
+ * @param endpoint
+ * @param serviceVersion Service version.
+ */
+ public AzureAppConfigurationClientImpl(String endpoint, AzureAppConfigurationServiceVersion serviceVersion) {
+ this(new HttpPipelineBuilder().policies(new UserAgentPolicy(), new RetryPolicy()).build(),
+ JacksonAdapter.createDefaultSerializerAdapter(), endpoint, serviceVersion);
+ }
+
+ /**
+ * Initializes an instance of AzureAppConfigurationClient client.
+ *
+ * @param httpPipeline The HTTP pipeline to send requests through.
+ * @param endpoint
+ * @param serviceVersion Service version.
+ */
+ public AzureAppConfigurationClientImpl(HttpPipeline httpPipeline, String endpoint,
+ AzureAppConfigurationServiceVersion serviceVersion) {
+ this(httpPipeline, JacksonAdapter.createDefaultSerializerAdapter(), endpoint, serviceVersion);
+ }
+
+ /**
+ * Initializes an instance of AzureAppConfigurationClient client.
+ *
+ * @param httpPipeline The HTTP pipeline to send requests through.
+ * @param serializerAdapter The serializer to serialize an object into a string.
+ * @param endpoint
+ * @param serviceVersion Service version.
+ */
+ public AzureAppConfigurationClientImpl(HttpPipeline httpPipeline, SerializerAdapter serializerAdapter,
+ String endpoint, AzureAppConfigurationServiceVersion serviceVersion) {
+ this.httpPipeline = httpPipeline;
+ this.serializerAdapter = serializerAdapter;
+ this.endpoint = endpoint;
+ this.serviceVersion = serviceVersion;
+ this.service = RestProxy.create(AzureAppConfigurationClientService.class, this.httpPipeline,
+ this.getSerializerAdapter());
+ }
+
+ /**
+ * The interface defining all the services for AzureAppConfigurationClient to be used by the proxy service to
+ * perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "AzureAppConfiguratio")
+ public interface AzureAppConfigurationClientService {
+ @Get("/keys")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getKeys(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/keys")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getKeysSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/keys")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkKeys(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/keys")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkKeysSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/kv")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getKeyValues(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/kv")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getKeyValuesSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/kv")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkKeyValues(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/kv")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkKeyValuesSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getKeyValue(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getKeyValueSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Put("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> putKeyValue(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Put("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response putKeyValueSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Delete("/kv/{key}")
+ @ExpectedResponses({ 200, 204 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> deleteKeyValue(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Delete("/kv/{key}")
+ @ExpectedResponses({ 200, 204 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response deleteKeyValueSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Head("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkKeyValue(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Head("/kv/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkKeyValueSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/snapshots")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getSnapshots(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/snapshots")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getSnapshotsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/snapshots")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkSnapshots(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/snapshots")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkSnapshotsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getSnapshot(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("name") String name,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getSnapshotSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("name") String name,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/operations")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getOperationDetails(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @QueryParam("snapshot") String snapshot,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/operations")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getOperationDetailsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @QueryParam("snapshot") String snapshot,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Put("/snapshots/{name}")
+ @ExpectedResponses({ 201 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> createSnapshot(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @PathParam("name") String name, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") BinaryData entity, RequestOptions requestOptions, Context context);
+
+ @Put("/snapshots/{name}")
+ @ExpectedResponses({ 201 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response createSnapshotSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @PathParam("name") String name, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") BinaryData entity, RequestOptions requestOptions, Context context);
+
+ @Patch("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> updateSnapshot(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @PathParam("name") String name, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") BinaryData entity, RequestOptions requestOptions, Context context);
+
+ @Patch("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response updateSnapshotSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @PathParam("name") String name, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") BinaryData entity, RequestOptions requestOptions, Context context);
+
+ @Head("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkSnapshot(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("name") String name,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Head("/snapshots/{name}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkSnapshotSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("name") String name,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/labels")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getLabels(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/labels")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getLabelsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/labels")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkLabels(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/labels")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkLabelsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Put("/locks/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> putLock(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Put("/locks/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response putLockSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Delete("/locks/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> deleteLock(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Delete("/locks/{key}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response deleteLockSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("key") String key,
+ @HeaderParam("Accept") String accept, RequestOptions requestOptions, Context context);
+
+ @Get("/revisions")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getRevisions(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("/revisions")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getRevisionsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/revisions")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> checkRevisions(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Head("/revisions")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response checkRevisionsSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Accept") String accept,
+ RequestOptions requestOptions, Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getKeysNext(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getKeysNextSync(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getKeyValuesNext(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getKeyValuesNextSync(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getSnapshotsNext(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getSnapshotsNextSync(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getLabelsNext(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getLabelsNextSync(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getRevisionsNext(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(value = ClientAuthenticationException.class, code = { 401 })
+ @UnexpectedResponseExceptionType(value = ResourceNotFoundException.class, code = { 404 })
+ @UnexpectedResponseExceptionType(value = ResourceModifiedException.class, code = { 409 })
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Response getRevisionsNextSync(@PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("endpoint") String endpoint, @HeaderParam("Accept") String accept, RequestOptions requestOptions,
+ Context context);
+ }
+
+ /**
+ * Gets a list of keys.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getKeysSinglePageAsync(String accept, RequestOptions requestOptions) {
+ return FluxUtil
+ .withContext(context -> service.getKeys(this.getEndpoint(), this.getServiceVersion().getVersion(), accept,
+ requestOptions, context))
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null));
+ }
+
+ /**
+ * Gets a list of keys.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeysAsync(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedFlux<>(() -> getKeysSinglePageAsync(accept, requestOptions),
+ nextLink -> getKeysNextSinglePageAsync(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Gets a list of keys.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys along with {@link PagedResponse}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PagedResponse getKeysSinglePage(String accept, RequestOptions requestOptions) {
+ Response res = service.getKeysSync(this.getEndpoint(), this.getServiceVersion().getVersion(),
+ accept, requestOptions, Context.NONE);
+ return new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null);
+ }
+
+ /**
+ * Gets a list of keys.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of keys as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeys(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedIterable<>(() -> getKeysSinglePage(accept, requestOptions),
+ nextLink -> getKeysNextSinglePage(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeysWithResponseAsync(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.checkKeys(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), accept, requestOptions, context));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned keys.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeysWithResponse(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return service.checkKeysSync(this.getEndpoint(), this.getServiceVersion().getVersion(), accept, requestOptions,
+ Context.NONE);
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getKeyValuesSinglePageAsync(String accept, RequestOptions requestOptions) {
+ return FluxUtil
+ .withContext(context -> service.getKeyValues(this.getEndpoint(), this.getServiceVersion().getVersion(),
+ accept, requestOptions, context))
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null));
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getKeyValuesAsync(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedFlux<>(() -> getKeyValuesSinglePageAsync(accept, requestOptions),
+ nextLink -> getKeyValuesNextSinglePageAsync(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values along with {@link PagedResponse}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PagedResponse getKeyValuesSinglePage(String accept, RequestOptions requestOptions) {
+ Response res = service.getKeyValuesSync(this.getEndpoint(), this.getServiceVersion().getVersion(),
+ accept, requestOptions, Context.NONE);
+ return new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null);
+ }
+
+ /**
+ * Gets a list of key-values.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-values as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getKeyValues(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedIterable<>(() -> getKeyValuesSinglePage(accept, requestOptions),
+ nextLink -> getKeyValuesNextSinglePage(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeyValuesWithResponseAsync(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.checkKeyValues(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), accept, requestOptions, context));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * key String No A filter used to match keys. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * label String No A filter used to match labels. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * snapshot String No A filter used get key-values for a snapshot. The value should
+ * be the name of
+ * the snapshot. Not valid when used with 'key' and 'label' filters.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeyValuesWithResponse(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return service.checkKeyValuesSync(this.getEndpoint(), this.getServiceVersion().getVersion(), accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Gets a single key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getKeyValueWithResponseAsync(String key, String accept,
+ RequestOptions requestOptions) {
+ return FluxUtil.withContext(context -> service.getKeyValue(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), key, accept, requestOptions, context));
+ }
+
+ /**
+ * Gets a single key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return service.getKeyValueSync(this.getEndpoint(), this.getServiceVersion().getVersion(), key, accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Creates a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to create.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to create.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> putKeyValueWithResponseAsync(String key, String accept,
+ RequestOptions requestOptions) {
+ RequestOptions requestOptionsLocal = requestOptions == null ? new RequestOptions() : requestOptions;
+ requestOptionsLocal.addRequestCallback(requestLocal -> {
+ if (requestLocal.getBody() != null && requestLocal.getHeaders().get(HttpHeaderName.CONTENT_TYPE) == null) {
+ requestLocal.getHeaders().set(HttpHeaderName.CONTENT_TYPE, "application/json");
+ }
+ });
+ return FluxUtil.withContext(context -> service.putKeyValue(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), key, accept, requestOptionsLocal, context));
+ }
+
+ /**
+ * Creates a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to create.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to create.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response putKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsLocal = requestOptions == null ? new RequestOptions() : requestOptions;
+ requestOptionsLocal.addRequestCallback(requestLocal -> {
+ if (requestLocal.getBody() != null && requestLocal.getHeaders().get(HttpHeaderName.CONTENT_TYPE) == null) {
+ requestLocal.getHeaders().set(HttpHeaderName.CONTENT_TYPE, "application/json");
+ }
+ });
+ return service.putKeyValueSync(this.getEndpoint(), this.getServiceVersion().getVersion(), key, accept,
+ requestOptionsLocal, Context.NONE);
+ }
+
+ /**
+ * Deletes a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to delete.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> deleteKeyValueWithResponseAsync(String key, String accept,
+ RequestOptions requestOptions) {
+ return FluxUtil.withContext(context -> service.deleteKeyValue(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), key, accept, requestOptions, context));
+ }
+
+ /**
+ * Deletes a key-value.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to delete.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * key: String (Required)
+ * label: String (Optional)
+ * content_type: String (Optional)
+ * value: String (Optional)
+ * last_modified: OffsetDateTime (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * locked: Boolean (Optional)
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param key The key of the key-value to delete.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a key-value pair representing application settings along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteKeyValueWithResponse(String key, String accept, RequestOptions requestOptions) {
+ return service.deleteKeyValueSync(this.getEndpoint(), this.getServiceVersion().getVersion(), key, accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkKeyValueWithResponseAsync(String key, RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.checkKeyValue(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), key, accept, requestOptions, context));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * label String No The label of the key-value to retrieve.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * tags List<String> No A filter used to query by tags. Syntax reference:
+ * https://aka.ms/azconfig/docs/keyvaluefiltering. Call {@link RequestOptions#addQueryParam} to add string to
+ * array.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * Accept-Datetime String No Requests the server to respond with the state of the
+ * resource at the specified
+ * time.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param key The key of the key-value to retrieve.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkKeyValueWithResponse(String key, RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return service.checkKeyValueSync(this.getEndpoint(), this.getServiceVersion().getVersion(), key, accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getSnapshotsSinglePageAsync(String accept, RequestOptions requestOptions) {
+ return FluxUtil
+ .withContext(context -> service.getSnapshots(this.getEndpoint(), this.getServiceVersion().getVersion(),
+ accept, requestOptions, context))
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null));
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux getSnapshotsAsync(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedFlux<>(() -> getSnapshotsSinglePageAsync(accept, requestOptions),
+ nextLink -> getSnapshotsNextSinglePageAsync(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots along with {@link PagedResponse}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PagedResponse getSnapshotsSinglePage(String accept, RequestOptions requestOptions) {
+ Response res = service.getSnapshotsSync(this.getEndpoint(), this.getServiceVersion().getVersion(),
+ accept, requestOptions, Context.NONE);
+ return new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ getValues(res.getValue(), "items"), getNextLink(res.getValue(), "@nextLink"), null);
+ }
+
+ /**
+ * Gets a list of key-value snapshots.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * name String No A filter for the name of the returned snapshots.
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ * status List<String> No Used to filter returned snapshots by their status
+ * property. In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a list of key-value snapshots as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable getSnapshots(String accept, RequestOptions requestOptions) {
+ RequestOptions requestOptionsForNextPage = new RequestOptions();
+ requestOptionsForNextPage.setContext(
+ requestOptions != null && requestOptions.getContext() != null ? requestOptions.getContext() : Context.NONE);
+ return new PagedIterable<>(() -> getSnapshotsSinglePage(accept, requestOptions),
+ nextLink -> getSnapshotsNextSinglePage(nextLink, accept, requestOptionsForNextPage));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkSnapshotsWithResponseAsync(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.checkSnapshots(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), accept, requestOptions, context));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * After String No Instructs the server to return elements that appear after the
+ * element referred
+ * to by the specified token.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkSnapshotsWithResponse(RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return service.checkSnapshotsSync(this.getEndpoint(), this.getServiceVersion().getVersion(), accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value snapshot along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getSnapshotWithResponseAsync(String name, String accept,
+ RequestOptions requestOptions) {
+ return FluxUtil.withContext(context -> service.getSnapshot(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), name, accept, requestOptions, context));
+ }
+
+ /**
+ * Gets a single key-value snapshot.
+ * Query Parameters
+ *
+ * Query Parameters
+ * Name Type Required Description
+ * $Select List<String> No Used to select what fields are present in the
+ * returned resource(s). In the form of "," separated string.
+ *
+ * You can add these to a request with {@link RequestOptions#addQueryParam}
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param name The name of the snapshot.
+ * @param accept The accept parameter.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a single key-value snapshot along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getSnapshotWithResponse(String name, String accept, RequestOptions requestOptions) {
+ return service.getSnapshotSync(this.getEndpoint(), this.getServiceVersion().getVersion(), name, accept,
+ requestOptions, Context.NONE);
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * id: String (Required)
+ * status: String(NotStarted/Running/Succeeded/Failed/Canceled) (Required)
+ * error (Optional): {
+ * code: String (Required)
+ * message: String (Required)
+ * target: String (Optional)
+ * details (Optional): [
+ * (recursive schema, see above)
+ * ]
+ * innererror (Optional): {
+ * code: String (Optional)
+ * innererror (Optional): (recursive schema, see innererror above)
+ * }
+ * }
+ * }
+ * }
+ *
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the state of a long running operation along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getOperationDetailsWithResponseAsync(String snapshot,
+ RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.getOperationDetails(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), snapshot, accept, requestOptions, context));
+ }
+
+ /**
+ * Gets the state of a long running operation.
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * id: String (Required)
+ * status: String(NotStarted/Running/Succeeded/Failed/Canceled) (Required)
+ * error (Optional): {
+ * code: String (Required)
+ * message: String (Required)
+ * target: String (Optional)
+ * details (Optional): [
+ * (recursive schema, see above)
+ * ]
+ * innererror (Optional): {
+ * code: String (Optional)
+ * innererror (Optional): (recursive schema, see innererror above)
+ * }
+ * }
+ * }
+ * }
+ *
+ *
+ * @param snapshot Snapshot identifier for the long running operation.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the state of a long running operation along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getOperationDetailsWithResponse(String snapshot, RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return service.getOperationDetailsSync(this.getEndpoint(), this.getServiceVersion().getVersion(), snapshot,
+ accept, requestOptions, Context.NONE);
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createSnapshotWithResponseAsync(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return FluxUtil.withContext(context -> service.createSnapshot(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), contentType, name, accept, entity, requestOptions, context));
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Response createSnapshotWithResponse(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return service.createSnapshotSync(this.getEndpoint(), this.getServiceVersion().getVersion(), contentType, name,
+ accept, entity, requestOptions, Context.NONE);
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link PollerFlux} for polling of a snapshot is a named, immutable subset of an App Configuration
+ * store's key-values.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux beginCreateSnapshotAsync(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return PollerFlux.create(Duration.ofSeconds(1),
+ () -> this.createSnapshotWithResponseAsync(contentType, name, accept, entity, requestOptions),
+ new DefaultPollingStrategy<>(new PollingStrategyOptions(this.getHttpPipeline())
+ .setEndpoint("{endpoint}".replace("{endpoint}", this.getEndpoint()))
+ .setContext(requestOptions != null && requestOptions.getContext() != null
+ ? requestOptions.getContext()
+ : Context.NONE)
+ .setServiceVersion(this.getServiceVersion().getVersion())),
+ TypeReference.createInstance(BinaryData.class), TypeReference.createInstance(BinaryData.class));
+ }
+
+ /**
+ * Creates a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/vnd.microsoft.appconfig.snapshot+json",
+ * "application/json".
+ * @param name The name of the key-value snapshot to create.
+ * @param accept The accept parameter.
+ * @param entity The key-value snapshot to create.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link SyncPoller} for polling of a snapshot is a named, immutable subset of an App Configuration
+ * store's key-values.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller beginCreateSnapshot(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return SyncPoller.createPoller(Duration.ofSeconds(1),
+ () -> this.createSnapshotWithResponse(contentType, name, accept, entity, requestOptions),
+ new SyncDefaultPollingStrategy<>(new PollingStrategyOptions(this.getHttpPipeline())
+ .setEndpoint("{endpoint}".replace("{endpoint}", this.getEndpoint()))
+ .setContext(requestOptions != null && requestOptions.getContext() != null
+ ? requestOptions.getContext()
+ : Context.NONE)
+ .setServiceVersion(this.getServiceVersion().getVersion())),
+ TypeReference.createInstance(BinaryData.class), TypeReference.createInstance(BinaryData.class));
+ }
+
+ /**
+ * Updates the state of a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/merge-patch+json", "application/json".
+ * @param name The name of the key-value snapshot to update.
+ * @param accept The accept parameter.
+ * @param entity The parameters used to update the snapshot.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> updateSnapshotWithResponseAsync(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return FluxUtil.withContext(context -> service.updateSnapshot(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), contentType, name, accept, entity, requestOptions, context));
+ }
+
+ /**
+ * Updates the state of a key-value snapshot.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ * Request Body Schema
+ *
+ *
+ * {@code
+ * {
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * }
+ * }
+ *
+ *
+ * Response Body Schema
+ *
+ *
+ * {@code
+ * {
+ * name: String (Required)
+ * status: String(provisioning/ready/archived/failed) (Optional)
+ * filters (Required): [
+ * (Required){
+ * key: String (Required)
+ * label: String (Optional)
+ * tags (Optional): [
+ * String (Optional)
+ * ]
+ * }
+ * ]
+ * composition_type: String(key/key_label) (Optional)
+ * created: OffsetDateTime (Optional)
+ * expires: OffsetDateTime (Optional)
+ * retention_period: Long (Optional)
+ * size: Long (Optional)
+ * items_count: Long (Optional)
+ * tags (Optional): {
+ * String: String (Required)
+ * }
+ * etag: String (Optional)
+ * }
+ * }
+ *
+ *
+ * @param contentType Content-Type header. Allowed values: "application/merge-patch+json", "application/json".
+ * @param name The name of the key-value snapshot to update.
+ * @param accept The accept parameter.
+ * @param entity The parameters used to update the snapshot.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return a snapshot is a named, immutable subset of an App Configuration store's key-values along with
+ * {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response updateSnapshotWithResponse(String contentType, String name, String accept,
+ BinaryData entity, RequestOptions requestOptions) {
+ return service.updateSnapshotSync(this.getEndpoint(), this.getServiceVersion().getVersion(), contentType, name,
+ accept, entity, requestOptions, Context.NONE);
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Header Parameters
+ *
+ * Header Parameters
+ * Name Type Required Description
+ * Sync-Token String No Used to guarantee real-time consistency between
+ * requests.
+ * If-Match String No Used to perform an operation only if the targeted resource's
+ * etag matches the
+ * value provided.
+ * If-None-Match String No Used to perform an operation only if the targeted
+ * resource's etag does not
+ * match the value provided.
+ *
+ * You can add these to a request with {@link RequestOptions#addHeader}
+ *
+ * @param name The name of the key-value snapshot to check.
+ * @param requestOptions The options to configure the HTTP request before HTTP client sends it.
+ * @throws HttpResponseException thrown if the request is rejected by server.
+ * @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
+ * @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
+ * @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> checkSnapshotWithResponseAsync(String name, RequestOptions requestOptions) {
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.checkSnapshot(this.getEndpoint(),
+ this.getServiceVersion().getVersion(), name, accept, requestOptions, context));
+ }
+
+ /**
+ * Requests the headers and status of the given resource.
+ * Header Parameters
+ *
+ * Header Parameters
+ *