scopes = new ArrayList<>();
private RetryPolicy retryPolicy;
+ private RetryOptions retryOptions;
private Duration defaultPollInterval;
private Configurable() {
@@ -185,6 +261,19 @@ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
return this;
}
+ /**
+ * Sets the retry options for the HTTP pipeline retry policy.
+ *
+ * This setting has no effect, if retry policy is set via {@link #withRetryPolicy(RetryPolicy)}.
+ *
+ * @param retryOptions the retry options for the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryOptions(RetryOptions retryOptions) {
+ this.retryOptions = Objects.requireNonNull(retryOptions, "'retryOptions' cannot be null.");
+ return this;
+ }
+
/**
* Sets the default poll interval, used when service does not provide "Retry-After" header.
*
@@ -218,7 +307,7 @@ public MySqlManager authenticate(TokenCredential credential, AzureProfile profil
.append("-")
.append("com.azure.resourcemanager.mysqlflexibleserver")
.append("/")
- .append("1.0.0-beta.2");
+ .append("1.0.0-beta.1");
if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
userAgentBuilder
.append(" (")
@@ -236,10 +325,15 @@ public MySqlManager authenticate(TokenCredential credential, AzureProfile profil
scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
}
if (retryPolicy == null) {
- retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ if (retryOptions != null) {
+ retryPolicy = new RetryPolicy(retryOptions);
+ } else {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
}
List policies = new ArrayList<>();
policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new AddHeadersFromContextPolicy());
policies.add(new RequestIdPolicy());
policies
.addAll(
@@ -270,7 +364,11 @@ public MySqlManager authenticate(TokenCredential credential, AzureProfile profil
}
}
- /** @return Resource collection API of Servers. */
+ /**
+ * Gets the resource collection API of Servers. It manages Server.
+ *
+ * @return Resource collection API of Servers.
+ */
public Servers servers() {
if (this.servers == null) {
this.servers = new ServersImpl(clientObject.getServers(), this);
@@ -278,7 +376,11 @@ public Servers servers() {
return servers;
}
- /** @return Resource collection API of Replicas. */
+ /**
+ * Gets the resource collection API of Replicas.
+ *
+ * @return Resource collection API of Replicas.
+ */
public Replicas replicas() {
if (this.replicas == null) {
this.replicas = new ReplicasImpl(clientObject.getReplicas(), this);
@@ -286,15 +388,11 @@ public Replicas replicas() {
return replicas;
}
- /** @return Resource collection API of Backups. */
- public Backups backups() {
- if (this.backups == null) {
- this.backups = new BackupsImpl(clientObject.getBackups(), this);
- }
- return backups;
- }
-
- /** @return Resource collection API of FirewallRules. */
+ /**
+ * Gets the resource collection API of FirewallRules. It manages FirewallRule.
+ *
+ * @return Resource collection API of FirewallRules.
+ */
public FirewallRules firewallRules() {
if (this.firewallRules == null) {
this.firewallRules = new FirewallRulesImpl(clientObject.getFirewallRules(), this);
@@ -302,7 +400,23 @@ public FirewallRules firewallRules() {
return firewallRules;
}
- /** @return Resource collection API of Databases. */
+ /**
+ * Gets the resource collection API of VirtualNetworkRules. It manages VirtualNetworkRule.
+ *
+ * @return Resource collection API of VirtualNetworkRules.
+ */
+ public VirtualNetworkRules virtualNetworkRules() {
+ if (this.virtualNetworkRules == null) {
+ this.virtualNetworkRules = new VirtualNetworkRulesImpl(clientObject.getVirtualNetworkRules(), this);
+ }
+ return virtualNetworkRules;
+ }
+
+ /**
+ * Gets the resource collection API of Databases. It manages Database.
+ *
+ * @return Resource collection API of Databases.
+ */
public Databases databases() {
if (this.databases == null) {
this.databases = new DatabasesImpl(clientObject.getDatabases(), this);
@@ -310,7 +424,11 @@ public Databases databases() {
return databases;
}
- /** @return Resource collection API of Configurations. */
+ /**
+ * Gets the resource collection API of Configurations. It manages Configuration.
+ *
+ * @return Resource collection API of Configurations.
+ */
public Configurations configurations() {
if (this.configurations == null) {
this.configurations = new ConfigurationsImpl(clientObject.getConfigurations(), this);
@@ -318,25 +436,85 @@ public Configurations configurations() {
return configurations;
}
- /** @return Resource collection API of LocationBasedCapabilities. */
- public LocationBasedCapabilities locationBasedCapabilities() {
- if (this.locationBasedCapabilities == null) {
- this.locationBasedCapabilities =
- new LocationBasedCapabilitiesImpl(clientObject.getLocationBasedCapabilities(), this);
+ /**
+ * Gets the resource collection API of ServerParameters.
+ *
+ * @return Resource collection API of ServerParameters.
+ */
+ public ServerParameters serverParameters() {
+ if (this.serverParameters == null) {
+ this.serverParameters = new ServerParametersImpl(clientObject.getServerParameters(), this);
+ }
+ return serverParameters;
+ }
+
+ /**
+ * Gets the resource collection API of LogFiles.
+ *
+ * @return Resource collection API of LogFiles.
+ */
+ public LogFiles logFiles() {
+ if (this.logFiles == null) {
+ this.logFiles = new LogFilesImpl(clientObject.getLogFiles(), this);
+ }
+ return logFiles;
+ }
+
+ /**
+ * Gets the resource collection API of ServerAdministrators.
+ *
+ * @return Resource collection API of ServerAdministrators.
+ */
+ public ServerAdministrators serverAdministrators() {
+ if (this.serverAdministrators == null) {
+ this.serverAdministrators = new ServerAdministratorsImpl(clientObject.getServerAdministrators(), this);
+ }
+ return serverAdministrators;
+ }
+
+ /**
+ * Gets the resource collection API of RecoverableServers.
+ *
+ * @return Resource collection API of RecoverableServers.
+ */
+ public RecoverableServers recoverableServers() {
+ if (this.recoverableServers == null) {
+ this.recoverableServers = new RecoverableServersImpl(clientObject.getRecoverableServers(), this);
+ }
+ return recoverableServers;
+ }
+
+ /**
+ * Gets the resource collection API of ServerBasedPerformanceTiers.
+ *
+ * @return Resource collection API of ServerBasedPerformanceTiers.
+ */
+ public ServerBasedPerformanceTiers serverBasedPerformanceTiers() {
+ if (this.serverBasedPerformanceTiers == null) {
+ this.serverBasedPerformanceTiers =
+ new ServerBasedPerformanceTiersImpl(clientObject.getServerBasedPerformanceTiers(), this);
}
- return locationBasedCapabilities;
+ return serverBasedPerformanceTiers;
}
- /** @return Resource collection API of CheckVirtualNetworkSubnetUsages. */
- public CheckVirtualNetworkSubnetUsages checkVirtualNetworkSubnetUsages() {
- if (this.checkVirtualNetworkSubnetUsages == null) {
- this.checkVirtualNetworkSubnetUsages =
- new CheckVirtualNetworkSubnetUsagesImpl(clientObject.getCheckVirtualNetworkSubnetUsages(), this);
+ /**
+ * Gets the resource collection API of LocationBasedPerformanceTiers.
+ *
+ * @return Resource collection API of LocationBasedPerformanceTiers.
+ */
+ public LocationBasedPerformanceTiers locationBasedPerformanceTiers() {
+ if (this.locationBasedPerformanceTiers == null) {
+ this.locationBasedPerformanceTiers =
+ new LocationBasedPerformanceTiersImpl(clientObject.getLocationBasedPerformanceTiers(), this);
}
- return checkVirtualNetworkSubnetUsages;
+ return locationBasedPerformanceTiers;
}
- /** @return Resource collection API of CheckNameAvailabilities. */
+ /**
+ * Gets the resource collection API of CheckNameAvailabilities.
+ *
+ * @return Resource collection API of CheckNameAvailabilities.
+ */
public CheckNameAvailabilities checkNameAvailabilities() {
if (this.checkNameAvailabilities == null) {
this.checkNameAvailabilities =
@@ -345,16 +523,11 @@ public CheckNameAvailabilities checkNameAvailabilities() {
return checkNameAvailabilities;
}
- /** @return Resource collection API of GetPrivateDnsZoneSuffixes. */
- public GetPrivateDnsZoneSuffixes getPrivateDnsZoneSuffixes() {
- if (this.getPrivateDnsZoneSuffixes == null) {
- this.getPrivateDnsZoneSuffixes =
- new GetPrivateDnsZoneSuffixesImpl(clientObject.getGetPrivateDnsZoneSuffixes(), this);
- }
- return getPrivateDnsZoneSuffixes;
- }
-
- /** @return Resource collection API of Operations. */
+ /**
+ * Gets the resource collection API of Operations.
+ *
+ * @return Resource collection API of Operations.
+ */
public Operations operations() {
if (this.operations == null) {
this.operations = new OperationsImpl(clientObject.getOperations(), this);
@@ -362,6 +535,157 @@ public Operations operations() {
return operations;
}
+ /**
+ * Gets the resource collection API of ServerSecurityAlertPolicies. It manages ServerSecurityAlertPolicy.
+ *
+ * @return Resource collection API of ServerSecurityAlertPolicies.
+ */
+ public ServerSecurityAlertPolicies serverSecurityAlertPolicies() {
+ if (this.serverSecurityAlertPolicies == null) {
+ this.serverSecurityAlertPolicies =
+ new ServerSecurityAlertPoliciesImpl(clientObject.getServerSecurityAlertPolicies(), this);
+ }
+ return serverSecurityAlertPolicies;
+ }
+
+ /**
+ * Gets the resource collection API of QueryTexts.
+ *
+ * @return Resource collection API of QueryTexts.
+ */
+ public QueryTexts queryTexts() {
+ if (this.queryTexts == null) {
+ this.queryTexts = new QueryTextsImpl(clientObject.getQueryTexts(), this);
+ }
+ return queryTexts;
+ }
+
+ /**
+ * Gets the resource collection API of TopQueryStatistics.
+ *
+ * @return Resource collection API of TopQueryStatistics.
+ */
+ public TopQueryStatistics topQueryStatistics() {
+ if (this.topQueryStatistics == null) {
+ this.topQueryStatistics = new TopQueryStatisticsImpl(clientObject.getTopQueryStatistics(), this);
+ }
+ return topQueryStatistics;
+ }
+
+ /**
+ * Gets the resource collection API of WaitStatistics.
+ *
+ * @return Resource collection API of WaitStatistics.
+ */
+ public WaitStatistics waitStatistics() {
+ if (this.waitStatistics == null) {
+ this.waitStatistics = new WaitStatisticsImpl(clientObject.getWaitStatistics(), this);
+ }
+ return waitStatistics;
+ }
+
+ /**
+ * Gets the resource collection API of ResourceProviders.
+ *
+ * @return Resource collection API of ResourceProviders.
+ */
+ public ResourceProviders resourceProviders() {
+ if (this.resourceProviders == null) {
+ this.resourceProviders = new ResourceProvidersImpl(clientObject.getResourceProviders(), this);
+ }
+ return resourceProviders;
+ }
+
+ /**
+ * Gets the resource collection API of Advisors.
+ *
+ * @return Resource collection API of Advisors.
+ */
+ public Advisors advisors() {
+ if (this.advisors == null) {
+ this.advisors = new AdvisorsImpl(clientObject.getAdvisors(), this);
+ }
+ return advisors;
+ }
+
+ /**
+ * Gets the resource collection API of RecommendedActions.
+ *
+ * @return Resource collection API of RecommendedActions.
+ */
+ public RecommendedActions recommendedActions() {
+ if (this.recommendedActions == null) {
+ this.recommendedActions = new RecommendedActionsImpl(clientObject.getRecommendedActions(), this);
+ }
+ return recommendedActions;
+ }
+
+ /**
+ * Gets the resource collection API of LocationBasedRecommendedActionSessionsOperationStatus.
+ *
+ * @return Resource collection API of LocationBasedRecommendedActionSessionsOperationStatus.
+ */
+ public LocationBasedRecommendedActionSessionsOperationStatus
+ locationBasedRecommendedActionSessionsOperationStatus() {
+ if (this.locationBasedRecommendedActionSessionsOperationStatus == null) {
+ this.locationBasedRecommendedActionSessionsOperationStatus =
+ new LocationBasedRecommendedActionSessionsOperationStatusImpl(
+ clientObject.getLocationBasedRecommendedActionSessionsOperationStatus(), this);
+ }
+ return locationBasedRecommendedActionSessionsOperationStatus;
+ }
+
+ /**
+ * Gets the resource collection API of LocationBasedRecommendedActionSessionsResults.
+ *
+ * @return Resource collection API of LocationBasedRecommendedActionSessionsResults.
+ */
+ public LocationBasedRecommendedActionSessionsResults locationBasedRecommendedActionSessionsResults() {
+ if (this.locationBasedRecommendedActionSessionsResults == null) {
+ this.locationBasedRecommendedActionSessionsResults =
+ new LocationBasedRecommendedActionSessionsResultsImpl(
+ clientObject.getLocationBasedRecommendedActionSessionsResults(), this);
+ }
+ return locationBasedRecommendedActionSessionsResults;
+ }
+
+ /**
+ * Gets the resource collection API of PrivateEndpointConnections. It manages PrivateEndpointConnection.
+ *
+ * @return Resource collection API of PrivateEndpointConnections.
+ */
+ public PrivateEndpointConnections privateEndpointConnections() {
+ if (this.privateEndpointConnections == null) {
+ this.privateEndpointConnections =
+ new PrivateEndpointConnectionsImpl(clientObject.getPrivateEndpointConnections(), this);
+ }
+ return privateEndpointConnections;
+ }
+
+ /**
+ * Gets the resource collection API of PrivateLinkResources.
+ *
+ * @return Resource collection API of PrivateLinkResources.
+ */
+ public PrivateLinkResources privateLinkResources() {
+ if (this.privateLinkResources == null) {
+ this.privateLinkResources = new PrivateLinkResourcesImpl(clientObject.getPrivateLinkResources(), this);
+ }
+ return privateLinkResources;
+ }
+
+ /**
+ * Gets the resource collection API of ServerKeys. It manages ServerKey.
+ *
+ * @return Resource collection API of ServerKeys.
+ */
+ public ServerKeys serverKeys() {
+ if (this.serverKeys == null) {
+ this.serverKeys = new ServerKeysImpl(clientObject.getServerKeys(), this);
+ }
+ return serverKeys;
+ }
+
/**
* @return Wrapped service client MySqlManagementClient providing direct access to the underlying auto-generated API
* implementation, based on Azure REST API.
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/BackupsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/AdvisorsClient.java
similarity index 71%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/BackupsClient.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/AdvisorsClient.java
index 1651eb752a85e..ee63d775acf74 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/BackupsClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/AdvisorsClient.java
@@ -9,55 +9,55 @@
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerBackupInner;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.AdvisorInner;
-/** An instance of this class provides access to all the operations defined in BackupsClient. */
-public interface BackupsClient {
+/** An instance of this class provides access to all the operations defined in AdvisorsClient. */
+public interface AdvisorsClient {
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties.
+ * @return a recommendation action advisor.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ServerBackupInner get(String resourceGroupName, String serverName, String backupName);
+ AdvisorInner get(String resourceGroupName, String serverName, String advisorName);
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties along with {@link Response}.
+ * @return a recommendation action advisor along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName, String serverName, String backupName, Context context);
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String advisorName, Context context);
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedIterable}.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable listByServer(String resourceGroupName, String serverName);
+ PagedIterable listByServer(String resourceGroupName, String serverName);
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -65,8 +65,8 @@ Response getWithResponse(
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedIterable}.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable listByServer(String resourceGroupName, String serverName, Context context);
+ PagedIterable listByServer(String resourceGroupName, String serverName, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckNameAvailabilitiesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckNameAvailabilitiesClient.java
index 8e4c349aa51c4..9c849d43f643c 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckNameAvailabilitiesClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckNameAvailabilitiesClient.java
@@ -14,23 +14,21 @@
/** An instance of this class provides access to all the operations defined in CheckNameAvailabilitiesClient. */
public interface CheckNameAvailabilitiesClient {
/**
- * Check the availability of name for server.
+ * Check the availability of name for resource.
*
- * @param locationName The name of the location.
- * @param nameAvailabilityRequest The required parameters for checking if server name is available.
+ * @param nameAvailabilityRequest The required parameters for checking if resource name is available.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return represents a resource name availability.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- NameAvailabilityInner execute(String locationName, NameAvailabilityRequest nameAvailabilityRequest);
+ NameAvailabilityInner execute(NameAvailabilityRequest nameAvailabilityRequest);
/**
- * Check the availability of name for server.
+ * Check the availability of name for resource.
*
- * @param locationName The name of the location.
- * @param nameAvailabilityRequest The required parameters for checking if server name is available.
+ * @param nameAvailabilityRequest The required parameters for checking if resource name is available.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -39,5 +37,5 @@ public interface CheckNameAvailabilitiesClient {
*/
@ServiceMethod(returns = ReturnType.SINGLE)
Response executeWithResponse(
- String locationName, NameAvailabilityRequest nameAvailabilityRequest, Context context);
+ NameAvailabilityRequest nameAvailabilityRequest, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ConfigurationsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ConfigurationsClient.java
index adfba6202bfa6..f834229ecddca 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ConfigurationsClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ConfigurationsClient.java
@@ -12,8 +12,6 @@
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ConfigurationInner;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ConfigurationListResultInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ConfigurationListForBatchUpdate;
/** An instance of this class provides access to all the operations defined in ConfigurationsClient. */
public interface ConfigurationsClient {
@@ -30,7 +28,7 @@ public interface ConfigurationsClient {
* @return the {@link SyncPoller} for polling of represents a Configuration.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, ConfigurationInner> beginUpdate(
+ SyncPoller, ConfigurationInner> beginCreateOrUpdate(
String resourceGroupName, String serverName, String configurationName, ConfigurationInner parameters);
/**
@@ -47,7 +45,7 @@ SyncPoller, ConfigurationInner> beginUpdate(
* @return the {@link SyncPoller} for polling of represents a Configuration.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, ConfigurationInner> beginUpdate(
+ SyncPoller, ConfigurationInner> beginCreateOrUpdate(
String resourceGroupName,
String serverName,
String configurationName,
@@ -67,7 +65,7 @@ SyncPoller, ConfigurationInner> beginUpdate(
* @return represents a Configuration.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ConfigurationInner update(
+ ConfigurationInner createOrUpdate(
String resourceGroupName, String serverName, String configurationName, ConfigurationInner parameters);
/**
@@ -84,7 +82,7 @@ ConfigurationInner update(
* @return represents a Configuration.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ConfigurationInner update(
+ ConfigurationInner createOrUpdate(
String resourceGroupName,
String serverName,
String configurationName,
@@ -121,68 +119,6 @@ ConfigurationInner update(
Response getWithResponse(
String resourceGroupName, String serverName, String configurationName, Context context);
- /**
- * Update a list of configurations in a given server.
- *
- * @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serverName The name of the server.
- * @param parameters The parameters for updating a list of server configuration.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the {@link SyncPoller} for polling of a list of server configurations.
- */
- @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, ConfigurationListResultInner> beginBatchUpdate(
- String resourceGroupName, String serverName, ConfigurationListForBatchUpdate parameters);
-
- /**
- * Update a list of configurations in a given server.
- *
- * @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serverName The name of the server.
- * @param parameters The parameters for updating a list of server configuration.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the {@link SyncPoller} for polling of a list of server configurations.
- */
- @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, ConfigurationListResultInner> beginBatchUpdate(
- String resourceGroupName, String serverName, ConfigurationListForBatchUpdate parameters, Context context);
-
- /**
- * Update a list of configurations in a given server.
- *
- * @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serverName The name of the server.
- * @param parameters The parameters for updating a list of server configuration.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server configurations.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ConfigurationListResultInner batchUpdate(
- String resourceGroupName, String serverName, ConfigurationListForBatchUpdate parameters);
-
- /**
- * Update a list of configurations in a given server.
- *
- * @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serverName The name of the server.
- * @param parameters The parameters for updating a list of server configuration.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server configurations.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ConfigurationListResultInner batchUpdate(
- String resourceGroupName, String serverName, ConfigurationListForBatchUpdate parameters, Context context);
-
/**
* List all the configurations in a given server.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/FirewallRulesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/FirewallRulesClient.java
index 15ea97f6690fc..23f18d3d0e675 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/FirewallRulesClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/FirewallRulesClient.java
@@ -90,7 +90,7 @@ FirewallRuleInner createOrUpdate(
Context context);
/**
- * Deletes a firewall rule.
+ * Deletes a server firewall rule.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -105,7 +105,7 @@ SyncPoller, Void> beginDelete(
String resourceGroupName, String serverName, String firewallRuleName);
/**
- * Deletes a firewall rule.
+ * Deletes a server firewall rule.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -121,7 +121,7 @@ SyncPoller, Void> beginDelete(
String resourceGroupName, String serverName, String firewallRuleName, Context context);
/**
- * Deletes a firewall rule.
+ * Deletes a server firewall rule.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -134,7 +134,7 @@ SyncPoller, Void> beginDelete(
void delete(String resourceGroupName, String serverName, String firewallRuleName);
/**
- * Deletes a firewall rule.
+ * Deletes a server firewall rule.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedCapabilitiesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedPerformanceTiersClient.java
similarity index 67%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedCapabilitiesClient.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedPerformanceTiersClient.java
index b5c75b6801f1c..67ee7960fab23 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedCapabilitiesClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedPerformanceTiersClient.java
@@ -8,34 +8,32 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.CapabilityPropertiesInner;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.PerformanceTierPropertiesInner;
-/** An instance of this class provides access to all the operations defined in LocationBasedCapabilitiesClient. */
-public interface LocationBasedCapabilitiesClient {
+/** An instance of this class provides access to all the operations defined in LocationBasedPerformanceTiersClient. */
+public interface LocationBasedPerformanceTiersClient {
/**
- * Get capabilities at specified location in a given subscription.
+ * List all the performance tiers at specified location in a given subscription.
*
* @param locationName The name of the location.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return capabilities at specified location in a given subscription as paginated response with {@link
- * PagedIterable}.
+ * @return a list of performance tiers as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String locationName);
+ PagedIterable list(String locationName);
/**
- * Get capabilities at specified location in a given subscription.
+ * List all the performance tiers at specified location in a given subscription.
*
* @param locationName The name of the location.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return capabilities at specified location in a given subscription as paginated response with {@link
- * PagedIterable}.
+ * @return a list of performance tiers as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String locationName, Context context);
+ PagedIterable list(String locationName, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckVirtualNetworkSubnetUsagesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsOperationStatusClient.java
similarity index 55%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckVirtualNetworkSubnetUsagesClient.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsOperationStatusClient.java
index b76ef4d2322e3..56169eada07bd 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/CheckVirtualNetworkSubnetUsagesClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsOperationStatusClient.java
@@ -8,36 +8,38 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.VirtualNetworkSubnetUsageResultInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.VirtualNetworkSubnetUsageParameter;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.RecommendedActionSessionsOperationStatusInner;
-/** An instance of this class provides access to all the operations defined in CheckVirtualNetworkSubnetUsagesClient. */
-public interface CheckVirtualNetworkSubnetUsagesClient {
+/**
+ * An instance of this class provides access to all the operations defined in
+ * LocationBasedRecommendedActionSessionsOperationStatusClient.
+ */
+public interface LocationBasedRecommendedActionSessionsOperationStatusClient {
/**
- * Get virtual network subnet usage for a given vNet resource id.
+ * Recommendation action session operation status.
*
* @param locationName The name of the location.
- * @param parameters The required parameters for creating or updating a server.
+ * @param operationId The operation identifier.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return virtual network subnet usage for a given vNet resource id.
+ * @return recommendation action session operation status.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- VirtualNetworkSubnetUsageResultInner execute(String locationName, VirtualNetworkSubnetUsageParameter parameters);
+ RecommendedActionSessionsOperationStatusInner get(String locationName, String operationId);
/**
- * Get virtual network subnet usage for a given vNet resource id.
+ * Recommendation action session operation status.
*
* @param locationName The name of the location.
- * @param parameters The required parameters for creating or updating a server.
+ * @param operationId The operation identifier.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return virtual network subnet usage for a given vNet resource id along with {@link Response}.
+ * @return recommendation action session operation status along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response executeWithResponse(
- String locationName, VirtualNetworkSubnetUsageParameter parameters, Context context);
+ Response getWithResponse(
+ String locationName, String operationId, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsResultsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsResultsClient.java
new file mode 100644
index 0000000000000..22c8fe2a10a31
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LocationBasedRecommendedActionSessionsResultsClient.java
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.RecommendationActionInner;
+
+/**
+ * An instance of this class provides access to all the operations defined in
+ * LocationBasedRecommendedActionSessionsResultsClient.
+ */
+public interface LocationBasedRecommendedActionSessionsResultsClient {
+ /**
+ * Recommendation action session operation result.
+ *
+ * @param locationName The name of the location.
+ * @param operationId The operation identifier.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of recommendation actions as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String locationName, String operationId);
+
+ /**
+ * Recommendation action session operation result.
+ *
+ * @param locationName The name of the location.
+ * @param operationId The operation identifier.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of recommendation actions as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String locationName, String operationId, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LogFilesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LogFilesClient.java
new file mode 100644
index 0000000000000..77b6d80fbb38f
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/LogFilesClient.java
@@ -0,0 +1,41 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.LogFileInner;
+
+/** An instance of this class provides access to all the operations defined in LogFilesClient. */
+public interface LogFilesClient {
+ /**
+ * List all the log files in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of log files as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName);
+
+ /**
+ * List all the log files in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of log files as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/MySqlManagementClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/MySqlManagementClient.java
index 7906b29eb8174..96fa752ec0170 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/MySqlManagementClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/MySqlManagementClient.java
@@ -23,13 +23,6 @@ public interface MySqlManagementClient {
*/
String getEndpoint();
- /**
- * Gets Api Version.
- *
- * @return the apiVersion value.
- */
- String getApiVersion();
-
/**
* Gets The HTTP pipeline to send requests through.
*
@@ -59,18 +52,18 @@ public interface MySqlManagementClient {
ReplicasClient getReplicas();
/**
- * Gets the BackupsClient object to access its operations.
+ * Gets the FirewallRulesClient object to access its operations.
*
- * @return the BackupsClient object.
+ * @return the FirewallRulesClient object.
*/
- BackupsClient getBackups();
+ FirewallRulesClient getFirewallRules();
/**
- * Gets the FirewallRulesClient object to access its operations.
+ * Gets the VirtualNetworkRulesClient object to access its operations.
*
- * @return the FirewallRulesClient object.
+ * @return the VirtualNetworkRulesClient object.
*/
- FirewallRulesClient getFirewallRules();
+ VirtualNetworkRulesClient getVirtualNetworkRules();
/**
* Gets the DatabasesClient object to access its operations.
@@ -87,32 +80,53 @@ public interface MySqlManagementClient {
ConfigurationsClient getConfigurations();
/**
- * Gets the LocationBasedCapabilitiesClient object to access its operations.
+ * Gets the ServerParametersClient object to access its operations.
*
- * @return the LocationBasedCapabilitiesClient object.
+ * @return the ServerParametersClient object.
*/
- LocationBasedCapabilitiesClient getLocationBasedCapabilities();
+ ServerParametersClient getServerParameters();
/**
- * Gets the CheckVirtualNetworkSubnetUsagesClient object to access its operations.
+ * Gets the LogFilesClient object to access its operations.
*
- * @return the CheckVirtualNetworkSubnetUsagesClient object.
+ * @return the LogFilesClient object.
*/
- CheckVirtualNetworkSubnetUsagesClient getCheckVirtualNetworkSubnetUsages();
+ LogFilesClient getLogFiles();
/**
- * Gets the CheckNameAvailabilitiesClient object to access its operations.
+ * Gets the ServerAdministratorsClient object to access its operations.
*
- * @return the CheckNameAvailabilitiesClient object.
+ * @return the ServerAdministratorsClient object.
*/
- CheckNameAvailabilitiesClient getCheckNameAvailabilities();
+ ServerAdministratorsClient getServerAdministrators();
+
+ /**
+ * Gets the RecoverableServersClient object to access its operations.
+ *
+ * @return the RecoverableServersClient object.
+ */
+ RecoverableServersClient getRecoverableServers();
+
+ /**
+ * Gets the ServerBasedPerformanceTiersClient object to access its operations.
+ *
+ * @return the ServerBasedPerformanceTiersClient object.
+ */
+ ServerBasedPerformanceTiersClient getServerBasedPerformanceTiers();
+
+ /**
+ * Gets the LocationBasedPerformanceTiersClient object to access its operations.
+ *
+ * @return the LocationBasedPerformanceTiersClient object.
+ */
+ LocationBasedPerformanceTiersClient getLocationBasedPerformanceTiers();
/**
- * Gets the GetPrivateDnsZoneSuffixesClient object to access its operations.
+ * Gets the CheckNameAvailabilitiesClient object to access its operations.
*
- * @return the GetPrivateDnsZoneSuffixesClient object.
+ * @return the CheckNameAvailabilitiesClient object.
*/
- GetPrivateDnsZoneSuffixesClient getGetPrivateDnsZoneSuffixes();
+ CheckNameAvailabilitiesClient getCheckNameAvailabilities();
/**
* Gets the OperationsClient object to access its operations.
@@ -120,4 +134,89 @@ public interface MySqlManagementClient {
* @return the OperationsClient object.
*/
OperationsClient getOperations();
+
+ /**
+ * Gets the ServerSecurityAlertPoliciesClient object to access its operations.
+ *
+ * @return the ServerSecurityAlertPoliciesClient object.
+ */
+ ServerSecurityAlertPoliciesClient getServerSecurityAlertPolicies();
+
+ /**
+ * Gets the QueryTextsClient object to access its operations.
+ *
+ * @return the QueryTextsClient object.
+ */
+ QueryTextsClient getQueryTexts();
+
+ /**
+ * Gets the TopQueryStatisticsClient object to access its operations.
+ *
+ * @return the TopQueryStatisticsClient object.
+ */
+ TopQueryStatisticsClient getTopQueryStatistics();
+
+ /**
+ * Gets the WaitStatisticsClient object to access its operations.
+ *
+ * @return the WaitStatisticsClient object.
+ */
+ WaitStatisticsClient getWaitStatistics();
+
+ /**
+ * Gets the ResourceProvidersClient object to access its operations.
+ *
+ * @return the ResourceProvidersClient object.
+ */
+ ResourceProvidersClient getResourceProviders();
+
+ /**
+ * Gets the AdvisorsClient object to access its operations.
+ *
+ * @return the AdvisorsClient object.
+ */
+ AdvisorsClient getAdvisors();
+
+ /**
+ * Gets the RecommendedActionsClient object to access its operations.
+ *
+ * @return the RecommendedActionsClient object.
+ */
+ RecommendedActionsClient getRecommendedActions();
+
+ /**
+ * Gets the LocationBasedRecommendedActionSessionsOperationStatusClient object to access its operations.
+ *
+ * @return the LocationBasedRecommendedActionSessionsOperationStatusClient object.
+ */
+ LocationBasedRecommendedActionSessionsOperationStatusClient
+ getLocationBasedRecommendedActionSessionsOperationStatus();
+
+ /**
+ * Gets the LocationBasedRecommendedActionSessionsResultsClient object to access its operations.
+ *
+ * @return the LocationBasedRecommendedActionSessionsResultsClient object.
+ */
+ LocationBasedRecommendedActionSessionsResultsClient getLocationBasedRecommendedActionSessionsResults();
+
+ /**
+ * Gets the PrivateEndpointConnectionsClient object to access its operations.
+ *
+ * @return the PrivateEndpointConnectionsClient object.
+ */
+ PrivateEndpointConnectionsClient getPrivateEndpointConnections();
+
+ /**
+ * Gets the PrivateLinkResourcesClient object to access its operations.
+ *
+ * @return the PrivateLinkResourcesClient object.
+ */
+ PrivateLinkResourcesClient getPrivateLinkResources();
+
+ /**
+ * Gets the ServerKeysClient object to access its operations.
+ *
+ * @return the ServerKeysClient object.
+ */
+ ServerKeysClient getServerKeys();
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/OperationsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/OperationsClient.java
index 1dfe689d3e9a8..e437f6639b69d 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/OperationsClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/OperationsClient.java
@@ -6,9 +6,9 @@
import com.azure.core.annotation.ReturnType;
import com.azure.core.annotation.ServiceMethod;
-import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.OperationInner;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.OperationListResultInner;
/** An instance of this class provides access to all the operations defined in OperationsClient. */
public interface OperationsClient {
@@ -17,10 +17,10 @@ public interface OperationsClient {
*
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of resource provider operations as paginated response with {@link PagedIterable}.
+ * @return a list of resource provider operations.
*/
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list();
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationListResultInner list();
/**
* Lists all of the available REST API operations.
@@ -29,8 +29,8 @@ public interface OperationsClient {
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of resource provider operations as paginated response with {@link PagedIterable}.
+ * @return a list of resource provider operations along with {@link Response}.
*/
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(Context context);
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listWithResponse(Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateEndpointConnectionsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateEndpointConnectionsClient.java
new file mode 100644
index 0000000000000..fb4e1d82c7802
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateEndpointConnectionsClient.java
@@ -0,0 +1,289 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.PrivateEndpointConnectionInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.TagsObject;
+
+/** An instance of this class provides access to all the operations defined in PrivateEndpointConnectionsClient. */
+public interface PrivateEndpointConnectionsClient {
+ /**
+ * Gets a private endpoint connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner get(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName);
+
+ /**
+ * Gets a private endpoint connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Approve or reject a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters A private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters);
+
+ /**
+ * Approve or reject a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters A private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters,
+ Context context);
+
+ /**
+ * Approve or reject a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters A private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner createOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters);
+
+ /**
+ * Approve or reject a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters A private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner createOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters,
+ Context context);
+
+ /**
+ * Deletes a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Deletes a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes a private endpoint connection with a given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Updates private endpoint connection with the specified tags.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters Parameters supplied to the Update private endpoint connection Tags operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginUpdateTags(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName, TagsObject parameters);
+
+ /**
+ * Updates private endpoint connection with the specified tags.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters Parameters supplied to the Update private endpoint connection Tags operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginUpdateTags(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ TagsObject parameters,
+ Context context);
+
+ /**
+ * Updates private endpoint connection with the specified tags.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters Parameters supplied to the Update private endpoint connection Tags operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner updateTags(
+ String resourceGroupName, String serverName, String privateEndpointConnectionName, TagsObject parameters);
+
+ /**
+ * Updates private endpoint connection with the specified tags.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param privateEndpointConnectionName The privateEndpointConnectionName parameter.
+ * @param parameters Parameters supplied to the Update private endpoint connection Tags operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private endpoint connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner updateTags(
+ String resourceGroupName,
+ String serverName,
+ String privateEndpointConnectionName,
+ TagsObject parameters,
+ Context context);
+
+ /**
+ * Gets all private endpoint connections on a server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return all private endpoint connections on a server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName);
+
+ /**
+ * Gets all private endpoint connections on a server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return all private endpoint connections on a server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateLinkResourcesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateLinkResourcesClient.java
new file mode 100644
index 0000000000000..1879063e1e2b4
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/PrivateLinkResourcesClient.java
@@ -0,0 +1,72 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.PrivateLinkResourceInner;
+
+/** An instance of this class provides access to all the operations defined in PrivateLinkResourcesClient. */
+public interface PrivateLinkResourcesClient {
+ /**
+ * Gets the private link resources for MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the private link resources for MySQL server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName);
+
+ /**
+ * Gets the private link resources for MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the private link resources for MySQL server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Gets a private link resource for MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param groupName The name of the private link resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private link resource for MySQL server.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateLinkResourceInner get(String resourceGroupName, String serverName, String groupName);
+
+ /**
+ * Gets a private link resource for MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param groupName The name of the private link resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private link resource for MySQL server along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String groupName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/QueryTextsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/QueryTextsClient.java
new file mode 100644
index 0000000000000..24815f1999810
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/QueryTextsClient.java
@@ -0,0 +1,76 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.QueryTextInner;
+import java.util.List;
+
+/** An instance of this class provides access to all the operations defined in QueryTextsClient. */
+public interface QueryTextsClient {
+ /**
+ * Retrieve the Query-Store query texts for the queryId.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryId The Query-Store query identifier.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Query Text.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ QueryTextInner get(String resourceGroupName, String serverName, String queryId);
+
+ /**
+ * Retrieve the Query-Store query texts for the queryId.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryId The Query-Store query identifier.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Query Text along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String queryId, Context context);
+
+ /**
+ * Retrieve the Query-Store query texts for specified queryIds.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryIds The query identifiers.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of query texts as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName, List queryIds);
+
+ /**
+ * Retrieve the Query-Store query texts for specified queryIds.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryIds The query identifiers.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of query texts as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, List queryIds, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecommendedActionsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecommendedActionsClient.java
new file mode 100644
index 0000000000000..c91670cfce014
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecommendedActionsClient.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.RecommendationActionInner;
+
+/** An instance of this class provides access to all the operations defined in RecommendedActionsClient. */
+public interface RecommendedActionsClient {
+ /**
+ * Retrieve recommended actions from the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param recommendedActionName The recommended action name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Recommendation Action.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RecommendationActionInner get(
+ String resourceGroupName, String serverName, String advisorName, String recommendedActionName);
+
+ /**
+ * Retrieve recommended actions from the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param recommendedActionName The recommended action name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Recommendation Action along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String advisorName, String recommendedActionName, Context context);
+
+ /**
+ * Retrieve recommended actions from the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of recommendation actions as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, String advisorName);
+
+ /**
+ * Retrieve recommended actions from the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param sessionId The recommendation action session identifier.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of recommendation actions as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, String advisorName, String sessionId, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/GetPrivateDnsZoneSuffixesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecoverableServersClient.java
similarity index 58%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/GetPrivateDnsZoneSuffixesClient.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecoverableServersClient.java
index e7d9ca74478be..8e12e6153097d 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/GetPrivateDnsZoneSuffixesClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/RecoverableServersClient.java
@@ -8,29 +8,35 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.GetPrivateDnsZoneSuffixResponseInner;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.RecoverableServerResourceInner;
-/** An instance of this class provides access to all the operations defined in GetPrivateDnsZoneSuffixesClient. */
-public interface GetPrivateDnsZoneSuffixesClient {
+/** An instance of this class provides access to all the operations defined in RecoverableServersClient. */
+public interface RecoverableServersClient {
/**
- * Get private DNS zone suffix in the cloud.
+ * Gets a recoverable MySQL Server.
*
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return private DNS zone suffix in the cloud.
+ * @return a recoverable MySQL Server.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- GetPrivateDnsZoneSuffixResponseInner execute();
+ RecoverableServerResourceInner get(String resourceGroupName, String serverName);
/**
- * Get private DNS zone suffix in the cloud.
+ * Gets a recoverable MySQL Server.
*
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return private DNS zone suffix in the cloud along with {@link Response}.
+ * @return a recoverable MySQL Server along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response executeWithResponse(Context context);
+ Response getWithResponse(
+ String resourceGroupName, String serverName, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ResourceProvidersClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ResourceProvidersClient.java
new file mode 100644
index 0000000000000..c0b134384f371
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ResourceProvidersClient.java
@@ -0,0 +1,109 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.QueryPerformanceInsightResetDataResultInner;
+
+/** An instance of this class provides access to all the operations defined in ResourceProvidersClient. */
+public interface ResourceProvidersClient {
+ /**
+ * Reset data for Query Performance Insight.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of Query Performance Insight data reset.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ QueryPerformanceInsightResetDataResultInner resetQueryPerformanceInsightData(
+ String resourceGroupName, String serverName);
+
+ /**
+ * Reset data for Query Performance Insight.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of Query Performance Insight data reset along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response resetQueryPerformanceInsightDataWithResponse(
+ String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Create recommendation action session for the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param databaseName The name of the database.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateRecommendedActionSession(
+ String resourceGroupName, String serverName, String advisorName, String databaseName);
+
+ /**
+ * Create recommendation action session for the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param databaseName The name of the database.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateRecommendedActionSession(
+ String resourceGroupName, String serverName, String advisorName, String databaseName, Context context);
+
+ /**
+ * Create recommendation action session for the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param databaseName The name of the database.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createRecommendedActionSession(
+ String resourceGroupName, String serverName, String advisorName, String databaseName);
+
+ /**
+ * Create recommendation action session for the advisor.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param advisorName The advisor name for recommendation action.
+ * @param databaseName The name of the database.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createRecommendedActionSession(
+ String resourceGroupName, String serverName, String advisorName, String databaseName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerAdministratorsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerAdministratorsClient.java
new file mode 100644
index 0000000000000..c726cb525445b
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerAdministratorsClient.java
@@ -0,0 +1,192 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerAdministratorResourceInner;
+
+/** An instance of this class provides access to all the operations defined in ServerAdministratorsClient. */
+public interface ServerAdministratorsClient {
+ /**
+ * Gets information about a AAD server administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about a AAD server administrator.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerAdministratorResourceInner get(String resourceGroupName, String serverName);
+
+ /**
+ * Gets information about a AAD server administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about a AAD server administrator along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Creates or update active directory administrator on an existing server. The update action will overwrite the
+ * existing administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param properties The required parameters for creating or updating an AAD server administrator.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a and external administrator to be created.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerAdministratorResourceInner> beginCreateOrUpdate(
+ String resourceGroupName, String serverName, ServerAdministratorResourceInner properties);
+
+ /**
+ * Creates or update active directory administrator on an existing server. The update action will overwrite the
+ * existing administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param properties The required parameters for creating or updating an AAD server administrator.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a and external administrator to be created.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerAdministratorResourceInner> beginCreateOrUpdate(
+ String resourceGroupName, String serverName, ServerAdministratorResourceInner properties, Context context);
+
+ /**
+ * Creates or update active directory administrator on an existing server. The update action will overwrite the
+ * existing administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param properties The required parameters for creating or updating an AAD server administrator.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a and external administrator to be created.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerAdministratorResourceInner createOrUpdate(
+ String resourceGroupName, String serverName, ServerAdministratorResourceInner properties);
+
+ /**
+ * Creates or update active directory administrator on an existing server. The update action will overwrite the
+ * existing administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param properties The required parameters for creating or updating an AAD server administrator.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a and external administrator to be created.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerAdministratorResourceInner createOrUpdate(
+ String resourceGroupName, String serverName, ServerAdministratorResourceInner properties, Context context);
+
+ /**
+ * Deletes server active directory administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String serverName);
+
+ /**
+ * Deletes server active directory administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Deletes server active directory administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName);
+
+ /**
+ * Deletes server active directory administrator.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Returns a list of server Administrators.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response to a list Active Directory Administrators request as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName);
+
+ /**
+ * Returns a list of server Administrators.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response to a list Active Directory Administrators request as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerBasedPerformanceTiersClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerBasedPerformanceTiersClient.java
new file mode 100644
index 0000000000000..5f6ce9bc125c2
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerBasedPerformanceTiersClient.java
@@ -0,0 +1,41 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.PerformanceTierPropertiesInner;
+
+/** An instance of this class provides access to all the operations defined in ServerBasedPerformanceTiersClient. */
+public interface ServerBasedPerformanceTiersClient {
+ /**
+ * List all the performance tiers for a MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of performance tiers as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName);
+
+ /**
+ * List all the performance tiers for a MySQL server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of performance tiers as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerKeysClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerKeysClient.java
new file mode 100644
index 0000000000000..3d3ca0a13c670
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerKeysClient.java
@@ -0,0 +1,197 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerKeyInner;
+
+/** An instance of this class provides access to all the operations defined in ServerKeysClient. */
+public interface ServerKeysClient {
+ /**
+ * Gets a list of Server keys.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of Server keys as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName);
+
+ /**
+ * Gets a list of Server keys.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of Server keys as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String serverName, Context context);
+
+ /**
+ * Gets a MySQL Server key.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be retrieved.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a MySQL Server key.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerKeyInner get(String resourceGroupName, String serverName, String keyName);
+
+ /**
+ * Gets a MySQL Server key.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be retrieved.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a MySQL Server key along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String keyName, Context context);
+
+ /**
+ * Creates or updates a MySQL Server key.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be operated on (updated or created).
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param parameters The requested MySQL Server key resource state.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a MySQL Server key.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerKeyInner> beginCreateOrUpdate(
+ String serverName, String keyName, String resourceGroupName, ServerKeyInner parameters);
+
+ /**
+ * Creates or updates a MySQL Server key.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be operated on (updated or created).
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param parameters The requested MySQL Server key resource state.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a MySQL Server key.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerKeyInner> beginCreateOrUpdate(
+ String serverName, String keyName, String resourceGroupName, ServerKeyInner parameters, Context context);
+
+ /**
+ * Creates or updates a MySQL Server key.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be operated on (updated or created).
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param parameters The requested MySQL Server key resource state.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a MySQL Server key.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerKeyInner createOrUpdate(
+ String serverName, String keyName, String resourceGroupName, ServerKeyInner parameters);
+
+ /**
+ * Creates or updates a MySQL Server key.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be operated on (updated or created).
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param parameters The requested MySQL Server key resource state.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a MySQL Server key.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerKeyInner createOrUpdate(
+ String serverName, String keyName, String resourceGroupName, ServerKeyInner parameters, Context context);
+
+ /**
+ * Deletes the MySQL Server key with the given name.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be deleted.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String serverName, String keyName, String resourceGroupName);
+
+ /**
+ * Deletes the MySQL Server key with the given name.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be deleted.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String serverName, String keyName, String resourceGroupName, Context context);
+
+ /**
+ * Deletes the MySQL Server key with the given name.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be deleted.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String serverName, String keyName, String resourceGroupName);
+
+ /**
+ * Deletes the MySQL Server key with the given name.
+ *
+ * @param serverName The name of the server.
+ * @param keyName The name of the MySQL Server key to be deleted.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String serverName, String keyName, String resourceGroupName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerParametersClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerParametersClient.java
new file mode 100644
index 0000000000000..a4cc31c58504e
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerParametersClient.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ConfigurationListResultInner;
+
+/** An instance of this class provides access to all the operations defined in ServerParametersClient. */
+public interface ServerParametersClient {
+ /**
+ * Update a list of configurations in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param value The parameters for updating a list of server configuration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a list of server configurations.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConfigurationListResultInner> beginListUpdateConfigurations(
+ String resourceGroupName, String serverName, ConfigurationListResultInner value);
+
+ /**
+ * Update a list of configurations in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param value The parameters for updating a list of server configuration.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a list of server configurations.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConfigurationListResultInner> beginListUpdateConfigurations(
+ String resourceGroupName, String serverName, ConfigurationListResultInner value, Context context);
+
+ /**
+ * Update a list of configurations in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param value The parameters for updating a list of server configuration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of server configurations.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConfigurationListResultInner listUpdateConfigurations(
+ String resourceGroupName, String serverName, ConfigurationListResultInner value);
+
+ /**
+ * Update a list of configurations in a given server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param value The parameters for updating a list of server configuration.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of server configurations.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConfigurationListResultInner listUpdateConfigurations(
+ String resourceGroupName, String serverName, ConfigurationListResultInner value, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerSecurityAlertPoliciesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerSecurityAlertPoliciesClient.java
new file mode 100644
index 0000000000000..c57edc5a7a077
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServerSecurityAlertPoliciesClient.java
@@ -0,0 +1,157 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerSecurityAlertPolicyInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.SecurityAlertPolicyName;
+
+/** An instance of this class provides access to all the operations defined in ServerSecurityAlertPoliciesClient. */
+public interface ServerSecurityAlertPoliciesClient {
+ /**
+ * Get a server's security alert policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the security alert policy.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a server's security alert policy.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerSecurityAlertPolicyInner get(
+ String resourceGroupName, String serverName, SecurityAlertPolicyName securityAlertPolicyName);
+
+ /**
+ * Get a server's security alert policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the security alert policy.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a server's security alert policy along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, SecurityAlertPolicyName securityAlertPolicyName, Context context);
+
+ /**
+ * Creates or updates a threat detection policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the threat detection policy.
+ * @param parameters The server security alert policy.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a server security alert policy.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerSecurityAlertPolicyInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ SecurityAlertPolicyName securityAlertPolicyName,
+ ServerSecurityAlertPolicyInner parameters);
+
+ /**
+ * Creates or updates a threat detection policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the threat detection policy.
+ * @param parameters The server security alert policy.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a server security alert policy.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ServerSecurityAlertPolicyInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ SecurityAlertPolicyName securityAlertPolicyName,
+ ServerSecurityAlertPolicyInner parameters,
+ Context context);
+
+ /**
+ * Creates or updates a threat detection policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the threat detection policy.
+ * @param parameters The server security alert policy.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a server security alert policy.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerSecurityAlertPolicyInner createOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ SecurityAlertPolicyName securityAlertPolicyName,
+ ServerSecurityAlertPolicyInner parameters);
+
+ /**
+ * Creates or updates a threat detection policy.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param securityAlertPolicyName The name of the threat detection policy.
+ * @param parameters The server security alert policy.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a server security alert policy.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerSecurityAlertPolicyInner createOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ SecurityAlertPolicyName securityAlertPolicyName,
+ ServerSecurityAlertPolicyInner parameters,
+ Context context);
+
+ /**
+ * Get the server's threat detection policies.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the server's threat detection policies as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName);
+
+ /**
+ * Get the server's threat detection policies.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the server's threat detection policies as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServersClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServersClient.java
index f052de5a16e36..0e556793cf1c1 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServersClient.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/ServersClient.java
@@ -12,8 +12,9 @@
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerForUpdate;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerRestartParameter;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerForCreate;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerUpdateParameters;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerUpgradeParameters;
/** An instance of this class provides access to all the operations defined in ServersClient. */
public interface ServersClient {
@@ -30,7 +31,7 @@ public interface ServersClient {
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
SyncPoller, ServerInner> beginCreate(
- String resourceGroupName, String serverName, ServerInner parameters);
+ String resourceGroupName, String serverName, ServerForCreate parameters);
/**
* Creates a new server or updates an existing server. The update action will overwrite the existing server.
@@ -46,7 +47,7 @@ SyncPoller, ServerInner> beginCreate(
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
SyncPoller, ServerInner> beginCreate(
- String resourceGroupName, String serverName, ServerInner parameters, Context context);
+ String resourceGroupName, String serverName, ServerForCreate parameters, Context context);
/**
* Creates a new server or updates an existing server. The update action will overwrite the existing server.
@@ -60,7 +61,7 @@ SyncPoller, ServerInner> beginCreate(
* @return represents a server.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ServerInner create(String resourceGroupName, String serverName, ServerInner parameters);
+ ServerInner create(String resourceGroupName, String serverName, ServerForCreate parameters);
/**
* Creates a new server or updates an existing server. The update action will overwrite the existing server.
@@ -75,7 +76,7 @@ SyncPoller, ServerInner> beginCreate(
* @return represents a server.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ServerInner create(String resourceGroupName, String serverName, ServerInner parameters, Context context);
+ ServerInner create(String resourceGroupName, String serverName, ServerForCreate parameters, Context context);
/**
* Updates an existing server. The request body can contain one to many of the properties present in the normal
@@ -91,7 +92,7 @@ SyncPoller, ServerInner> beginCreate(
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
SyncPoller, ServerInner> beginUpdate(
- String resourceGroupName, String serverName, ServerForUpdate parameters);
+ String resourceGroupName, String serverName, ServerUpdateParameters parameters);
/**
* Updates an existing server. The request body can contain one to many of the properties present in the normal
@@ -108,7 +109,7 @@ SyncPoller, ServerInner> beginUpdate(
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
SyncPoller, ServerInner> beginUpdate(
- String resourceGroupName, String serverName, ServerForUpdate parameters, Context context);
+ String resourceGroupName, String serverName, ServerUpdateParameters parameters, Context context);
/**
* Updates an existing server. The request body can contain one to many of the properties present in the normal
@@ -123,7 +124,7 @@ SyncPoller, ServerInner> beginUpdate(
* @return represents a server.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ServerInner update(String resourceGroupName, String serverName, ServerForUpdate parameters);
+ ServerInner update(String resourceGroupName, String serverName, ServerUpdateParameters parameters);
/**
* Updates an existing server. The request body can contain one to many of the properties present in the normal
@@ -139,7 +140,7 @@ SyncPoller, ServerInner> beginUpdate(
* @return represents a server.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ServerInner update(String resourceGroupName, String serverName, ServerForUpdate parameters, Context context);
+ ServerInner update(String resourceGroupName, String serverName, ServerUpdateParameters parameters, Context context);
/**
* Deletes a server.
@@ -268,7 +269,7 @@ SyncPoller, ServerInner> beginUpdate(
PagedIterable list(Context context);
/**
- * Manual failover a server.
+ * Restarts a server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -278,10 +279,10 @@ SyncPoller, ServerInner> beginUpdate(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginFailover(String resourceGroupName, String serverName);
+ SyncPoller, Void> beginRestart(String resourceGroupName, String serverName);
/**
- * Manual failover a server.
+ * Restarts a server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -292,10 +293,10 @@ SyncPoller, ServerInner> beginUpdate(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginFailover(String resourceGroupName, String serverName, Context context);
+ SyncPoller, Void> beginRestart(String resourceGroupName, String serverName, Context context);
/**
- * Manual failover a server.
+ * Restarts a server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -304,10 +305,10 @@ SyncPoller, ServerInner> beginUpdate(
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void failover(String resourceGroupName, String serverName);
+ void restart(String resourceGroupName, String serverName);
/**
- * Manual failover a server.
+ * Restarts a server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -317,29 +318,26 @@ SyncPoller, ServerInner> beginUpdate(
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void failover(String resourceGroupName, String serverName, Context context);
+ void restart(String resourceGroupName, String serverName, Context context);
/**
- * Restarts a server.
+ * Starts a stopped server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param parameters The required parameters for restarting a server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginRestart(
- String resourceGroupName, String serverName, ServerRestartParameter parameters);
+ SyncPoller, Void> beginStart(String resourceGroupName, String serverName);
/**
- * Restarts a server.
+ * Starts a stopped server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param parameters The required parameters for restarting a server.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -347,38 +345,35 @@ SyncPoller, Void> beginRestart(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginRestart(
- String resourceGroupName, String serverName, ServerRestartParameter parameters, Context context);
+ SyncPoller, Void> beginStart(String resourceGroupName, String serverName, Context context);
/**
- * Restarts a server.
+ * Starts a stopped server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param parameters The required parameters for restarting a server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void restart(String resourceGroupName, String serverName, ServerRestartParameter parameters);
+ void start(String resourceGroupName, String serverName);
/**
- * Restarts a server.
+ * Starts a stopped server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param parameters The required parameters for restarting a server.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void restart(String resourceGroupName, String serverName, ServerRestartParameter parameters, Context context);
+ void start(String resourceGroupName, String serverName, Context context);
/**
- * Starts a server.
+ * Stops a running server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -388,10 +383,10 @@ SyncPoller, Void> beginRestart(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginStart(String resourceGroupName, String serverName);
+ SyncPoller, Void> beginStop(String resourceGroupName, String serverName);
/**
- * Starts a server.
+ * Stops a running server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -402,10 +397,10 @@ SyncPoller, Void> beginRestart(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginStart(String resourceGroupName, String serverName, Context context);
+ SyncPoller, Void> beginStop(String resourceGroupName, String serverName, Context context);
/**
- * Starts a server.
+ * Stops a running server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -414,10 +409,10 @@ SyncPoller, Void> beginRestart(
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void start(String resourceGroupName, String serverName);
+ void stop(String resourceGroupName, String serverName);
/**
- * Starts a server.
+ * Stops a running server.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -427,26 +422,29 @@ SyncPoller, Void> beginRestart(
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void start(String resourceGroupName, String serverName, Context context);
+ void stop(String resourceGroupName, String serverName, Context context);
/**
- * Stops a server.
+ * Upgrade server version.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
+ * @param parameters The required parameters for updating a server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginStop(String resourceGroupName, String serverName);
+ SyncPoller, Void> beginUpgrade(
+ String resourceGroupName, String serverName, ServerUpgradeParameters parameters);
/**
- * Stops a server.
+ * Upgrade server version.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
+ * @param parameters The required parameters for updating a server.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -454,30 +452,33 @@ SyncPoller, Void> beginRestart(
* @return the {@link SyncPoller} for polling of long-running operation.
*/
@ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
- SyncPoller, Void> beginStop(String resourceGroupName, String serverName, Context context);
+ SyncPoller, Void> beginUpgrade(
+ String resourceGroupName, String serverName, ServerUpgradeParameters parameters, Context context);
/**
- * Stops a server.
+ * Upgrade server version.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
+ * @param parameters The required parameters for updating a server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void stop(String resourceGroupName, String serverName);
+ void upgrade(String resourceGroupName, String serverName, ServerUpgradeParameters parameters);
/**
- * Stops a server.
+ * Upgrade server version.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
+ * @param parameters The required parameters for updating a server.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void stop(String resourceGroupName, String serverName, Context context);
+ void upgrade(String resourceGroupName, String serverName, ServerUpgradeParameters parameters, Context context);
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/TopQueryStatisticsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/TopQueryStatisticsClient.java
new file mode 100644
index 0000000000000..06d53be5bedc2
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/TopQueryStatisticsClient.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.QueryStatisticInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.TopQueryStatisticsInput;
+
+/** An instance of this class provides access to all the operations defined in TopQueryStatisticsClient. */
+public interface TopQueryStatisticsClient {
+ /**
+ * Retrieve the query statistic for specified identifier.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryStatisticId The Query Statistic identifier.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Query Statistic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ QueryStatisticInner get(String resourceGroupName, String serverName, String queryStatisticId);
+
+ /**
+ * Retrieve the query statistic for specified identifier.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param queryStatisticId The Query Statistic identifier.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Query Statistic along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String queryStatisticId, Context context);
+
+ /**
+ * Retrieve the Query-Store top queries for specified metric and aggregation.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param parameters The required parameters for retrieving top query statistics.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, TopQueryStatisticsInput parameters);
+
+ /**
+ * Retrieve the Query-Store top queries for specified metric and aggregation.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param parameters The required parameters for retrieving top query statistics.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, TopQueryStatisticsInput parameters, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/VirtualNetworkRulesClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/VirtualNetworkRulesClient.java
new file mode 100644
index 0000000000000..2a28efb08be8c
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/VirtualNetworkRulesClient.java
@@ -0,0 +1,206 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.VirtualNetworkRuleInner;
+
+/** An instance of this class provides access to all the operations defined in VirtualNetworkRulesClient. */
+public interface VirtualNetworkRulesClient {
+ /**
+ * Gets a virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a virtual network rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualNetworkRuleInner get(String resourceGroupName, String serverName, String virtualNetworkRuleName);
+
+ /**
+ * Gets a virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a virtual network rule along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String virtualNetworkRuleName, Context context);
+
+ /**
+ * Creates or updates an existing virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param parameters The requested virtual Network Rule Resource state.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a virtual network rule.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, VirtualNetworkRuleInner> beginCreateOrUpdate(
+ String resourceGroupName, String serverName, String virtualNetworkRuleName, VirtualNetworkRuleInner parameters);
+
+ /**
+ * Creates or updates an existing virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param parameters The requested virtual Network Rule Resource state.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of a virtual network rule.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, VirtualNetworkRuleInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String virtualNetworkRuleName,
+ VirtualNetworkRuleInner parameters,
+ Context context);
+
+ /**
+ * Creates or updates an existing virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param parameters The requested virtual Network Rule Resource state.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a virtual network rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualNetworkRuleInner createOrUpdate(
+ String resourceGroupName, String serverName, String virtualNetworkRuleName, VirtualNetworkRuleInner parameters);
+
+ /**
+ * Creates or updates an existing virtual network rule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param parameters The requested virtual Network Rule Resource state.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a virtual network rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualNetworkRuleInner createOrUpdate(
+ String resourceGroupName,
+ String serverName,
+ String virtualNetworkRuleName,
+ VirtualNetworkRuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes the virtual network rule with the given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String serverName, String virtualNetworkRuleName);
+
+ /**
+ * Deletes the virtual network rule with the given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String serverName, String virtualNetworkRuleName, Context context);
+
+ /**
+ * Deletes the virtual network rule with the given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName, String virtualNetworkRuleName);
+
+ /**
+ * Deletes the virtual network rule with the given name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param virtualNetworkRuleName The name of the virtual network rule.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String serverName, String virtualNetworkRuleName, Context context);
+
+ /**
+ * Gets a list of virtual network rules in a server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of virtual network rules in a server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName);
+
+ /**
+ * Gets a list of virtual network rules in a server.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of virtual network rules in a server as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(String resourceGroupName, String serverName, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/WaitStatisticsClient.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/WaitStatisticsClient.java
new file mode 100644
index 0000000000000..26b37f80db5c8
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/WaitStatisticsClient.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.WaitStatisticInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.WaitStatisticsInput;
+
+/** An instance of this class provides access to all the operations defined in WaitStatisticsClient. */
+public interface WaitStatisticsClient {
+ /**
+ * Retrieve wait statistics for specified identifier.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param waitStatisticsId The Wait Statistic identifier.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Wait Statistic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WaitStatisticInner get(String resourceGroupName, String serverName, String waitStatisticsId);
+
+ /**
+ * Retrieve wait statistics for specified identifier.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param waitStatisticsId The Wait Statistic identifier.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a Wait Statistic along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String serverName, String waitStatisticsId, Context context);
+
+ /**
+ * Retrieve wait statistics for specified aggregation window.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param parameters The required parameters for retrieving wait statistics.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of wait statistics as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, WaitStatisticsInput parameters);
+
+ /**
+ * Retrieve wait statistics for specified aggregation window.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serverName The name of the server.
+ * @param parameters The required parameters for retrieving wait statistics.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of wait statistics as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByServer(
+ String resourceGroupName, String serverName, WaitStatisticsInput parameters, Context context);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/AdvisorInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/AdvisorInner.java
new file mode 100644
index 0000000000000..5044711ba8fa9
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/AdvisorInner.java
@@ -0,0 +1,47 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Represents a recommendation action advisor. */
+@Fluent
+public final class AdvisorInner extends ProxyResource {
+ /*
+ * The properties of a recommendation action advisor.
+ */
+ @JsonProperty(value = "properties")
+ private Object properties;
+
+ /**
+ * Get the properties property: The properties of a recommendation action advisor.
+ *
+ * @return the properties value.
+ */
+ public Object properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The properties of a recommendation action advisor.
+ *
+ * @param properties the properties value to set.
+ * @return the AdvisorInner object itself.
+ */
+ public AdvisorInner withProperties(Object properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/CapabilityPropertiesInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/CapabilityPropertiesInner.java
deleted file mode 100644
index fc92e7825a568..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/CapabilityPropertiesInner.java
+++ /dev/null
@@ -1,85 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerEditionCapability;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Location capabilities. */
-@Immutable
-public final class CapabilityPropertiesInner {
- /*
- * zone name
- */
- @JsonProperty(value = "zone", access = JsonProperty.Access.WRITE_ONLY)
- private String zone;
-
- /*
- * Supported high availability mode
- */
- @JsonProperty(value = "supportedHAMode", access = JsonProperty.Access.WRITE_ONLY)
- private List supportedHAMode;
-
- /*
- * supported geo backup regions
- */
- @JsonProperty(value = "supportedGeoBackupRegions", access = JsonProperty.Access.WRITE_ONLY)
- private List supportedGeoBackupRegions;
-
- /*
- * A list of supported flexible server editions.
- */
- @JsonProperty(value = "supportedFlexibleServerEditions", access = JsonProperty.Access.WRITE_ONLY)
- private List supportedFlexibleServerEditions;
-
- /**
- * Get the zone property: zone name.
- *
- * @return the zone value.
- */
- public String zone() {
- return this.zone;
- }
-
- /**
- * Get the supportedHAMode property: Supported high availability mode.
- *
- * @return the supportedHAMode value.
- */
- public List supportedHAMode() {
- return this.supportedHAMode;
- }
-
- /**
- * Get the supportedGeoBackupRegions property: supported geo backup regions.
- *
- * @return the supportedGeoBackupRegions value.
- */
- public List supportedGeoBackupRegions() {
- return this.supportedGeoBackupRegions;
- }
-
- /**
- * Get the supportedFlexibleServerEditions property: A list of supported flexible server editions.
- *
- * @return the supportedFlexibleServerEditions value.
- */
- public List supportedFlexibleServerEditions() {
- return this.supportedFlexibleServerEditions;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (supportedFlexibleServerEditions() != null) {
- supportedFlexibleServerEditions().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationForBatchUpdateProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationForBatchUpdateProperties.java
deleted file mode 100644
index 560c498e7dee4..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationForBatchUpdateProperties.java
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** The properties can be updated for a configuration. */
-@Fluent
-public final class ConfigurationForBatchUpdateProperties {
- /*
- * Value of the configuration.
- */
- @JsonProperty(value = "value")
- private String value;
-
- /*
- * Source of the configuration.
- */
- @JsonProperty(value = "source")
- private String source;
-
- /**
- * Get the value property: Value of the configuration.
- *
- * @return the value value.
- */
- public String value() {
- return this.value;
- }
-
- /**
- * Set the value property: Value of the configuration.
- *
- * @param value the value value to set.
- * @return the ConfigurationForBatchUpdateProperties object itself.
- */
- public ConfigurationForBatchUpdateProperties withValue(String value) {
- this.value = value;
- return this;
- }
-
- /**
- * Get the source property: Source of the configuration.
- *
- * @return the source value.
- */
- public String source() {
- return this.source;
- }
-
- /**
- * Set the source property: Source of the configuration.
- *
- * @param source the source value to set.
- * @return the ConfigurationForBatchUpdateProperties object itself.
- */
- public ConfigurationForBatchUpdateProperties withSource(String source) {
- this.source = source;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationInner.java
index b2bae1b3d5948..fb5b716305dbb 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationInner.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationInner.java
@@ -6,11 +6,6 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.management.ProxyResource;
-import com.azure.core.management.SystemData;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ConfigurationSource;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsConfigPendingRestart;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsDynamicConfig;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsReadOnly;
import com.fasterxml.jackson.annotation.JsonProperty;
/** Represents a Configuration. */
@@ -22,12 +17,6 @@ public final class ConfigurationInner extends ProxyResource {
@JsonProperty(value = "properties")
private ConfigurationProperties innerProperties;
- /*
- * The system metadata relating to this resource.
- */
- @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
- private SystemData systemData;
-
/**
* Get the innerProperties property: The properties of a configuration.
*
@@ -37,15 +26,6 @@ private ConfigurationProperties innerProperties() {
return this.innerProperties;
}
- /**
- * Get the systemData property: The system metadata relating to this resource.
- *
- * @return the systemData value.
- */
- public SystemData systemData() {
- return this.systemData;
- }
-
/**
* Get the value property: Value of the configuration.
*
@@ -110,7 +90,7 @@ public String allowedValues() {
*
* @return the source value.
*/
- public ConfigurationSource source() {
+ public String source() {
return this.innerProperties() == null ? null : this.innerProperties().source();
}
@@ -120,7 +100,7 @@ public ConfigurationSource source() {
* @param source the source value to set.
* @return the ConfigurationInner object itself.
*/
- public ConfigurationInner withSource(ConfigurationSource source) {
+ public ConfigurationInner withSource(String source) {
if (this.innerProperties() == null) {
this.innerProperties = new ConfigurationProperties();
}
@@ -128,33 +108,6 @@ public ConfigurationInner withSource(ConfigurationSource source) {
return this;
}
- /**
- * Get the isReadOnly property: If is the configuration read only.
- *
- * @return the isReadOnly value.
- */
- public IsReadOnly isReadOnly() {
- return this.innerProperties() == null ? null : this.innerProperties().isReadOnly();
- }
-
- /**
- * Get the isConfigPendingRestart property: If is the configuration pending restart or not.
- *
- * @return the isConfigPendingRestart value.
- */
- public IsConfigPendingRestart isConfigPendingRestart() {
- return this.innerProperties() == null ? null : this.innerProperties().isConfigPendingRestart();
- }
-
- /**
- * Get the isDynamicConfig property: If is the configuration dynamic.
- *
- * @return the isDynamicConfig value.
- */
- public IsDynamicConfig isDynamicConfig() {
- return this.innerProperties() == null ? null : this.innerProperties().isDynamicConfig();
- }
-
/**
* Validates the instance.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationListResultInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationListResultInner.java
index 91a3ffdabd153..02bba4c1ac03f 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationListResultInner.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationListResultInner.java
@@ -17,12 +17,6 @@ public final class ConfigurationListResultInner {
@JsonProperty(value = "value")
private List value;
- /*
- * The link used to get the next page of operations.
- */
- @JsonProperty(value = "nextLink")
- private String nextLink;
-
/**
* Get the value property: The list of server configurations.
*
@@ -43,26 +37,6 @@ public ConfigurationListResultInner withValue(List value) {
return this;
}
- /**
- * Get the nextLink property: The link used to get the next page of operations.
- *
- * @return the nextLink value.
- */
- public String nextLink() {
- return this.nextLink;
- }
-
- /**
- * Set the nextLink property: The link used to get the next page of operations.
- *
- * @param nextLink the nextLink value to set.
- * @return the ConfigurationListResultInner object itself.
- */
- public ConfigurationListResultInner withNextLink(String nextLink) {
- this.nextLink = nextLink;
- return this;
- }
-
/**
* Validates the instance.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationProperties.java
index b14cf78fbe34a..085c70977f53e 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationProperties.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ConfigurationProperties.java
@@ -5,10 +5,6 @@
package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
import com.azure.core.annotation.Fluent;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ConfigurationSource;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsConfigPendingRestart;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsDynamicConfig;
-import com.azure.resourcemanager.mysqlflexibleserver.models.IsReadOnly;
import com.fasterxml.jackson.annotation.JsonProperty;
/** The properties of a configuration. */
@@ -48,25 +44,7 @@ public final class ConfigurationProperties {
* Source of the configuration.
*/
@JsonProperty(value = "source")
- private ConfigurationSource source;
-
- /*
- * If is the configuration read only.
- */
- @JsonProperty(value = "isReadOnly", access = JsonProperty.Access.WRITE_ONLY)
- private IsReadOnly isReadOnly;
-
- /*
- * If is the configuration pending restart or not.
- */
- @JsonProperty(value = "isConfigPendingRestart", access = JsonProperty.Access.WRITE_ONLY)
- private IsConfigPendingRestart isConfigPendingRestart;
-
- /*
- * If is the configuration dynamic.
- */
- @JsonProperty(value = "isDynamicConfig", access = JsonProperty.Access.WRITE_ONLY)
- private IsDynamicConfig isDynamicConfig;
+ private String source;
/**
* Get the value property: Value of the configuration.
@@ -129,7 +107,7 @@ public String allowedValues() {
*
* @return the source value.
*/
- public ConfigurationSource source() {
+ public String source() {
return this.source;
}
@@ -139,38 +117,11 @@ public ConfigurationSource source() {
* @param source the source value to set.
* @return the ConfigurationProperties object itself.
*/
- public ConfigurationProperties withSource(ConfigurationSource source) {
+ public ConfigurationProperties withSource(String source) {
this.source = source;
return this;
}
- /**
- * Get the isReadOnly property: If is the configuration read only.
- *
- * @return the isReadOnly value.
- */
- public IsReadOnly isReadOnly() {
- return this.isReadOnly;
- }
-
- /**
- * Get the isConfigPendingRestart property: If is the configuration pending restart or not.
- *
- * @return the isConfigPendingRestart value.
- */
- public IsConfigPendingRestart isConfigPendingRestart() {
- return this.isConfigPendingRestart;
- }
-
- /**
- * Get the isDynamicConfig property: If is the configuration dynamic.
- *
- * @return the isDynamicConfig value.
- */
- public IsDynamicConfig isDynamicConfig() {
- return this.isDynamicConfig;
- }
-
/**
* Validates the instance.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/DatabaseInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/DatabaseInner.java
index 84fa277b59537..14e3839c6b3fb 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/DatabaseInner.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/DatabaseInner.java
@@ -6,7 +6,6 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.management.ProxyResource;
-import com.azure.core.management.SystemData;
import com.fasterxml.jackson.annotation.JsonProperty;
/** Represents a Database. */
@@ -18,12 +17,6 @@ public final class DatabaseInner extends ProxyResource {
@JsonProperty(value = "properties")
private DatabaseProperties innerProperties;
- /*
- * The system metadata relating to this resource.
- */
- @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
- private SystemData systemData;
-
/**
* Get the innerProperties property: The properties of a database.
*
@@ -33,15 +26,6 @@ private DatabaseProperties innerProperties() {
return this.innerProperties;
}
- /**
- * Get the systemData property: The system metadata relating to this resource.
- *
- * @return the systemData value.
- */
- public SystemData systemData() {
- return this.systemData;
- }
-
/**
* Get the charset property: The charset of the database.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/FirewallRuleInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/FirewallRuleInner.java
index 383d94fbe9500..8900ee70ffbe1 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/FirewallRuleInner.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/FirewallRuleInner.java
@@ -6,7 +6,6 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.management.ProxyResource;
-import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -19,12 +18,6 @@ public final class FirewallRuleInner extends ProxyResource {
@JsonProperty(value = "properties", required = true)
private FirewallRuleProperties innerProperties = new FirewallRuleProperties();
- /*
- * The system metadata relating to this resource.
- */
- @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
- private SystemData systemData;
-
/**
* Get the innerProperties property: The properties of a firewall rule.
*
@@ -34,15 +27,6 @@ private FirewallRuleProperties innerProperties() {
return this.innerProperties;
}
- /**
- * Get the systemData property: The system metadata relating to this resource.
- *
- * @return the systemData value.
- */
- public SystemData systemData() {
- return this.systemData;
- }
-
/**
* Get the startIpAddress property: The start IP address of the server firewall rule. Must be IPv4 format.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/GetPrivateDnsZoneSuffixResponseInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/GetPrivateDnsZoneSuffixResponseInner.java
deleted file mode 100644
index 1467d1aae6ff4..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/GetPrivateDnsZoneSuffixResponseInner.java
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** The response of get private dns zone suffix. */
-@Fluent
-public final class GetPrivateDnsZoneSuffixResponseInner {
- /*
- * Represents the private DNS zone suffix.
- */
- @JsonProperty(value = "privateDnsZoneSuffix")
- private String privateDnsZoneSuffix;
-
- /**
- * Get the privateDnsZoneSuffix property: Represents the private DNS zone suffix.
- *
- * @return the privateDnsZoneSuffix value.
- */
- public String privateDnsZoneSuffix() {
- return this.privateDnsZoneSuffix;
- }
-
- /**
- * Set the privateDnsZoneSuffix property: Represents the private DNS zone suffix.
- *
- * @param privateDnsZoneSuffix the privateDnsZoneSuffix value to set.
- * @return the GetPrivateDnsZoneSuffixResponseInner object itself.
- */
- public GetPrivateDnsZoneSuffixResponseInner withPrivateDnsZoneSuffix(String privateDnsZoneSuffix) {
- this.privateDnsZoneSuffix = privateDnsZoneSuffix;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileInner.java
new file mode 100644
index 0000000000000..5ae070c038ee7
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileInner.java
@@ -0,0 +1,127 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Represents a log file. */
+@Fluent
+public final class LogFileInner extends ProxyResource {
+ /*
+ * The properties of the log file.
+ */
+ @JsonProperty(value = "properties")
+ private LogFileProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: The properties of the log file.
+ *
+ * @return the innerProperties value.
+ */
+ private LogFileProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the sizeInKB property: Size of the log file.
+ *
+ * @return the sizeInKB value.
+ */
+ public Long sizeInKB() {
+ return this.innerProperties() == null ? null : this.innerProperties().sizeInKB();
+ }
+
+ /**
+ * Set the sizeInKB property: Size of the log file.
+ *
+ * @param sizeInKB the sizeInKB value to set.
+ * @return the LogFileInner object itself.
+ */
+ public LogFileInner withSizeInKB(Long sizeInKB) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LogFileProperties();
+ }
+ this.innerProperties().withSizeInKB(sizeInKB);
+ return this;
+ }
+
+ /**
+ * Get the createdTime property: Creation timestamp of the log file.
+ *
+ * @return the createdTime value.
+ */
+ public OffsetDateTime createdTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().createdTime();
+ }
+
+ /**
+ * Get the lastModifiedTime property: Last modified timestamp of the log file.
+ *
+ * @return the lastModifiedTime value.
+ */
+ public OffsetDateTime lastModifiedTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().lastModifiedTime();
+ }
+
+ /**
+ * Get the type property: Type of the log file.
+ *
+ * @return the type value.
+ */
+ public String typePropertiesType() {
+ return this.innerProperties() == null ? null : this.innerProperties().type();
+ }
+
+ /**
+ * Set the type property: Type of the log file.
+ *
+ * @param type the type value to set.
+ * @return the LogFileInner object itself.
+ */
+ public LogFileInner withTypePropertiesType(String type) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LogFileProperties();
+ }
+ this.innerProperties().withType(type);
+ return this;
+ }
+
+ /**
+ * Get the url property: The url to download the log file from.
+ *
+ * @return the url value.
+ */
+ public String url() {
+ return this.innerProperties() == null ? null : this.innerProperties().url();
+ }
+
+ /**
+ * Set the url property: The url to download the log file from.
+ *
+ * @param url the url value to set.
+ * @return the LogFileInner object itself.
+ */
+ public LogFileInner withUrl(String url) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LogFileProperties();
+ }
+ this.innerProperties().withUrl(url);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileProperties.java
new file mode 100644
index 0000000000000..74e5abe70eee4
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/LogFileProperties.java
@@ -0,0 +1,129 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** The properties of a log file. */
+@Fluent
+public final class LogFileProperties {
+ /*
+ * Size of the log file.
+ */
+ @JsonProperty(value = "sizeInKB")
+ private Long sizeInKB;
+
+ /*
+ * Creation timestamp of the log file.
+ */
+ @JsonProperty(value = "createdTime", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdTime;
+
+ /*
+ * Last modified timestamp of the log file.
+ */
+ @JsonProperty(value = "lastModifiedTime", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime lastModifiedTime;
+
+ /*
+ * Type of the log file.
+ */
+ @JsonProperty(value = "type")
+ private String type;
+
+ /*
+ * The url to download the log file from.
+ */
+ @JsonProperty(value = "url")
+ private String url;
+
+ /**
+ * Get the sizeInKB property: Size of the log file.
+ *
+ * @return the sizeInKB value.
+ */
+ public Long sizeInKB() {
+ return this.sizeInKB;
+ }
+
+ /**
+ * Set the sizeInKB property: Size of the log file.
+ *
+ * @param sizeInKB the sizeInKB value to set.
+ * @return the LogFileProperties object itself.
+ */
+ public LogFileProperties withSizeInKB(Long sizeInKB) {
+ this.sizeInKB = sizeInKB;
+ return this;
+ }
+
+ /**
+ * Get the createdTime property: Creation timestamp of the log file.
+ *
+ * @return the createdTime value.
+ */
+ public OffsetDateTime createdTime() {
+ return this.createdTime;
+ }
+
+ /**
+ * Get the lastModifiedTime property: Last modified timestamp of the log file.
+ *
+ * @return the lastModifiedTime value.
+ */
+ public OffsetDateTime lastModifiedTime() {
+ return this.lastModifiedTime;
+ }
+
+ /**
+ * Get the type property: Type of the log file.
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type property: Type of the log file.
+ *
+ * @param type the type value to set.
+ * @return the LogFileProperties object itself.
+ */
+ public LogFileProperties withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Get the url property: The url to download the log file from.
+ *
+ * @return the url value.
+ */
+ public String url() {
+ return this.url;
+ }
+
+ /**
+ * Set the url property: The url to download the log file from.
+ *
+ * @param url the url value to set.
+ * @return the LogFileProperties object itself.
+ */
+ public LogFileProperties withUrl(String url) {
+ this.url = url;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationInner.java
deleted file mode 100644
index 9530971937b93..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationInner.java
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.resourcemanager.mysqlflexibleserver.models.OperationDisplay;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.Map;
-
-/** REST API operation definition. */
-@Fluent
-public final class OperationInner {
- /*
- * The name of the operation being performed on this particular object.
- */
- @JsonProperty(value = "name")
- private String name;
-
- /*
- * The localized display information for this particular operation or
- * action.
- */
- @JsonProperty(value = "display")
- private OperationDisplay display;
-
- /*
- * The intended executor of the operation.
- */
- @JsonProperty(value = "origin")
- private String origin;
-
- /*
- * Additional descriptions for the operation.
- */
- @JsonProperty(value = "properties")
- @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
- private Map properties;
-
- /**
- * Get the name property: The name of the operation being performed on this particular object.
- *
- * @return the name value.
- */
- public String name() {
- return this.name;
- }
-
- /**
- * Set the name property: The name of the operation being performed on this particular object.
- *
- * @param name the name value to set.
- * @return the OperationInner object itself.
- */
- public OperationInner withName(String name) {
- this.name = name;
- return this;
- }
-
- /**
- * Get the display property: The localized display information for this particular operation or action.
- *
- * @return the display value.
- */
- public OperationDisplay display() {
- return this.display;
- }
-
- /**
- * Set the display property: The localized display information for this particular operation or action.
- *
- * @param display the display value to set.
- * @return the OperationInner object itself.
- */
- public OperationInner withDisplay(OperationDisplay display) {
- this.display = display;
- return this;
- }
-
- /**
- * Get the origin property: The intended executor of the operation.
- *
- * @return the origin value.
- */
- public String origin() {
- return this.origin;
- }
-
- /**
- * Set the origin property: The intended executor of the operation.
- *
- * @param origin the origin value to set.
- * @return the OperationInner object itself.
- */
- public OperationInner withOrigin(String origin) {
- this.origin = origin;
- return this;
- }
-
- /**
- * Get the properties property: Additional descriptions for the operation.
- *
- * @return the properties value.
- */
- public Map properties() {
- return this.properties;
- }
-
- /**
- * Set the properties property: Additional descriptions for the operation.
- *
- * @param properties the properties value to set.
- * @return the OperationInner object itself.
- */
- public OperationInner withProperties(Map properties) {
- this.properties = properties;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (display() != null) {
- display().validate();
- }
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationListResultInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationListResultInner.java
new file mode 100644
index 0000000000000..4ee32c295f2d1
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/OperationListResultInner.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.mysqlflexibleserver.models.Operation;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** A list of resource provider operations. */
+@Fluent
+public final class OperationListResultInner {
+ /*
+ * The list of resource provider operations.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /**
+ * Get the value property: The list of resource provider operations.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: The list of resource provider operations.
+ *
+ * @param value the value value to set.
+ * @return the OperationListResultInner object itself.
+ */
+ public OperationListResultInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PerformanceTierPropertiesInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PerformanceTierPropertiesInner.java
new file mode 100644
index 0000000000000..4ce1f2883f4bd
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PerformanceTierPropertiesInner.java
@@ -0,0 +1,234 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PerformanceTierServiceLevelObjectives;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Performance tier properties. */
+@Fluent
+public final class PerformanceTierPropertiesInner {
+ /*
+ * ID of the performance tier.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /*
+ * Maximum Backup retention in days for the performance tier edition
+ */
+ @JsonProperty(value = "maxBackupRetentionDays")
+ private Integer maxBackupRetentionDays;
+
+ /*
+ * Minimum Backup retention in days for the performance tier edition
+ */
+ @JsonProperty(value = "minBackupRetentionDays")
+ private Integer minBackupRetentionDays;
+
+ /*
+ * Max storage allowed for a server.
+ */
+ @JsonProperty(value = "maxStorageMB")
+ private Integer maxStorageMB;
+
+ /*
+ * Max storage allowed for a server.
+ */
+ @JsonProperty(value = "minLargeStorageMB")
+ private Integer minLargeStorageMB;
+
+ /*
+ * Max storage allowed for a server.
+ */
+ @JsonProperty(value = "maxLargeStorageMB")
+ private Integer maxLargeStorageMB;
+
+ /*
+ * Max storage allowed for a server.
+ */
+ @JsonProperty(value = "minStorageMB")
+ private Integer minStorageMB;
+
+ /*
+ * Service level objectives associated with the performance tier
+ */
+ @JsonProperty(value = "serviceLevelObjectives")
+ private List serviceLevelObjectives;
+
+ /**
+ * Get the id property: ID of the performance tier.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: ID of the performance tier.
+ *
+ * @param id the id value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the maxBackupRetentionDays property: Maximum Backup retention in days for the performance tier edition.
+ *
+ * @return the maxBackupRetentionDays value.
+ */
+ public Integer maxBackupRetentionDays() {
+ return this.maxBackupRetentionDays;
+ }
+
+ /**
+ * Set the maxBackupRetentionDays property: Maximum Backup retention in days for the performance tier edition.
+ *
+ * @param maxBackupRetentionDays the maxBackupRetentionDays value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMaxBackupRetentionDays(Integer maxBackupRetentionDays) {
+ this.maxBackupRetentionDays = maxBackupRetentionDays;
+ return this;
+ }
+
+ /**
+ * Get the minBackupRetentionDays property: Minimum Backup retention in days for the performance tier edition.
+ *
+ * @return the minBackupRetentionDays value.
+ */
+ public Integer minBackupRetentionDays() {
+ return this.minBackupRetentionDays;
+ }
+
+ /**
+ * Set the minBackupRetentionDays property: Minimum Backup retention in days for the performance tier edition.
+ *
+ * @param minBackupRetentionDays the minBackupRetentionDays value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMinBackupRetentionDays(Integer minBackupRetentionDays) {
+ this.minBackupRetentionDays = minBackupRetentionDays;
+ return this;
+ }
+
+ /**
+ * Get the maxStorageMB property: Max storage allowed for a server.
+ *
+ * @return the maxStorageMB value.
+ */
+ public Integer maxStorageMB() {
+ return this.maxStorageMB;
+ }
+
+ /**
+ * Set the maxStorageMB property: Max storage allowed for a server.
+ *
+ * @param maxStorageMB the maxStorageMB value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMaxStorageMB(Integer maxStorageMB) {
+ this.maxStorageMB = maxStorageMB;
+ return this;
+ }
+
+ /**
+ * Get the minLargeStorageMB property: Max storage allowed for a server.
+ *
+ * @return the minLargeStorageMB value.
+ */
+ public Integer minLargeStorageMB() {
+ return this.minLargeStorageMB;
+ }
+
+ /**
+ * Set the minLargeStorageMB property: Max storage allowed for a server.
+ *
+ * @param minLargeStorageMB the minLargeStorageMB value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMinLargeStorageMB(Integer minLargeStorageMB) {
+ this.minLargeStorageMB = minLargeStorageMB;
+ return this;
+ }
+
+ /**
+ * Get the maxLargeStorageMB property: Max storage allowed for a server.
+ *
+ * @return the maxLargeStorageMB value.
+ */
+ public Integer maxLargeStorageMB() {
+ return this.maxLargeStorageMB;
+ }
+
+ /**
+ * Set the maxLargeStorageMB property: Max storage allowed for a server.
+ *
+ * @param maxLargeStorageMB the maxLargeStorageMB value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMaxLargeStorageMB(Integer maxLargeStorageMB) {
+ this.maxLargeStorageMB = maxLargeStorageMB;
+ return this;
+ }
+
+ /**
+ * Get the minStorageMB property: Max storage allowed for a server.
+ *
+ * @return the minStorageMB value.
+ */
+ public Integer minStorageMB() {
+ return this.minStorageMB;
+ }
+
+ /**
+ * Set the minStorageMB property: Max storage allowed for a server.
+ *
+ * @param minStorageMB the minStorageMB value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withMinStorageMB(Integer minStorageMB) {
+ this.minStorageMB = minStorageMB;
+ return this;
+ }
+
+ /**
+ * Get the serviceLevelObjectives property: Service level objectives associated with the performance tier.
+ *
+ * @return the serviceLevelObjectives value.
+ */
+ public List serviceLevelObjectives() {
+ return this.serviceLevelObjectives;
+ }
+
+ /**
+ * Set the serviceLevelObjectives property: Service level objectives associated with the performance tier.
+ *
+ * @param serviceLevelObjectives the serviceLevelObjectives value to set.
+ * @return the PerformanceTierPropertiesInner object itself.
+ */
+ public PerformanceTierPropertiesInner withServiceLevelObjectives(
+ List serviceLevelObjectives) {
+ this.serviceLevelObjectives = serviceLevelObjectives;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (serviceLevelObjectives() != null) {
+ serviceLevelObjectives().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionInner.java
new file mode 100644
index 0000000000000..50e1af985eca0
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionInner.java
@@ -0,0 +1,97 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PrivateEndpointProperty;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PrivateLinkServiceConnectionStateProperty;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A private endpoint connection. */
+@Fluent
+public final class PrivateEndpointConnectionInner extends ProxyResource {
+ /*
+ * Resource properties.
+ */
+ @JsonProperty(value = "properties")
+ private PrivateEndpointConnectionProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private PrivateEndpointConnectionProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the privateEndpoint property: Private endpoint which the connection belongs to.
+ *
+ * @return the privateEndpoint value.
+ */
+ public PrivateEndpointProperty privateEndpoint() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateEndpoint();
+ }
+
+ /**
+ * Set the privateEndpoint property: Private endpoint which the connection belongs to.
+ *
+ * @param privateEndpoint the privateEndpoint value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateEndpoint(PrivateEndpointProperty privateEndpoint) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateEndpointConnectionProperties();
+ }
+ this.innerProperties().withPrivateEndpoint(privateEndpoint);
+ return this;
+ }
+
+ /**
+ * Get the privateLinkServiceConnectionState property: Connection state of the private endpoint connection.
+ *
+ * @return the privateLinkServiceConnectionState value.
+ */
+ public PrivateLinkServiceConnectionStateProperty privateLinkServiceConnectionState() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateLinkServiceConnectionState();
+ }
+
+ /**
+ * Set the privateLinkServiceConnectionState property: Connection state of the private endpoint connection.
+ *
+ * @param privateLinkServiceConnectionState the privateLinkServiceConnectionState value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateLinkServiceConnectionState(
+ PrivateLinkServiceConnectionStateProperty privateLinkServiceConnectionState) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateEndpointConnectionProperties();
+ }
+ this.innerProperties().withPrivateLinkServiceConnectionState(privateLinkServiceConnectionState);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: State of the private endpoint connection.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionProperties.java
new file mode 100644
index 0000000000000..bef5520b29538
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateEndpointConnectionProperties.java
@@ -0,0 +1,96 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PrivateEndpointProperty;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PrivateLinkServiceConnectionStateProperty;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of a private endpoint connection. */
+@Fluent
+public final class PrivateEndpointConnectionProperties {
+ /*
+ * Private endpoint which the connection belongs to.
+ */
+ @JsonProperty(value = "privateEndpoint")
+ private PrivateEndpointProperty privateEndpoint;
+
+ /*
+ * Connection state of the private endpoint connection.
+ */
+ @JsonProperty(value = "privateLinkServiceConnectionState")
+ private PrivateLinkServiceConnectionStateProperty privateLinkServiceConnectionState;
+
+ /*
+ * State of the private endpoint connection.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /**
+ * Get the privateEndpoint property: Private endpoint which the connection belongs to.
+ *
+ * @return the privateEndpoint value.
+ */
+ public PrivateEndpointProperty privateEndpoint() {
+ return this.privateEndpoint;
+ }
+
+ /**
+ * Set the privateEndpoint property: Private endpoint which the connection belongs to.
+ *
+ * @param privateEndpoint the privateEndpoint value to set.
+ * @return the PrivateEndpointConnectionProperties object itself.
+ */
+ public PrivateEndpointConnectionProperties withPrivateEndpoint(PrivateEndpointProperty privateEndpoint) {
+ this.privateEndpoint = privateEndpoint;
+ return this;
+ }
+
+ /**
+ * Get the privateLinkServiceConnectionState property: Connection state of the private endpoint connection.
+ *
+ * @return the privateLinkServiceConnectionState value.
+ */
+ public PrivateLinkServiceConnectionStateProperty privateLinkServiceConnectionState() {
+ return this.privateLinkServiceConnectionState;
+ }
+
+ /**
+ * Set the privateLinkServiceConnectionState property: Connection state of the private endpoint connection.
+ *
+ * @param privateLinkServiceConnectionState the privateLinkServiceConnectionState value to set.
+ * @return the PrivateEndpointConnectionProperties object itself.
+ */
+ public PrivateEndpointConnectionProperties withPrivateLinkServiceConnectionState(
+ PrivateLinkServiceConnectionStateProperty privateLinkServiceConnectionState) {
+ this.privateLinkServiceConnectionState = privateLinkServiceConnectionState;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: State of the private endpoint connection.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (privateEndpoint() != null) {
+ privateEndpoint().validate();
+ }
+ if (privateLinkServiceConnectionState() != null) {
+ privateLinkServiceConnectionState().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateLinkResourceInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateLinkResourceInner.java
new file mode 100644
index 0000000000000..1d2a7cad99c69
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/PrivateLinkResourceInner.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PrivateLinkResourceProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A private link resource. */
+@Immutable
+public final class PrivateLinkResourceInner extends ProxyResource {
+ /*
+ * The private link resource group id.
+ */
+ @JsonProperty(value = "properties", access = JsonProperty.Access.WRITE_ONLY)
+ private PrivateLinkResourceProperties properties;
+
+ /**
+ * Get the properties property: The private link resource group id.
+ *
+ * @return the properties value.
+ */
+ public PrivateLinkResourceProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryPerformanceInsightResetDataResultInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryPerformanceInsightResetDataResultInner.java
new file mode 100644
index 0000000000000..150df459ae79c
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryPerformanceInsightResetDataResultInner.java
@@ -0,0 +1,73 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.mysqlflexibleserver.models.QueryPerformanceInsightResetDataResultState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Result of Query Performance Insight data reset. */
+@Fluent
+public final class QueryPerformanceInsightResetDataResultInner {
+ /*
+ * Indicates result of the operation.
+ */
+ @JsonProperty(value = "status")
+ private QueryPerformanceInsightResetDataResultState status;
+
+ /*
+ * operation message.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * Get the status property: Indicates result of the operation.
+ *
+ * @return the status value.
+ */
+ public QueryPerformanceInsightResetDataResultState status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Indicates result of the operation.
+ *
+ * @param status the status value to set.
+ * @return the QueryPerformanceInsightResetDataResultInner object itself.
+ */
+ public QueryPerformanceInsightResetDataResultInner withStatus(QueryPerformanceInsightResetDataResultState status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the message property: operation message.
+ *
+ * @return the message value.
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the message property: operation message.
+ *
+ * @param message the message value to set.
+ * @return the QueryPerformanceInsightResetDataResultInner object itself.
+ */
+ public QueryPerformanceInsightResetDataResultInner withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticInner.java
new file mode 100644
index 0000000000000..844b938eedc75
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticInner.java
@@ -0,0 +1,271 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** Represents a Query Statistic. */
+@Fluent
+public final class QueryStatisticInner extends ProxyResource {
+ /*
+ * The properties of a query statistic.
+ */
+ @JsonProperty(value = "properties")
+ private QueryStatisticProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: The properties of a query statistic.
+ *
+ * @return the innerProperties value.
+ */
+ private QueryStatisticProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the queryId property: Database query identifier.
+ *
+ * @return the queryId value.
+ */
+ public String queryId() {
+ return this.innerProperties() == null ? null : this.innerProperties().queryId();
+ }
+
+ /**
+ * Set the queryId property: Database query identifier.
+ *
+ * @param queryId the queryId value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withQueryId(String queryId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withQueryId(queryId);
+ return this;
+ }
+
+ /**
+ * Get the startTime property: Observation start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().startTime();
+ }
+
+ /**
+ * Set the startTime property: Observation start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withStartTime(OffsetDateTime startTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withStartTime(startTime);
+ return this;
+ }
+
+ /**
+ * Get the endTime property: Observation end time.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().endTime();
+ }
+
+ /**
+ * Set the endTime property: Observation end time.
+ *
+ * @param endTime the endTime value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withEndTime(OffsetDateTime endTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withEndTime(endTime);
+ return this;
+ }
+
+ /**
+ * Get the aggregationFunction property: Aggregation function name.
+ *
+ * @return the aggregationFunction value.
+ */
+ public String aggregationFunction() {
+ return this.innerProperties() == null ? null : this.innerProperties().aggregationFunction();
+ }
+
+ /**
+ * Set the aggregationFunction property: Aggregation function name.
+ *
+ * @param aggregationFunction the aggregationFunction value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withAggregationFunction(String aggregationFunction) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withAggregationFunction(aggregationFunction);
+ return this;
+ }
+
+ /**
+ * Get the databaseNames property: The list of database names.
+ *
+ * @return the databaseNames value.
+ */
+ public List databaseNames() {
+ return this.innerProperties() == null ? null : this.innerProperties().databaseNames();
+ }
+
+ /**
+ * Set the databaseNames property: The list of database names.
+ *
+ * @param databaseNames the databaseNames value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withDatabaseNames(List databaseNames) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withDatabaseNames(databaseNames);
+ return this;
+ }
+
+ /**
+ * Get the queryExecutionCount property: Number of query executions in this time interval.
+ *
+ * @return the queryExecutionCount value.
+ */
+ public Long queryExecutionCount() {
+ return this.innerProperties() == null ? null : this.innerProperties().queryExecutionCount();
+ }
+
+ /**
+ * Set the queryExecutionCount property: Number of query executions in this time interval.
+ *
+ * @param queryExecutionCount the queryExecutionCount value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withQueryExecutionCount(Long queryExecutionCount) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withQueryExecutionCount(queryExecutionCount);
+ return this;
+ }
+
+ /**
+ * Get the metricName property: Metric name.
+ *
+ * @return the metricName value.
+ */
+ public String metricName() {
+ return this.innerProperties() == null ? null : this.innerProperties().metricName();
+ }
+
+ /**
+ * Set the metricName property: Metric name.
+ *
+ * @param metricName the metricName value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withMetricName(String metricName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withMetricName(metricName);
+ return this;
+ }
+
+ /**
+ * Get the metricDisplayName property: Metric display name.
+ *
+ * @return the metricDisplayName value.
+ */
+ public String metricDisplayName() {
+ return this.innerProperties() == null ? null : this.innerProperties().metricDisplayName();
+ }
+
+ /**
+ * Set the metricDisplayName property: Metric display name.
+ *
+ * @param metricDisplayName the metricDisplayName value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withMetricDisplayName(String metricDisplayName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withMetricDisplayName(metricDisplayName);
+ return this;
+ }
+
+ /**
+ * Get the metricValue property: Metric value.
+ *
+ * @return the metricValue value.
+ */
+ public Double metricValue() {
+ return this.innerProperties() == null ? null : this.innerProperties().metricValue();
+ }
+
+ /**
+ * Set the metricValue property: Metric value.
+ *
+ * @param metricValue the metricValue value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withMetricValue(Double metricValue) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withMetricValue(metricValue);
+ return this;
+ }
+
+ /**
+ * Get the metricValueUnit property: Metric value unit.
+ *
+ * @return the metricValueUnit value.
+ */
+ public String metricValueUnit() {
+ return this.innerProperties() == null ? null : this.innerProperties().metricValueUnit();
+ }
+
+ /**
+ * Set the metricValueUnit property: Metric value unit.
+ *
+ * @param metricValueUnit the metricValueUnit value to set.
+ * @return the QueryStatisticInner object itself.
+ */
+ public QueryStatisticInner withMetricValueUnit(String metricValueUnit) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryStatisticProperties();
+ }
+ this.innerProperties().withMetricValueUnit(metricValueUnit);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticProperties.java
new file mode 100644
index 0000000000000..539fffbfcaa10
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryStatisticProperties.java
@@ -0,0 +1,282 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** The properties of a query statistic. */
+@Fluent
+public final class QueryStatisticProperties {
+ /*
+ * Database query identifier.
+ */
+ @JsonProperty(value = "queryId")
+ private String queryId;
+
+ /*
+ * Observation start time.
+ */
+ @JsonProperty(value = "startTime")
+ private OffsetDateTime startTime;
+
+ /*
+ * Observation end time.
+ */
+ @JsonProperty(value = "endTime")
+ private OffsetDateTime endTime;
+
+ /*
+ * Aggregation function name.
+ */
+ @JsonProperty(value = "aggregationFunction")
+ private String aggregationFunction;
+
+ /*
+ * The list of database names.
+ */
+ @JsonProperty(value = "databaseNames")
+ private List databaseNames;
+
+ /*
+ * Number of query executions in this time interval.
+ */
+ @JsonProperty(value = "queryExecutionCount")
+ private Long queryExecutionCount;
+
+ /*
+ * Metric name.
+ */
+ @JsonProperty(value = "metricName")
+ private String metricName;
+
+ /*
+ * Metric display name.
+ */
+ @JsonProperty(value = "metricDisplayName")
+ private String metricDisplayName;
+
+ /*
+ * Metric value.
+ */
+ @JsonProperty(value = "metricValue")
+ private Double metricValue;
+
+ /*
+ * Metric value unit.
+ */
+ @JsonProperty(value = "metricValueUnit")
+ private String metricValueUnit;
+
+ /**
+ * Get the queryId property: Database query identifier.
+ *
+ * @return the queryId value.
+ */
+ public String queryId() {
+ return this.queryId;
+ }
+
+ /**
+ * Set the queryId property: Database query identifier.
+ *
+ * @param queryId the queryId value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withQueryId(String queryId) {
+ this.queryId = queryId;
+ return this;
+ }
+
+ /**
+ * Get the startTime property: Observation start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime property: Observation start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withStartTime(OffsetDateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the endTime property: Observation end time.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Set the endTime property: Observation end time.
+ *
+ * @param endTime the endTime value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withEndTime(OffsetDateTime endTime) {
+ this.endTime = endTime;
+ return this;
+ }
+
+ /**
+ * Get the aggregationFunction property: Aggregation function name.
+ *
+ * @return the aggregationFunction value.
+ */
+ public String aggregationFunction() {
+ return this.aggregationFunction;
+ }
+
+ /**
+ * Set the aggregationFunction property: Aggregation function name.
+ *
+ * @param aggregationFunction the aggregationFunction value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withAggregationFunction(String aggregationFunction) {
+ this.aggregationFunction = aggregationFunction;
+ return this;
+ }
+
+ /**
+ * Get the databaseNames property: The list of database names.
+ *
+ * @return the databaseNames value.
+ */
+ public List databaseNames() {
+ return this.databaseNames;
+ }
+
+ /**
+ * Set the databaseNames property: The list of database names.
+ *
+ * @param databaseNames the databaseNames value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withDatabaseNames(List databaseNames) {
+ this.databaseNames = databaseNames;
+ return this;
+ }
+
+ /**
+ * Get the queryExecutionCount property: Number of query executions in this time interval.
+ *
+ * @return the queryExecutionCount value.
+ */
+ public Long queryExecutionCount() {
+ return this.queryExecutionCount;
+ }
+
+ /**
+ * Set the queryExecutionCount property: Number of query executions in this time interval.
+ *
+ * @param queryExecutionCount the queryExecutionCount value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withQueryExecutionCount(Long queryExecutionCount) {
+ this.queryExecutionCount = queryExecutionCount;
+ return this;
+ }
+
+ /**
+ * Get the metricName property: Metric name.
+ *
+ * @return the metricName value.
+ */
+ public String metricName() {
+ return this.metricName;
+ }
+
+ /**
+ * Set the metricName property: Metric name.
+ *
+ * @param metricName the metricName value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withMetricName(String metricName) {
+ this.metricName = metricName;
+ return this;
+ }
+
+ /**
+ * Get the metricDisplayName property: Metric display name.
+ *
+ * @return the metricDisplayName value.
+ */
+ public String metricDisplayName() {
+ return this.metricDisplayName;
+ }
+
+ /**
+ * Set the metricDisplayName property: Metric display name.
+ *
+ * @param metricDisplayName the metricDisplayName value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withMetricDisplayName(String metricDisplayName) {
+ this.metricDisplayName = metricDisplayName;
+ return this;
+ }
+
+ /**
+ * Get the metricValue property: Metric value.
+ *
+ * @return the metricValue value.
+ */
+ public Double metricValue() {
+ return this.metricValue;
+ }
+
+ /**
+ * Set the metricValue property: Metric value.
+ *
+ * @param metricValue the metricValue value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withMetricValue(Double metricValue) {
+ this.metricValue = metricValue;
+ return this;
+ }
+
+ /**
+ * Get the metricValueUnit property: Metric value unit.
+ *
+ * @return the metricValueUnit value.
+ */
+ public String metricValueUnit() {
+ return this.metricValueUnit;
+ }
+
+ /**
+ * Set the metricValueUnit property: Metric value unit.
+ *
+ * @param metricValueUnit the metricValueUnit value to set.
+ * @return the QueryStatisticProperties object itself.
+ */
+ public QueryStatisticProperties withMetricValueUnit(String metricValueUnit) {
+ this.metricValueUnit = metricValueUnit;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextInner.java
new file mode 100644
index 0000000000000..ad50297514549
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextInner.java
@@ -0,0 +1,85 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Represents a Query Text. */
+@Fluent
+public final class QueryTextInner extends ProxyResource {
+ /*
+ * The properties of a query text.
+ */
+ @JsonProperty(value = "properties")
+ private QueryTextProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: The properties of a query text.
+ *
+ * @return the innerProperties value.
+ */
+ private QueryTextProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the queryId property: Query identifier unique to the server.
+ *
+ * @return the queryId value.
+ */
+ public String queryId() {
+ return this.innerProperties() == null ? null : this.innerProperties().queryId();
+ }
+
+ /**
+ * Set the queryId property: Query identifier unique to the server.
+ *
+ * @param queryId the queryId value to set.
+ * @return the QueryTextInner object itself.
+ */
+ public QueryTextInner withQueryId(String queryId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryTextProperties();
+ }
+ this.innerProperties().withQueryId(queryId);
+ return this;
+ }
+
+ /**
+ * Get the queryText property: Query text.
+ *
+ * @return the queryText value.
+ */
+ public String queryText() {
+ return this.innerProperties() == null ? null : this.innerProperties().queryText();
+ }
+
+ /**
+ * Set the queryText property: Query text.
+ *
+ * @param queryText the queryText value to set.
+ * @return the QueryTextInner object itself.
+ */
+ public QueryTextInner withQueryText(String queryText) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new QueryTextProperties();
+ }
+ this.innerProperties().withQueryText(queryText);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextProperties.java
new file mode 100644
index 0000000000000..3388700b48bf2
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/QueryTextProperties.java
@@ -0,0 +1,72 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties of a query text. */
+@Fluent
+public final class QueryTextProperties {
+ /*
+ * Query identifier unique to the server.
+ */
+ @JsonProperty(value = "queryId")
+ private String queryId;
+
+ /*
+ * Query text.
+ */
+ @JsonProperty(value = "queryText")
+ private String queryText;
+
+ /**
+ * Get the queryId property: Query identifier unique to the server.
+ *
+ * @return the queryId value.
+ */
+ public String queryId() {
+ return this.queryId;
+ }
+
+ /**
+ * Set the queryId property: Query identifier unique to the server.
+ *
+ * @param queryId the queryId value to set.
+ * @return the QueryTextProperties object itself.
+ */
+ public QueryTextProperties withQueryId(String queryId) {
+ this.queryId = queryId;
+ return this;
+ }
+
+ /**
+ * Get the queryText property: Query text.
+ *
+ * @return the queryText value.
+ */
+ public String queryText() {
+ return this.queryText;
+ }
+
+ /**
+ * Set the queryText property: Query text.
+ *
+ * @param queryText the queryText value to set.
+ * @return the QueryTextProperties object itself.
+ */
+ public QueryTextProperties withQueryText(String queryText) {
+ this.queryText = queryText;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionInner.java
new file mode 100644
index 0000000000000..b1a3c1561c577
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionInner.java
@@ -0,0 +1,225 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** Represents a Recommendation Action. */
+@Fluent
+public final class RecommendationActionInner extends ProxyResource {
+ /*
+ * The properties of a recommendation action.
+ */
+ @JsonProperty(value = "properties")
+ private RecommendationActionProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: The properties of a recommendation action.
+ *
+ * @return the innerProperties value.
+ */
+ private RecommendationActionProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the advisorName property: Advisor name.
+ *
+ * @return the advisorName value.
+ */
+ public String advisorName() {
+ return this.innerProperties() == null ? null : this.innerProperties().advisorName();
+ }
+
+ /**
+ * Set the advisorName property: Advisor name.
+ *
+ * @param advisorName the advisorName value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withAdvisorName(String advisorName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withAdvisorName(advisorName);
+ return this;
+ }
+
+ /**
+ * Get the sessionId property: Recommendation action session identifier.
+ *
+ * @return the sessionId value.
+ */
+ public String sessionId() {
+ return this.innerProperties() == null ? null : this.innerProperties().sessionId();
+ }
+
+ /**
+ * Set the sessionId property: Recommendation action session identifier.
+ *
+ * @param sessionId the sessionId value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withSessionId(String sessionId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withSessionId(sessionId);
+ return this;
+ }
+
+ /**
+ * Get the actionId property: Recommendation action identifier.
+ *
+ * @return the actionId value.
+ */
+ public Integer actionId() {
+ return this.innerProperties() == null ? null : this.innerProperties().actionId();
+ }
+
+ /**
+ * Set the actionId property: Recommendation action identifier.
+ *
+ * @param actionId the actionId value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withActionId(Integer actionId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withActionId(actionId);
+ return this;
+ }
+
+ /**
+ * Get the createdTime property: Recommendation action creation time.
+ *
+ * @return the createdTime value.
+ */
+ public OffsetDateTime createdTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().createdTime();
+ }
+
+ /**
+ * Set the createdTime property: Recommendation action creation time.
+ *
+ * @param createdTime the createdTime value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withCreatedTime(OffsetDateTime createdTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withCreatedTime(createdTime);
+ return this;
+ }
+
+ /**
+ * Get the expirationTime property: Recommendation action expiration time.
+ *
+ * @return the expirationTime value.
+ */
+ public OffsetDateTime expirationTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().expirationTime();
+ }
+
+ /**
+ * Set the expirationTime property: Recommendation action expiration time.
+ *
+ * @param expirationTime the expirationTime value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withExpirationTime(OffsetDateTime expirationTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withExpirationTime(expirationTime);
+ return this;
+ }
+
+ /**
+ * Get the reason property: Recommendation action reason.
+ *
+ * @return the reason value.
+ */
+ public String reason() {
+ return this.innerProperties() == null ? null : this.innerProperties().reason();
+ }
+
+ /**
+ * Set the reason property: Recommendation action reason.
+ *
+ * @param reason the reason value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withReason(String reason) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withReason(reason);
+ return this;
+ }
+
+ /**
+ * Get the recommendationType property: Recommendation action type.
+ *
+ * @return the recommendationType value.
+ */
+ public String recommendationType() {
+ return this.innerProperties() == null ? null : this.innerProperties().recommendationType();
+ }
+
+ /**
+ * Set the recommendationType property: Recommendation action type.
+ *
+ * @param recommendationType the recommendationType value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withRecommendationType(String recommendationType) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withRecommendationType(recommendationType);
+ return this;
+ }
+
+ /**
+ * Get the details property: Recommendation action details.
+ *
+ * @return the details value.
+ */
+ public Map details() {
+ return this.innerProperties() == null ? null : this.innerProperties().details();
+ }
+
+ /**
+ * Set the details property: Recommendation action details.
+ *
+ * @param details the details value to set.
+ * @return the RecommendationActionInner object itself.
+ */
+ public RecommendationActionInner withDetails(Map details) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RecommendationActionProperties();
+ }
+ this.innerProperties().withDetails(details);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionProperties.java
new file mode 100644
index 0000000000000..45731d63a9b4d
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendationActionProperties.java
@@ -0,0 +1,232 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** The properties of a recommendation action. */
+@Fluent
+public final class RecommendationActionProperties {
+ /*
+ * Advisor name.
+ */
+ @JsonProperty(value = "advisorName")
+ private String advisorName;
+
+ /*
+ * Recommendation action session identifier.
+ */
+ @JsonProperty(value = "sessionId")
+ private String sessionId;
+
+ /*
+ * Recommendation action identifier.
+ */
+ @JsonProperty(value = "actionId")
+ private Integer actionId;
+
+ /*
+ * Recommendation action creation time.
+ */
+ @JsonProperty(value = "createdTime")
+ private OffsetDateTime createdTime;
+
+ /*
+ * Recommendation action expiration time.
+ */
+ @JsonProperty(value = "expirationTime")
+ private OffsetDateTime expirationTime;
+
+ /*
+ * Recommendation action reason.
+ */
+ @JsonProperty(value = "reason")
+ private String reason;
+
+ /*
+ * Recommendation action type.
+ */
+ @JsonProperty(value = "recommendationType")
+ private String recommendationType;
+
+ /*
+ * Recommendation action details.
+ */
+ @JsonProperty(value = "details")
+ @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+ private Map details;
+
+ /**
+ * Get the advisorName property: Advisor name.
+ *
+ * @return the advisorName value.
+ */
+ public String advisorName() {
+ return this.advisorName;
+ }
+
+ /**
+ * Set the advisorName property: Advisor name.
+ *
+ * @param advisorName the advisorName value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withAdvisorName(String advisorName) {
+ this.advisorName = advisorName;
+ return this;
+ }
+
+ /**
+ * Get the sessionId property: Recommendation action session identifier.
+ *
+ * @return the sessionId value.
+ */
+ public String sessionId() {
+ return this.sessionId;
+ }
+
+ /**
+ * Set the sessionId property: Recommendation action session identifier.
+ *
+ * @param sessionId the sessionId value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withSessionId(String sessionId) {
+ this.sessionId = sessionId;
+ return this;
+ }
+
+ /**
+ * Get the actionId property: Recommendation action identifier.
+ *
+ * @return the actionId value.
+ */
+ public Integer actionId() {
+ return this.actionId;
+ }
+
+ /**
+ * Set the actionId property: Recommendation action identifier.
+ *
+ * @param actionId the actionId value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withActionId(Integer actionId) {
+ this.actionId = actionId;
+ return this;
+ }
+
+ /**
+ * Get the createdTime property: Recommendation action creation time.
+ *
+ * @return the createdTime value.
+ */
+ public OffsetDateTime createdTime() {
+ return this.createdTime;
+ }
+
+ /**
+ * Set the createdTime property: Recommendation action creation time.
+ *
+ * @param createdTime the createdTime value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withCreatedTime(OffsetDateTime createdTime) {
+ this.createdTime = createdTime;
+ return this;
+ }
+
+ /**
+ * Get the expirationTime property: Recommendation action expiration time.
+ *
+ * @return the expirationTime value.
+ */
+ public OffsetDateTime expirationTime() {
+ return this.expirationTime;
+ }
+
+ /**
+ * Set the expirationTime property: Recommendation action expiration time.
+ *
+ * @param expirationTime the expirationTime value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withExpirationTime(OffsetDateTime expirationTime) {
+ this.expirationTime = expirationTime;
+ return this;
+ }
+
+ /**
+ * Get the reason property: Recommendation action reason.
+ *
+ * @return the reason value.
+ */
+ public String reason() {
+ return this.reason;
+ }
+
+ /**
+ * Set the reason property: Recommendation action reason.
+ *
+ * @param reason the reason value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withReason(String reason) {
+ this.reason = reason;
+ return this;
+ }
+
+ /**
+ * Get the recommendationType property: Recommendation action type.
+ *
+ * @return the recommendationType value.
+ */
+ public String recommendationType() {
+ return this.recommendationType;
+ }
+
+ /**
+ * Set the recommendationType property: Recommendation action type.
+ *
+ * @param recommendationType the recommendationType value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withRecommendationType(String recommendationType) {
+ this.recommendationType = recommendationType;
+ return this;
+ }
+
+ /**
+ * Get the details property: Recommendation action details.
+ *
+ * @return the details value.
+ */
+ public Map details() {
+ return this.details;
+ }
+
+ /**
+ * Set the details property: Recommendation action details.
+ *
+ * @param details the details value to set.
+ * @return the RecommendationActionProperties object itself.
+ */
+ public RecommendationActionProperties withDetails(Map details) {
+ this.details = details;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendedActionSessionsOperationStatusInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendedActionSessionsOperationStatusInner.java
new file mode 100644
index 0000000000000..47ced56df4766
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecommendedActionSessionsOperationStatusInner.java
@@ -0,0 +1,99 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Recommendation action session operation status. */
+@Fluent
+public final class RecommendedActionSessionsOperationStatusInner {
+ /*
+ * Operation identifier.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * Operation start time.
+ */
+ @JsonProperty(value = "startTime")
+ private OffsetDateTime startTime;
+
+ /*
+ * Operation status.
+ */
+ @JsonProperty(value = "status")
+ private String status;
+
+ /**
+ * Get the name property: Operation identifier.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: Operation identifier.
+ *
+ * @param name the name value to set.
+ * @return the RecommendedActionSessionsOperationStatusInner object itself.
+ */
+ public RecommendedActionSessionsOperationStatusInner withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the startTime property: Operation start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime property: Operation start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the RecommendedActionSessionsOperationStatusInner object itself.
+ */
+ public RecommendedActionSessionsOperationStatusInner withStartTime(OffsetDateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the status property: Operation status.
+ *
+ * @return the status value.
+ */
+ public String status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Operation status.
+ *
+ * @param status the status value to set.
+ * @return the RecommendedActionSessionsOperationStatusInner object itself.
+ */
+ public RecommendedActionSessionsOperationStatusInner withStatus(String status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerProperties.java
new file mode 100644
index 0000000000000..26c84d4c20adc
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerProperties.java
@@ -0,0 +1,110 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The recoverable server's properties. */
+@Immutable
+public final class RecoverableServerProperties {
+ /*
+ * The last available backup date time.
+ */
+ @JsonProperty(value = "lastAvailableBackupDateTime", access = JsonProperty.Access.WRITE_ONLY)
+ private String lastAvailableBackupDateTime;
+
+ /*
+ * The service level objective
+ */
+ @JsonProperty(value = "serviceLevelObjective", access = JsonProperty.Access.WRITE_ONLY)
+ private String serviceLevelObjective;
+
+ /*
+ * Edition of the performance tier.
+ */
+ @JsonProperty(value = "edition", access = JsonProperty.Access.WRITE_ONLY)
+ private String edition;
+
+ /*
+ * vCore associated with the service level objective
+ */
+ @JsonProperty(value = "vCore", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer vCore;
+
+ /*
+ * Hardware generation associated with the service level objective
+ */
+ @JsonProperty(value = "hardwareGeneration", access = JsonProperty.Access.WRITE_ONLY)
+ private String hardwareGeneration;
+
+ /*
+ * The MySQL version
+ */
+ @JsonProperty(value = "version", access = JsonProperty.Access.WRITE_ONLY)
+ private String version;
+
+ /**
+ * Get the lastAvailableBackupDateTime property: The last available backup date time.
+ *
+ * @return the lastAvailableBackupDateTime value.
+ */
+ public String lastAvailableBackupDateTime() {
+ return this.lastAvailableBackupDateTime;
+ }
+
+ /**
+ * Get the serviceLevelObjective property: The service level objective.
+ *
+ * @return the serviceLevelObjective value.
+ */
+ public String serviceLevelObjective() {
+ return this.serviceLevelObjective;
+ }
+
+ /**
+ * Get the edition property: Edition of the performance tier.
+ *
+ * @return the edition value.
+ */
+ public String edition() {
+ return this.edition;
+ }
+
+ /**
+ * Get the vCore property: vCore associated with the service level objective.
+ *
+ * @return the vCore value.
+ */
+ public Integer vCore() {
+ return this.vCore;
+ }
+
+ /**
+ * Get the hardwareGeneration property: Hardware generation associated with the service level objective.
+ *
+ * @return the hardwareGeneration value.
+ */
+ public String hardwareGeneration() {
+ return this.hardwareGeneration;
+ }
+
+ /**
+ * Get the version property: The MySQL version.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerResourceInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerResourceInner.java
new file mode 100644
index 0000000000000..00cc9684e1958
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/RecoverableServerResourceInner.java
@@ -0,0 +1,93 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A recoverable server resource. */
+@Fluent
+public final class RecoverableServerResourceInner extends ProxyResource {
+ /*
+ * Resource properties.
+ */
+ @JsonProperty(value = "properties")
+ private RecoverableServerProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private RecoverableServerProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the lastAvailableBackupDateTime property: The last available backup date time.
+ *
+ * @return the lastAvailableBackupDateTime value.
+ */
+ public String lastAvailableBackupDateTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().lastAvailableBackupDateTime();
+ }
+
+ /**
+ * Get the serviceLevelObjective property: The service level objective.
+ *
+ * @return the serviceLevelObjective value.
+ */
+ public String serviceLevelObjective() {
+ return this.innerProperties() == null ? null : this.innerProperties().serviceLevelObjective();
+ }
+
+ /**
+ * Get the edition property: Edition of the performance tier.
+ *
+ * @return the edition value.
+ */
+ public String edition() {
+ return this.innerProperties() == null ? null : this.innerProperties().edition();
+ }
+
+ /**
+ * Get the vCore property: vCore associated with the service level objective.
+ *
+ * @return the vCore value.
+ */
+ public Integer vCore() {
+ return this.innerProperties() == null ? null : this.innerProperties().vCore();
+ }
+
+ /**
+ * Get the hardwareGeneration property: Hardware generation associated with the service level objective.
+ *
+ * @return the hardwareGeneration value.
+ */
+ public String hardwareGeneration() {
+ return this.innerProperties() == null ? null : this.innerProperties().hardwareGeneration();
+ }
+
+ /**
+ * Get the version property: The MySQL version.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.innerProperties() == null ? null : this.innerProperties().version();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/SecurityAlertPolicyProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/SecurityAlertPolicyProperties.java
new file mode 100644
index 0000000000000..29da0bb11a680
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/SecurityAlertPolicyProperties.java
@@ -0,0 +1,223 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerSecurityAlertPolicyState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Properties of a security alert policy. */
+@Fluent
+public final class SecurityAlertPolicyProperties {
+ /*
+ * Specifies the state of the policy, whether it is enabled or disabled.
+ */
+ @JsonProperty(value = "state", required = true)
+ private ServerSecurityAlertPolicyState state;
+
+ /*
+ * Specifies an array of alerts that are disabled. Allowed values are:
+ * Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
+ */
+ @JsonProperty(value = "disabledAlerts")
+ private List disabledAlerts;
+
+ /*
+ * Specifies an array of e-mail addresses to which the alert is sent.
+ */
+ @JsonProperty(value = "emailAddresses")
+ private List emailAddresses;
+
+ /*
+ * Specifies that the alert is sent to the account administrators.
+ */
+ @JsonProperty(value = "emailAccountAdmins")
+ private Boolean emailAccountAdmins;
+
+ /*
+ * Specifies the blob storage endpoint (e.g.
+ * https://MyAccount.blob.core.windows.net). This blob storage will hold
+ * all Threat Detection audit logs.
+ */
+ @JsonProperty(value = "storageEndpoint")
+ private String storageEndpoint;
+
+ /*
+ * Specifies the identifier key of the Threat Detection audit storage
+ * account.
+ */
+ @JsonProperty(value = "storageAccountAccessKey")
+ private String storageAccountAccessKey;
+
+ /*
+ * Specifies the number of days to keep in the Threat Detection audit logs.
+ */
+ @JsonProperty(value = "retentionDays")
+ private Integer retentionDays;
+
+ /**
+ * Get the state property: Specifies the state of the policy, whether it is enabled or disabled.
+ *
+ * @return the state value.
+ */
+ public ServerSecurityAlertPolicyState state() {
+ return this.state;
+ }
+
+ /**
+ * Set the state property: Specifies the state of the policy, whether it is enabled or disabled.
+ *
+ * @param state the state value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withState(ServerSecurityAlertPolicyState state) {
+ this.state = state;
+ return this;
+ }
+
+ /**
+ * Get the disabledAlerts property: Specifies an array of alerts that are disabled. Allowed values are:
+ * Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly.
+ *
+ * @return the disabledAlerts value.
+ */
+ public List disabledAlerts() {
+ return this.disabledAlerts;
+ }
+
+ /**
+ * Set the disabledAlerts property: Specifies an array of alerts that are disabled. Allowed values are:
+ * Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly.
+ *
+ * @param disabledAlerts the disabledAlerts value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withDisabledAlerts(List disabledAlerts) {
+ this.disabledAlerts = disabledAlerts;
+ return this;
+ }
+
+ /**
+ * Get the emailAddresses property: Specifies an array of e-mail addresses to which the alert is sent.
+ *
+ * @return the emailAddresses value.
+ */
+ public List emailAddresses() {
+ return this.emailAddresses;
+ }
+
+ /**
+ * Set the emailAddresses property: Specifies an array of e-mail addresses to which the alert is sent.
+ *
+ * @param emailAddresses the emailAddresses value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withEmailAddresses(List emailAddresses) {
+ this.emailAddresses = emailAddresses;
+ return this;
+ }
+
+ /**
+ * Get the emailAccountAdmins property: Specifies that the alert is sent to the account administrators.
+ *
+ * @return the emailAccountAdmins value.
+ */
+ public Boolean emailAccountAdmins() {
+ return this.emailAccountAdmins;
+ }
+
+ /**
+ * Set the emailAccountAdmins property: Specifies that the alert is sent to the account administrators.
+ *
+ * @param emailAccountAdmins the emailAccountAdmins value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withEmailAccountAdmins(Boolean emailAccountAdmins) {
+ this.emailAccountAdmins = emailAccountAdmins;
+ return this;
+ }
+
+ /**
+ * Get the storageEndpoint property: Specifies the blob storage endpoint (e.g.
+ * https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
+ *
+ * @return the storageEndpoint value.
+ */
+ public String storageEndpoint() {
+ return this.storageEndpoint;
+ }
+
+ /**
+ * Set the storageEndpoint property: Specifies the blob storage endpoint (e.g.
+ * https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
+ *
+ * @param storageEndpoint the storageEndpoint value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withStorageEndpoint(String storageEndpoint) {
+ this.storageEndpoint = storageEndpoint;
+ return this;
+ }
+
+ /**
+ * Get the storageAccountAccessKey property: Specifies the identifier key of the Threat Detection audit storage
+ * account.
+ *
+ * @return the storageAccountAccessKey value.
+ */
+ public String storageAccountAccessKey() {
+ return this.storageAccountAccessKey;
+ }
+
+ /**
+ * Set the storageAccountAccessKey property: Specifies the identifier key of the Threat Detection audit storage
+ * account.
+ *
+ * @param storageAccountAccessKey the storageAccountAccessKey value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withStorageAccountAccessKey(String storageAccountAccessKey) {
+ this.storageAccountAccessKey = storageAccountAccessKey;
+ return this;
+ }
+
+ /**
+ * Get the retentionDays property: Specifies the number of days to keep in the Threat Detection audit logs.
+ *
+ * @return the retentionDays value.
+ */
+ public Integer retentionDays() {
+ return this.retentionDays;
+ }
+
+ /**
+ * Set the retentionDays property: Specifies the number of days to keep in the Threat Detection audit logs.
+ *
+ * @param retentionDays the retentionDays value to set.
+ * @return the SecurityAlertPolicyProperties object itself.
+ */
+ public SecurityAlertPolicyProperties withRetentionDays(Integer retentionDays) {
+ this.retentionDays = retentionDays;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (state() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property state in model SecurityAlertPolicyProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(SecurityAlertPolicyProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorProperties.java
new file mode 100644
index 0000000000000..123249cae160f
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorProperties.java
@@ -0,0 +1,153 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.mysqlflexibleserver.models.AdministratorType;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.UUID;
+
+/** The properties of an server Administrator. */
+@Fluent
+public final class ServerAdministratorProperties {
+ /*
+ * The type of administrator.
+ */
+ @JsonProperty(value = "administratorType", required = true)
+ private AdministratorType administratorType;
+
+ /*
+ * The server administrator login account name.
+ */
+ @JsonProperty(value = "login", required = true)
+ private String login;
+
+ /*
+ * The server administrator Sid (Secure ID).
+ */
+ @JsonProperty(value = "sid", required = true)
+ private UUID sid;
+
+ /*
+ * The server Active Directory Administrator tenant id.
+ */
+ @JsonProperty(value = "tenantId", required = true)
+ private UUID tenantId;
+
+ /**
+ * Get the administratorType property: The type of administrator.
+ *
+ * @return the administratorType value.
+ */
+ public AdministratorType administratorType() {
+ return this.administratorType;
+ }
+
+ /**
+ * Set the administratorType property: The type of administrator.
+ *
+ * @param administratorType the administratorType value to set.
+ * @return the ServerAdministratorProperties object itself.
+ */
+ public ServerAdministratorProperties withAdministratorType(AdministratorType administratorType) {
+ this.administratorType = administratorType;
+ return this;
+ }
+
+ /**
+ * Get the login property: The server administrator login account name.
+ *
+ * @return the login value.
+ */
+ public String login() {
+ return this.login;
+ }
+
+ /**
+ * Set the login property: The server administrator login account name.
+ *
+ * @param login the login value to set.
+ * @return the ServerAdministratorProperties object itself.
+ */
+ public ServerAdministratorProperties withLogin(String login) {
+ this.login = login;
+ return this;
+ }
+
+ /**
+ * Get the sid property: The server administrator Sid (Secure ID).
+ *
+ * @return the sid value.
+ */
+ public UUID sid() {
+ return this.sid;
+ }
+
+ /**
+ * Set the sid property: The server administrator Sid (Secure ID).
+ *
+ * @param sid the sid value to set.
+ * @return the ServerAdministratorProperties object itself.
+ */
+ public ServerAdministratorProperties withSid(UUID sid) {
+ this.sid = sid;
+ return this;
+ }
+
+ /**
+ * Get the tenantId property: The server Active Directory Administrator tenant id.
+ *
+ * @return the tenantId value.
+ */
+ public UUID tenantId() {
+ return this.tenantId;
+ }
+
+ /**
+ * Set the tenantId property: The server Active Directory Administrator tenant id.
+ *
+ * @param tenantId the tenantId value to set.
+ * @return the ServerAdministratorProperties object itself.
+ */
+ public ServerAdministratorProperties withTenantId(UUID tenantId) {
+ this.tenantId = tenantId;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (administratorType() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property administratorType in model ServerAdministratorProperties"));
+ }
+ if (login() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property login in model ServerAdministratorProperties"));
+ }
+ if (sid() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property sid in model ServerAdministratorProperties"));
+ }
+ if (tenantId() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property tenantId in model ServerAdministratorProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ServerAdministratorProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorResourceInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorResourceInner.java
new file mode 100644
index 0000000000000..f33c2a3bdcb1c
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerAdministratorResourceInner.java
@@ -0,0 +1,133 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.AdministratorType;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.UUID;
+
+/** Represents a and external administrator to be created. */
+@Fluent
+public final class ServerAdministratorResourceInner extends ProxyResource {
+ /*
+ * Properties of the server AAD administrator.
+ */
+ @JsonProperty(value = "properties")
+ private ServerAdministratorProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Properties of the server AAD administrator.
+ *
+ * @return the innerProperties value.
+ */
+ private ServerAdministratorProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the administratorType property: The type of administrator.
+ *
+ * @return the administratorType value.
+ */
+ public AdministratorType administratorType() {
+ return this.innerProperties() == null ? null : this.innerProperties().administratorType();
+ }
+
+ /**
+ * Set the administratorType property: The type of administrator.
+ *
+ * @param administratorType the administratorType value to set.
+ * @return the ServerAdministratorResourceInner object itself.
+ */
+ public ServerAdministratorResourceInner withAdministratorType(AdministratorType administratorType) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerAdministratorProperties();
+ }
+ this.innerProperties().withAdministratorType(administratorType);
+ return this;
+ }
+
+ /**
+ * Get the login property: The server administrator login account name.
+ *
+ * @return the login value.
+ */
+ public String login() {
+ return this.innerProperties() == null ? null : this.innerProperties().login();
+ }
+
+ /**
+ * Set the login property: The server administrator login account name.
+ *
+ * @param login the login value to set.
+ * @return the ServerAdministratorResourceInner object itself.
+ */
+ public ServerAdministratorResourceInner withLogin(String login) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerAdministratorProperties();
+ }
+ this.innerProperties().withLogin(login);
+ return this;
+ }
+
+ /**
+ * Get the sid property: The server administrator Sid (Secure ID).
+ *
+ * @return the sid value.
+ */
+ public UUID sid() {
+ return this.innerProperties() == null ? null : this.innerProperties().sid();
+ }
+
+ /**
+ * Set the sid property: The server administrator Sid (Secure ID).
+ *
+ * @param sid the sid value to set.
+ * @return the ServerAdministratorResourceInner object itself.
+ */
+ public ServerAdministratorResourceInner withSid(UUID sid) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerAdministratorProperties();
+ }
+ this.innerProperties().withSid(sid);
+ return this;
+ }
+
+ /**
+ * Get the tenantId property: The server Active Directory Administrator tenant id.
+ *
+ * @return the tenantId value.
+ */
+ public UUID tenantId() {
+ return this.innerProperties() == null ? null : this.innerProperties().tenantId();
+ }
+
+ /**
+ * Set the tenantId property: The server Active Directory Administrator tenant id.
+ *
+ * @param tenantId the tenantId value to set.
+ * @return the ServerAdministratorResourceInner object itself.
+ */
+ public ServerAdministratorResourceInner withTenantId(UUID tenantId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerAdministratorProperties();
+ }
+ this.innerProperties().withTenantId(tenantId);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupInner.java
deleted file mode 100644
index 74edd922f10df..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupInner.java
+++ /dev/null
@@ -1,125 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.management.ProxyResource;
-import com.azure.core.management.SystemData;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.OffsetDateTime;
-
-/** Server backup properties. */
-@Fluent
-public final class ServerBackupInner extends ProxyResource {
- /*
- * The properties of a server backup.
- */
- @JsonProperty(value = "properties")
- private ServerBackupProperties innerProperties;
-
- /*
- * The system metadata relating to this resource.
- */
- @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
- private SystemData systemData;
-
- /**
- * Get the innerProperties property: The properties of a server backup.
- *
- * @return the innerProperties value.
- */
- private ServerBackupProperties innerProperties() {
- return this.innerProperties;
- }
-
- /**
- * Get the systemData property: The system metadata relating to this resource.
- *
- * @return the systemData value.
- */
- public SystemData systemData() {
- return this.systemData;
- }
-
- /**
- * Get the backupType property: Backup type.
- *
- * @return the backupType value.
- */
- public String backupType() {
- return this.innerProperties() == null ? null : this.innerProperties().backupType();
- }
-
- /**
- * Set the backupType property: Backup type.
- *
- * @param backupType the backupType value to set.
- * @return the ServerBackupInner object itself.
- */
- public ServerBackupInner withBackupType(String backupType) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ServerBackupProperties();
- }
- this.innerProperties().withBackupType(backupType);
- return this;
- }
-
- /**
- * Get the completedTime property: Backup completed time (ISO8601 format).
- *
- * @return the completedTime value.
- */
- public OffsetDateTime completedTime() {
- return this.innerProperties() == null ? null : this.innerProperties().completedTime();
- }
-
- /**
- * Set the completedTime property: Backup completed time (ISO8601 format).
- *
- * @param completedTime the completedTime value to set.
- * @return the ServerBackupInner object itself.
- */
- public ServerBackupInner withCompletedTime(OffsetDateTime completedTime) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ServerBackupProperties();
- }
- this.innerProperties().withCompletedTime(completedTime);
- return this;
- }
-
- /**
- * Get the source property: Backup source.
- *
- * @return the source value.
- */
- public String source() {
- return this.innerProperties() == null ? null : this.innerProperties().source();
- }
-
- /**
- * Set the source property: Backup source.
- *
- * @param source the source value to set.
- * @return the ServerBackupInner object itself.
- */
- public ServerBackupInner withSource(String source) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ServerBackupProperties();
- }
- this.innerProperties().withSource(source);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (innerProperties() != null) {
- innerProperties().validate();
- }
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupProperties.java
deleted file mode 100644
index 1c23931313bbb..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerBackupProperties.java
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.OffsetDateTime;
-
-/** The properties of a server backup. */
-@Fluent
-public final class ServerBackupProperties {
- /*
- * Backup type.
- */
- @JsonProperty(value = "backupType")
- private String backupType;
-
- /*
- * Backup completed time (ISO8601 format).
- */
- @JsonProperty(value = "completedTime")
- private OffsetDateTime completedTime;
-
- /*
- * Backup source
- */
- @JsonProperty(value = "source")
- private String source;
-
- /**
- * Get the backupType property: Backup type.
- *
- * @return the backupType value.
- */
- public String backupType() {
- return this.backupType;
- }
-
- /**
- * Set the backupType property: Backup type.
- *
- * @param backupType the backupType value to set.
- * @return the ServerBackupProperties object itself.
- */
- public ServerBackupProperties withBackupType(String backupType) {
- this.backupType = backupType;
- return this;
- }
-
- /**
- * Get the completedTime property: Backup completed time (ISO8601 format).
- *
- * @return the completedTime value.
- */
- public OffsetDateTime completedTime() {
- return this.completedTime;
- }
-
- /**
- * Set the completedTime property: Backup completed time (ISO8601 format).
- *
- * @param completedTime the completedTime value to set.
- * @return the ServerBackupProperties object itself.
- */
- public ServerBackupProperties withCompletedTime(OffsetDateTime completedTime) {
- this.completedTime = completedTime;
- return this;
- }
-
- /**
- * Get the source property: Backup source.
- *
- * @return the source value.
- */
- public String source() {
- return this.source;
- }
-
- /**
- * Set the source property: Backup source.
- *
- * @param source the source value to set.
- * @return the ServerBackupProperties object itself.
- */
- public ServerBackupProperties withSource(String source) {
- this.source = source;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerInner.java
index 7d5ae8a69edeb..c7c3f5752f531 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerInner.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerInner.java
@@ -6,31 +6,29 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.management.Resource;
-import com.azure.core.management.SystemData;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Backup;
-import com.azure.resourcemanager.mysqlflexibleserver.models.CreateMode;
-import com.azure.resourcemanager.mysqlflexibleserver.models.DataEncryption;
-import com.azure.resourcemanager.mysqlflexibleserver.models.HighAvailability;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Identity;
-import com.azure.resourcemanager.mysqlflexibleserver.models.MaintenanceWindow;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Network;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ReplicationRole;
+import com.azure.resourcemanager.mysqlflexibleserver.models.InfrastructureEncryption;
+import com.azure.resourcemanager.mysqlflexibleserver.models.MinimalTlsVersionEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PublicNetworkAccessEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ResourceIdentity;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerPrivateEndpointConnection;
import com.azure.resourcemanager.mysqlflexibleserver.models.ServerState;
import com.azure.resourcemanager.mysqlflexibleserver.models.ServerVersion;
import com.azure.resourcemanager.mysqlflexibleserver.models.Sku;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Storage;
+import com.azure.resourcemanager.mysqlflexibleserver.models.SslEnforcementEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.StorageProfile;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
+import java.util.List;
import java.util.Map;
/** Represents a server. */
@Fluent
public final class ServerInner extends Resource {
/*
- * The cmk identity for the server.
+ * The Azure Active Directory identity of the server.
*/
@JsonProperty(value = "identity")
- private Identity identity;
+ private ResourceIdentity identity;
/*
* The SKU (pricing tier) of the server.
@@ -44,28 +42,22 @@ public final class ServerInner extends Resource {
@JsonProperty(value = "properties")
private ServerProperties innerProperties;
- /*
- * The system metadata relating to this resource.
- */
- @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
- private SystemData systemData;
-
/**
- * Get the identity property: The cmk identity for the server.
+ * Get the identity property: The Azure Active Directory identity of the server.
*
* @return the identity value.
*/
- public Identity identity() {
+ public ResourceIdentity identity() {
return this.identity;
}
/**
- * Set the identity property: The cmk identity for the server.
+ * Set the identity property: The Azure Active Directory identity of the server.
*
* @param identity the identity value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withIdentity(Identity identity) {
+ public ServerInner withIdentity(ResourceIdentity identity) {
this.identity = identity;
return this;
}
@@ -99,15 +91,6 @@ private ServerProperties innerProperties() {
return this.innerProperties;
}
- /**
- * Get the systemData property: The system metadata relating to this resource.
- *
- * @return the systemData value.
- */
- public SystemData systemData() {
- return this.systemData;
- }
-
/** {@inheritDoc} */
@Override
public ServerInner withLocation(String location) {
@@ -147,31 +130,6 @@ public ServerInner withAdministratorLogin(String administratorLogin) {
return this;
}
- /**
- * Get the administratorLoginPassword property: The password of the administrator login (required for server
- * creation).
- *
- * @return the administratorLoginPassword value.
- */
- public String administratorLoginPassword() {
- return this.innerProperties() == null ? null : this.innerProperties().administratorLoginPassword();
- }
-
- /**
- * Set the administratorLoginPassword property: The password of the administrator login (required for server
- * creation).
- *
- * @param administratorLoginPassword the administratorLoginPassword value to set.
- * @return the ServerInner object itself.
- */
- public ServerInner withAdministratorLoginPassword(String administratorLoginPassword) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ServerProperties();
- }
- this.innerProperties().withAdministratorLoginPassword(administratorLoginPassword);
- return this;
- }
-
/**
* Get the version property: Server version.
*
@@ -196,287 +154,279 @@ public ServerInner withVersion(ServerVersion version) {
}
/**
- * Get the availabilityZone property: availability Zone information of the server.
+ * Get the sslEnforcement property: Enable ssl enforcement or not when connect to server.
*
- * @return the availabilityZone value.
+ * @return the sslEnforcement value.
*/
- public String availabilityZone() {
- return this.innerProperties() == null ? null : this.innerProperties().availabilityZone();
+ public SslEnforcementEnum sslEnforcement() {
+ return this.innerProperties() == null ? null : this.innerProperties().sslEnforcement();
}
/**
- * Set the availabilityZone property: availability Zone information of the server.
+ * Set the sslEnforcement property: Enable ssl enforcement or not when connect to server.
*
- * @param availabilityZone the availabilityZone value to set.
+ * @param sslEnforcement the sslEnforcement value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withAvailabilityZone(String availabilityZone) {
+ public ServerInner withSslEnforcement(SslEnforcementEnum sslEnforcement) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withAvailabilityZone(availabilityZone);
+ this.innerProperties().withSslEnforcement(sslEnforcement);
return this;
}
/**
- * Get the createMode property: The mode to create a new MySQL server.
+ * Get the minimalTlsVersion property: Enforce a minimal Tls version for the server.
*
- * @return the createMode value.
+ * @return the minimalTlsVersion value.
*/
- public CreateMode createMode() {
- return this.innerProperties() == null ? null : this.innerProperties().createMode();
+ public MinimalTlsVersionEnum minimalTlsVersion() {
+ return this.innerProperties() == null ? null : this.innerProperties().minimalTlsVersion();
}
/**
- * Set the createMode property: The mode to create a new MySQL server.
+ * Set the minimalTlsVersion property: Enforce a minimal Tls version for the server.
*
- * @param createMode the createMode value to set.
+ * @param minimalTlsVersion the minimalTlsVersion value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withCreateMode(CreateMode createMode) {
+ public ServerInner withMinimalTlsVersion(MinimalTlsVersionEnum minimalTlsVersion) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withCreateMode(createMode);
+ this.innerProperties().withMinimalTlsVersion(minimalTlsVersion);
return this;
}
/**
- * Get the sourceServerResourceId property: The source MySQL server id.
+ * Get the byokEnforcement property: Status showing whether the server data encryption is enabled with
+ * customer-managed keys.
*
- * @return the sourceServerResourceId value.
+ * @return the byokEnforcement value.
*/
- public String sourceServerResourceId() {
- return this.innerProperties() == null ? null : this.innerProperties().sourceServerResourceId();
+ public String byokEnforcement() {
+ return this.innerProperties() == null ? null : this.innerProperties().byokEnforcement();
}
/**
- * Set the sourceServerResourceId property: The source MySQL server id.
+ * Get the infrastructureEncryption property: Status showing whether the server enabled infrastructure encryption.
*
- * @param sourceServerResourceId the sourceServerResourceId value to set.
- * @return the ServerInner object itself.
+ * @return the infrastructureEncryption value.
*/
- public ServerInner withSourceServerResourceId(String sourceServerResourceId) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ServerProperties();
- }
- this.innerProperties().withSourceServerResourceId(sourceServerResourceId);
- return this;
- }
-
- /**
- * Get the restorePointInTime property: Restore point creation time (ISO8601 format), specifying the time to restore
- * from.
- *
- * @return the restorePointInTime value.
- */
- public OffsetDateTime restorePointInTime() {
- return this.innerProperties() == null ? null : this.innerProperties().restorePointInTime();
+ public InfrastructureEncryption infrastructureEncryption() {
+ return this.innerProperties() == null ? null : this.innerProperties().infrastructureEncryption();
}
/**
- * Set the restorePointInTime property: Restore point creation time (ISO8601 format), specifying the time to restore
- * from.
+ * Set the infrastructureEncryption property: Status showing whether the server enabled infrastructure encryption.
*
- * @param restorePointInTime the restorePointInTime value to set.
+ * @param infrastructureEncryption the infrastructureEncryption value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withRestorePointInTime(OffsetDateTime restorePointInTime) {
+ public ServerInner withInfrastructureEncryption(InfrastructureEncryption infrastructureEncryption) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withRestorePointInTime(restorePointInTime);
+ this.innerProperties().withInfrastructureEncryption(infrastructureEncryption);
return this;
}
/**
- * Get the replicationRole property: The replication role.
+ * Get the userVisibleState property: A state of a server that is visible to user.
*
- * @return the replicationRole value.
+ * @return the userVisibleState value.
*/
- public ReplicationRole replicationRole() {
- return this.innerProperties() == null ? null : this.innerProperties().replicationRole();
+ public ServerState userVisibleState() {
+ return this.innerProperties() == null ? null : this.innerProperties().userVisibleState();
}
/**
- * Set the replicationRole property: The replication role.
+ * Set the userVisibleState property: A state of a server that is visible to user.
*
- * @param replicationRole the replicationRole value to set.
+ * @param userVisibleState the userVisibleState value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withReplicationRole(ReplicationRole replicationRole) {
+ public ServerInner withUserVisibleState(ServerState userVisibleState) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withReplicationRole(replicationRole);
+ this.innerProperties().withUserVisibleState(userVisibleState);
return this;
}
/**
- * Get the replicaCapacity property: The maximum number of replicas that a primary server can have.
- *
- * @return the replicaCapacity value.
- */
- public Integer replicaCapacity() {
- return this.innerProperties() == null ? null : this.innerProperties().replicaCapacity();
- }
-
- /**
- * Get the dataEncryption property: The Data Encryption for CMK.
+ * Get the fullyQualifiedDomainName property: The fully qualified domain name of a server.
*
- * @return the dataEncryption value.
+ * @return the fullyQualifiedDomainName value.
*/
- public DataEncryption dataEncryption() {
- return this.innerProperties() == null ? null : this.innerProperties().dataEncryption();
+ public String fullyQualifiedDomainName() {
+ return this.innerProperties() == null ? null : this.innerProperties().fullyQualifiedDomainName();
}
/**
- * Set the dataEncryption property: The Data Encryption for CMK.
+ * Set the fullyQualifiedDomainName property: The fully qualified domain name of a server.
*
- * @param dataEncryption the dataEncryption value to set.
+ * @param fullyQualifiedDomainName the fullyQualifiedDomainName value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withDataEncryption(DataEncryption dataEncryption) {
+ public ServerInner withFullyQualifiedDomainName(String fullyQualifiedDomainName) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withDataEncryption(dataEncryption);
+ this.innerProperties().withFullyQualifiedDomainName(fullyQualifiedDomainName);
return this;
}
/**
- * Get the state property: The state of a server.
+ * Get the earliestRestoreDate property: Earliest restore point creation time (ISO8601 format).
*
- * @return the state value.
+ * @return the earliestRestoreDate value.
*/
- public ServerState state() {
- return this.innerProperties() == null ? null : this.innerProperties().state();
+ public OffsetDateTime earliestRestoreDate() {
+ return this.innerProperties() == null ? null : this.innerProperties().earliestRestoreDate();
}
/**
- * Get the fullyQualifiedDomainName property: The fully qualified domain name of a server.
+ * Set the earliestRestoreDate property: Earliest restore point creation time (ISO8601 format).
*
- * @return the fullyQualifiedDomainName value.
+ * @param earliestRestoreDate the earliestRestoreDate value to set.
+ * @return the ServerInner object itself.
*/
- public String fullyQualifiedDomainName() {
- return this.innerProperties() == null ? null : this.innerProperties().fullyQualifiedDomainName();
+ public ServerInner withEarliestRestoreDate(OffsetDateTime earliestRestoreDate) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerProperties();
+ }
+ this.innerProperties().withEarliestRestoreDate(earliestRestoreDate);
+ return this;
}
/**
- * Get the storage property: Storage related properties of a server.
+ * Get the storageProfile property: Storage profile of a server.
*
- * @return the storage value.
+ * @return the storageProfile value.
*/
- public Storage storage() {
- return this.innerProperties() == null ? null : this.innerProperties().storage();
+ public StorageProfile storageProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().storageProfile();
}
/**
- * Set the storage property: Storage related properties of a server.
+ * Set the storageProfile property: Storage profile of a server.
*
- * @param storage the storage value to set.
+ * @param storageProfile the storageProfile value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withStorage(Storage storage) {
+ public ServerInner withStorageProfile(StorageProfile storageProfile) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withStorage(storage);
+ this.innerProperties().withStorageProfile(storageProfile);
return this;
}
/**
- * Get the backup property: Backup related properties of a server.
+ * Get the replicationRole property: The replication role of the server.
*
- * @return the backup value.
+ * @return the replicationRole value.
*/
- public Backup backup() {
- return this.innerProperties() == null ? null : this.innerProperties().backup();
+ public String replicationRole() {
+ return this.innerProperties() == null ? null : this.innerProperties().replicationRole();
}
/**
- * Set the backup property: Backup related properties of a server.
+ * Set the replicationRole property: The replication role of the server.
*
- * @param backup the backup value to set.
+ * @param replicationRole the replicationRole value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withBackup(Backup backup) {
+ public ServerInner withReplicationRole(String replicationRole) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withBackup(backup);
+ this.innerProperties().withReplicationRole(replicationRole);
return this;
}
/**
- * Get the highAvailability property: High availability related properties of a server.
+ * Get the masterServerId property: The master server id of a replica server.
*
- * @return the highAvailability value.
+ * @return the masterServerId value.
*/
- public HighAvailability highAvailability() {
- return this.innerProperties() == null ? null : this.innerProperties().highAvailability();
+ public String masterServerId() {
+ return this.innerProperties() == null ? null : this.innerProperties().masterServerId();
}
/**
- * Set the highAvailability property: High availability related properties of a server.
+ * Set the masterServerId property: The master server id of a replica server.
*
- * @param highAvailability the highAvailability value to set.
+ * @param masterServerId the masterServerId value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withHighAvailability(HighAvailability highAvailability) {
+ public ServerInner withMasterServerId(String masterServerId) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withHighAvailability(highAvailability);
+ this.innerProperties().withMasterServerId(masterServerId);
return this;
}
/**
- * Get the network property: Network related properties of a server.
+ * Get the replicaCapacity property: The maximum number of replicas that a master server can have.
*
- * @return the network value.
+ * @return the replicaCapacity value.
*/
- public Network network() {
- return this.innerProperties() == null ? null : this.innerProperties().network();
+ public Integer replicaCapacity() {
+ return this.innerProperties() == null ? null : this.innerProperties().replicaCapacity();
}
/**
- * Set the network property: Network related properties of a server.
+ * Set the replicaCapacity property: The maximum number of replicas that a master server can have.
*
- * @param network the network value to set.
+ * @param replicaCapacity the replicaCapacity value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withNetwork(Network network) {
+ public ServerInner withReplicaCapacity(Integer replicaCapacity) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withNetwork(network);
+ this.innerProperties().withReplicaCapacity(replicaCapacity);
return this;
}
/**
- * Get the maintenanceWindow property: Maintenance window of a server.
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
*
- * @return the maintenanceWindow value.
+ * @return the publicNetworkAccess value.
*/
- public MaintenanceWindow maintenanceWindow() {
- return this.innerProperties() == null ? null : this.innerProperties().maintenanceWindow();
+ public PublicNetworkAccessEnum publicNetworkAccess() {
+ return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccess();
}
/**
- * Set the maintenanceWindow property: Maintenance window of a server.
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
*
- * @param maintenanceWindow the maintenanceWindow value to set.
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
* @return the ServerInner object itself.
*/
- public ServerInner withMaintenanceWindow(MaintenanceWindow maintenanceWindow) {
+ public ServerInner withPublicNetworkAccess(PublicNetworkAccessEnum publicNetworkAccess) {
if (this.innerProperties() == null) {
this.innerProperties = new ServerProperties();
}
- this.innerProperties().withMaintenanceWindow(maintenanceWindow);
+ this.innerProperties().withPublicNetworkAccess(publicNetworkAccess);
return this;
}
+ /**
+ * Get the privateEndpointConnections property: List of private endpoint connections on a server.
+ *
+ * @return the privateEndpointConnections value.
+ */
+ public List privateEndpointConnections() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateEndpointConnections();
+ }
+
/**
* Validates the instance.
*
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyInner.java
new file mode 100644
index 0000000000000..bd7df969bc6b6
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyInner.java
@@ -0,0 +1,111 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerKeyType;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** A MySQL Server key. */
+@Fluent
+public final class ServerKeyInner extends ProxyResource {
+ /*
+ * Kind of encryption protector used to protect the key.
+ */
+ @JsonProperty(value = "kind", access = JsonProperty.Access.WRITE_ONLY)
+ private String kind;
+
+ /*
+ * Properties of the ServerKey Resource.
+ */
+ @JsonProperty(value = "properties")
+ private ServerKeyProperties innerProperties;
+
+ /**
+ * Get the kind property: Kind of encryption protector used to protect the key.
+ *
+ * @return the kind value.
+ */
+ public String kind() {
+ return this.kind;
+ }
+
+ /**
+ * Get the innerProperties property: Properties of the ServerKey Resource.
+ *
+ * @return the innerProperties value.
+ */
+ private ServerKeyProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the serverKeyType property: The key type like 'AzureKeyVault'.
+ *
+ * @return the serverKeyType value.
+ */
+ public ServerKeyType serverKeyType() {
+ return this.innerProperties() == null ? null : this.innerProperties().serverKeyType();
+ }
+
+ /**
+ * Set the serverKeyType property: The key type like 'AzureKeyVault'.
+ *
+ * @param serverKeyType the serverKeyType value to set.
+ * @return the ServerKeyInner object itself.
+ */
+ public ServerKeyInner withServerKeyType(ServerKeyType serverKeyType) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerKeyProperties();
+ }
+ this.innerProperties().withServerKeyType(serverKeyType);
+ return this;
+ }
+
+ /**
+ * Get the uri property: The URI of the key.
+ *
+ * @return the uri value.
+ */
+ public String uri() {
+ return this.innerProperties() == null ? null : this.innerProperties().uri();
+ }
+
+ /**
+ * Set the uri property: The URI of the key.
+ *
+ * @param uri the uri value to set.
+ * @return the ServerKeyInner object itself.
+ */
+ public ServerKeyInner withUri(String uri) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerKeyProperties();
+ }
+ this.innerProperties().withUri(uri);
+ return this;
+ }
+
+ /**
+ * Get the creationDate property: The key creation date.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.innerProperties() == null ? null : this.innerProperties().creationDate();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyProperties.java
new file mode 100644
index 0000000000000..da9be2aecd11c
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerKeyProperties.java
@@ -0,0 +1,98 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerKeyType;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Properties for a key execution. */
+@Fluent
+public final class ServerKeyProperties {
+ /*
+ * The key type like 'AzureKeyVault'.
+ */
+ @JsonProperty(value = "serverKeyType", required = true)
+ private ServerKeyType serverKeyType;
+
+ /*
+ * The URI of the key.
+ */
+ @JsonProperty(value = "uri")
+ private String uri;
+
+ /*
+ * The key creation date.
+ */
+ @JsonProperty(value = "creationDate", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime creationDate;
+
+ /**
+ * Get the serverKeyType property: The key type like 'AzureKeyVault'.
+ *
+ * @return the serverKeyType value.
+ */
+ public ServerKeyType serverKeyType() {
+ return this.serverKeyType;
+ }
+
+ /**
+ * Set the serverKeyType property: The key type like 'AzureKeyVault'.
+ *
+ * @param serverKeyType the serverKeyType value to set.
+ * @return the ServerKeyProperties object itself.
+ */
+ public ServerKeyProperties withServerKeyType(ServerKeyType serverKeyType) {
+ this.serverKeyType = serverKeyType;
+ return this;
+ }
+
+ /**
+ * Get the uri property: The URI of the key.
+ *
+ * @return the uri value.
+ */
+ public String uri() {
+ return this.uri;
+ }
+
+ /**
+ * Set the uri property: The URI of the key.
+ *
+ * @param uri the uri value to set.
+ * @return the ServerKeyProperties object itself.
+ */
+ public ServerKeyProperties withUri(String uri) {
+ this.uri = uri;
+ return this;
+ }
+
+ /**
+ * Get the creationDate property: The key creation date.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.creationDate;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (serverKeyType() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property serverKeyType in model ServerKeyProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ServerKeyProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerProperties.java
index 68315fb28652f..9e488f8b84662 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerProperties.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerProperties.java
@@ -5,18 +5,17 @@
package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
import com.azure.core.annotation.Fluent;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Backup;
-import com.azure.resourcemanager.mysqlflexibleserver.models.CreateMode;
-import com.azure.resourcemanager.mysqlflexibleserver.models.DataEncryption;
-import com.azure.resourcemanager.mysqlflexibleserver.models.HighAvailability;
-import com.azure.resourcemanager.mysqlflexibleserver.models.MaintenanceWindow;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Network;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ReplicationRole;
+import com.azure.resourcemanager.mysqlflexibleserver.models.InfrastructureEncryption;
+import com.azure.resourcemanager.mysqlflexibleserver.models.MinimalTlsVersionEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PublicNetworkAccessEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerPrivateEndpointConnection;
import com.azure.resourcemanager.mysqlflexibleserver.models.ServerState;
import com.azure.resourcemanager.mysqlflexibleserver.models.ServerVersion;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Storage;
+import com.azure.resourcemanager.mysqlflexibleserver.models.SslEnforcementEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.StorageProfile;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
+import java.util.List;
/** The properties of a server. */
@Fluent
@@ -28,12 +27,6 @@ public final class ServerProperties {
@JsonProperty(value = "administratorLogin")
private String administratorLogin;
- /*
- * The password of the administrator login (required for server creation).
- */
- @JsonProperty(value = "administratorLoginPassword")
- private String administratorLoginPassword;
-
/*
* Server version.
*/
@@ -41,89 +34,84 @@ public final class ServerProperties {
private ServerVersion version;
/*
- * availability Zone information of the server.
+ * Enable ssl enforcement or not when connect to server.
*/
- @JsonProperty(value = "availabilityZone")
- private String availabilityZone;
+ @JsonProperty(value = "sslEnforcement")
+ private SslEnforcementEnum sslEnforcement;
/*
- * The mode to create a new MySQL server.
+ * Enforce a minimal Tls version for the server.
*/
- @JsonProperty(value = "createMode")
- private CreateMode createMode;
+ @JsonProperty(value = "minimalTlsVersion")
+ private MinimalTlsVersionEnum minimalTlsVersion;
/*
- * The source MySQL server id.
+ * Status showing whether the server data encryption is enabled with
+ * customer-managed keys.
*/
- @JsonProperty(value = "sourceServerResourceId")
- private String sourceServerResourceId;
+ @JsonProperty(value = "byokEnforcement", access = JsonProperty.Access.WRITE_ONLY)
+ private String byokEnforcement;
/*
- * Restore point creation time (ISO8601 format), specifying the time to
- * restore from.
+ * Status showing whether the server enabled infrastructure encryption.
*/
- @JsonProperty(value = "restorePointInTime")
- private OffsetDateTime restorePointInTime;
+ @JsonProperty(value = "infrastructureEncryption")
+ private InfrastructureEncryption infrastructureEncryption;
/*
- * The replication role.
+ * A state of a server that is visible to user.
*/
- @JsonProperty(value = "replicationRole")
- private ReplicationRole replicationRole;
+ @JsonProperty(value = "userVisibleState")
+ private ServerState userVisibleState;
/*
- * The maximum number of replicas that a primary server can have.
- */
- @JsonProperty(value = "replicaCapacity", access = JsonProperty.Access.WRITE_ONLY)
- private Integer replicaCapacity;
-
- /*
- * The Data Encryption for CMK.
+ * The fully qualified domain name of a server.
*/
- @JsonProperty(value = "dataEncryption")
- private DataEncryption dataEncryption;
+ @JsonProperty(value = "fullyQualifiedDomainName")
+ private String fullyQualifiedDomainName;
/*
- * The state of a server.
+ * Earliest restore point creation time (ISO8601 format)
*/
- @JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
- private ServerState state;
+ @JsonProperty(value = "earliestRestoreDate")
+ private OffsetDateTime earliestRestoreDate;
/*
- * The fully qualified domain name of a server.
+ * Storage profile of a server.
*/
- @JsonProperty(value = "fullyQualifiedDomainName", access = JsonProperty.Access.WRITE_ONLY)
- private String fullyQualifiedDomainName;
+ @JsonProperty(value = "storageProfile")
+ private StorageProfile storageProfile;
/*
- * Storage related properties of a server.
+ * The replication role of the server.
*/
- @JsonProperty(value = "storage")
- private Storage storage;
+ @JsonProperty(value = "replicationRole")
+ private String replicationRole;
/*
- * Backup related properties of a server.
+ * The master server id of a replica server.
*/
- @JsonProperty(value = "backup")
- private Backup backup;
+ @JsonProperty(value = "masterServerId")
+ private String masterServerId;
/*
- * High availability related properties of a server.
+ * The maximum number of replicas that a master server can have.
*/
- @JsonProperty(value = "highAvailability")
- private HighAvailability highAvailability;
+ @JsonProperty(value = "replicaCapacity")
+ private Integer replicaCapacity;
/*
- * Network related properties of a server.
+ * Whether or not public network access is allowed for this server. Value
+ * is optional but if passed in, must be 'Enabled' or 'Disabled'
*/
- @JsonProperty(value = "network")
- private Network network;
+ @JsonProperty(value = "publicNetworkAccess")
+ private PublicNetworkAccessEnum publicNetworkAccess;
/*
- * Maintenance window of a server.
+ * List of private endpoint connections on a server
*/
- @JsonProperty(value = "maintenanceWindow")
- private MaintenanceWindow maintenanceWindow;
+ @JsonProperty(value = "privateEndpointConnections", access = JsonProperty.Access.WRITE_ONLY)
+ private List privateEndpointConnections;
/**
* Get the administratorLogin property: The administrator's login name of a server. Can only be specified when the
@@ -147,28 +135,6 @@ public ServerProperties withAdministratorLogin(String administratorLogin) {
return this;
}
- /**
- * Get the administratorLoginPassword property: The password of the administrator login (required for server
- * creation).
- *
- * @return the administratorLoginPassword value.
- */
- public String administratorLoginPassword() {
- return this.administratorLoginPassword;
- }
-
- /**
- * Set the administratorLoginPassword property: The password of the administrator login (required for server
- * creation).
- *
- * @param administratorLoginPassword the administratorLoginPassword value to set.
- * @return the ServerProperties object itself.
- */
- public ServerProperties withAdministratorLoginPassword(String administratorLoginPassword) {
- this.administratorLoginPassword = administratorLoginPassword;
- return this;
- }
-
/**
* Get the version property: Server version.
*
@@ -190,277 +156,257 @@ public ServerProperties withVersion(ServerVersion version) {
}
/**
- * Get the availabilityZone property: availability Zone information of the server.
+ * Get the sslEnforcement property: Enable ssl enforcement or not when connect to server.
*
- * @return the availabilityZone value.
+ * @return the sslEnforcement value.
*/
- public String availabilityZone() {
- return this.availabilityZone;
+ public SslEnforcementEnum sslEnforcement() {
+ return this.sslEnforcement;
}
/**
- * Set the availabilityZone property: availability Zone information of the server.
+ * Set the sslEnforcement property: Enable ssl enforcement or not when connect to server.
*
- * @param availabilityZone the availabilityZone value to set.
+ * @param sslEnforcement the sslEnforcement value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withAvailabilityZone(String availabilityZone) {
- this.availabilityZone = availabilityZone;
+ public ServerProperties withSslEnforcement(SslEnforcementEnum sslEnforcement) {
+ this.sslEnforcement = sslEnforcement;
return this;
}
/**
- * Get the createMode property: The mode to create a new MySQL server.
+ * Get the minimalTlsVersion property: Enforce a minimal Tls version for the server.
*
- * @return the createMode value.
+ * @return the minimalTlsVersion value.
*/
- public CreateMode createMode() {
- return this.createMode;
+ public MinimalTlsVersionEnum minimalTlsVersion() {
+ return this.minimalTlsVersion;
}
/**
- * Set the createMode property: The mode to create a new MySQL server.
+ * Set the minimalTlsVersion property: Enforce a minimal Tls version for the server.
*
- * @param createMode the createMode value to set.
+ * @param minimalTlsVersion the minimalTlsVersion value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withCreateMode(CreateMode createMode) {
- this.createMode = createMode;
+ public ServerProperties withMinimalTlsVersion(MinimalTlsVersionEnum minimalTlsVersion) {
+ this.minimalTlsVersion = minimalTlsVersion;
return this;
}
/**
- * Get the sourceServerResourceId property: The source MySQL server id.
- *
- * @return the sourceServerResourceId value.
- */
- public String sourceServerResourceId() {
- return this.sourceServerResourceId;
- }
-
- /**
- * Set the sourceServerResourceId property: The source MySQL server id.
+ * Get the byokEnforcement property: Status showing whether the server data encryption is enabled with
+ * customer-managed keys.
*
- * @param sourceServerResourceId the sourceServerResourceId value to set.
- * @return the ServerProperties object itself.
+ * @return the byokEnforcement value.
*/
- public ServerProperties withSourceServerResourceId(String sourceServerResourceId) {
- this.sourceServerResourceId = sourceServerResourceId;
- return this;
+ public String byokEnforcement() {
+ return this.byokEnforcement;
}
/**
- * Get the restorePointInTime property: Restore point creation time (ISO8601 format), specifying the time to restore
- * from.
+ * Get the infrastructureEncryption property: Status showing whether the server enabled infrastructure encryption.
*
- * @return the restorePointInTime value.
+ * @return the infrastructureEncryption value.
*/
- public OffsetDateTime restorePointInTime() {
- return this.restorePointInTime;
+ public InfrastructureEncryption infrastructureEncryption() {
+ return this.infrastructureEncryption;
}
/**
- * Set the restorePointInTime property: Restore point creation time (ISO8601 format), specifying the time to restore
- * from.
+ * Set the infrastructureEncryption property: Status showing whether the server enabled infrastructure encryption.
*
- * @param restorePointInTime the restorePointInTime value to set.
+ * @param infrastructureEncryption the infrastructureEncryption value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withRestorePointInTime(OffsetDateTime restorePointInTime) {
- this.restorePointInTime = restorePointInTime;
+ public ServerProperties withInfrastructureEncryption(InfrastructureEncryption infrastructureEncryption) {
+ this.infrastructureEncryption = infrastructureEncryption;
return this;
}
/**
- * Get the replicationRole property: The replication role.
+ * Get the userVisibleState property: A state of a server that is visible to user.
*
- * @return the replicationRole value.
+ * @return the userVisibleState value.
*/
- public ReplicationRole replicationRole() {
- return this.replicationRole;
+ public ServerState userVisibleState() {
+ return this.userVisibleState;
}
/**
- * Set the replicationRole property: The replication role.
+ * Set the userVisibleState property: A state of a server that is visible to user.
*
- * @param replicationRole the replicationRole value to set.
+ * @param userVisibleState the userVisibleState value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withReplicationRole(ReplicationRole replicationRole) {
- this.replicationRole = replicationRole;
+ public ServerProperties withUserVisibleState(ServerState userVisibleState) {
+ this.userVisibleState = userVisibleState;
return this;
}
/**
- * Get the replicaCapacity property: The maximum number of replicas that a primary server can have.
- *
- * @return the replicaCapacity value.
- */
- public Integer replicaCapacity() {
- return this.replicaCapacity;
- }
-
- /**
- * Get the dataEncryption property: The Data Encryption for CMK.
+ * Get the fullyQualifiedDomainName property: The fully qualified domain name of a server.
*
- * @return the dataEncryption value.
+ * @return the fullyQualifiedDomainName value.
*/
- public DataEncryption dataEncryption() {
- return this.dataEncryption;
+ public String fullyQualifiedDomainName() {
+ return this.fullyQualifiedDomainName;
}
/**
- * Set the dataEncryption property: The Data Encryption for CMK.
+ * Set the fullyQualifiedDomainName property: The fully qualified domain name of a server.
*
- * @param dataEncryption the dataEncryption value to set.
+ * @param fullyQualifiedDomainName the fullyQualifiedDomainName value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withDataEncryption(DataEncryption dataEncryption) {
- this.dataEncryption = dataEncryption;
+ public ServerProperties withFullyQualifiedDomainName(String fullyQualifiedDomainName) {
+ this.fullyQualifiedDomainName = fullyQualifiedDomainName;
return this;
}
/**
- * Get the state property: The state of a server.
+ * Get the earliestRestoreDate property: Earliest restore point creation time (ISO8601 format).
*
- * @return the state value.
+ * @return the earliestRestoreDate value.
*/
- public ServerState state() {
- return this.state;
+ public OffsetDateTime earliestRestoreDate() {
+ return this.earliestRestoreDate;
}
/**
- * Get the fullyQualifiedDomainName property: The fully qualified domain name of a server.
+ * Set the earliestRestoreDate property: Earliest restore point creation time (ISO8601 format).
*
- * @return the fullyQualifiedDomainName value.
+ * @param earliestRestoreDate the earliestRestoreDate value to set.
+ * @return the ServerProperties object itself.
*/
- public String fullyQualifiedDomainName() {
- return this.fullyQualifiedDomainName;
+ public ServerProperties withEarliestRestoreDate(OffsetDateTime earliestRestoreDate) {
+ this.earliestRestoreDate = earliestRestoreDate;
+ return this;
}
/**
- * Get the storage property: Storage related properties of a server.
+ * Get the storageProfile property: Storage profile of a server.
*
- * @return the storage value.
+ * @return the storageProfile value.
*/
- public Storage storage() {
- return this.storage;
+ public StorageProfile storageProfile() {
+ return this.storageProfile;
}
/**
- * Set the storage property: Storage related properties of a server.
+ * Set the storageProfile property: Storage profile of a server.
*
- * @param storage the storage value to set.
+ * @param storageProfile the storageProfile value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withStorage(Storage storage) {
- this.storage = storage;
+ public ServerProperties withStorageProfile(StorageProfile storageProfile) {
+ this.storageProfile = storageProfile;
return this;
}
/**
- * Get the backup property: Backup related properties of a server.
+ * Get the replicationRole property: The replication role of the server.
*
- * @return the backup value.
+ * @return the replicationRole value.
*/
- public Backup backup() {
- return this.backup;
+ public String replicationRole() {
+ return this.replicationRole;
}
/**
- * Set the backup property: Backup related properties of a server.
+ * Set the replicationRole property: The replication role of the server.
*
- * @param backup the backup value to set.
+ * @param replicationRole the replicationRole value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withBackup(Backup backup) {
- this.backup = backup;
+ public ServerProperties withReplicationRole(String replicationRole) {
+ this.replicationRole = replicationRole;
return this;
}
/**
- * Get the highAvailability property: High availability related properties of a server.
+ * Get the masterServerId property: The master server id of a replica server.
*
- * @return the highAvailability value.
+ * @return the masterServerId value.
*/
- public HighAvailability highAvailability() {
- return this.highAvailability;
+ public String masterServerId() {
+ return this.masterServerId;
}
/**
- * Set the highAvailability property: High availability related properties of a server.
+ * Set the masterServerId property: The master server id of a replica server.
*
- * @param highAvailability the highAvailability value to set.
+ * @param masterServerId the masterServerId value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withHighAvailability(HighAvailability highAvailability) {
- this.highAvailability = highAvailability;
+ public ServerProperties withMasterServerId(String masterServerId) {
+ this.masterServerId = masterServerId;
return this;
}
/**
- * Get the network property: Network related properties of a server.
+ * Get the replicaCapacity property: The maximum number of replicas that a master server can have.
*
- * @return the network value.
+ * @return the replicaCapacity value.
*/
- public Network network() {
- return this.network;
+ public Integer replicaCapacity() {
+ return this.replicaCapacity;
}
/**
- * Set the network property: Network related properties of a server.
+ * Set the replicaCapacity property: The maximum number of replicas that a master server can have.
*
- * @param network the network value to set.
+ * @param replicaCapacity the replicaCapacity value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withNetwork(Network network) {
- this.network = network;
+ public ServerProperties withReplicaCapacity(Integer replicaCapacity) {
+ this.replicaCapacity = replicaCapacity;
return this;
}
/**
- * Get the maintenanceWindow property: Maintenance window of a server.
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
*
- * @return the maintenanceWindow value.
+ * @return the publicNetworkAccess value.
*/
- public MaintenanceWindow maintenanceWindow() {
- return this.maintenanceWindow;
+ public PublicNetworkAccessEnum publicNetworkAccess() {
+ return this.publicNetworkAccess;
}
/**
- * Set the maintenanceWindow property: Maintenance window of a server.
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
*
- * @param maintenanceWindow the maintenanceWindow value to set.
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
* @return the ServerProperties object itself.
*/
- public ServerProperties withMaintenanceWindow(MaintenanceWindow maintenanceWindow) {
- this.maintenanceWindow = maintenanceWindow;
+ public ServerProperties withPublicNetworkAccess(PublicNetworkAccessEnum publicNetworkAccess) {
+ this.publicNetworkAccess = publicNetworkAccess;
return this;
}
+ /**
+ * Get the privateEndpointConnections property: List of private endpoint connections on a server.
+ *
+ * @return the privateEndpointConnections value.
+ */
+ public List privateEndpointConnections() {
+ return this.privateEndpointConnections;
+ }
+
/**
* Validates the instance.
*
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (dataEncryption() != null) {
- dataEncryption().validate();
- }
- if (storage() != null) {
- storage().validate();
- }
- if (backup() != null) {
- backup().validate();
- }
- if (highAvailability() != null) {
- highAvailability().validate();
- }
- if (network() != null) {
- network().validate();
+ if (storageProfile() != null) {
+ storageProfile().validate();
}
- if (maintenanceWindow() != null) {
- maintenanceWindow().validate();
+ if (privateEndpointConnections() != null) {
+ privateEndpointConnections().forEach(e -> e.validate());
}
}
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerPropertiesForUpdate.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerPropertiesForUpdate.java
deleted file mode 100644
index e58b188c2d664..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerPropertiesForUpdate.java
+++ /dev/null
@@ -1,223 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Backup;
-import com.azure.resourcemanager.mysqlflexibleserver.models.DataEncryption;
-import com.azure.resourcemanager.mysqlflexibleserver.models.HighAvailability;
-import com.azure.resourcemanager.mysqlflexibleserver.models.MaintenanceWindow;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ReplicationRole;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Storage;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** The properties that can be updated for a server. */
-@Fluent
-public final class ServerPropertiesForUpdate {
- /*
- * The password of the administrator login.
- */
- @JsonProperty(value = "administratorLoginPassword")
- private String administratorLoginPassword;
-
- /*
- * Storage related properties of a server.
- */
- @JsonProperty(value = "storage")
- private Storage storage;
-
- /*
- * Backup related properties of a server.
- */
- @JsonProperty(value = "backup")
- private Backup backup;
-
- /*
- * High availability related properties of a server.
- */
- @JsonProperty(value = "highAvailability")
- private HighAvailability highAvailability;
-
- /*
- * Maintenance window of a server.
- */
- @JsonProperty(value = "maintenanceWindow")
- private MaintenanceWindow maintenanceWindow;
-
- /*
- * The replication role of the server.
- */
- @JsonProperty(value = "replicationRole")
- private ReplicationRole replicationRole;
-
- /*
- * The Data Encryption for CMK.
- */
- @JsonProperty(value = "dataEncryption")
- private DataEncryption dataEncryption;
-
- /**
- * Get the administratorLoginPassword property: The password of the administrator login.
- *
- * @return the administratorLoginPassword value.
- */
- public String administratorLoginPassword() {
- return this.administratorLoginPassword;
- }
-
- /**
- * Set the administratorLoginPassword property: The password of the administrator login.
- *
- * @param administratorLoginPassword the administratorLoginPassword value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withAdministratorLoginPassword(String administratorLoginPassword) {
- this.administratorLoginPassword = administratorLoginPassword;
- return this;
- }
-
- /**
- * Get the storage property: Storage related properties of a server.
- *
- * @return the storage value.
- */
- public Storage storage() {
- return this.storage;
- }
-
- /**
- * Set the storage property: Storage related properties of a server.
- *
- * @param storage the storage value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withStorage(Storage storage) {
- this.storage = storage;
- return this;
- }
-
- /**
- * Get the backup property: Backup related properties of a server.
- *
- * @return the backup value.
- */
- public Backup backup() {
- return this.backup;
- }
-
- /**
- * Set the backup property: Backup related properties of a server.
- *
- * @param backup the backup value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withBackup(Backup backup) {
- this.backup = backup;
- return this;
- }
-
- /**
- * Get the highAvailability property: High availability related properties of a server.
- *
- * @return the highAvailability value.
- */
- public HighAvailability highAvailability() {
- return this.highAvailability;
- }
-
- /**
- * Set the highAvailability property: High availability related properties of a server.
- *
- * @param highAvailability the highAvailability value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withHighAvailability(HighAvailability highAvailability) {
- this.highAvailability = highAvailability;
- return this;
- }
-
- /**
- * Get the maintenanceWindow property: Maintenance window of a server.
- *
- * @return the maintenanceWindow value.
- */
- public MaintenanceWindow maintenanceWindow() {
- return this.maintenanceWindow;
- }
-
- /**
- * Set the maintenanceWindow property: Maintenance window of a server.
- *
- * @param maintenanceWindow the maintenanceWindow value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withMaintenanceWindow(MaintenanceWindow maintenanceWindow) {
- this.maintenanceWindow = maintenanceWindow;
- return this;
- }
-
- /**
- * Get the replicationRole property: The replication role of the server.
- *
- * @return the replicationRole value.
- */
- public ReplicationRole replicationRole() {
- return this.replicationRole;
- }
-
- /**
- * Set the replicationRole property: The replication role of the server.
- *
- * @param replicationRole the replicationRole value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withReplicationRole(ReplicationRole replicationRole) {
- this.replicationRole = replicationRole;
- return this;
- }
-
- /**
- * Get the dataEncryption property: The Data Encryption for CMK.
- *
- * @return the dataEncryption value.
- */
- public DataEncryption dataEncryption() {
- return this.dataEncryption;
- }
-
- /**
- * Set the dataEncryption property: The Data Encryption for CMK.
- *
- * @param dataEncryption the dataEncryption value to set.
- * @return the ServerPropertiesForUpdate object itself.
- */
- public ServerPropertiesForUpdate withDataEncryption(DataEncryption dataEncryption) {
- this.dataEncryption = dataEncryption;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (storage() != null) {
- storage().validate();
- }
- if (backup() != null) {
- backup().validate();
- }
- if (highAvailability() != null) {
- highAvailability().validate();
- }
- if (maintenanceWindow() != null) {
- maintenanceWindow().validate();
- }
- if (dataEncryption() != null) {
- dataEncryption().validate();
- }
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerSecurityAlertPolicyInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerSecurityAlertPolicyInner.java
new file mode 100644
index 0000000000000..13b549b10cf52
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerSecurityAlertPolicyInner.java
@@ -0,0 +1,208 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerSecurityAlertPolicyState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** A server security alert policy. */
+@Fluent
+public final class ServerSecurityAlertPolicyInner extends ProxyResource {
+ /*
+ * Resource properties.
+ */
+ @JsonProperty(value = "properties")
+ private SecurityAlertPolicyProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private SecurityAlertPolicyProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the state property: Specifies the state of the policy, whether it is enabled or disabled.
+ *
+ * @return the state value.
+ */
+ public ServerSecurityAlertPolicyState state() {
+ return this.innerProperties() == null ? null : this.innerProperties().state();
+ }
+
+ /**
+ * Set the state property: Specifies the state of the policy, whether it is enabled or disabled.
+ *
+ * @param state the state value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withState(ServerSecurityAlertPolicyState state) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withState(state);
+ return this;
+ }
+
+ /**
+ * Get the disabledAlerts property: Specifies an array of alerts that are disabled. Allowed values are:
+ * Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly.
+ *
+ * @return the disabledAlerts value.
+ */
+ public List disabledAlerts() {
+ return this.innerProperties() == null ? null : this.innerProperties().disabledAlerts();
+ }
+
+ /**
+ * Set the disabledAlerts property: Specifies an array of alerts that are disabled. Allowed values are:
+ * Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly.
+ *
+ * @param disabledAlerts the disabledAlerts value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withDisabledAlerts(List disabledAlerts) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withDisabledAlerts(disabledAlerts);
+ return this;
+ }
+
+ /**
+ * Get the emailAddresses property: Specifies an array of e-mail addresses to which the alert is sent.
+ *
+ * @return the emailAddresses value.
+ */
+ public List emailAddresses() {
+ return this.innerProperties() == null ? null : this.innerProperties().emailAddresses();
+ }
+
+ /**
+ * Set the emailAddresses property: Specifies an array of e-mail addresses to which the alert is sent.
+ *
+ * @param emailAddresses the emailAddresses value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withEmailAddresses(List emailAddresses) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withEmailAddresses(emailAddresses);
+ return this;
+ }
+
+ /**
+ * Get the emailAccountAdmins property: Specifies that the alert is sent to the account administrators.
+ *
+ * @return the emailAccountAdmins value.
+ */
+ public Boolean emailAccountAdmins() {
+ return this.innerProperties() == null ? null : this.innerProperties().emailAccountAdmins();
+ }
+
+ /**
+ * Set the emailAccountAdmins property: Specifies that the alert is sent to the account administrators.
+ *
+ * @param emailAccountAdmins the emailAccountAdmins value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withEmailAccountAdmins(Boolean emailAccountAdmins) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withEmailAccountAdmins(emailAccountAdmins);
+ return this;
+ }
+
+ /**
+ * Get the storageEndpoint property: Specifies the blob storage endpoint (e.g.
+ * https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
+ *
+ * @return the storageEndpoint value.
+ */
+ public String storageEndpoint() {
+ return this.innerProperties() == null ? null : this.innerProperties().storageEndpoint();
+ }
+
+ /**
+ * Set the storageEndpoint property: Specifies the blob storage endpoint (e.g.
+ * https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
+ *
+ * @param storageEndpoint the storageEndpoint value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withStorageEndpoint(String storageEndpoint) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withStorageEndpoint(storageEndpoint);
+ return this;
+ }
+
+ /**
+ * Get the storageAccountAccessKey property: Specifies the identifier key of the Threat Detection audit storage
+ * account.
+ *
+ * @return the storageAccountAccessKey value.
+ */
+ public String storageAccountAccessKey() {
+ return this.innerProperties() == null ? null : this.innerProperties().storageAccountAccessKey();
+ }
+
+ /**
+ * Set the storageAccountAccessKey property: Specifies the identifier key of the Threat Detection audit storage
+ * account.
+ *
+ * @param storageAccountAccessKey the storageAccountAccessKey value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withStorageAccountAccessKey(String storageAccountAccessKey) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withStorageAccountAccessKey(storageAccountAccessKey);
+ return this;
+ }
+
+ /**
+ * Get the retentionDays property: Specifies the number of days to keep in the Threat Detection audit logs.
+ *
+ * @return the retentionDays value.
+ */
+ public Integer retentionDays() {
+ return this.innerProperties() == null ? null : this.innerProperties().retentionDays();
+ }
+
+ /**
+ * Set the retentionDays property: Specifies the number of days to keep in the Threat Detection audit logs.
+ *
+ * @param retentionDays the retentionDays value to set.
+ * @return the ServerSecurityAlertPolicyInner object itself.
+ */
+ public ServerSecurityAlertPolicyInner withRetentionDays(Integer retentionDays) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecurityAlertPolicyProperties();
+ }
+ this.innerProperties().withRetentionDays(retentionDays);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpdateParametersProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpdateParametersProperties.java
new file mode 100644
index 0000000000000..eaa444970d68e
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpdateParametersProperties.java
@@ -0,0 +1,213 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.mysqlflexibleserver.models.MinimalTlsVersionEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.PublicNetworkAccessEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.ServerVersion;
+import com.azure.resourcemanager.mysqlflexibleserver.models.SslEnforcementEnum;
+import com.azure.resourcemanager.mysqlflexibleserver.models.StorageProfile;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties that can be updated for a server. */
+@Fluent
+public final class ServerUpdateParametersProperties {
+ /*
+ * Storage profile of a server.
+ */
+ @JsonProperty(value = "storageProfile")
+ private StorageProfile storageProfile;
+
+ /*
+ * The password of the administrator login.
+ */
+ @JsonProperty(value = "administratorLoginPassword")
+ private String administratorLoginPassword;
+
+ /*
+ * The version of a server.
+ */
+ @JsonProperty(value = "version")
+ private ServerVersion version;
+
+ /*
+ * Enable ssl enforcement or not when connect to server.
+ */
+ @JsonProperty(value = "sslEnforcement")
+ private SslEnforcementEnum sslEnforcement;
+
+ /*
+ * Enforce a minimal Tls version for the server.
+ */
+ @JsonProperty(value = "minimalTlsVersion")
+ private MinimalTlsVersionEnum minimalTlsVersion;
+
+ /*
+ * Whether or not public network access is allowed for this server. Value
+ * is optional but if passed in, must be 'Enabled' or 'Disabled'
+ */
+ @JsonProperty(value = "publicNetworkAccess")
+ private PublicNetworkAccessEnum publicNetworkAccess;
+
+ /*
+ * The replication role of the server.
+ */
+ @JsonProperty(value = "replicationRole")
+ private String replicationRole;
+
+ /**
+ * Get the storageProfile property: Storage profile of a server.
+ *
+ * @return the storageProfile value.
+ */
+ public StorageProfile storageProfile() {
+ return this.storageProfile;
+ }
+
+ /**
+ * Set the storageProfile property: Storage profile of a server.
+ *
+ * @param storageProfile the storageProfile value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withStorageProfile(StorageProfile storageProfile) {
+ this.storageProfile = storageProfile;
+ return this;
+ }
+
+ /**
+ * Get the administratorLoginPassword property: The password of the administrator login.
+ *
+ * @return the administratorLoginPassword value.
+ */
+ public String administratorLoginPassword() {
+ return this.administratorLoginPassword;
+ }
+
+ /**
+ * Set the administratorLoginPassword property: The password of the administrator login.
+ *
+ * @param administratorLoginPassword the administratorLoginPassword value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withAdministratorLoginPassword(String administratorLoginPassword) {
+ this.administratorLoginPassword = administratorLoginPassword;
+ return this;
+ }
+
+ /**
+ * Get the version property: The version of a server.
+ *
+ * @return the version value.
+ */
+ public ServerVersion version() {
+ return this.version;
+ }
+
+ /**
+ * Set the version property: The version of a server.
+ *
+ * @param version the version value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withVersion(ServerVersion version) {
+ this.version = version;
+ return this;
+ }
+
+ /**
+ * Get the sslEnforcement property: Enable ssl enforcement or not when connect to server.
+ *
+ * @return the sslEnforcement value.
+ */
+ public SslEnforcementEnum sslEnforcement() {
+ return this.sslEnforcement;
+ }
+
+ /**
+ * Set the sslEnforcement property: Enable ssl enforcement or not when connect to server.
+ *
+ * @param sslEnforcement the sslEnforcement value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withSslEnforcement(SslEnforcementEnum sslEnforcement) {
+ this.sslEnforcement = sslEnforcement;
+ return this;
+ }
+
+ /**
+ * Get the minimalTlsVersion property: Enforce a minimal Tls version for the server.
+ *
+ * @return the minimalTlsVersion value.
+ */
+ public MinimalTlsVersionEnum minimalTlsVersion() {
+ return this.minimalTlsVersion;
+ }
+
+ /**
+ * Set the minimalTlsVersion property: Enforce a minimal Tls version for the server.
+ *
+ * @param minimalTlsVersion the minimalTlsVersion value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withMinimalTlsVersion(MinimalTlsVersionEnum minimalTlsVersion) {
+ this.minimalTlsVersion = minimalTlsVersion;
+ return this;
+ }
+
+ /**
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
+ *
+ * @return the publicNetworkAccess value.
+ */
+ public PublicNetworkAccessEnum publicNetworkAccess() {
+ return this.publicNetworkAccess;
+ }
+
+ /**
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for this server. Value is
+ * optional but if passed in, must be 'Enabled' or 'Disabled'.
+ *
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withPublicNetworkAccess(PublicNetworkAccessEnum publicNetworkAccess) {
+ this.publicNetworkAccess = publicNetworkAccess;
+ return this;
+ }
+
+ /**
+ * Get the replicationRole property: The replication role of the server.
+ *
+ * @return the replicationRole value.
+ */
+ public String replicationRole() {
+ return this.replicationRole;
+ }
+
+ /**
+ * Set the replicationRole property: The replication role of the server.
+ *
+ * @param replicationRole the replicationRole value to set.
+ * @return the ServerUpdateParametersProperties object itself.
+ */
+ public ServerUpdateParametersProperties withReplicationRole(String replicationRole) {
+ this.replicationRole = replicationRole;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (storageProfile() != null) {
+ storageProfile().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpgradeParametersProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpgradeParametersProperties.java
new file mode 100644
index 0000000000000..ba8c668afda66
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/ServerUpgradeParametersProperties.java
@@ -0,0 +1,46 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties that can be updated for a server. */
+@Fluent
+public final class ServerUpgradeParametersProperties {
+ /*
+ * Represents an server storage profile.
+ */
+ @JsonProperty(value = "targetServerVersion")
+ private String targetServerVersion;
+
+ /**
+ * Get the targetServerVersion property: Represents an server storage profile.
+ *
+ * @return the targetServerVersion value.
+ */
+ public String targetServerVersion() {
+ return this.targetServerVersion;
+ }
+
+ /**
+ * Set the targetServerVersion property: Represents an server storage profile.
+ *
+ * @param targetServerVersion the targetServerVersion value to set.
+ * @return the ServerUpgradeParametersProperties object itself.
+ */
+ public ServerUpgradeParametersProperties withTargetServerVersion(String targetServerVersion) {
+ this.targetServerVersion = targetServerVersion;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/TopQueryStatisticsInputProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/TopQueryStatisticsInputProperties.java
new file mode 100644
index 0000000000000..b38a398ae4918
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/TopQueryStatisticsInputProperties.java
@@ -0,0 +1,210 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** The properties for input to get top query statistics. */
+@Fluent
+public final class TopQueryStatisticsInputProperties {
+ /*
+ * Max number of top queries to return.
+ */
+ @JsonProperty(value = "numberOfTopQueries", required = true)
+ private int numberOfTopQueries;
+
+ /*
+ * Aggregation function name.
+ */
+ @JsonProperty(value = "aggregationFunction", required = true)
+ private String aggregationFunction;
+
+ /*
+ * Observed metric name.
+ */
+ @JsonProperty(value = "observedMetric", required = true)
+ private String observedMetric;
+
+ /*
+ * Observation start time.
+ */
+ @JsonProperty(value = "observationStartTime", required = true)
+ private OffsetDateTime observationStartTime;
+
+ /*
+ * Observation end time.
+ */
+ @JsonProperty(value = "observationEndTime", required = true)
+ private OffsetDateTime observationEndTime;
+
+ /*
+ * Aggregation interval type in ISO 8601 format.
+ */
+ @JsonProperty(value = "aggregationWindow", required = true)
+ private String aggregationWindow;
+
+ /**
+ * Get the numberOfTopQueries property: Max number of top queries to return.
+ *
+ * @return the numberOfTopQueries value.
+ */
+ public int numberOfTopQueries() {
+ return this.numberOfTopQueries;
+ }
+
+ /**
+ * Set the numberOfTopQueries property: Max number of top queries to return.
+ *
+ * @param numberOfTopQueries the numberOfTopQueries value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withNumberOfTopQueries(int numberOfTopQueries) {
+ this.numberOfTopQueries = numberOfTopQueries;
+ return this;
+ }
+
+ /**
+ * Get the aggregationFunction property: Aggregation function name.
+ *
+ * @return the aggregationFunction value.
+ */
+ public String aggregationFunction() {
+ return this.aggregationFunction;
+ }
+
+ /**
+ * Set the aggregationFunction property: Aggregation function name.
+ *
+ * @param aggregationFunction the aggregationFunction value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withAggregationFunction(String aggregationFunction) {
+ this.aggregationFunction = aggregationFunction;
+ return this;
+ }
+
+ /**
+ * Get the observedMetric property: Observed metric name.
+ *
+ * @return the observedMetric value.
+ */
+ public String observedMetric() {
+ return this.observedMetric;
+ }
+
+ /**
+ * Set the observedMetric property: Observed metric name.
+ *
+ * @param observedMetric the observedMetric value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withObservedMetric(String observedMetric) {
+ this.observedMetric = observedMetric;
+ return this;
+ }
+
+ /**
+ * Get the observationStartTime property: Observation start time.
+ *
+ * @return the observationStartTime value.
+ */
+ public OffsetDateTime observationStartTime() {
+ return this.observationStartTime;
+ }
+
+ /**
+ * Set the observationStartTime property: Observation start time.
+ *
+ * @param observationStartTime the observationStartTime value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withObservationStartTime(OffsetDateTime observationStartTime) {
+ this.observationStartTime = observationStartTime;
+ return this;
+ }
+
+ /**
+ * Get the observationEndTime property: Observation end time.
+ *
+ * @return the observationEndTime value.
+ */
+ public OffsetDateTime observationEndTime() {
+ return this.observationEndTime;
+ }
+
+ /**
+ * Set the observationEndTime property: Observation end time.
+ *
+ * @param observationEndTime the observationEndTime value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withObservationEndTime(OffsetDateTime observationEndTime) {
+ this.observationEndTime = observationEndTime;
+ return this;
+ }
+
+ /**
+ * Get the aggregationWindow property: Aggregation interval type in ISO 8601 format.
+ *
+ * @return the aggregationWindow value.
+ */
+ public String aggregationWindow() {
+ return this.aggregationWindow;
+ }
+
+ /**
+ * Set the aggregationWindow property: Aggregation interval type in ISO 8601 format.
+ *
+ * @param aggregationWindow the aggregationWindow value to set.
+ * @return the TopQueryStatisticsInputProperties object itself.
+ */
+ public TopQueryStatisticsInputProperties withAggregationWindow(String aggregationWindow) {
+ this.aggregationWindow = aggregationWindow;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (aggregationFunction() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property aggregationFunction in model TopQueryStatisticsInputProperties"));
+ }
+ if (observedMetric() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property observedMetric in model TopQueryStatisticsInputProperties"));
+ }
+ if (observationStartTime() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property observationStartTime in model TopQueryStatisticsInputProperties"));
+ }
+ if (observationEndTime() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property observationEndTime in model TopQueryStatisticsInputProperties"));
+ }
+ if (aggregationWindow() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property aggregationWindow in model TopQueryStatisticsInputProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(TopQueryStatisticsInputProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleInner.java
new file mode 100644
index 0000000000000..d55cb30e11283
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleInner.java
@@ -0,0 +1,97 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.mysqlflexibleserver.models.VirtualNetworkRuleState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A virtual network rule. */
+@Fluent
+public final class VirtualNetworkRuleInner extends ProxyResource {
+ /*
+ * Resource properties.
+ */
+ @JsonProperty(value = "properties")
+ private VirtualNetworkRuleProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private VirtualNetworkRuleProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the virtualNetworkSubnetId property: The ARM resource id of the virtual network subnet.
+ *
+ * @return the virtualNetworkSubnetId value.
+ */
+ public String virtualNetworkSubnetId() {
+ return this.innerProperties() == null ? null : this.innerProperties().virtualNetworkSubnetId();
+ }
+
+ /**
+ * Set the virtualNetworkSubnetId property: The ARM resource id of the virtual network subnet.
+ *
+ * @param virtualNetworkSubnetId the virtualNetworkSubnetId value to set.
+ * @return the VirtualNetworkRuleInner object itself.
+ */
+ public VirtualNetworkRuleInner withVirtualNetworkSubnetId(String virtualNetworkSubnetId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new VirtualNetworkRuleProperties();
+ }
+ this.innerProperties().withVirtualNetworkSubnetId(virtualNetworkSubnetId);
+ return this;
+ }
+
+ /**
+ * Get the ignoreMissingVnetServiceEndpoint property: Create firewall rule before the virtual network has vnet
+ * service endpoint enabled.
+ *
+ * @return the ignoreMissingVnetServiceEndpoint value.
+ */
+ public Boolean ignoreMissingVnetServiceEndpoint() {
+ return this.innerProperties() == null ? null : this.innerProperties().ignoreMissingVnetServiceEndpoint();
+ }
+
+ /**
+ * Set the ignoreMissingVnetServiceEndpoint property: Create firewall rule before the virtual network has vnet
+ * service endpoint enabled.
+ *
+ * @param ignoreMissingVnetServiceEndpoint the ignoreMissingVnetServiceEndpoint value to set.
+ * @return the VirtualNetworkRuleInner object itself.
+ */
+ public VirtualNetworkRuleInner withIgnoreMissingVnetServiceEndpoint(Boolean ignoreMissingVnetServiceEndpoint) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new VirtualNetworkRuleProperties();
+ }
+ this.innerProperties().withIgnoreMissingVnetServiceEndpoint(ignoreMissingVnetServiceEndpoint);
+ return this;
+ }
+
+ /**
+ * Get the state property: Virtual Network Rule State.
+ *
+ * @return the state value.
+ */
+ public VirtualNetworkRuleState state() {
+ return this.innerProperties() == null ? null : this.innerProperties().state();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleProperties.java
new file mode 100644
index 0000000000000..bc0f1a9338c3f
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkRuleProperties.java
@@ -0,0 +1,100 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.mysqlflexibleserver.models.VirtualNetworkRuleState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of a virtual network rule. */
+@Fluent
+public final class VirtualNetworkRuleProperties {
+ /*
+ * The ARM resource id of the virtual network subnet.
+ */
+ @JsonProperty(value = "virtualNetworkSubnetId", required = true)
+ private String virtualNetworkSubnetId;
+
+ /*
+ * Create firewall rule before the virtual network has vnet service
+ * endpoint enabled.
+ */
+ @JsonProperty(value = "ignoreMissingVnetServiceEndpoint")
+ private Boolean ignoreMissingVnetServiceEndpoint;
+
+ /*
+ * Virtual Network Rule State
+ */
+ @JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualNetworkRuleState state;
+
+ /**
+ * Get the virtualNetworkSubnetId property: The ARM resource id of the virtual network subnet.
+ *
+ * @return the virtualNetworkSubnetId value.
+ */
+ public String virtualNetworkSubnetId() {
+ return this.virtualNetworkSubnetId;
+ }
+
+ /**
+ * Set the virtualNetworkSubnetId property: The ARM resource id of the virtual network subnet.
+ *
+ * @param virtualNetworkSubnetId the virtualNetworkSubnetId value to set.
+ * @return the VirtualNetworkRuleProperties object itself.
+ */
+ public VirtualNetworkRuleProperties withVirtualNetworkSubnetId(String virtualNetworkSubnetId) {
+ this.virtualNetworkSubnetId = virtualNetworkSubnetId;
+ return this;
+ }
+
+ /**
+ * Get the ignoreMissingVnetServiceEndpoint property: Create firewall rule before the virtual network has vnet
+ * service endpoint enabled.
+ *
+ * @return the ignoreMissingVnetServiceEndpoint value.
+ */
+ public Boolean ignoreMissingVnetServiceEndpoint() {
+ return this.ignoreMissingVnetServiceEndpoint;
+ }
+
+ /**
+ * Set the ignoreMissingVnetServiceEndpoint property: Create firewall rule before the virtual network has vnet
+ * service endpoint enabled.
+ *
+ * @param ignoreMissingVnetServiceEndpoint the ignoreMissingVnetServiceEndpoint value to set.
+ * @return the VirtualNetworkRuleProperties object itself.
+ */
+ public VirtualNetworkRuleProperties withIgnoreMissingVnetServiceEndpoint(Boolean ignoreMissingVnetServiceEndpoint) {
+ this.ignoreMissingVnetServiceEndpoint = ignoreMissingVnetServiceEndpoint;
+ return this;
+ }
+
+ /**
+ * Get the state property: Virtual Network Rule State.
+ *
+ * @return the state value.
+ */
+ public VirtualNetworkRuleState state() {
+ return this.state;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (virtualNetworkSubnetId() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property virtualNetworkSubnetId in model VirtualNetworkRuleProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(VirtualNetworkRuleProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkSubnetUsageResultInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkSubnetUsageResultInner.java
deleted file mode 100644
index 62ab410825e92..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/VirtualNetworkSubnetUsageResultInner.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.resourcemanager.mysqlflexibleserver.models.DelegatedSubnetUsage;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Virtual network subnet usage data. */
-@Immutable
-public final class VirtualNetworkSubnetUsageResultInner {
- /*
- * A list of delegated subnet usage
- */
- @JsonProperty(value = "delegatedSubnetsUsage", access = JsonProperty.Access.WRITE_ONLY)
- private List delegatedSubnetsUsage;
-
- /**
- * Get the delegatedSubnetsUsage property: A list of delegated subnet usage.
- *
- * @return the delegatedSubnetsUsage value.
- */
- public List delegatedSubnetsUsage() {
- return this.delegatedSubnetsUsage;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (delegatedSubnetsUsage() != null) {
- delegatedSubnetsUsage().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticInner.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticInner.java
new file mode 100644
index 0000000000000..be1e8f78dbbf7
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticInner.java
@@ -0,0 +1,247 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Represents a Wait Statistic. */
+@Fluent
+public final class WaitStatisticInner extends ProxyResource {
+ /*
+ * The properties of a wait statistic.
+ */
+ @JsonProperty(value = "properties")
+ private WaitStatisticProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: The properties of a wait statistic.
+ *
+ * @return the innerProperties value.
+ */
+ private WaitStatisticProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the startTime property: Observation start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().startTime();
+ }
+
+ /**
+ * Set the startTime property: Observation start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withStartTime(OffsetDateTime startTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withStartTime(startTime);
+ return this;
+ }
+
+ /**
+ * Get the endTime property: Observation end time.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().endTime();
+ }
+
+ /**
+ * Set the endTime property: Observation end time.
+ *
+ * @param endTime the endTime value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withEndTime(OffsetDateTime endTime) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withEndTime(endTime);
+ return this;
+ }
+
+ /**
+ * Get the eventName property: Wait event name.
+ *
+ * @return the eventName value.
+ */
+ public String eventName() {
+ return this.innerProperties() == null ? null : this.innerProperties().eventName();
+ }
+
+ /**
+ * Set the eventName property: Wait event name.
+ *
+ * @param eventName the eventName value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withEventName(String eventName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withEventName(eventName);
+ return this;
+ }
+
+ /**
+ * Get the eventTypeName property: Wait event type name.
+ *
+ * @return the eventTypeName value.
+ */
+ public String eventTypeName() {
+ return this.innerProperties() == null ? null : this.innerProperties().eventTypeName();
+ }
+
+ /**
+ * Set the eventTypeName property: Wait event type name.
+ *
+ * @param eventTypeName the eventTypeName value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withEventTypeName(String eventTypeName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withEventTypeName(eventTypeName);
+ return this;
+ }
+
+ /**
+ * Get the queryId property: Database query identifier.
+ *
+ * @return the queryId value.
+ */
+ public Long queryId() {
+ return this.innerProperties() == null ? null : this.innerProperties().queryId();
+ }
+
+ /**
+ * Set the queryId property: Database query identifier.
+ *
+ * @param queryId the queryId value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withQueryId(Long queryId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withQueryId(queryId);
+ return this;
+ }
+
+ /**
+ * Get the databaseName property: Database Name.
+ *
+ * @return the databaseName value.
+ */
+ public String databaseName() {
+ return this.innerProperties() == null ? null : this.innerProperties().databaseName();
+ }
+
+ /**
+ * Set the databaseName property: Database Name.
+ *
+ * @param databaseName the databaseName value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withDatabaseName(String databaseName) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withDatabaseName(databaseName);
+ return this;
+ }
+
+ /**
+ * Get the userId property: Database user identifier.
+ *
+ * @return the userId value.
+ */
+ public Long userId() {
+ return this.innerProperties() == null ? null : this.innerProperties().userId();
+ }
+
+ /**
+ * Set the userId property: Database user identifier.
+ *
+ * @param userId the userId value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withUserId(Long userId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withUserId(userId);
+ return this;
+ }
+
+ /**
+ * Get the count property: Wait event count observed in this time interval.
+ *
+ * @return the count value.
+ */
+ public Long count() {
+ return this.innerProperties() == null ? null : this.innerProperties().count();
+ }
+
+ /**
+ * Set the count property: Wait event count observed in this time interval.
+ *
+ * @param count the count value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withCount(Long count) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withCount(count);
+ return this;
+ }
+
+ /**
+ * Get the totalTimeInMs property: Total time of wait in milliseconds in this time interval.
+ *
+ * @return the totalTimeInMs value.
+ */
+ public Double totalTimeInMs() {
+ return this.innerProperties() == null ? null : this.innerProperties().totalTimeInMs();
+ }
+
+ /**
+ * Set the totalTimeInMs property: Total time of wait in milliseconds in this time interval.
+ *
+ * @param totalTimeInMs the totalTimeInMs value to set.
+ * @return the WaitStatisticInner object itself.
+ */
+ public WaitStatisticInner withTotalTimeInMs(Double totalTimeInMs) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WaitStatisticProperties();
+ }
+ this.innerProperties().withTotalTimeInMs(totalTimeInMs);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticProperties.java
new file mode 100644
index 0000000000000..502eaaf497a1b
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticProperties.java
@@ -0,0 +1,255 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** The properties of a wait statistic. */
+@Fluent
+public final class WaitStatisticProperties {
+ /*
+ * Observation start time.
+ */
+ @JsonProperty(value = "startTime")
+ private OffsetDateTime startTime;
+
+ /*
+ * Observation end time.
+ */
+ @JsonProperty(value = "endTime")
+ private OffsetDateTime endTime;
+
+ /*
+ * Wait event name.
+ */
+ @JsonProperty(value = "eventName")
+ private String eventName;
+
+ /*
+ * Wait event type name.
+ */
+ @JsonProperty(value = "eventTypeName")
+ private String eventTypeName;
+
+ /*
+ * Database query identifier.
+ */
+ @JsonProperty(value = "queryId")
+ private Long queryId;
+
+ /*
+ * Database Name.
+ */
+ @JsonProperty(value = "databaseName")
+ private String databaseName;
+
+ /*
+ * Database user identifier.
+ */
+ @JsonProperty(value = "userId")
+ private Long userId;
+
+ /*
+ * Wait event count observed in this time interval.
+ */
+ @JsonProperty(value = "count")
+ private Long count;
+
+ /*
+ * Total time of wait in milliseconds in this time interval.
+ */
+ @JsonProperty(value = "totalTimeInMs")
+ private Double totalTimeInMs;
+
+ /**
+ * Get the startTime property: Observation start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime property: Observation start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withStartTime(OffsetDateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the endTime property: Observation end time.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Set the endTime property: Observation end time.
+ *
+ * @param endTime the endTime value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withEndTime(OffsetDateTime endTime) {
+ this.endTime = endTime;
+ return this;
+ }
+
+ /**
+ * Get the eventName property: Wait event name.
+ *
+ * @return the eventName value.
+ */
+ public String eventName() {
+ return this.eventName;
+ }
+
+ /**
+ * Set the eventName property: Wait event name.
+ *
+ * @param eventName the eventName value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withEventName(String eventName) {
+ this.eventName = eventName;
+ return this;
+ }
+
+ /**
+ * Get the eventTypeName property: Wait event type name.
+ *
+ * @return the eventTypeName value.
+ */
+ public String eventTypeName() {
+ return this.eventTypeName;
+ }
+
+ /**
+ * Set the eventTypeName property: Wait event type name.
+ *
+ * @param eventTypeName the eventTypeName value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withEventTypeName(String eventTypeName) {
+ this.eventTypeName = eventTypeName;
+ return this;
+ }
+
+ /**
+ * Get the queryId property: Database query identifier.
+ *
+ * @return the queryId value.
+ */
+ public Long queryId() {
+ return this.queryId;
+ }
+
+ /**
+ * Set the queryId property: Database query identifier.
+ *
+ * @param queryId the queryId value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withQueryId(Long queryId) {
+ this.queryId = queryId;
+ return this;
+ }
+
+ /**
+ * Get the databaseName property: Database Name.
+ *
+ * @return the databaseName value.
+ */
+ public String databaseName() {
+ return this.databaseName;
+ }
+
+ /**
+ * Set the databaseName property: Database Name.
+ *
+ * @param databaseName the databaseName value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withDatabaseName(String databaseName) {
+ this.databaseName = databaseName;
+ return this;
+ }
+
+ /**
+ * Get the userId property: Database user identifier.
+ *
+ * @return the userId value.
+ */
+ public Long userId() {
+ return this.userId;
+ }
+
+ /**
+ * Set the userId property: Database user identifier.
+ *
+ * @param userId the userId value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withUserId(Long userId) {
+ this.userId = userId;
+ return this;
+ }
+
+ /**
+ * Get the count property: Wait event count observed in this time interval.
+ *
+ * @return the count value.
+ */
+ public Long count() {
+ return this.count;
+ }
+
+ /**
+ * Set the count property: Wait event count observed in this time interval.
+ *
+ * @param count the count value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withCount(Long count) {
+ this.count = count;
+ return this;
+ }
+
+ /**
+ * Get the totalTimeInMs property: Total time of wait in milliseconds in this time interval.
+ *
+ * @return the totalTimeInMs value.
+ */
+ public Double totalTimeInMs() {
+ return this.totalTimeInMs;
+ }
+
+ /**
+ * Set the totalTimeInMs property: Total time of wait in milliseconds in this time interval.
+ *
+ * @param totalTimeInMs the totalTimeInMs value to set.
+ * @return the WaitStatisticProperties object itself.
+ */
+ public WaitStatisticProperties withTotalTimeInMs(Double totalTimeInMs) {
+ this.totalTimeInMs = totalTimeInMs;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticsInputProperties.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticsInputProperties.java
new file mode 100644
index 0000000000000..f7fd11bab7138
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/fluent/models/WaitStatisticsInputProperties.java
@@ -0,0 +1,120 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** The properties for input to get wait statistics. */
+@Fluent
+public final class WaitStatisticsInputProperties {
+ /*
+ * Observation start time.
+ */
+ @JsonProperty(value = "observationStartTime", required = true)
+ private OffsetDateTime observationStartTime;
+
+ /*
+ * Observation end time.
+ */
+ @JsonProperty(value = "observationEndTime", required = true)
+ private OffsetDateTime observationEndTime;
+
+ /*
+ * Aggregation interval type in ISO 8601 format.
+ */
+ @JsonProperty(value = "aggregationWindow", required = true)
+ private String aggregationWindow;
+
+ /**
+ * Get the observationStartTime property: Observation start time.
+ *
+ * @return the observationStartTime value.
+ */
+ public OffsetDateTime observationStartTime() {
+ return this.observationStartTime;
+ }
+
+ /**
+ * Set the observationStartTime property: Observation start time.
+ *
+ * @param observationStartTime the observationStartTime value to set.
+ * @return the WaitStatisticsInputProperties object itself.
+ */
+ public WaitStatisticsInputProperties withObservationStartTime(OffsetDateTime observationStartTime) {
+ this.observationStartTime = observationStartTime;
+ return this;
+ }
+
+ /**
+ * Get the observationEndTime property: Observation end time.
+ *
+ * @return the observationEndTime value.
+ */
+ public OffsetDateTime observationEndTime() {
+ return this.observationEndTime;
+ }
+
+ /**
+ * Set the observationEndTime property: Observation end time.
+ *
+ * @param observationEndTime the observationEndTime value to set.
+ * @return the WaitStatisticsInputProperties object itself.
+ */
+ public WaitStatisticsInputProperties withObservationEndTime(OffsetDateTime observationEndTime) {
+ this.observationEndTime = observationEndTime;
+ return this;
+ }
+
+ /**
+ * Get the aggregationWindow property: Aggregation interval type in ISO 8601 format.
+ *
+ * @return the aggregationWindow value.
+ */
+ public String aggregationWindow() {
+ return this.aggregationWindow;
+ }
+
+ /**
+ * Set the aggregationWindow property: Aggregation interval type in ISO 8601 format.
+ *
+ * @param aggregationWindow the aggregationWindow value to set.
+ * @return the WaitStatisticsInputProperties object itself.
+ */
+ public WaitStatisticsInputProperties withAggregationWindow(String aggregationWindow) {
+ this.aggregationWindow = aggregationWindow;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (observationStartTime() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property observationStartTime in model WaitStatisticsInputProperties"));
+ }
+ if (observationEndTime() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property observationEndTime in model WaitStatisticsInputProperties"));
+ }
+ if (aggregationWindow() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property aggregationWindow in model WaitStatisticsInputProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(WaitStatisticsInputProperties.class);
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/GetPrivateDnsZoneSuffixResponseImpl.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorImpl.java
similarity index 50%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/GetPrivateDnsZoneSuffixResponseImpl.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorImpl.java
index 3dc69782ccc0e..335b04c3a52e6 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/GetPrivateDnsZoneSuffixResponseImpl.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorImpl.java
@@ -4,26 +4,36 @@
package com.azure.resourcemanager.mysqlflexibleserver.implementation;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.GetPrivateDnsZoneSuffixResponseInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.GetPrivateDnsZoneSuffixResponse;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.AdvisorInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.Advisor;
-public final class GetPrivateDnsZoneSuffixResponseImpl implements GetPrivateDnsZoneSuffixResponse {
- private GetPrivateDnsZoneSuffixResponseInner innerObject;
+public final class AdvisorImpl implements Advisor {
+ private AdvisorInner innerObject;
private final com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager;
- GetPrivateDnsZoneSuffixResponseImpl(
- GetPrivateDnsZoneSuffixResponseInner innerObject,
- com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager) {
+ AdvisorImpl(AdvisorInner innerObject, com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager) {
this.innerObject = innerObject;
this.serviceManager = serviceManager;
}
- public String privateDnsZoneSuffix() {
- return this.innerModel().privateDnsZoneSuffix();
+ public String id() {
+ return this.innerModel().id();
}
- public GetPrivateDnsZoneSuffixResponseInner innerModel() {
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public Object properties() {
+ return this.innerModel().properties();
+ }
+
+ public AdvisorInner innerModel() {
return this.innerObject;
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsClientImpl.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsClientImpl.java
similarity index 77%
rename from sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsClientImpl.java
rename to sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsClientImpl.java
index 8c9a069693fe7..b1afc48627e6d 100644
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsClientImpl.java
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsClientImpl.java
@@ -25,59 +25,59 @@
import com.azure.core.management.exception.ManagementException;
import com.azure.core.util.Context;
import com.azure.core.util.FluxUtil;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.BackupsClient;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerBackupInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerBackupListResult;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.AdvisorsClient;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.AdvisorInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.AdvisorsResultList;
import reactor.core.publisher.Mono;
-/** An instance of this class provides access to all the operations defined in BackupsClient. */
-public final class BackupsClientImpl implements BackupsClient {
+/** An instance of this class provides access to all the operations defined in AdvisorsClient. */
+public final class AdvisorsClientImpl implements AdvisorsClient {
/** The proxy service used to perform REST calls. */
- private final BackupsService service;
+ private final AdvisorsService service;
/** The service client containing this operation class. */
private final MySqlManagementClientImpl client;
/**
- * Initializes an instance of BackupsClientImpl.
+ * Initializes an instance of AdvisorsClientImpl.
*
* @param client the instance of the service client containing this operation class.
*/
- BackupsClientImpl(MySqlManagementClientImpl client) {
- this.service = RestProxy.create(BackupsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ AdvisorsClientImpl(MySqlManagementClientImpl client) {
+ this.service = RestProxy.create(AdvisorsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
this.client = client;
}
/**
- * The interface defining all the services for MySqlManagementClientBackups to be used by the proxy service to
+ * The interface defining all the services for MySqlManagementClientAdvisors to be used by the proxy service to
* perform REST calls.
*/
@Host("{$host}")
@ServiceInterface(name = "MySqlManagementClien")
- private interface BackupsService {
+ private interface AdvisorsService {
@Headers({"Content-Type: application/json"})
@Get(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL"
- + "/flexibleServers/{serverName}/backups/{backupName}")
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers"
+ + "/{serverName}/advisors/{advisorName}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> get(
+ Mono> get(
@HostParam("$host") String endpoint,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("serverName") String serverName,
- @PathParam("backupName") String backupName,
+ @PathParam("advisorName") String advisorName,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL"
- + "/flexibleServers/{serverName}/backups")
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers"
+ + "/{serverName}/advisors")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> listByServer(
+ Mono> listByServer(
@HostParam("$host") String endpoint,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@@ -90,7 +90,7 @@ Mono> listByServer(
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> listByServerNext(
+ Mono> listByServerNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
@@ -98,19 +98,19 @@ Mono> listByServerNext(
}
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties along with {@link Response} on successful completion of {@link Mono}.
+ * @return a recommendation action advisor along with {@link Response} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName, String serverName, String backupName) {
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String serverName, String advisorName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -130,9 +130,10 @@ private Mono> getWithResponseAsync(
if (serverName == null) {
return Mono.error(new IllegalArgumentException("Parameter serverName is required and cannot be null."));
}
- if (backupName == null) {
- return Mono.error(new IllegalArgumentException("Parameter backupName is required and cannot be null."));
+ if (advisorName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter advisorName is required and cannot be null."));
}
+ final String apiVersion = "2018-06-01";
final String accept = "application/json";
return FluxUtil
.withContext(
@@ -140,31 +141,31 @@ private Mono> getWithResponseAsync(
service
.get(
this.client.getEndpoint(),
- this.client.getApiVersion(),
+ apiVersion,
this.client.getSubscriptionId(),
resourceGroupName,
serverName,
- backupName,
+ advisorName,
accept,
context))
.contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
}
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties along with {@link Response} on successful completion of {@link Mono}.
+ * @return a recommendation action advisor along with {@link Response} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName, String serverName, String backupName, Context context) {
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String serverName, String advisorName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -184,94 +185,87 @@ private Mono> getWithResponseAsync(
if (serverName == null) {
return Mono.error(new IllegalArgumentException("Parameter serverName is required and cannot be null."));
}
- if (backupName == null) {
- return Mono.error(new IllegalArgumentException("Parameter backupName is required and cannot be null."));
+ if (advisorName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter advisorName is required and cannot be null."));
}
+ final String apiVersion = "2018-06-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.get(
this.client.getEndpoint(),
- this.client.getApiVersion(),
+ apiVersion,
this.client.getSubscriptionId(),
resourceGroupName,
serverName,
- backupName,
+ advisorName,
accept,
context);
}
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties on successful completion of {@link Mono}.
+ * @return a recommendation action advisor on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono getAsync(String resourceGroupName, String serverName, String backupName) {
- return getWithResponseAsync(resourceGroupName, serverName, backupName)
- .flatMap(
- (Response res) -> {
- if (res.getValue() != null) {
- return Mono.just(res.getValue());
- } else {
- return Mono.empty();
- }
- });
+ private Mono getAsync(String resourceGroupName, String serverName, String advisorName) {
+ return getWithResponseAsync(resourceGroupName, serverName, advisorName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
}
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties.
+ * @return a recommendation action advisor.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public ServerBackupInner get(String resourceGroupName, String serverName, String backupName) {
- return getAsync(resourceGroupName, serverName, backupName).block();
+ public AdvisorInner get(String resourceGroupName, String serverName, String advisorName) {
+ return getAsync(resourceGroupName, serverName, advisorName).block();
}
/**
- * List all the backups for a given server.
+ * Get a recommendation action advisor.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
- * @param backupName The name of the backup.
+ * @param advisorName The advisor name for recommendation action.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return server backup properties along with {@link Response}.
+ * @return a recommendation action advisor along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Response getWithResponse(
- String resourceGroupName, String serverName, String backupName, Context context) {
- return getWithResponseAsync(resourceGroupName, serverName, backupName, context).block();
+ public Response getWithResponse(
+ String resourceGroupName, String serverName, String advisorName, Context context) {
+ return getWithResponseAsync(resourceGroupName, serverName, advisorName, context).block();
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups along with {@link PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of query statistics along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listByServerSinglePageAsync(
- String resourceGroupName, String serverName) {
+ private Mono> listByServerSinglePageAsync(String resourceGroupName, String serverName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -291,6 +285,7 @@ private Mono> listByServerSinglePageAsync(
if (serverName == null) {
return Mono.error(new IllegalArgumentException("Parameter serverName is required and cannot be null."));
}
+ final String apiVersion = "2018-06-01";
final String accept = "application/json";
return FluxUtil
.withContext(
@@ -298,13 +293,13 @@ private Mono> listByServerSinglePageAsync(
service
.listByServer(
this.client.getEndpoint(),
- this.client.getApiVersion(),
+ apiVersion,
this.client.getSubscriptionId(),
resourceGroupName,
serverName,
accept,
context))
- .>map(
+ .>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
@@ -317,7 +312,7 @@ private Mono> listByServerSinglePageAsync(
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -325,10 +320,10 @@ private Mono> listByServerSinglePageAsync(
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups along with {@link PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of query statistics along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listByServerSinglePageAsync(
+ private Mono> listByServerSinglePageAsync(
String resourceGroupName, String serverName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
@@ -349,12 +344,13 @@ private Mono> listByServerSinglePageAsync(
if (serverName == null) {
return Mono.error(new IllegalArgumentException("Parameter serverName is required and cannot be null."));
}
+ final String apiVersion = "2018-06-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listByServer(
this.client.getEndpoint(),
- this.client.getApiVersion(),
+ apiVersion,
this.client.getSubscriptionId(),
resourceGroupName,
serverName,
@@ -372,24 +368,24 @@ private Mono> listByServerSinglePageAsync(
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedFlux}.
+ * @return a list of query statistics as paginated response with {@link PagedFlux}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listByServerAsync(String resourceGroupName, String serverName) {
+ private PagedFlux listByServerAsync(String resourceGroupName, String serverName) {
return new PagedFlux<>(
() -> listByServerSinglePageAsync(resourceGroupName, serverName),
nextLink -> listByServerNextSinglePageAsync(nextLink));
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -397,33 +393,32 @@ private PagedFlux listByServerAsync(String resourceGroupName,
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedFlux}.
+ * @return a list of query statistics as paginated response with {@link PagedFlux}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listByServerAsync(
- String resourceGroupName, String serverName, Context context) {
+ private PagedFlux listByServerAsync(String resourceGroupName, String serverName, Context context) {
return new PagedFlux<>(
() -> listByServerSinglePageAsync(resourceGroupName, serverName, context),
nextLink -> listByServerNextSinglePageAsync(nextLink, context));
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedIterable}.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable listByServer(String resourceGroupName, String serverName) {
+ public PagedIterable listByServer(String resourceGroupName, String serverName) {
return new PagedIterable<>(listByServerAsync(resourceGroupName, serverName));
}
/**
- * List all the backups for a given server.
+ * List recommendation action advisors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serverName The name of the server.
@@ -431,10 +426,10 @@ public PagedIterable listByServer(String resourceGroupName, S
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups as paginated response with {@link PagedIterable}.
+ * @return a list of query statistics as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable listByServer(String resourceGroupName, String serverName, Context context) {
+ public PagedIterable listByServer(String resourceGroupName, String serverName, Context context) {
return new PagedIterable<>(listByServerAsync(resourceGroupName, serverName, context));
}
@@ -445,10 +440,10 @@ public PagedIterable listByServer(String resourceGroupName, S
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups along with {@link PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of query statistics along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listByServerNextSinglePageAsync(String nextLink) {
+ private Mono> listByServerNextSinglePageAsync(String nextLink) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
@@ -461,7 +456,7 @@ private Mono> listByServerNextSinglePageAsync(S
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByServerNext(nextLink, this.client.getEndpoint(), accept, context))
- .>map(
+ .>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
@@ -481,10 +476,10 @@ private Mono> listByServerNextSinglePageAsync(S
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a list of server backups along with {@link PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of query statistics along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listByServerNextSinglePageAsync(String nextLink, Context context) {
+ private Mono> listByServerNextSinglePageAsync(String nextLink, Context context) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsImpl.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsImpl.java
new file mode 100644
index 0000000000000..032f7470f6a0b
--- /dev/null
+++ b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/AdvisorsImpl.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.mysqlflexibleserver.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.AdvisorsClient;
+import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.AdvisorInner;
+import com.azure.resourcemanager.mysqlflexibleserver.models.Advisor;
+import com.azure.resourcemanager.mysqlflexibleserver.models.Advisors;
+
+public final class AdvisorsImpl implements Advisors {
+ private static final ClientLogger LOGGER = new ClientLogger(AdvisorsImpl.class);
+
+ private final AdvisorsClient innerClient;
+
+ private final com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager;
+
+ public AdvisorsImpl(
+ AdvisorsClient innerClient, com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public Advisor get(String resourceGroupName, String serverName, String advisorName) {
+ AdvisorInner inner = this.serviceClient().get(resourceGroupName, serverName, advisorName);
+ if (inner != null) {
+ return new AdvisorImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getWithResponse(
+ String resourceGroupName, String serverName, String advisorName, Context context) {
+ Response inner =
+ this.serviceClient().getWithResponse(resourceGroupName, serverName, advisorName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new AdvisorImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public PagedIterable listByServer(String resourceGroupName, String serverName) {
+ PagedIterable inner = this.serviceClient().listByServer(resourceGroupName, serverName);
+ return Utils.mapPage(inner, inner1 -> new AdvisorImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listByServer(String resourceGroupName, String serverName, Context context) {
+ PagedIterable inner = this.serviceClient().listByServer(resourceGroupName, serverName, context);
+ return Utils.mapPage(inner, inner1 -> new AdvisorImpl(inner1, this.manager()));
+ }
+
+ private AdvisorsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.mysqlflexibleserver.MySqlManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsImpl.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsImpl.java
deleted file mode 100644
index 264fbb15ca655..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/BackupsImpl.java
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.implementation;
-
-import com.azure.core.http.rest.PagedIterable;
-import com.azure.core.http.rest.Response;
-import com.azure.core.http.rest.SimpleResponse;
-import com.azure.core.util.Context;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.BackupsClient;
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.ServerBackupInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.Backups;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerBackup;
-
-public final class BackupsImpl implements Backups {
- private static final ClientLogger LOGGER = new ClientLogger(BackupsImpl.class);
-
- private final BackupsClient innerClient;
-
- private final com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager;
-
- public BackupsImpl(
- BackupsClient innerClient, com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager) {
- this.innerClient = innerClient;
- this.serviceManager = serviceManager;
- }
-
- public ServerBackup get(String resourceGroupName, String serverName, String backupName) {
- ServerBackupInner inner = this.serviceClient().get(resourceGroupName, serverName, backupName);
- if (inner != null) {
- return new ServerBackupImpl(inner, this.manager());
- } else {
- return null;
- }
- }
-
- public Response getWithResponse(
- String resourceGroupName, String serverName, String backupName, Context context) {
- Response inner =
- this.serviceClient().getWithResponse(resourceGroupName, serverName, backupName, context);
- if (inner != null) {
- return new SimpleResponse<>(
- inner.getRequest(),
- inner.getStatusCode(),
- inner.getHeaders(),
- new ServerBackupImpl(inner.getValue(), this.manager()));
- } else {
- return null;
- }
- }
-
- public PagedIterable listByServer(String resourceGroupName, String serverName) {
- PagedIterable inner = this.serviceClient().listByServer(resourceGroupName, serverName);
- return Utils.mapPage(inner, inner1 -> new ServerBackupImpl(inner1, this.manager()));
- }
-
- public PagedIterable listByServer(String resourceGroupName, String serverName, Context context) {
- PagedIterable inner =
- this.serviceClient().listByServer(resourceGroupName, serverName, context);
- return Utils.mapPage(inner, inner1 -> new ServerBackupImpl(inner1, this.manager()));
- }
-
- private BackupsClient serviceClient() {
- return this.innerClient;
- }
-
- private com.azure.resourcemanager.mysqlflexibleserver.MySqlManager manager() {
- return this.serviceManager;
- }
-}
diff --git a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/CapabilityPropertiesImpl.java b/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/CapabilityPropertiesImpl.java
deleted file mode 100644
index 65bd56073caf3..0000000000000
--- a/sdk/mysqlflexibleserver/azure-resourcemanager-mysqlflexibleserver/src/main/java/com/azure/resourcemanager/mysqlflexibleserver/implementation/CapabilityPropertiesImpl.java
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.mysqlflexibleserver.implementation;
-
-import com.azure.resourcemanager.mysqlflexibleserver.fluent.models.CapabilityPropertiesInner;
-import com.azure.resourcemanager.mysqlflexibleserver.models.CapabilityProperties;
-import com.azure.resourcemanager.mysqlflexibleserver.models.ServerEditionCapability;
-import java.util.Collections;
-import java.util.List;
-
-public final class CapabilityPropertiesImpl implements CapabilityProperties {
- private CapabilityPropertiesInner innerObject;
-
- private final com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager;
-
- CapabilityPropertiesImpl(
- CapabilityPropertiesInner innerObject,
- com.azure.resourcemanager.mysqlflexibleserver.MySqlManager serviceManager) {
- this.innerObject = innerObject;
- this.serviceManager = serviceManager;
- }
-
- public String zone() {
- return this.innerModel().zone();
- }
-
- public List supportedHAMode() {
- List inner = this.innerModel().supportedHAMode();
- if (inner != null) {
- return Collections.unmodifiableList(inner);
- } else {
- return Collections.emptyList();
- }
- }
-
- public List supportedGeoBackupRegions() {
- List inner = this.innerModel().supportedGeoBackupRegions();
- if (inner != null) {
- return Collections.unmodifiableList(inner);
- } else {
- return Collections.emptyList();
- }
- }
-
- public List