diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/CHANGELOG.md b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/CHANGELOG.md index 0dca1c43c802..e16b8dc86b26 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/CHANGELOG.md +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/CHANGELOG.md @@ -1,7 +1,8 @@ # Release History -## 1.1.0-beta.1 (Unreleased) +## 1.0.0-beta.1 (2021-07-28) +- Azure Resource Manager RedisEnterprise client library for Java. This package contains Microsoft Azure SDK for RedisEnterprise Management SDK. REST API for managing Redis Enterprise resources in Azure. Package tag package-2021-08. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt). ## 1.0.0 (2021-04-21) diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/README.md b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/README.md index f24d3cf4d35c..4fce2bbc70c0 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/README.md +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/README.md @@ -2,7 +2,7 @@ Azure Resource Manager RedisEnterprise client library for Java. -This package contains Microsoft Azure SDK for RedisEnterprise Management SDK. REST API for managing Redis Enterprise resources in Azure. Package tag package-2021-03. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt). +This package contains Microsoft Azure SDK for RedisEnterprise Management SDK. REST API for managing Redis Enterprise resources in Azure. Package tag package-2021-08. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt). ## We'd love to hear your feedback @@ -32,7 +32,7 @@ Various documentation is available to help you get started com.azure.resourcemanager azure-resourcemanager-redisenterprise - 1.0.0 + 1.1.0-beta.1 ``` [//]: # ({x-version-update-end}) @@ -74,6 +74,8 @@ See [API design][design] for general introduction on design and key concepts on ## Examples + + ## Troubleshooting ## Next steps diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/pom.xml b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/pom.xml index 0d9139f8679f..3bf2de9c03f4 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/pom.xml +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/pom.xml @@ -1,67 +1,86 @@ - 4.0.0 - - com.azure - azure-client-sdk-parent - 1.7.0 - ../../parents/azure-client-sdk-parent - + 4.0.0 + + com.azure + azure-client-sdk-parent + 1.7.0 + ../../parents/azure-client-sdk-parent + - com.azure.resourcemanager - azure-resourcemanager-redisenterprise - 1.1.0-beta.1 - jar + com.azure.resourcemanager + azure-resourcemanager-redisenterprise + 1.1.0-beta.1 + jar - Microsoft Azure SDK for RedisEnterprise Management - This package contains Microsoft Azure SDK for RedisEnterprise Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. REST API for managing Redis Enterprise resources in Azure. Package tag package-2021-03. - https://github.com/Azure/azure-sdk-for-java + Microsoft Azure SDK for RedisEnterprise Management + This package contains Microsoft Azure SDK for RedisEnterprise Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. REST API for managing Redis Enterprise resources in Azure. Package tag package-2021-08. + https://github.com/Azure/azure-sdk-for-java - - - The MIT License (MIT) - http://opensource.org/licenses/MIT - repo - - + + + The MIT License (MIT) + http://opensource.org/licenses/MIT + repo + + - - https://github.com/Azure/azure-sdk-for-java - scm:git:git@github.com:Azure/azure-sdk-for-java.git - scm:git:git@github.com:Azure/azure-sdk-for-java.git - HEAD - - - - microsoft - Microsoft - - - - UTF-8 - - - - - com.azure - azure-core - 1.18.0 - - - com.azure - azure-core-management - 1.3.1 - - - - - - org.jacoco - jacoco-maven-plugin - 0.8.5 - - true - - - - + + https://github.com/Azure/azure-sdk-for-java + scm:git:git@github.com:Azure/azure-sdk-for-java.git + scm:git:git@github.com:Azure/azure-sdk-for-java.git + HEAD + + + + microsoft + Microsoft + + + + UTF-8 + + + + + com.azure + azure-core + 1.18.0 + + + com.azure + azure-core-management + 1.3.1 + + + + + + org.jacoco + jacoco-maven-plugin + 0.8.5 + + true + + + + org.revapi + revapi-maven-plugin + 0.11.2 + + + + + java.method.addedToInterface + + + true + .* + com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)* + + + + + + + diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/RedisEnterpriseManager.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/RedisEnterpriseManager.java index 3b75d0b288ed..17e273d66d85 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/RedisEnterpriseManager.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/RedisEnterpriseManager.java @@ -9,7 +9,6 @@ import com.azure.core.http.HttpPipeline; import com.azure.core.http.HttpPipelineBuilder; import com.azure.core.http.policy.AddDatePolicy; -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; @@ -17,6 +16,7 @@ import com.azure.core.http.policy.RequestIdPolicy; import com.azure.core.http.policy.RetryPolicy; import com.azure.core.http.policy.UserAgentPolicy; +import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy; import com.azure.core.management.profile.AzureProfile; import com.azure.core.util.Configuration; import com.azure.core.util.logging.ClientLogger; @@ -97,6 +97,7 @@ public static final class Configurable { private HttpClient httpClient; private HttpLogOptions httpLogOptions; private final List policies = new ArrayList<>(); + private final List scopes = new ArrayList<>(); private RetryPolicy retryPolicy; private Duration defaultPollInterval; @@ -136,6 +137,17 @@ public Configurable withPolicy(HttpPipelinePolicy policy) { return this; } + /** + * Adds the scope to permission sets. + * + * @param scope the scope. + * @return the configurable object itself. + */ + public Configurable withScope(String scope) { + this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null.")); + return this; + } + /** * Sets the retry policy to the HTTP pipeline. * @@ -178,7 +190,7 @@ public RedisEnterpriseManager authenticate(TokenCredential credential, AzureProf .append("-") .append("com.azure.resourcemanager.redisenterprise") .append("/") - .append("1.0.0"); + .append("1.0.0-beta.1"); if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) { userAgentBuilder .append(" (") @@ -192,6 +204,9 @@ public RedisEnterpriseManager authenticate(TokenCredential credential, AzureProf userAgentBuilder.append(" (auto-generated)"); } + if (scopes.isEmpty()) { + scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default"); + } if (retryPolicy == null) { retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS); } @@ -201,10 +216,7 @@ public RedisEnterpriseManager authenticate(TokenCredential credential, AzureProf HttpPolicyProviders.addBeforeRetryPolicies(policies); policies.add(retryPolicy); policies.add(new AddDatePolicy()); - policies - .add( - new BearerTokenAuthenticationPolicy( - credential, profile.getEnvironment().getManagementEndpoint() + "/.default")); + policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0]))); policies.addAll(this.policies); HttpPolicyProviders.addAfterRetryPolicies(policies); policies.add(new HttpLoggingPolicy(httpLogOptions)); diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/fluent/DatabasesClient.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/fluent/DatabasesClient.java index f9f98491e9b6..ea766d56dab1 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/fluent/DatabasesClient.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/fluent/DatabasesClient.java @@ -369,7 +369,7 @@ AccessKeysInner regenerateKey( Context context); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -385,7 +385,7 @@ SyncPoller, Void> beginImportMethod( String resourceGroupName, String clusterName, String databaseName, ImportClusterParameters parameters); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -406,7 +406,7 @@ SyncPoller, Void> beginImportMethod( Context context); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -421,7 +421,7 @@ void importMethod( String resourceGroupName, String clusterName, String databaseName, ImportClusterParameters parameters); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabaseImpl.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabaseImpl.java index 33f11b78af91..1e64b7a03499 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabaseImpl.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabaseImpl.java @@ -225,13 +225,8 @@ public DatabaseImpl withPort(Integer port) { } public DatabaseImpl withClusteringPolicy(ClusteringPolicy clusteringPolicy) { - if (isInCreateMode()) { - this.innerModel().withClusteringPolicy(clusteringPolicy); - return this; - } else { - this.updateParameters.withClusteringPolicy(clusteringPolicy); - return this; - } + this.innerModel().withClusteringPolicy(clusteringPolicy); + return this; } public DatabaseImpl withEvictionPolicy(EvictionPolicy evictionPolicy) { @@ -255,13 +250,8 @@ public DatabaseImpl withPersistence(Persistence persistence) { } public DatabaseImpl withModules(List modules) { - if (isInCreateMode()) { - this.innerModel().withModules(modules); - return this; - } else { - this.updateParameters.withModules(modules); - return this; - } + this.innerModel().withModules(modules); + return this; } private boolean isInCreateMode() { diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabasesClientImpl.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabasesClientImpl.java index 54ab0fc95e91..a3d5111717dc 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabasesClientImpl.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/DatabasesClientImpl.java @@ -1850,7 +1850,7 @@ public AccessKeysInner regenerateKey( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -1910,7 +1910,7 @@ private Mono>> importMethodWithResponseAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -1972,7 +1972,7 @@ private Mono>> importMethodWithResponseAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -1994,7 +1994,7 @@ private PollerFlux, Void> beginImportMethodAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2022,7 +2022,7 @@ private PollerFlux, Void> beginImportMethodAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2040,7 +2040,7 @@ public SyncPoller, Void> beginImportMethod( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2064,7 +2064,7 @@ public SyncPoller, Void> beginImportMethod( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2084,7 +2084,7 @@ private Mono importMethodAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2109,7 +2109,7 @@ private Mono importMethodAsync( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -2126,7 +2126,7 @@ public void importMethod( } /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/RedisEnterpriseManagementClientImpl.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/RedisEnterpriseManagementClientImpl.java index 6ec6f99e977f..60693827d337 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/RedisEnterpriseManagementClientImpl.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/implementation/RedisEnterpriseManagementClientImpl.java @@ -209,7 +209,7 @@ public PrivateLinkResourcesClient getPrivateLinkResources() { this.defaultPollInterval = defaultPollInterval; this.subscriptionId = subscriptionId; this.endpoint = endpoint; - this.apiVersion = "2021-03-01"; + this.apiVersion = "2021-08-01"; this.operations = new OperationsClientImpl(this); this.operationsStatus = new OperationsStatusClientImpl(this); this.redisEnterprises = new RedisEnterprisesClientImpl(this); diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Database.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Database.java index 033afa8b0349..9276775a8b05 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Database.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Database.java @@ -220,11 +220,7 @@ interface WithModules { /** The template for Database update. */ interface Update - extends UpdateStages.WithClientProtocol, - UpdateStages.WithClusteringPolicy, - UpdateStages.WithEvictionPolicy, - UpdateStages.WithPersistence, - UpdateStages.WithModules { + extends UpdateStages.WithClientProtocol, UpdateStages.WithEvictionPolicy, UpdateStages.WithPersistence { /** * Executes the update request. * @@ -254,17 +250,6 @@ interface WithClientProtocol { */ Update withClientProtocol(Protocol clientProtocol); } - /** The stage of the Database update allowing to specify clusteringPolicy. */ - interface WithClusteringPolicy { - /** - * Specifies the clusteringPolicy property: Clustering policy - default is OSSCluster. Specified at create - * time.. - * - * @param clusteringPolicy Clustering policy - default is OSSCluster. Specified at create time. - * @return the next definition stage. - */ - Update withClusteringPolicy(ClusteringPolicy clusteringPolicy); - } /** The stage of the Database update allowing to specify evictionPolicy. */ interface WithEvictionPolicy { /** @@ -285,18 +270,6 @@ interface WithPersistence { */ Update withPersistence(Persistence persistence); } - /** The stage of the Database update allowing to specify modules. */ - interface WithModules { - /** - * Specifies the modules property: Optional set of redis modules to enable in this database - modules can - * only be added at creation time.. - * - * @param modules Optional set of redis modules to enable in this database - modules can only be added at - * creation time. - * @return the next definition stage. - */ - Update withModules(List modules); - } } /** * Refreshes the resource to sync with Azure. @@ -357,7 +330,7 @@ interface WithModules { AccessKeys regenerateKey(RegenerateKeyParameters parameters, Context context); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param parameters Storage information for importing into the cluster. * @throws IllegalArgumentException thrown if parameters fail the validation. @@ -367,7 +340,7 @@ interface WithModules { void importMethod(ImportClusterParameters parameters); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param parameters Storage information for importing into the cluster. * @param context The context to associate with this operation. diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Databases.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Databases.java index ec608137ddc2..2031ada5fd02 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Databases.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/Databases.java @@ -152,7 +152,7 @@ AccessKeys regenerateKey( Context context); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. @@ -166,7 +166,7 @@ void importMethod( String resourceGroupName, String clusterName, String databaseName, ImportClusterParameters parameters); /** - * Imports a database file to target database. + * Imports database files to target database. * * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the RedisEnterprise cluster. diff --git a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/ImportClusterParameters.java b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/ImportClusterParameters.java index 872f97600235..5a6f32c4e3be 100644 --- a/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/ImportClusterParameters.java +++ b/sdk/redisenterprise/azure-resourcemanager-redisenterprise/src/main/java/com/azure/resourcemanager/redisenterprise/models/ImportClusterParameters.java @@ -8,6 +8,7 @@ import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; /** Parameters for a Redis Enterprise import operation. */ @Fluent @@ -15,28 +16,28 @@ public final class ImportClusterParameters { @JsonIgnore private final ClientLogger logger = new ClientLogger(ImportClusterParameters.class); /* - * SAS URI for the target blob to import from + * SAS URIs for the target blobs to import from */ - @JsonProperty(value = "sasUri", required = true) - private String sasUri; + @JsonProperty(value = "sasUris", required = true) + private List sasUris; /** - * Get the sasUri property: SAS URI for the target blob to import from. + * Get the sasUris property: SAS URIs for the target blobs to import from. * - * @return the sasUri value. + * @return the sasUris value. */ - public String sasUri() { - return this.sasUri; + public List sasUris() { + return this.sasUris; } /** - * Set the sasUri property: SAS URI for the target blob to import from. + * Set the sasUris property: SAS URIs for the target blobs to import from. * - * @param sasUri the sasUri value to set. + * @param sasUris the sasUris value to set. * @return the ImportClusterParameters object itself. */ - public ImportClusterParameters withSasUri(String sasUri) { - this.sasUri = sasUri; + public ImportClusterParameters withSasUris(List sasUris) { + this.sasUris = sasUris; return this; } @@ -46,10 +47,10 @@ public ImportClusterParameters withSasUri(String sasUri) { * @throws IllegalArgumentException thrown if the instance is not valid. */ public void validate() { - if (sasUri() == null) { + if (sasUris() == null) { throw logger .logExceptionAsError( - new IllegalArgumentException("Missing required property sasUri in model ImportClusterParameters")); + new IllegalArgumentException("Missing required property sasUris in model ImportClusterParameters")); } } }