diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt
index 0487707bb22ea..3837d466e34fd 100644
--- a/eng/versioning/version_client.txt
+++ b/eng/versioning/version_client.txt
@@ -317,6 +317,7 @@ com.azure.resourcemanager:azure-resourcemanager-purview;1.0.0-beta.1;1.0.0-beta.
com.azure.resourcemanager:azure-resourcemanager-mysqlflexibleserver;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-baremetalinfrastructure;1.0.0-beta.1;1.0.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-quota;1.0.0-beta.1;1.0.0-beta.2
+com.azure.resourcemanager:azure-resourcemanager-servicebus-generated;1.0.0-beta.1;1.0.0-beta.1
# Unreleased dependencies: Copy the entry from above, prepend "unreleased_" and remove the current
# version. Unreleased dependencies are only valid for dependency versions.
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/CHANGELOG.md b/sdk/servicebus/azure-resourcemanager-servicebus-generated/CHANGELOG.md
new file mode 100644
index 0000000000000..d0c7ecbb5e420
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/CHANGELOG.md
@@ -0,0 +1,5 @@
+# Release History
+
+## 1.0.0-beta.1 (2021-09-19)
+
+- Azure Resource Manager ServiceBus client library for Java. This package contains Microsoft Azure SDK for ServiceBus Management SDK. Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant. Package tag package-2018-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/README.md b/sdk/servicebus/azure-resourcemanager-servicebus-generated/README.md
new file mode 100644
index 0000000000000..5d7dfc50f03c9
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/README.md
@@ -0,0 +1,101 @@
+# Azure Resource Manager ServiceBus client library for Java
+
+Azure Resource Manager ServiceBus client library for Java.
+
+This package contains Microsoft Azure SDK for ServiceBus Management SDK. Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant. Package tag package-2018-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+## We'd love to hear your feedback
+
+We're always working on improving our products and the way we communicate with our users. So we'd love to learn what's working and how we can do better.
+
+If you haven't already, please take a few minutes to [complete this short survey][survey] we have put together.
+
+Thank you in advance for your collaboration. We really appreciate your time!
+
+## Documentation
+
+Various documentation is available to help you get started
+
+- [API reference documentation][docs]
+
+## Getting started
+
+### Prerequisites
+
+- [Java Development Kit (JDK)][jdk] with version 8 or above
+- [Azure Subscription][azure_subscription]
+
+### Adding the package to your product
+
+[//]: # ({x-version-update-start;com.azure.resourcemanager:azure-resourcemanager-servicebus-generated;current})
+```xml
+
+ com.azure.resourcemanager
+ azure-resourcemanager-servicebus-generated
+ 1.0.0-beta.1
+
+```
+[//]: # ({x-version-update-end})
+
+### Include the recommended packages
+
+Azure Management Libraries require a `TokenCredential` implementation for authentication and an `HttpClient` implementation for HTTP client.
+
+[Azure Identity][azure_identity] package and [Azure Core Netty HTTP][azure_core_http_netty] package provide the default implementation.
+
+### Authentication
+
+By default, Azure Active Directory token authentication depends on correct configure of following environment variables.
+
+- `AZURE_CLIENT_ID` for Azure client ID.
+- `AZURE_TENANT_ID` for Azure tenant ID.
+- `AZURE_CLIENT_SECRET` or `AZURE_CLIENT_CERTIFICATE_PATH` for client secret or client certificate.
+
+In addition, Azure subscription ID can be configured via environment variable `AZURE_SUBSCRIPTION_ID`.
+
+With above configuration, `azure` client can be authenticated by following code:
+
+```java
+AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
+TokenCredential credential = new DefaultAzureCredentialBuilder()
+ .authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
+ .build();
+ServiceBusManager manager = ServiceBusManager
+ .authenticate(credential, profile);
+```
+
+The sample code assumes global Azure. Please change `AzureEnvironment.AZURE` variable if otherwise.
+
+See [Authentication][authenticate] for more options.
+
+## Key concepts
+
+See [API design][design] for general introduction on design and key concepts on Azure Management Libraries.
+
+## Examples
+
+
+
+## Troubleshooting
+
+## Next steps
+
+## Contributing
+
+For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md).
+
+1. Fork it
+1. Create your feature branch (`git checkout -b my-new-feature`)
+1. Commit your changes (`git commit -am 'Add some feature'`)
+1. Push to the branch (`git push origin my-new-feature`)
+1. Create new Pull Request
+
+
+[survey]: https://microsoft.qualtrics.com/jfe/form/SV_ehN0lIk2FKEBkwd?Q_CHL=DOCS
+[docs]: https://azure.github.io/azure-sdk-for-java/
+[jdk]: https://docs.microsoft.com/java/azure/jdk/
+[azure_subscription]: https://azure.microsoft.com/free/
+[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity
+[azure_core_http_netty]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/core/azure-core-http-netty
+[authenticate]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/AUTH.md
+[design]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/DESIGN.md
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/pom.xml b/sdk/servicebus/azure-resourcemanager-servicebus-generated/pom.xml
new file mode 100644
index 0000000000000..128bb1ef13886
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/pom.xml
@@ -0,0 +1,86 @@
+
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
+
+ com.azure.resourcemanager
+ azure-resourcemanager-servicebus-generated
+ 1.0.0-beta.1
+ jar
+
+ Microsoft Azure SDK for ServiceBus Management
+ This package contains Microsoft Azure SDK for ServiceBus Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant. Package tag package-2018-01-preview.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+
+
+
+
+ com.azure
+ azure-core
+ 1.20.0
+
+
+ com.azure
+ azure-core-management
+ 1.4.1
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.5
+
+ true
+
+
+
+ org.revapi
+ revapi-maven-plugin
+ 0.11.2
+
+
+
+ -
+
java.method.addedToInterface
+
+ -
+ true
+
.*
+ com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)*
+
+
+
+
+
+
+
+
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/ServiceBusManager.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/ServiceBusManager.java
new file mode 100644
index 0000000000000..b916bb25a0163
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/ServiceBusManager.java
@@ -0,0 +1,377 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated;
+
+import com.azure.core.credential.TokenCredential;
+import com.azure.core.http.HttpClient;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.policy.AddDatePolicy;
+import com.azure.core.http.policy.HttpLogOptions;
+import com.azure.core.http.policy.HttpLoggingPolicy;
+import com.azure.core.http.policy.HttpPipelinePolicy;
+import com.azure.core.http.policy.HttpPolicyProviders;
+import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
+import com.azure.core.management.profile.AzureProfile;
+import com.azure.core.util.Configuration;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.fluent.ServiceBusManagementClient;
+import com.azure.resourcemanager.servicebus.generated.implementation.DisasterRecoveryConfigsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.EventHubsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.MigrationConfigsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.NamespacesImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.OperationsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.PremiumMessagingRegionsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.PrivateEndpointConnectionsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.PrivateLinkResourcesImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.QueuesImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.RegionsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.RulesImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.ServiceBusManagementClientBuilder;
+import com.azure.resourcemanager.servicebus.generated.implementation.SubscriptionsImpl;
+import com.azure.resourcemanager.servicebus.generated.implementation.TopicsImpl;
+import com.azure.resourcemanager.servicebus.generated.models.DisasterRecoveryConfigs;
+import com.azure.resourcemanager.servicebus.generated.models.EventHubs;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigs;
+import com.azure.resourcemanager.servicebus.generated.models.Namespaces;
+import com.azure.resourcemanager.servicebus.generated.models.Operations;
+import com.azure.resourcemanager.servicebus.generated.models.PremiumMessagingRegions;
+import com.azure.resourcemanager.servicebus.generated.models.PrivateEndpointConnections;
+import com.azure.resourcemanager.servicebus.generated.models.PrivateLinkResources;
+import com.azure.resourcemanager.servicebus.generated.models.Queues;
+import com.azure.resourcemanager.servicebus.generated.models.Regions;
+import com.azure.resourcemanager.servicebus.generated.models.Rules;
+import com.azure.resourcemanager.servicebus.generated.models.Subscriptions;
+import com.azure.resourcemanager.servicebus.generated.models.Topics;
+import java.time.Duration;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * Entry point to ServiceBusManager. Azure Service Bus client for managing Namespace, IPFilter Rules,
+ * VirtualNetworkRules and Zone Redundant.
+ */
+public final class ServiceBusManager {
+ private Namespaces namespaces;
+
+ private PrivateEndpointConnections privateEndpointConnections;
+
+ private PrivateLinkResources privateLinkResources;
+
+ private DisasterRecoveryConfigs disasterRecoveryConfigs;
+
+ private Queues queues;
+
+ private Topics topics;
+
+ private EventHubs eventHubs;
+
+ private MigrationConfigs migrationConfigs;
+
+ private PremiumMessagingRegions premiumMessagingRegions;
+
+ private Regions regions;
+
+ private Subscriptions subscriptions;
+
+ private Rules rules;
+
+ private Operations operations;
+
+ private final ServiceBusManagementClient clientObject;
+
+ private ServiceBusManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ this.clientObject =
+ new ServiceBusManagementClientBuilder()
+ .pipeline(httpPipeline)
+ .endpoint(profile.getEnvironment().getResourceManagerEndpoint())
+ .subscriptionId(profile.getSubscriptionId())
+ .defaultPollInterval(defaultPollInterval)
+ .buildClient();
+ }
+
+ /**
+ * Creates an instance of ServiceBus service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ServiceBus service API instance.
+ */
+ public static ServiceBusManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ return configure().authenticate(credential, profile);
+ }
+
+ /**
+ * Gets a Configurable instance that can be used to create ServiceBusManager with optional configuration.
+ *
+ * @return the Configurable instance allowing configurations.
+ */
+ public static Configurable configure() {
+ return new ServiceBusManager.Configurable();
+ }
+
+ /** The Configurable allowing configurations to be set. */
+ public static final class Configurable {
+ private final ClientLogger logger = new ClientLogger(Configurable.class);
+
+ private HttpClient httpClient;
+ private HttpLogOptions httpLogOptions;
+ private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
+ private RetryPolicy retryPolicy;
+ private Duration defaultPollInterval;
+
+ private Configurable() {
+ }
+
+ /**
+ * Sets the http client.
+ *
+ * @param httpClient the HTTP client.
+ * @return the configurable object itself.
+ */
+ public Configurable withHttpClient(HttpClient httpClient) {
+ this.httpClient = Objects.requireNonNull(httpClient, "'httpClient' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the logging options to the HTTP pipeline.
+ *
+ * @param httpLogOptions the HTTP log options.
+ * @return the configurable object itself.
+ */
+ public Configurable withLogOptions(HttpLogOptions httpLogOptions) {
+ this.httpLogOptions = Objects.requireNonNull(httpLogOptions, "'httpLogOptions' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Adds the pipeline policy to the HTTP pipeline.
+ *
+ * @param policy the HTTP pipeline policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withPolicy(HttpPipelinePolicy policy) {
+ this.policies.add(Objects.requireNonNull(policy, "'policy' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Adds the scope to permission sets.
+ *
+ * @param scope the scope.
+ * @return the configurable object itself.
+ */
+ public Configurable withScope(String scope) {
+ this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Sets the retry policy to the HTTP pipeline.
+ *
+ * @param retryPolicy the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
+ this.retryPolicy = Objects.requireNonNull(retryPolicy, "'retryPolicy' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the default poll interval, used when service does not provide "Retry-After" header.
+ *
+ * @param defaultPollInterval the default poll interval.
+ * @return the configurable object itself.
+ */
+ public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
+ this.defaultPollInterval = Objects.requireNonNull(defaultPollInterval, "'retryPolicy' cannot be null.");
+ if (this.defaultPollInterval.isNegative()) {
+ throw logger.logExceptionAsError(new IllegalArgumentException("'httpPipeline' cannot be negative"));
+ }
+ return this;
+ }
+
+ /**
+ * Creates an instance of ServiceBus service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ServiceBus service API instance.
+ */
+ public ServiceBusManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+
+ StringBuilder userAgentBuilder = new StringBuilder();
+ userAgentBuilder
+ .append("azsdk-java")
+ .append("-")
+ .append("com.azure.resourcemanager.servicebus.generated")
+ .append("/")
+ .append("1.0.0-beta.1");
+ if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
+ userAgentBuilder
+ .append(" (")
+ .append(Configuration.getGlobalConfiguration().get("java.version"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.name"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.version"))
+ .append("; auto-generated)");
+ } else {
+ userAgentBuilder.append(" (auto-generated)");
+ }
+
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
+ if (retryPolicy == null) {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ List policies = new ArrayList<>();
+ policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new RequestIdPolicy());
+ HttpPolicyProviders.addBeforeRetryPolicies(policies);
+ policies.add(retryPolicy);
+ policies.add(new AddDatePolicy());
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
+ policies.addAll(this.policies);
+ HttpPolicyProviders.addAfterRetryPolicies(policies);
+ policies.add(new HttpLoggingPolicy(httpLogOptions));
+ HttpPipeline httpPipeline =
+ new HttpPipelineBuilder()
+ .httpClient(httpClient)
+ .policies(policies.toArray(new HttpPipelinePolicy[0]))
+ .build();
+ return new ServiceBusManager(httpPipeline, profile, defaultPollInterval);
+ }
+ }
+
+ /** @return Resource collection API of Namespaces. */
+ public Namespaces namespaces() {
+ if (this.namespaces == null) {
+ this.namespaces = new NamespacesImpl(clientObject.getNamespaces(), this);
+ }
+ return namespaces;
+ }
+
+ /** @return Resource collection API of PrivateEndpointConnections. */
+ public PrivateEndpointConnections privateEndpointConnections() {
+ if (this.privateEndpointConnections == null) {
+ this.privateEndpointConnections =
+ new PrivateEndpointConnectionsImpl(clientObject.getPrivateEndpointConnections(), this);
+ }
+ return privateEndpointConnections;
+ }
+
+ /** @return Resource collection API of PrivateLinkResources. */
+ public PrivateLinkResources privateLinkResources() {
+ if (this.privateLinkResources == null) {
+ this.privateLinkResources = new PrivateLinkResourcesImpl(clientObject.getPrivateLinkResources(), this);
+ }
+ return privateLinkResources;
+ }
+
+ /** @return Resource collection API of DisasterRecoveryConfigs. */
+ public DisasterRecoveryConfigs disasterRecoveryConfigs() {
+ if (this.disasterRecoveryConfigs == null) {
+ this.disasterRecoveryConfigs =
+ new DisasterRecoveryConfigsImpl(clientObject.getDisasterRecoveryConfigs(), this);
+ }
+ return disasterRecoveryConfigs;
+ }
+
+ /** @return Resource collection API of Queues. */
+ public Queues queues() {
+ if (this.queues == null) {
+ this.queues = new QueuesImpl(clientObject.getQueues(), this);
+ }
+ return queues;
+ }
+
+ /** @return Resource collection API of Topics. */
+ public Topics topics() {
+ if (this.topics == null) {
+ this.topics = new TopicsImpl(clientObject.getTopics(), this);
+ }
+ return topics;
+ }
+
+ /** @return Resource collection API of EventHubs. */
+ public EventHubs eventHubs() {
+ if (this.eventHubs == null) {
+ this.eventHubs = new EventHubsImpl(clientObject.getEventHubs(), this);
+ }
+ return eventHubs;
+ }
+
+ /** @return Resource collection API of MigrationConfigs. */
+ public MigrationConfigs migrationConfigs() {
+ if (this.migrationConfigs == null) {
+ this.migrationConfigs = new MigrationConfigsImpl(clientObject.getMigrationConfigs(), this);
+ }
+ return migrationConfigs;
+ }
+
+ /** @return Resource collection API of PremiumMessagingRegions. */
+ public PremiumMessagingRegions premiumMessagingRegions() {
+ if (this.premiumMessagingRegions == null) {
+ this.premiumMessagingRegions =
+ new PremiumMessagingRegionsImpl(clientObject.getPremiumMessagingRegions(), this);
+ }
+ return premiumMessagingRegions;
+ }
+
+ /** @return Resource collection API of Regions. */
+ public Regions regions() {
+ if (this.regions == null) {
+ this.regions = new RegionsImpl(clientObject.getRegions(), this);
+ }
+ return regions;
+ }
+
+ /** @return Resource collection API of Subscriptions. */
+ public Subscriptions subscriptions() {
+ if (this.subscriptions == null) {
+ this.subscriptions = new SubscriptionsImpl(clientObject.getSubscriptions(), this);
+ }
+ return subscriptions;
+ }
+
+ /** @return Resource collection API of Rules. */
+ public Rules rules() {
+ if (this.rules == null) {
+ this.rules = new RulesImpl(clientObject.getRules(), this);
+ }
+ return rules;
+ }
+
+ /** @return Resource collection API of Operations. */
+ public Operations operations() {
+ if (this.operations == null) {
+ this.operations = new OperationsImpl(clientObject.getOperations(), this);
+ }
+ return operations;
+ }
+
+ /**
+ * @return Wrapped service client ServiceBusManagementClient providing direct access to the underlying
+ * auto-generated API implementation, based on Azure REST API.
+ */
+ public ServiceBusManagementClient serviceClient() {
+ return this.clientObject;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/DisasterRecoveryConfigsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/DisasterRecoveryConfigsClient.java
new file mode 100644
index 0000000000000..c3a5dcb998dca
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/DisasterRecoveryConfigsClient.java
@@ -0,0 +1,329 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.ArmDisasterRecoveryInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.CheckNameAvailabilityResultInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailability;
+import com.azure.resourcemanager.servicebus.generated.models.FailoverProperties;
+
+/** An instance of this class provides access to all the operations defined in DisasterRecoveryConfigsClient. */
+public interface DisasterRecoveryConfigsClient {
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace 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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CheckNameAvailabilityResultInner checkNameAvailability(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters);
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace 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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response checkNameAvailabilityWithResponse(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters, Context context);
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery 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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArmDisasterRecoveryInner createOrUpdate(
+ String resourceGroupName, String namespaceName, String alias, ArmDisasterRecoveryInner parameters);
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery 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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String alias,
+ ArmDisasterRecoveryInner parameters,
+ Context context);
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String alias);
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String namespaceName, String alias, Context context);
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArmDisasterRecoveryInner get(String resourceGroupName, String namespaceName, String alias);
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context);
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void breakPairing(String resourceGroupName, String namespaceName, String alias);
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response breakPairingWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context);
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void failOver(String resourceGroupName, String namespaceName, String alias);
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery 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 response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response failOverWithResponse(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters, Context context);
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias);
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration 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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias, Context context);
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName);
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getAuthorizationRuleWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context);
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner listKeys(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName);
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listKeysWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/EventHubsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/EventHubsClient.java
new file mode 100644
index 0000000000000..7265aaaaee7a0
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/EventHubsClient.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.servicebus.generated.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.servicebus.generated.fluent.models.EventhubInner;
+
+/** An instance of this class provides access to all the operations defined in EventHubsClient. */
+public interface EventHubsClient {
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(String resourceGroupName, String namespaceName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/MigrationConfigsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/MigrationConfigsClient.java
new file mode 100644
index 0000000000000..4f5056da57036
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/MigrationConfigsClient.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.servicebus.generated.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.servicebus.generated.fluent.models.MigrationConfigPropertiesInner;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigurationName;
+
+/** An instance of this class provides access to all the operations defined in MigrationConfigsClient. */
+public interface MigrationConfigsClient {
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration 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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, MigrationConfigPropertiesInner> beginCreateAndStartMigration(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters);
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration 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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, MigrationConfigPropertiesInner> beginCreateAndStartMigration(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters,
+ Context context);
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration 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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ MigrationConfigPropertiesInner createAndStartMigration(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters);
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration 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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ MigrationConfigPropertiesInner createAndStartMigration(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters,
+ Context context);
+
+ /**
+ * Deletes a MigrationConfiguration.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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 namespaceName, MigrationConfigurationName configName);
+
+ /**
+ * Deletes a MigrationConfiguration.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, MigrationConfigurationName configName, Context context);
+
+ /**
+ * Retrieves Migration Config.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ MigrationConfigPropertiesInner get(
+ String resourceGroupName, String namespaceName, MigrationConfigurationName configName);
+
+ /**
+ * Retrieves Migration Config.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, MigrationConfigurationName configName, Context context);
+
+ /**
+ * This operation Completes Migration of entities by pointing the connection strings to Premium namespace and any
+ * entities created after the operation will be under Premium Namespace. CompleteMigration operation will fail when
+ * entity migration is in-progress.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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 completeMigration(String resourceGroupName, String namespaceName, MigrationConfigurationName configName);
+
+ /**
+ * This operation Completes Migration of entities by pointing the connection strings to Premium namespace and any
+ * entities created after the operation will be under Premium Namespace. CompleteMigration operation will fail when
+ * entity migration is in-progress.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response completeMigrationWithResponse(
+ String resourceGroupName, String namespaceName, MigrationConfigurationName configName, Context context);
+
+ /**
+ * This operation reverts Migration.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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 revert(String resourceGroupName, String namespaceName, MigrationConfigurationName configName);
+
+ /**
+ * This operation reverts Migration.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response revertWithResponse(
+ String resourceGroupName, String namespaceName, MigrationConfigurationName configName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/NamespacesClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/NamespacesClient.java
new file mode 100644
index 0000000000000..ec9c704b42338
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/NamespacesClient.java
@@ -0,0 +1,842 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.CheckNameAvailabilityResultInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.IpFilterRuleInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.NetworkRuleSetInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBNamespaceInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.VirtualNetworkRuleInner;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailability;
+import com.azure.resourcemanager.servicebus.generated.models.RegenerateAccessKeyParameters;
+import com.azure.resourcemanager.servicebus.generated.models.SBNamespaceMigrate;
+import com.azure.resourcemanager.servicebus.generated.models.SBNamespaceUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in NamespacesClient. */
+public interface NamespacesClient {
+ /**
+ * Gets a list of IP Filter rules for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a list of IP Filter rules for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listIpFilterRules(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets a list of IP Filter rules for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a list of IP Filter rules for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listIpFilterRules(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates or updates an IpFilterRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule name.
+ * @param parameters The Namespace IpFilterRule.
+ * @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 single item in a List or Get IpFilterRules operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ IpFilterRuleInner createOrUpdateIpFilterRule(
+ String resourceGroupName, String namespaceName, String ipFilterRuleName, IpFilterRuleInner parameters);
+
+ /**
+ * Creates or updates an IpFilterRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule name.
+ * @param parameters The Namespace IpFilterRule.
+ * @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 single item in a List or Get IpFilterRules operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateIpFilterRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String ipFilterRuleName,
+ IpFilterRuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes an IpFilterRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void deleteIpFilterRule(String resourceGroupName, String namespaceName, String ipFilterRuleName);
+
+ /**
+ * Deletes an IpFilterRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteIpFilterRuleWithResponse(
+ String resourceGroupName, String namespaceName, String ipFilterRuleName, Context context);
+
+ /**
+ * Gets an IpFilterRule for a Namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule 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 an IpFilterRule for a Namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ IpFilterRuleInner getIpFilterRule(String resourceGroupName, String namespaceName, String ipFilterRuleName);
+
+ /**
+ * Gets an IpFilterRule for a Namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param ipFilterRuleName The IP Filter Rule 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 an IpFilterRule for a Namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getIpFilterRuleWithResponse(
+ String resourceGroupName, String namespaceName, String ipFilterRuleName, Context context);
+
+ /**
+ * Gets all the available namespaces within the subscription, irrespective of the resource groups.
+ *
+ * @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 the available namespaces within the subscription, irrespective of the resource groups.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets all the available namespaces within the subscription, irrespective of the resource groups.
+ *
+ * @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 the available namespaces within the subscription, irrespective of the resource groups.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+
+ /**
+ * Gets the available namespaces within a resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @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 available namespaces within a resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the available namespaces within a resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @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 available namespaces within a resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Creates or updates a service namespace. Once created, this namespace's resource manifest is immutable. This
+ * operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to create a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SBNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName, String namespaceName, SBNamespaceInner parameters);
+
+ /**
+ * Creates or updates a service namespace. Once created, this namespace's resource manifest is immutable. This
+ * operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to create a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SBNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName, String namespaceName, SBNamespaceInner parameters, Context context);
+
+ /**
+ * Creates or updates a service namespace. Once created, this namespace's resource manifest is immutable. This
+ * operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to create a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBNamespaceInner createOrUpdate(String resourceGroupName, String namespaceName, SBNamespaceInner parameters);
+
+ /**
+ * Creates or updates a service namespace. Once created, this namespace's resource manifest is immutable. This
+ * operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to create a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBNamespaceInner createOrUpdate(
+ String resourceGroupName, String namespaceName, SBNamespaceInner parameters, Context context);
+
+ /**
+ * Deletes an existing namespace. This operation also removes all associated resources under the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String namespaceName);
+
+ /**
+ * Deletes an existing namespace. This operation also removes all associated resources under the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Deletes an existing namespace. This operation also removes all associated resources under the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName);
+
+ /**
+ * Deletes an existing namespace. This operation also removes all associated resources under the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Gets a description for the specified namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a description for the specified namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBNamespaceInner getByResourceGroup(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets a description for the specified namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a description for the specified namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Updates a service namespace. Once created, this namespace's resource manifest is immutable. This operation is
+ * idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to update a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBNamespaceInner update(String resourceGroupName, String namespaceName, SBNamespaceUpdateParameters parameters);
+
+ /**
+ * Updates a service namespace. Once created, this namespace's resource manifest is immutable. This operation is
+ * idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to update a namespace 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 description of a namespace resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateWithResponse(
+ String resourceGroupName, String namespaceName, SBNamespaceUpdateParameters parameters, Context context);
+
+ /**
+ * Gets a list of VirtualNetwork rules for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a list of VirtualNetwork rules for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listVirtualNetworkRules(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets a list of VirtualNetwork rules for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 a list of VirtualNetwork rules for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listVirtualNetworkRules(
+ String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates or updates an VirtualNetworkRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule name.
+ * @param parameters The Namespace VirtualNetworkRule.
+ * @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 single item in a List or Get VirtualNetworkRules operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualNetworkRuleInner createOrUpdateVirtualNetworkRule(
+ String resourceGroupName,
+ String namespaceName,
+ String virtualNetworkRuleName,
+ VirtualNetworkRuleInner parameters);
+
+ /**
+ * Creates or updates an VirtualNetworkRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule name.
+ * @param parameters The Namespace VirtualNetworkRule.
+ * @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 single item in a List or Get VirtualNetworkRules operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateVirtualNetworkRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String virtualNetworkRuleName,
+ VirtualNetworkRuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes an VirtualNetworkRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void deleteVirtualNetworkRule(String resourceGroupName, String namespaceName, String virtualNetworkRuleName);
+
+ /**
+ * Deletes an VirtualNetworkRule for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteVirtualNetworkRuleWithResponse(
+ String resourceGroupName, String namespaceName, String virtualNetworkRuleName, Context context);
+
+ /**
+ * Gets an VirtualNetworkRule for a Namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule 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 an VirtualNetworkRule for a Namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualNetworkRuleInner getVirtualNetworkRule(
+ String resourceGroupName, String namespaceName, String virtualNetworkRuleName);
+
+ /**
+ * Gets an VirtualNetworkRule for a Namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param virtualNetworkRuleName The Virtual Network Rule 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 an VirtualNetworkRule for a Namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getVirtualNetworkRuleWithResponse(
+ String resourceGroupName, String namespaceName, String virtualNetworkRuleName, Context context);
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates or updates an authorization rule for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner createOrUpdateAuthorizationRule(
+ String resourceGroupName,
+ String namespaceName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters);
+
+ /**
+ * Creates or updates an authorization rule for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes a namespace authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void deleteAuthorizationRule(String resourceGroupName, String namespaceName, String authorizationRuleName);
+
+ /**
+ * Deletes a namespace authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteAuthorizationRuleWithResponse(
+ String resourceGroupName, String namespaceName, String authorizationRuleName, Context context);
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String authorizationRuleName);
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getAuthorizationRuleWithResponse(
+ String resourceGroupName, String namespaceName, String authorizationRuleName, Context context);
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner listKeys(String resourceGroupName, String namespaceName, String authorizationRuleName);
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listKeysWithResponse(
+ String resourceGroupName, String namespaceName, String authorizationRuleName, Context context);
+
+ /**
+ * Regenerates the primary or secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner regenerateKeys(
+ String resourceGroupName,
+ String namespaceName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters);
+
+ /**
+ * Regenerates the primary or secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response regenerateKeysWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters,
+ Context context);
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param parameters Parameters to check availability of the given namespace 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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CheckNameAvailabilityResultInner checkNameAvailability(CheckNameAvailability parameters);
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param parameters Parameters to check availability of the given namespace 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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response checkNameAvailabilityWithResponse(
+ CheckNameAvailability parameters, Context context);
+
+ /**
+ * Create or update NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters The Namespace IpFilterRule.
+ * @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 description of NetworkRuleSet resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ NetworkRuleSetInner createOrUpdateNetworkRuleSet(
+ String resourceGroupName, String namespaceName, NetworkRuleSetInner parameters);
+
+ /**
+ * Create or update NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters The Namespace IpFilterRule.
+ * @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 description of NetworkRuleSet resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateNetworkRuleSetWithResponse(
+ String resourceGroupName, String namespaceName, NetworkRuleSetInner parameters, Context context);
+
+ /**
+ * Gets NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 networkRuleSet for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ NetworkRuleSetInner getNetworkRuleSet(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 networkRuleSet for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getNetworkRuleSetWithResponse(
+ String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Gets list of NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 list of NetworkRuleSet for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listNetworkRuleSets(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets list of NetworkRuleSet for a Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 list of NetworkRuleSet for a Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listNetworkRuleSets(
+ String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * This operation Migrate the given namespace to provided name type.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to migrate namespace type.
+ * @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 migrate(String resourceGroupName, String namespaceName, SBNamespaceMigrate parameters);
+
+ /**
+ * This operation Migrate the given namespace to provided name type.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters supplied to migrate namespace type.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response migrateWithResponse(
+ String resourceGroupName, String namespaceName, SBNamespaceMigrate parameters, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/OperationsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/OperationsClient.java
new file mode 100644
index 0000000000000..c24b8142df79c
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/OperationsClient.java
@@ -0,0 +1,36 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.OperationInner;
+
+/** An instance of this class provides access to all the operations defined in OperationsClient. */
+public interface OperationsClient {
+ /**
+ * Lists all of the available ServiceBus REST API operations.
+ *
+ * @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 the request to list ServiceBus operations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Lists all of the available ServiceBus REST API operations.
+ *
+ * @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 the request to list ServiceBus operations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PremiumMessagingRegionsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PremiumMessagingRegionsClient.java
new file mode 100644
index 0000000000000..eb05e94502d88
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PremiumMessagingRegionsClient.java
@@ -0,0 +1,36 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.PremiumMessagingRegionInner;
+
+/** An instance of this class provides access to all the operations defined in PremiumMessagingRegionsClient. */
+public interface PremiumMessagingRegionsClient {
+ /**
+ * Gets the available premium messaging regions for servicebus.
+ *
+ * @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 available premium messaging regions for servicebus.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the available premium messaging regions for servicebus.
+ *
+ * @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 available premium messaging regions for servicebus.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateEndpointConnectionsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateEndpointConnectionsClient.java
new file mode 100644
index 0000000000000..c9db3ae4f4be7
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateEndpointConnectionsClient.java
@@ -0,0 +1,173 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.PrivateEndpointConnectionInner;
+
+/** An instance of this class provides access to all the operations defined in PrivateEndpointConnectionsClient. */
+public interface PrivateEndpointConnectionsClient {
+ /**
+ * Gets the available PrivateEndpointConnections within a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the available PrivateEndpointConnections within a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets the available PrivateEndpointConnections within a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the available PrivateEndpointConnections within a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String namespaceName, Context context);
+
+ /**
+ * Creates or updates PrivateEndpointConnections of service namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection name.
+ * @param parameters Parameters supplied to update Status of PrivateEndPoint Connection to namespace 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 properties of the PrivateEndpointConnection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner createOrUpdate(
+ String resourceGroupName,
+ String namespaceName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters);
+
+ /**
+ * Creates or updates PrivateEndpointConnections of service namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection name.
+ * @param parameters Parameters supplied to update Status of PrivateEndPoint Connection to namespace 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 properties of the PrivateEndpointConnection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner parameters,
+ Context context);
+
+ /**
+ * Deletes an existing Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String namespaceName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes an existing Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String namespaceName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Deletes an existing Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes an existing Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Gets a description for the specified Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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 a description for the specified Private Endpoint Connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner get(
+ String resourceGroupName, String namespaceName, String privateEndpointConnectionName);
+
+ /**
+ * Gets a description for the specified Private Endpoint Connection.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param privateEndpointConnectionName The PrivateEndpointConnection 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 a description for the specified Private Endpoint Connection.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, String privateEndpointConnectionName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateLinkResourcesClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateLinkResourcesClient.java
new file mode 100644
index 0000000000000..c689182ca92a7
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/PrivateLinkResourcesClient.java
@@ -0,0 +1,42 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.PrivateLinkResourcesListResultInner;
+
+/** An instance of this class provides access to all the operations defined in PrivateLinkResourcesClient. */
+public interface PrivateLinkResourcesClient {
+ /**
+ * Gets lists of resources that supports Privatelinks.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 lists of resources that supports Privatelinks.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateLinkResourcesListResultInner get(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets lists of resources that supports Privatelinks.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 lists of resources that supports Privatelinks.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/QueuesClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/QueuesClient.java
new file mode 100644
index 0000000000000..28f7f44d87e84
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/QueuesClient.java
@@ -0,0 +1,371 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBQueueInner;
+import com.azure.resourcemanager.servicebus.generated.models.RegenerateAccessKeyParameters;
+
+/** An instance of this class provides access to all the operations defined in QueuesClient. */
+public interface QueuesClient {
+ /**
+ * Gets all authorization rules for a queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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 all authorization rules for a queue.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String queueName);
+
+ /**
+ * Gets all authorization rules for a queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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 all authorization rules for a queue.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String queueName, Context context);
+
+ /**
+ * Creates an authorization rule for a queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner createOrUpdateAuthorizationRule(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters);
+
+ /**
+ * Creates an authorization rule for a queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes a queue authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void deleteAuthorizationRule(
+ String resourceGroupName, String namespaceName, String queueName, String authorizationRuleName);
+
+ /**
+ * Deletes a queue authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Gets an authorization rule for a queue by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a queue by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String queueName, String authorizationRuleName);
+
+ /**
+ * Gets an authorization rule for a queue by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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 an authorization rule for a queue by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Primary and secondary connection strings to the queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner listKeys(
+ String resourceGroupName, String namespaceName, String queueName, String authorizationRuleName);
+
+ /**
+ * Primary and secondary connection strings to the queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listKeysWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Regenerates the primary or secondary connection strings to the queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner regenerateKeys(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters);
+
+ /**
+ * Regenerates the primary or secondary connection strings to the queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response regenerateKeysWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String queueName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters,
+ Context context);
+
+ /**
+ * Gets the queues within a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 the queues within a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets the queues within a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param skip Skip is only used if a previous operation returned a partial result. If a previous response contains
+ * a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting
+ * point to use for subsequent calls.
+ * @param top May be used to limit the number of results to the most recent N usageDetails.
+ * @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 queues within a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(
+ String resourceGroupName, String namespaceName, Integer skip, Integer top, Context context);
+
+ /**
+ * Creates or updates a Service Bus queue. This operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param parameters Parameters supplied to create or update a queue 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 description of queue Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBQueueInner createOrUpdate(
+ String resourceGroupName, String namespaceName, String queueName, SBQueueInner parameters);
+
+ /**
+ * Creates or updates a Service Bus queue. This operation is idempotent.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue name.
+ * @param parameters Parameters supplied to create or update a queue 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 description of queue Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName, String namespaceName, String queueName, SBQueueInner parameters, Context context);
+
+ /**
+ * Deletes a queue from the specified namespace in a resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String queueName);
+
+ /**
+ * Deletes a queue from the specified namespace in a resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, String queueName, Context context);
+
+ /**
+ * Returns a description for the specified queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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 description of queue Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBQueueInner get(String resourceGroupName, String namespaceName, String queueName);
+
+ /**
+ * Returns a description for the specified queue.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param queueName The queue 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 description of queue Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, String queueName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RegionsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RegionsClient.java
new file mode 100644
index 0000000000000..5d90e44409159
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RegionsClient.java
@@ -0,0 +1,39 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.PremiumMessagingRegionInner;
+
+/** An instance of this class provides access to all the operations defined in RegionsClient. */
+public interface RegionsClient {
+ /**
+ * Gets the available Regions for a given sku.
+ *
+ * @param sku The sku type.
+ * @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 available Regions for a given sku.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySku(String sku);
+
+ /**
+ * Gets the available Regions for a given sku.
+ *
+ * @param sku The sku type.
+ * @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 available Regions for a given sku.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySku(String sku, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RulesClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RulesClient.java
new file mode 100644
index 0000000000000..512bdb27266ff
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/RulesClient.java
@@ -0,0 +1,185 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.RuleInner;
+
+/** An instance of this class provides access to all the operations defined in RulesClient. */
+public interface RulesClient {
+ /**
+ * List all the rules within given topic-subscription.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription 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 the response of the List rule operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscriptions(
+ String resourceGroupName, String namespaceName, String topicName, String subscriptionName);
+
+ /**
+ * List all the rules within given topic-subscription.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param skip Skip is only used if a previous operation returned a partial result. If a previous response contains
+ * a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting
+ * point to use for subsequent calls.
+ * @param top May be used to limit the number of results to the most recent N usageDetails.
+ * @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 of the List rule operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscriptions(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ Integer skip,
+ Integer top,
+ Context context);
+
+ /**
+ * Creates a new rule and updates an existing rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule name.
+ * @param parameters Parameters supplied to create a 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 description of Rule Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RuleInner createOrUpdate(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ String ruleName,
+ RuleInner parameters);
+
+ /**
+ * Creates a new rule and updates an existing rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule name.
+ * @param parameters Parameters supplied to create a 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 description of Rule Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ String ruleName,
+ RuleInner parameters,
+ Context context);
+
+ /**
+ * Deletes an existing rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(
+ String resourceGroupName, String namespaceName, String topicName, String subscriptionName, String ruleName);
+
+ /**
+ * Deletes an existing rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ String ruleName,
+ Context context);
+
+ /**
+ * Retrieves the description for the specified rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule 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 description of Rule Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RuleInner get(
+ String resourceGroupName, String namespaceName, String topicName, String subscriptionName, String ruleName);
+
+ /**
+ * Retrieves the description for the specified rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param ruleName The rule 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 description of Rule Resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ String ruleName,
+ Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/ServiceBusManagementClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/ServiceBusManagementClient.java
new file mode 100644
index 0000000000000..364ae8be3aeeb
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/ServiceBusManagementClient.java
@@ -0,0 +1,138 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent;
+
+import com.azure.core.http.HttpPipeline;
+import java.time.Duration;
+
+/** The interface for ServiceBusManagementClient class. */
+public interface ServiceBusManagementClient {
+ /**
+ * Gets Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms
+ * part of the URI for every service call.
+ *
+ * @return the subscriptionId value.
+ */
+ String getSubscriptionId();
+
+ /**
+ * Gets server parameter.
+ *
+ * @return the endpoint value.
+ */
+ String getEndpoint();
+
+ /**
+ * Gets Api Version.
+ *
+ * @return the apiVersion value.
+ */
+ String getApiVersion();
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ HttpPipeline getHttpPipeline();
+
+ /**
+ * Gets The default poll interval for long-running operation.
+ *
+ * @return the defaultPollInterval value.
+ */
+ Duration getDefaultPollInterval();
+
+ /**
+ * Gets the NamespacesClient object to access its operations.
+ *
+ * @return the NamespacesClient object.
+ */
+ NamespacesClient getNamespaces();
+
+ /**
+ * 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 DisasterRecoveryConfigsClient object to access its operations.
+ *
+ * @return the DisasterRecoveryConfigsClient object.
+ */
+ DisasterRecoveryConfigsClient getDisasterRecoveryConfigs();
+
+ /**
+ * Gets the QueuesClient object to access its operations.
+ *
+ * @return the QueuesClient object.
+ */
+ QueuesClient getQueues();
+
+ /**
+ * Gets the TopicsClient object to access its operations.
+ *
+ * @return the TopicsClient object.
+ */
+ TopicsClient getTopics();
+
+ /**
+ * Gets the EventHubsClient object to access its operations.
+ *
+ * @return the EventHubsClient object.
+ */
+ EventHubsClient getEventHubs();
+
+ /**
+ * Gets the MigrationConfigsClient object to access its operations.
+ *
+ * @return the MigrationConfigsClient object.
+ */
+ MigrationConfigsClient getMigrationConfigs();
+
+ /**
+ * Gets the PremiumMessagingRegionsClient object to access its operations.
+ *
+ * @return the PremiumMessagingRegionsClient object.
+ */
+ PremiumMessagingRegionsClient getPremiumMessagingRegions();
+
+ /**
+ * Gets the RegionsClient object to access its operations.
+ *
+ * @return the RegionsClient object.
+ */
+ RegionsClient getRegions();
+
+ /**
+ * Gets the SubscriptionsClient object to access its operations.
+ *
+ * @return the SubscriptionsClient object.
+ */
+ SubscriptionsClient getSubscriptions();
+
+ /**
+ * Gets the RulesClient object to access its operations.
+ *
+ * @return the RulesClient object.
+ */
+ RulesClient getRules();
+
+ /**
+ * Gets the OperationsClient object to access its operations.
+ *
+ * @return the OperationsClient object.
+ */
+ OperationsClient getOperations();
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/SubscriptionsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/SubscriptionsClient.java
new file mode 100644
index 0000000000000..248c79157348c
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/SubscriptionsClient.java
@@ -0,0 +1,156 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.SBSubscriptionInner;
+
+/** An instance of this class provides access to all the operations defined in SubscriptionsClient. */
+public interface SubscriptionsClient {
+ /**
+ * List all the subscriptions under a specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 the response to the List Subscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByTopic(String resourceGroupName, String namespaceName, String topicName);
+
+ /**
+ * List all the subscriptions under a specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param skip Skip is only used if a previous operation returned a partial result. If a previous response contains
+ * a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting
+ * point to use for subsequent calls.
+ * @param top May be used to limit the number of results to the most recent N usageDetails.
+ * @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 the List Subscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByTopic(
+ String resourceGroupName, String namespaceName, String topicName, Integer skip, Integer top, Context context);
+
+ /**
+ * Creates a topic subscription.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param parameters Parameters supplied to create a subscription 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 description of subscription resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBSubscriptionInner createOrUpdate(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ SBSubscriptionInner parameters);
+
+ /**
+ * Creates a topic subscription.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription name.
+ * @param parameters Parameters supplied to create a subscription 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 description of subscription resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String subscriptionName,
+ SBSubscriptionInner parameters,
+ Context context);
+
+ /**
+ * Deletes a subscription from the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String topicName, String subscriptionName);
+
+ /**
+ * Deletes a subscription from the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, String topicName, String subscriptionName, Context context);
+
+ /**
+ * Returns a subscription description for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription 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 description of subscription resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBSubscriptionInner get(String resourceGroupName, String namespaceName, String topicName, String subscriptionName);
+
+ /**
+ * Returns a subscription description for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param subscriptionName The subscription 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 description of subscription resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, String topicName, String subscriptionName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/TopicsClient.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/TopicsClient.java
new file mode 100644
index 0000000000000..fdb4ea59e07c3
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/TopicsClient.java
@@ -0,0 +1,371 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBTopicInner;
+import com.azure.resourcemanager.servicebus.generated.models.RegenerateAccessKeyParameters;
+
+/** An instance of this class provides access to all the operations defined in TopicsClient. */
+public interface TopicsClient {
+ /**
+ * Gets authorization rules for a topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 authorization rules for a topic.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String topicName);
+
+ /**
+ * Gets authorization rules for a topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 authorization rules for a topic.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String topicName, Context context);
+
+ /**
+ * Creates an authorization rule for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner createOrUpdateAuthorizationRule(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters);
+
+ /**
+ * Creates an authorization rule for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters The shared access authorization 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ SBAuthorizationRuleInner parameters,
+ Context context);
+
+ /**
+ * Returns the specified authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBAuthorizationRuleInner getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String topicName, String authorizationRuleName);
+
+ /**
+ * Returns the specified authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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 description of a namespace authorization rule.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Deletes a topic authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void deleteAuthorizationRule(
+ String resourceGroupName, String namespaceName, String topicName, String authorizationRuleName);
+
+ /**
+ * Deletes a topic authorization rule.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteAuthorizationRuleWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Gets the primary and secondary connection strings for the topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner listKeys(
+ String resourceGroupName, String namespaceName, String topicName, String authorizationRuleName);
+
+ /**
+ * Gets the primary and secondary connection strings for the topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule 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 the primary and secondary connection strings for the topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listKeysWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ Context context);
+
+ /**
+ * Regenerates primary or secondary connection strings for the topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AccessKeysInner regenerateKeys(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters);
+
+ /**
+ * Regenerates primary or secondary connection strings for the topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param authorizationRuleName The authorization rule name.
+ * @param parameters Parameters supplied to regenerate the authorization 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 namespace/ServiceBus Connection String.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response regenerateKeysWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String topicName,
+ String authorizationRuleName,
+ RegenerateAccessKeyParameters parameters,
+ Context context);
+
+ /**
+ * Gets all the topics in a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace 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 all the topics in a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(String resourceGroupName, String namespaceName);
+
+ /**
+ * Gets all the topics in a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param skip Skip is only used if a previous operation returned a partial result. If a previous response contains
+ * a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting
+ * point to use for subsequent calls.
+ * @param top May be used to limit the number of results to the most recent N usageDetails.
+ * @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 the topics in a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByNamespace(
+ String resourceGroupName, String namespaceName, Integer skip, Integer top, Context context);
+
+ /**
+ * Creates a topic in the specified namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param parameters Parameters supplied to create a topic 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 description of topic resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBTopicInner createOrUpdate(
+ String resourceGroupName, String namespaceName, String topicName, SBTopicInner parameters);
+
+ /**
+ * Creates a topic in the specified namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic name.
+ * @param parameters Parameters supplied to create a topic 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 description of topic resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName, String namespaceName, String topicName, SBTopicInner parameters, Context context);
+
+ /**
+ * Deletes a topic from the specified namespace and resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String namespaceName, String topicName);
+
+ /**
+ * Deletes a topic from the specified namespace and resource group.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, String topicName, Context context);
+
+ /**
+ * Returns a description for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 description of topic resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SBTopicInner get(String resourceGroupName, String namespaceName, String topicName);
+
+ /**
+ * Returns a description for the specified topic.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param topicName The topic 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 description of topic resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String namespaceName, String topicName, Context context);
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/AccessKeysInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/AccessKeysInner.java
new file mode 100644
index 0000000000000..264a35a7cf378
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/AccessKeysInner.java
@@ -0,0 +1,132 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Namespace/ServiceBus Connection String. */
+@Immutable
+public final class AccessKeysInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(AccessKeysInner.class);
+
+ /*
+ * Primary connection string of the created namespace authorization rule.
+ */
+ @JsonProperty(value = "primaryConnectionString", access = JsonProperty.Access.WRITE_ONLY)
+ private String primaryConnectionString;
+
+ /*
+ * Secondary connection string of the created namespace authorization rule.
+ */
+ @JsonProperty(value = "secondaryConnectionString", access = JsonProperty.Access.WRITE_ONLY)
+ private String secondaryConnectionString;
+
+ /*
+ * Primary connection string of the alias if GEO DR is enabled
+ */
+ @JsonProperty(value = "aliasPrimaryConnectionString", access = JsonProperty.Access.WRITE_ONLY)
+ private String aliasPrimaryConnectionString;
+
+ /*
+ * Secondary connection string of the alias if GEO DR is enabled
+ */
+ @JsonProperty(value = "aliasSecondaryConnectionString", access = JsonProperty.Access.WRITE_ONLY)
+ private String aliasSecondaryConnectionString;
+
+ /*
+ * A base64-encoded 256-bit primary key for signing and validating the SAS
+ * token.
+ */
+ @JsonProperty(value = "primaryKey", access = JsonProperty.Access.WRITE_ONLY)
+ private String primaryKey;
+
+ /*
+ * A base64-encoded 256-bit primary key for signing and validating the SAS
+ * token.
+ */
+ @JsonProperty(value = "secondaryKey", access = JsonProperty.Access.WRITE_ONLY)
+ private String secondaryKey;
+
+ /*
+ * A string that describes the authorization rule.
+ */
+ @JsonProperty(value = "keyName", access = JsonProperty.Access.WRITE_ONLY)
+ private String keyName;
+
+ /**
+ * Get the primaryConnectionString property: Primary connection string of the created namespace authorization rule.
+ *
+ * @return the primaryConnectionString value.
+ */
+ public String primaryConnectionString() {
+ return this.primaryConnectionString;
+ }
+
+ /**
+ * Get the secondaryConnectionString property: Secondary connection string of the created namespace authorization
+ * rule.
+ *
+ * @return the secondaryConnectionString value.
+ */
+ public String secondaryConnectionString() {
+ return this.secondaryConnectionString;
+ }
+
+ /**
+ * Get the aliasPrimaryConnectionString property: Primary connection string of the alias if GEO DR is enabled.
+ *
+ * @return the aliasPrimaryConnectionString value.
+ */
+ public String aliasPrimaryConnectionString() {
+ return this.aliasPrimaryConnectionString;
+ }
+
+ /**
+ * Get the aliasSecondaryConnectionString property: Secondary connection string of the alias if GEO DR is enabled.
+ *
+ * @return the aliasSecondaryConnectionString value.
+ */
+ public String aliasSecondaryConnectionString() {
+ return this.aliasSecondaryConnectionString;
+ }
+
+ /**
+ * Get the primaryKey property: A base64-encoded 256-bit primary key for signing and validating the SAS token.
+ *
+ * @return the primaryKey value.
+ */
+ public String primaryKey() {
+ return this.primaryKey;
+ }
+
+ /**
+ * Get the secondaryKey property: A base64-encoded 256-bit primary key for signing and validating the SAS token.
+ *
+ * @return the secondaryKey value.
+ */
+ public String secondaryKey() {
+ return this.secondaryKey;
+ }
+
+ /**
+ * Get the keyName property: A string that describes the authorization rule.
+ *
+ * @return the keyName value.
+ */
+ public String keyName() {
+ return this.keyName;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/ArmDisasterRecoveryInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/ArmDisasterRecoveryInner.java
new file mode 100644
index 0000000000000..b725cceafd8c1
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/ArmDisasterRecoveryInner.java
@@ -0,0 +1,134 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.ProvisioningStateDR;
+import com.azure.resourcemanager.servicebus.generated.models.RoleDisasterRecovery;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Single item in List or Get Alias(Disaster Recovery configuration) operation. */
+@JsonFlatten
+@Fluent
+public class ArmDisasterRecoveryInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ArmDisasterRecoveryInner.class);
+
+ /*
+ * Provisioning state of the Alias(Disaster Recovery configuration) -
+ * possible values 'Accepted' or 'Succeeded' or 'Failed'
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningStateDR provisioningState;
+
+ /*
+ * Number of entities pending to be replicated.
+ */
+ @JsonProperty(value = "properties.pendingReplicationOperationsCount", access = JsonProperty.Access.WRITE_ONLY)
+ private Long pendingReplicationOperationsCount;
+
+ /*
+ * ARM Id of the Primary/Secondary eventhub namespace name, which is part
+ * of GEO DR pairing
+ */
+ @JsonProperty(value = "properties.partnerNamespace")
+ private String partnerNamespace;
+
+ /*
+ * Primary/Secondary eventhub namespace name, which is part of GEO DR
+ * pairing
+ */
+ @JsonProperty(value = "properties.alternateName")
+ private String alternateName;
+
+ /*
+ * role of namespace in GEO DR - possible values 'Primary' or
+ * 'PrimaryNotReplicating' or 'Secondary'
+ */
+ @JsonProperty(value = "properties.role", access = JsonProperty.Access.WRITE_ONLY)
+ private RoleDisasterRecovery role;
+
+ /**
+ * Get the provisioningState property: Provisioning state of the Alias(Disaster Recovery configuration) - possible
+ * values 'Accepted' or 'Succeeded' or 'Failed'.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningStateDR provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the pendingReplicationOperationsCount property: Number of entities pending to be replicated.
+ *
+ * @return the pendingReplicationOperationsCount value.
+ */
+ public Long pendingReplicationOperationsCount() {
+ return this.pendingReplicationOperationsCount;
+ }
+
+ /**
+ * Get the partnerNamespace property: ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO
+ * DR pairing.
+ *
+ * @return the partnerNamespace value.
+ */
+ public String partnerNamespace() {
+ return this.partnerNamespace;
+ }
+
+ /**
+ * Set the partnerNamespace property: ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO
+ * DR pairing.
+ *
+ * @param partnerNamespace the partnerNamespace value to set.
+ * @return the ArmDisasterRecoveryInner object itself.
+ */
+ public ArmDisasterRecoveryInner withPartnerNamespace(String partnerNamespace) {
+ this.partnerNamespace = partnerNamespace;
+ return this;
+ }
+
+ /**
+ * Get the alternateName property: Primary/Secondary eventhub namespace name, which is part of GEO DR pairing.
+ *
+ * @return the alternateName value.
+ */
+ public String alternateName() {
+ return this.alternateName;
+ }
+
+ /**
+ * Set the alternateName property: Primary/Secondary eventhub namespace name, which is part of GEO DR pairing.
+ *
+ * @param alternateName the alternateName value to set.
+ * @return the ArmDisasterRecoveryInner object itself.
+ */
+ public ArmDisasterRecoveryInner withAlternateName(String alternateName) {
+ this.alternateName = alternateName;
+ return this;
+ }
+
+ /**
+ * Get the role property: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or
+ * 'Secondary'.
+ *
+ * @return the role value.
+ */
+ public RoleDisasterRecovery role() {
+ return this.role;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/CheckNameAvailabilityResultInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/CheckNameAvailabilityResultInner.java
new file mode 100644
index 0000000000000..cbe99d91b59d8
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/CheckNameAvailabilityResultInner.java
@@ -0,0 +1,95 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.UnavailableReason;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Description of a Check Name availability request properties. */
+@Fluent
+public final class CheckNameAvailabilityResultInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(CheckNameAvailabilityResultInner.class);
+
+ /*
+ * The detailed info regarding the reason associated with the namespace.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /*
+ * Value indicating namespace is availability, true if the namespace is
+ * available; otherwise, false.
+ */
+ @JsonProperty(value = "nameAvailable")
+ private Boolean nameAvailable;
+
+ /*
+ * The reason for unavailability of a namespace.
+ */
+ @JsonProperty(value = "reason")
+ private UnavailableReason reason;
+
+ /**
+ * Get the message property: The detailed info regarding the reason associated with the namespace.
+ *
+ * @return the message value.
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Get the nameAvailable property: Value indicating namespace is availability, true if the namespace is available;
+ * otherwise, false.
+ *
+ * @return the nameAvailable value.
+ */
+ public Boolean nameAvailable() {
+ return this.nameAvailable;
+ }
+
+ /**
+ * Set the nameAvailable property: Value indicating namespace is availability, true if the namespace is available;
+ * otherwise, false.
+ *
+ * @param nameAvailable the nameAvailable value to set.
+ * @return the CheckNameAvailabilityResultInner object itself.
+ */
+ public CheckNameAvailabilityResultInner withNameAvailable(Boolean nameAvailable) {
+ this.nameAvailable = nameAvailable;
+ return this;
+ }
+
+ /**
+ * Get the reason property: The reason for unavailability of a namespace.
+ *
+ * @return the reason value.
+ */
+ public UnavailableReason reason() {
+ return this.reason;
+ }
+
+ /**
+ * Set the reason property: The reason for unavailability of a namespace.
+ *
+ * @param reason the reason value to set.
+ * @return the CheckNameAvailabilityResultInner object itself.
+ */
+ public CheckNameAvailabilityResultInner withReason(UnavailableReason reason) {
+ this.reason = reason;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/EventhubInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/EventhubInner.java
new file mode 100644
index 0000000000000..fff2abacebeaf
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/EventhubInner.java
@@ -0,0 +1,189 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.CaptureDescription;
+import com.azure.resourcemanager.servicebus.generated.models.EntityStatus;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** Single item in List or Get Event Hub operation. */
+@JsonFlatten
+@Fluent
+public class EventhubInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(EventhubInner.class);
+
+ /*
+ * Current number of shards on the Event Hub.
+ */
+ @JsonProperty(value = "properties.partitionIds", access = JsonProperty.Access.WRITE_ONLY)
+ private List partitionIds;
+
+ /*
+ * Exact time the Event Hub was created.
+ */
+ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdAt;
+
+ /*
+ * The exact time the message was updated.
+ */
+ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updatedAt;
+
+ /*
+ * Number of days to retain the events for this Event Hub, value should be
+ * 1 to 7 days
+ */
+ @JsonProperty(value = "properties.messageRetentionInDays")
+ private Long messageRetentionInDays;
+
+ /*
+ * Number of partitions created for the Event Hub, allowed values are from
+ * 1 to 32 partitions.
+ */
+ @JsonProperty(value = "properties.partitionCount")
+ private Long partitionCount;
+
+ /*
+ * Enumerates the possible values for the status of a Event Hub.
+ */
+ @JsonProperty(value = "properties.status")
+ private EntityStatus status;
+
+ /*
+ * Properties of capture description
+ */
+ @JsonProperty(value = "properties.captureDescription")
+ private CaptureDescription captureDescription;
+
+ /**
+ * Get the partitionIds property: Current number of shards on the Event Hub.
+ *
+ * @return the partitionIds value.
+ */
+ public List partitionIds() {
+ return this.partitionIds;
+ }
+
+ /**
+ * Get the createdAt property: Exact time the Event Hub was created.
+ *
+ * @return the createdAt value.
+ */
+ public OffsetDateTime createdAt() {
+ return this.createdAt;
+ }
+
+ /**
+ * Get the updatedAt property: The exact time the message was updated.
+ *
+ * @return the updatedAt value.
+ */
+ public OffsetDateTime updatedAt() {
+ return this.updatedAt;
+ }
+
+ /**
+ * Get the messageRetentionInDays property: Number of days to retain the events for this Event Hub, value should be
+ * 1 to 7 days.
+ *
+ * @return the messageRetentionInDays value.
+ */
+ public Long messageRetentionInDays() {
+ return this.messageRetentionInDays;
+ }
+
+ /**
+ * Set the messageRetentionInDays property: Number of days to retain the events for this Event Hub, value should be
+ * 1 to 7 days.
+ *
+ * @param messageRetentionInDays the messageRetentionInDays value to set.
+ * @return the EventhubInner object itself.
+ */
+ public EventhubInner withMessageRetentionInDays(Long messageRetentionInDays) {
+ this.messageRetentionInDays = messageRetentionInDays;
+ return this;
+ }
+
+ /**
+ * Get the partitionCount property: Number of partitions created for the Event Hub, allowed values are from 1 to 32
+ * partitions.
+ *
+ * @return the partitionCount value.
+ */
+ public Long partitionCount() {
+ return this.partitionCount;
+ }
+
+ /**
+ * Set the partitionCount property: Number of partitions created for the Event Hub, allowed values are from 1 to 32
+ * partitions.
+ *
+ * @param partitionCount the partitionCount value to set.
+ * @return the EventhubInner object itself.
+ */
+ public EventhubInner withPartitionCount(Long partitionCount) {
+ this.partitionCount = partitionCount;
+ return this;
+ }
+
+ /**
+ * Get the status property: Enumerates the possible values for the status of a Event Hub.
+ *
+ * @return the status value.
+ */
+ public EntityStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Enumerates the possible values for the status of a Event Hub.
+ *
+ * @param status the status value to set.
+ * @return the EventhubInner object itself.
+ */
+ public EventhubInner withStatus(EntityStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the captureDescription property: Properties of capture description.
+ *
+ * @return the captureDescription value.
+ */
+ public CaptureDescription captureDescription() {
+ return this.captureDescription;
+ }
+
+ /**
+ * Set the captureDescription property: Properties of capture description.
+ *
+ * @param captureDescription the captureDescription value to set.
+ * @return the EventhubInner object itself.
+ */
+ public EventhubInner withCaptureDescription(CaptureDescription captureDescription) {
+ this.captureDescription = captureDescription;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (captureDescription() != null) {
+ captureDescription().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/IpFilterRuleInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/IpFilterRuleInner.java
new file mode 100644
index 0000000000000..162cd0d09c328
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/IpFilterRuleInner.java
@@ -0,0 +1,106 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.IpAction;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Single item in a List or Get IpFilterRules operation. */
+@JsonFlatten
+@Fluent
+public class IpFilterRuleInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(IpFilterRuleInner.class);
+
+ /*
+ * IP Mask
+ */
+ @JsonProperty(value = "properties.ipMask")
+ private String ipMask;
+
+ /*
+ * The IP Filter Action
+ */
+ @JsonProperty(value = "properties.action")
+ private IpAction action;
+
+ /*
+ * IP Filter name
+ */
+ @JsonProperty(value = "properties.filterName")
+ private String filterName;
+
+ /**
+ * Get the ipMask property: IP Mask.
+ *
+ * @return the ipMask value.
+ */
+ public String ipMask() {
+ return this.ipMask;
+ }
+
+ /**
+ * Set the ipMask property: IP Mask.
+ *
+ * @param ipMask the ipMask value to set.
+ * @return the IpFilterRuleInner object itself.
+ */
+ public IpFilterRuleInner withIpMask(String ipMask) {
+ this.ipMask = ipMask;
+ return this;
+ }
+
+ /**
+ * Get the action property: The IP Filter Action.
+ *
+ * @return the action value.
+ */
+ public IpAction action() {
+ return this.action;
+ }
+
+ /**
+ * Set the action property: The IP Filter Action.
+ *
+ * @param action the action value to set.
+ * @return the IpFilterRuleInner object itself.
+ */
+ public IpFilterRuleInner withAction(IpAction action) {
+ this.action = action;
+ return this;
+ }
+
+ /**
+ * Get the filterName property: IP Filter name.
+ *
+ * @return the filterName value.
+ */
+ public String filterName() {
+ return this.filterName;
+ }
+
+ /**
+ * Set the filterName property: IP Filter name.
+ *
+ * @param filterName the filterName value to set.
+ * @return the IpFilterRuleInner object itself.
+ */
+ public IpFilterRuleInner withFilterName(String filterName) {
+ this.filterName = filterName;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/MigrationConfigPropertiesInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/MigrationConfigPropertiesInner.java
new file mode 100644
index 0000000000000..8ba2ef0e5e5c3
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/MigrationConfigPropertiesInner.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.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Single item in List or Get Migration Config operation. */
+@JsonFlatten
+@Fluent
+public class MigrationConfigPropertiesInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(MigrationConfigPropertiesInner.class);
+
+ /*
+ * Provisioning state of Migration Configuration
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /*
+ * Number of entities pending to be replicated.
+ */
+ @JsonProperty(value = "properties.pendingReplicationOperationsCount", access = JsonProperty.Access.WRITE_ONLY)
+ private Long pendingReplicationOperationsCount;
+
+ /*
+ * Existing premium Namespace ARM Id name which has no entities, will be
+ * used for migration
+ */
+ @JsonProperty(value = "properties.targetNamespace")
+ private String targetNamespace;
+
+ /*
+ * Name to access Standard Namespace after migration
+ */
+ @JsonProperty(value = "properties.postMigrationName")
+ private String postMigrationName;
+
+ /*
+ * State in which Standard to Premium Migration is, possible values :
+ * Unknown, Reverting, Completing, Initiating, Syncing, Active
+ */
+ @JsonProperty(value = "properties.migrationState", access = JsonProperty.Access.WRITE_ONLY)
+ private String migrationState;
+
+ /**
+ * Get the provisioningState property: Provisioning state of Migration Configuration.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the pendingReplicationOperationsCount property: Number of entities pending to be replicated.
+ *
+ * @return the pendingReplicationOperationsCount value.
+ */
+ public Long pendingReplicationOperationsCount() {
+ return this.pendingReplicationOperationsCount;
+ }
+
+ /**
+ * Get the targetNamespace property: Existing premium Namespace ARM Id name which has no entities, will be used for
+ * migration.
+ *
+ * @return the targetNamespace value.
+ */
+ public String targetNamespace() {
+ return this.targetNamespace;
+ }
+
+ /**
+ * Set the targetNamespace property: Existing premium Namespace ARM Id name which has no entities, will be used for
+ * migration.
+ *
+ * @param targetNamespace the targetNamespace value to set.
+ * @return the MigrationConfigPropertiesInner object itself.
+ */
+ public MigrationConfigPropertiesInner withTargetNamespace(String targetNamespace) {
+ this.targetNamespace = targetNamespace;
+ return this;
+ }
+
+ /**
+ * Get the postMigrationName property: Name to access Standard Namespace after migration.
+ *
+ * @return the postMigrationName value.
+ */
+ public String postMigrationName() {
+ return this.postMigrationName;
+ }
+
+ /**
+ * Set the postMigrationName property: Name to access Standard Namespace after migration.
+ *
+ * @param postMigrationName the postMigrationName value to set.
+ * @return the MigrationConfigPropertiesInner object itself.
+ */
+ public MigrationConfigPropertiesInner withPostMigrationName(String postMigrationName) {
+ this.postMigrationName = postMigrationName;
+ return this;
+ }
+
+ /**
+ * Get the migrationState property: State in which Standard to Premium Migration is, possible values : Unknown,
+ * Reverting, Completing, Initiating, Syncing, Active.
+ *
+ * @return the migrationState value.
+ */
+ public String migrationState() {
+ return this.migrationState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/NetworkRuleSetInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/NetworkRuleSetInner.java
new file mode 100644
index 0000000000000..530ea9ccb29b8
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/NetworkRuleSetInner.java
@@ -0,0 +1,115 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.DefaultAction;
+import com.azure.resourcemanager.servicebus.generated.models.NWRuleSetIpRules;
+import com.azure.resourcemanager.servicebus.generated.models.NWRuleSetVirtualNetworkRules;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Description of NetworkRuleSet resource. */
+@JsonFlatten
+@Fluent
+public class NetworkRuleSetInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(NetworkRuleSetInner.class);
+
+ /*
+ * Default Action for Network Rule Set
+ */
+ @JsonProperty(value = "properties.defaultAction")
+ private DefaultAction defaultAction;
+
+ /*
+ * List VirtualNetwork Rules
+ */
+ @JsonProperty(value = "properties.virtualNetworkRules")
+ private List virtualNetworkRules;
+
+ /*
+ * List of IpRules
+ */
+ @JsonProperty(value = "properties.ipRules")
+ private List ipRules;
+
+ /**
+ * Get the defaultAction property: Default Action for Network Rule Set.
+ *
+ * @return the defaultAction value.
+ */
+ public DefaultAction defaultAction() {
+ return this.defaultAction;
+ }
+
+ /**
+ * Set the defaultAction property: Default Action for Network Rule Set.
+ *
+ * @param defaultAction the defaultAction value to set.
+ * @return the NetworkRuleSetInner object itself.
+ */
+ public NetworkRuleSetInner withDefaultAction(DefaultAction defaultAction) {
+ this.defaultAction = defaultAction;
+ return this;
+ }
+
+ /**
+ * Get the virtualNetworkRules property: List VirtualNetwork Rules.
+ *
+ * @return the virtualNetworkRules value.
+ */
+ public List virtualNetworkRules() {
+ return this.virtualNetworkRules;
+ }
+
+ /**
+ * Set the virtualNetworkRules property: List VirtualNetwork Rules.
+ *
+ * @param virtualNetworkRules the virtualNetworkRules value to set.
+ * @return the NetworkRuleSetInner object itself.
+ */
+ public NetworkRuleSetInner withVirtualNetworkRules(List virtualNetworkRules) {
+ this.virtualNetworkRules = virtualNetworkRules;
+ return this;
+ }
+
+ /**
+ * Get the ipRules property: List of IpRules.
+ *
+ * @return the ipRules value.
+ */
+ public List ipRules() {
+ return this.ipRules;
+ }
+
+ /**
+ * Set the ipRules property: List of IpRules.
+ *
+ * @param ipRules the ipRules value to set.
+ * @return the NetworkRuleSetInner object itself.
+ */
+ public NetworkRuleSetInner withIpRules(List ipRules) {
+ this.ipRules = ipRules;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (virtualNetworkRules() != null) {
+ virtualNetworkRules().forEach(e -> e.validate());
+ }
+ if (ipRules() != null) {
+ ipRules().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/OperationInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/OperationInner.java
new file mode 100644
index 0000000000000..ef8b15dee343d
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/OperationInner.java
@@ -0,0 +1,69 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.OperationDisplay;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A ServiceBus REST API operation. */
+@Fluent
+public final class OperationInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationInner.class);
+
+ /*
+ * Operation name: {provider}/{resource}/{operation}
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /*
+ * The object that represents the operation.
+ */
+ @JsonProperty(value = "display")
+ private OperationDisplay display;
+
+ /**
+ * Get the name property: Operation name: {provider}/{resource}/{operation}.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the display property: The object that represents the operation.
+ *
+ * @return the display value.
+ */
+ public OperationDisplay display() {
+ return this.display;
+ }
+
+ /**
+ * Set the display property: The object that represents the operation.
+ *
+ * @param display the display value to set.
+ * @return the OperationInner object itself.
+ */
+ public OperationInner withDisplay(OperationDisplay display) {
+ this.display = display;
+ 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/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PremiumMessagingRegionInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PremiumMessagingRegionInner.java
new file mode 100644
index 0000000000000..c3024fe9268c6
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PremiumMessagingRegionInner.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.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.PremiumMessagingRegionProperties;
+import com.azure.resourcemanager.servicebus.generated.models.ResourceNamespacePatch;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** Premium Messaging Region. */
+@Fluent
+public final class PremiumMessagingRegionInner extends ResourceNamespacePatch {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PremiumMessagingRegionInner.class);
+
+ /*
+ * The properties property.
+ */
+ @JsonProperty(value = "properties")
+ private PremiumMessagingRegionProperties properties;
+
+ /**
+ * Get the properties property: The properties property.
+ *
+ * @return the properties value.
+ */
+ public PremiumMessagingRegionProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The properties property.
+ *
+ * @param properties the properties value to set.
+ * @return the PremiumMessagingRegionInner object itself.
+ */
+ public PremiumMessagingRegionInner withProperties(PremiumMessagingRegionProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PremiumMessagingRegionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PremiumMessagingRegionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateEndpointConnectionInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateEndpointConnectionInner.java
new file mode 100644
index 0000000000000..66216557c96dd
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateEndpointConnectionInner.java
@@ -0,0 +1,115 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.ConnectionState;
+import com.azure.resourcemanager.servicebus.generated.models.EndPointProvisioningState;
+import com.azure.resourcemanager.servicebus.generated.models.PrivateEndpoint;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of the PrivateEndpointConnection. */
+@JsonFlatten
+@Fluent
+public class PrivateEndpointConnectionInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PrivateEndpointConnectionInner.class);
+
+ /*
+ * The Private Endpoint resource for this Connection.
+ */
+ @JsonProperty(value = "properties.privateEndpoint")
+ private PrivateEndpoint privateEndpoint;
+
+ /*
+ * Details about the state of the connection.
+ */
+ @JsonProperty(value = "properties.privateLinkServiceConnectionState")
+ private ConnectionState privateLinkServiceConnectionState;
+
+ /*
+ * Provisioning state of the Private Endpoint Connection.
+ */
+ @JsonProperty(value = "properties.provisioningState")
+ private EndPointProvisioningState provisioningState;
+
+ /**
+ * Get the privateEndpoint property: The Private Endpoint resource for this Connection.
+ *
+ * @return the privateEndpoint value.
+ */
+ public PrivateEndpoint privateEndpoint() {
+ return this.privateEndpoint;
+ }
+
+ /**
+ * Set the privateEndpoint property: The Private Endpoint resource for this Connection.
+ *
+ * @param privateEndpoint the privateEndpoint value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateEndpoint(PrivateEndpoint privateEndpoint) {
+ this.privateEndpoint = privateEndpoint;
+ return this;
+ }
+
+ /**
+ * Get the privateLinkServiceConnectionState property: Details about the state of the connection.
+ *
+ * @return the privateLinkServiceConnectionState value.
+ */
+ public ConnectionState privateLinkServiceConnectionState() {
+ return this.privateLinkServiceConnectionState;
+ }
+
+ /**
+ * Set the privateLinkServiceConnectionState property: Details about the state of the connection.
+ *
+ * @param privateLinkServiceConnectionState the privateLinkServiceConnectionState value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateLinkServiceConnectionState(
+ ConnectionState privateLinkServiceConnectionState) {
+ this.privateLinkServiceConnectionState = privateLinkServiceConnectionState;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the Private Endpoint Connection.
+ *
+ * @return the provisioningState value.
+ */
+ public EndPointProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Set the provisioningState property: Provisioning state of the Private Endpoint Connection.
+ *
+ * @param provisioningState the provisioningState value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withProvisioningState(EndPointProvisioningState provisioningState) {
+ this.provisioningState = provisioningState;
+ return this;
+ }
+
+ /**
+ * 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/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateLinkResourcesListResultInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateLinkResourcesListResultInner.java
new file mode 100644
index 0000000000000..fc95df1f5d8fb
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/PrivateLinkResourcesListResultInner.java
@@ -0,0 +1,81 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.PrivateLinkResource;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Result of the List private link resources operation. */
+@Fluent
+public final class PrivateLinkResourcesListResultInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PrivateLinkResourcesListResultInner.class);
+
+ /*
+ * A collection of private link resources
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /*
+ * A link for the next page of private link resources.
+ */
+ @JsonProperty(value = "nextLink")
+ private String nextLink;
+
+ /**
+ * Get the value property: A collection of private link resources.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: A collection of private link resources.
+ *
+ * @param value the value value to set.
+ * @return the PrivateLinkResourcesListResultInner object itself.
+ */
+ public PrivateLinkResourcesListResultInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the nextLink property: A link for the next page of private link resources.
+ *
+ * @return the nextLink value.
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+ /**
+ * Set the nextLink property: A link for the next page of private link resources.
+ *
+ * @param nextLink the nextLink value to set.
+ * @return the PrivateLinkResourcesListResultInner object itself.
+ */
+ public PrivateLinkResourcesListResultInner withNextLink(String nextLink) {
+ this.nextLink = nextLink;
+ 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/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/RuleInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/RuleInner.java
new file mode 100644
index 0000000000000..f11e3a22cafd0
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/RuleInner.java
@@ -0,0 +1,147 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.Action;
+import com.azure.resourcemanager.servicebus.generated.models.CorrelationFilter;
+import com.azure.resourcemanager.servicebus.generated.models.FilterType;
+import com.azure.resourcemanager.servicebus.generated.models.SqlFilter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Description of Rule Resource. */
+@JsonFlatten
+@Fluent
+public class RuleInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(RuleInner.class);
+
+ /*
+ * Represents the filter actions which are allowed for the transformation
+ * of a message that have been matched by a filter expression.
+ */
+ @JsonProperty(value = "properties.action")
+ private Action action;
+
+ /*
+ * Filter type that is evaluated against a BrokeredMessage.
+ */
+ @JsonProperty(value = "properties.filterType")
+ private FilterType filterType;
+
+ /*
+ * Properties of sqlFilter
+ */
+ @JsonProperty(value = "properties.sqlFilter")
+ private SqlFilter sqlFilter;
+
+ /*
+ * Properties of correlationFilter
+ */
+ @JsonProperty(value = "properties.correlationFilter")
+ private CorrelationFilter correlationFilter;
+
+ /**
+ * Get the action property: Represents the filter actions which are allowed for the transformation of a message that
+ * have been matched by a filter expression.
+ *
+ * @return the action value.
+ */
+ public Action action() {
+ return this.action;
+ }
+
+ /**
+ * Set the action property: Represents the filter actions which are allowed for the transformation of a message that
+ * have been matched by a filter expression.
+ *
+ * @param action the action value to set.
+ * @return the RuleInner object itself.
+ */
+ public RuleInner withAction(Action action) {
+ this.action = action;
+ return this;
+ }
+
+ /**
+ * Get the filterType property: Filter type that is evaluated against a BrokeredMessage.
+ *
+ * @return the filterType value.
+ */
+ public FilterType filterType() {
+ return this.filterType;
+ }
+
+ /**
+ * Set the filterType property: Filter type that is evaluated against a BrokeredMessage.
+ *
+ * @param filterType the filterType value to set.
+ * @return the RuleInner object itself.
+ */
+ public RuleInner withFilterType(FilterType filterType) {
+ this.filterType = filterType;
+ return this;
+ }
+
+ /**
+ * Get the sqlFilter property: Properties of sqlFilter.
+ *
+ * @return the sqlFilter value.
+ */
+ public SqlFilter sqlFilter() {
+ return this.sqlFilter;
+ }
+
+ /**
+ * Set the sqlFilter property: Properties of sqlFilter.
+ *
+ * @param sqlFilter the sqlFilter value to set.
+ * @return the RuleInner object itself.
+ */
+ public RuleInner withSqlFilter(SqlFilter sqlFilter) {
+ this.sqlFilter = sqlFilter;
+ return this;
+ }
+
+ /**
+ * Get the correlationFilter property: Properties of correlationFilter.
+ *
+ * @return the correlationFilter value.
+ */
+ public CorrelationFilter correlationFilter() {
+ return this.correlationFilter;
+ }
+
+ /**
+ * Set the correlationFilter property: Properties of correlationFilter.
+ *
+ * @param correlationFilter the correlationFilter value to set.
+ * @return the RuleInner object itself.
+ */
+ public RuleInner withCorrelationFilter(CorrelationFilter correlationFilter) {
+ this.correlationFilter = correlationFilter;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (action() != null) {
+ action().validate();
+ }
+ if (sqlFilter() != null) {
+ sqlFilter().validate();
+ }
+ if (correlationFilter() != null) {
+ correlationFilter().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBAuthorizationRuleInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBAuthorizationRuleInner.java
new file mode 100644
index 0000000000000..191c70cb50210
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBAuthorizationRuleInner.java
@@ -0,0 +1,55 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.AccessRights;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Description of a namespace authorization rule. */
+@JsonFlatten
+@Fluent
+public class SBAuthorizationRuleInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SBAuthorizationRuleInner.class);
+
+ /*
+ * The rights associated with the rule.
+ */
+ @JsonProperty(value = "properties.rights")
+ private List rights;
+
+ /**
+ * Get the rights property: The rights associated with the rule.
+ *
+ * @return the rights value.
+ */
+ public List rights() {
+ return this.rights;
+ }
+
+ /**
+ * Set the rights property: The rights associated with the rule.
+ *
+ * @param rights the rights value to set.
+ * @return the SBAuthorizationRuleInner object itself.
+ */
+ public SBAuthorizationRuleInner withRights(List rights) {
+ this.rights = rights;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBNamespaceInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBNamespaceInner.java
new file mode 100644
index 0000000000000..f22cb45a8488c
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBNamespaceInner.java
@@ -0,0 +1,252 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.Encryption;
+import com.azure.resourcemanager.servicebus.generated.models.Identity;
+import com.azure.resourcemanager.servicebus.generated.models.SBSku;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** Description of a namespace resource. */
+@JsonFlatten
+@Fluent
+public class SBNamespaceInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SBNamespaceInner.class);
+
+ /*
+ * Properties of SKU
+ */
+ @JsonProperty(value = "sku")
+ private SBSku sku;
+
+ /*
+ * Properties of BYOK Identity description
+ */
+ @JsonProperty(value = "identity")
+ private Identity identity;
+
+ /*
+ * Provisioning state of the namespace.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /*
+ * Status of the namespace.
+ */
+ @JsonProperty(value = "properties.status", access = JsonProperty.Access.WRITE_ONLY)
+ private String status;
+
+ /*
+ * The time the namespace was created
+ */
+ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdAt;
+
+ /*
+ * The time the namespace was updated.
+ */
+ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updatedAt;
+
+ /*
+ * Endpoint you can use to perform Service Bus operations.
+ */
+ @JsonProperty(value = "properties.serviceBusEndpoint", access = JsonProperty.Access.WRITE_ONLY)
+ private String serviceBusEndpoint;
+
+ /*
+ * Identifier for Azure Insights metrics
+ */
+ @JsonProperty(value = "properties.metricId", access = JsonProperty.Access.WRITE_ONLY)
+ private String metricId;
+
+ /*
+ * Enabling this property creates a Premium Service Bus Namespace in
+ * regions supported availability zones.
+ */
+ @JsonProperty(value = "properties.zoneRedundant")
+ private Boolean zoneRedundant;
+
+ /*
+ * Properties of BYOK Encryption description
+ */
+ @JsonProperty(value = "properties.encryption")
+ private Encryption encryption;
+
+ /**
+ * Get the sku property: Properties of SKU.
+ *
+ * @return the sku value.
+ */
+ public SBSku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku property: Properties of SKU.
+ *
+ * @param sku the sku value to set.
+ * @return the SBNamespaceInner object itself.
+ */
+ public SBNamespaceInner withSku(SBSku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the identity property: Properties of BYOK Identity description.
+ *
+ * @return the identity value.
+ */
+ public Identity identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: Properties of BYOK Identity description.
+ *
+ * @param identity the identity value to set.
+ * @return the SBNamespaceInner object itself.
+ */
+ public SBNamespaceInner withIdentity(Identity identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the namespace.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the status property: Status of the namespace.
+ *
+ * @return the status value.
+ */
+ public String status() {
+ return this.status;
+ }
+
+ /**
+ * Get the createdAt property: The time the namespace was created.
+ *
+ * @return the createdAt value.
+ */
+ public OffsetDateTime createdAt() {
+ return this.createdAt;
+ }
+
+ /**
+ * Get the updatedAt property: The time the namespace was updated.
+ *
+ * @return the updatedAt value.
+ */
+ public OffsetDateTime updatedAt() {
+ return this.updatedAt;
+ }
+
+ /**
+ * Get the serviceBusEndpoint property: Endpoint you can use to perform Service Bus operations.
+ *
+ * @return the serviceBusEndpoint value.
+ */
+ public String serviceBusEndpoint() {
+ return this.serviceBusEndpoint;
+ }
+
+ /**
+ * Get the metricId property: Identifier for Azure Insights metrics.
+ *
+ * @return the metricId value.
+ */
+ public String metricId() {
+ return this.metricId;
+ }
+
+ /**
+ * Get the zoneRedundant property: Enabling this property creates a Premium Service Bus Namespace in regions
+ * supported availability zones.
+ *
+ * @return the zoneRedundant value.
+ */
+ public Boolean zoneRedundant() {
+ return this.zoneRedundant;
+ }
+
+ /**
+ * Set the zoneRedundant property: Enabling this property creates a Premium Service Bus Namespace in regions
+ * supported availability zones.
+ *
+ * @param zoneRedundant the zoneRedundant value to set.
+ * @return the SBNamespaceInner object itself.
+ */
+ public SBNamespaceInner withZoneRedundant(Boolean zoneRedundant) {
+ this.zoneRedundant = zoneRedundant;
+ return this;
+ }
+
+ /**
+ * Get the encryption property: Properties of BYOK Encryption description.
+ *
+ * @return the encryption value.
+ */
+ public Encryption encryption() {
+ return this.encryption;
+ }
+
+ /**
+ * Set the encryption property: Properties of BYOK Encryption description.
+ *
+ * @param encryption the encryption value to set.
+ * @return the SBNamespaceInner object itself.
+ */
+ public SBNamespaceInner withEncryption(Encryption encryption) {
+ this.encryption = encryption;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SBNamespaceInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SBNamespaceInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (sku() != null) {
+ sku().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
+ if (encryption() != null) {
+ encryption().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBQueueInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBQueueInner.java
new file mode 100644
index 0000000000000..5af9dccc0efa0
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBQueueInner.java
@@ -0,0 +1,554 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.EntityStatus;
+import com.azure.resourcemanager.servicebus.generated.models.MessageCountDetails;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.Duration;
+import java.time.OffsetDateTime;
+
+/** Description of queue Resource. */
+@JsonFlatten
+@Fluent
+public class SBQueueInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SBQueueInner.class);
+
+ /*
+ * Message Count Details.
+ */
+ @JsonProperty(value = "properties.countDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private MessageCountDetails countDetails;
+
+ /*
+ * The exact time the message was created.
+ */
+ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdAt;
+
+ /*
+ * The exact time the message was updated.
+ */
+ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updatedAt;
+
+ /*
+ * Last time a message was sent, or the last time there was a receive
+ * request to this queue.
+ */
+ @JsonProperty(value = "properties.accessedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime accessedAt;
+
+ /*
+ * The size of the queue, in bytes.
+ */
+ @JsonProperty(value = "properties.sizeInBytes", access = JsonProperty.Access.WRITE_ONLY)
+ private Long sizeInBytes;
+
+ /*
+ * The number of messages in the queue.
+ */
+ @JsonProperty(value = "properties.messageCount", access = JsonProperty.Access.WRITE_ONLY)
+ private Long messageCount;
+
+ /*
+ * ISO 8601 timespan duration of a peek-lock; that is, the amount of time
+ * that the message is locked for other receivers. The maximum value for
+ * LockDuration is 5 minutes; the default value is 1 minute.
+ */
+ @JsonProperty(value = "properties.lockDuration")
+ private Duration lockDuration;
+
+ /*
+ * The maximum size of the queue in megabytes, which is the size of memory
+ * allocated for the queue. Default is 1024.
+ */
+ @JsonProperty(value = "properties.maxSizeInMegabytes")
+ private Integer maxSizeInMegabytes;
+
+ /*
+ * A value indicating if this queue requires duplicate detection.
+ */
+ @JsonProperty(value = "properties.requiresDuplicateDetection")
+ private Boolean requiresDuplicateDetection;
+
+ /*
+ * A value that indicates whether the queue supports the concept of
+ * sessions.
+ */
+ @JsonProperty(value = "properties.requiresSession")
+ private Boolean requiresSession;
+
+ /*
+ * ISO 8601 default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent
+ * to Service Bus. This is the default value used when TimeToLive is not
+ * set on a message itself.
+ */
+ @JsonProperty(value = "properties.defaultMessageTimeToLive")
+ private Duration defaultMessageTimeToLive;
+
+ /*
+ * A value that indicates whether this queue has dead letter support when a
+ * message expires.
+ */
+ @JsonProperty(value = "properties.deadLetteringOnMessageExpiration")
+ private Boolean deadLetteringOnMessageExpiration;
+
+ /*
+ * ISO 8601 timeSpan structure that defines the duration of the duplicate
+ * detection history. The default value is 10 minutes.
+ */
+ @JsonProperty(value = "properties.duplicateDetectionHistoryTimeWindow")
+ private Duration duplicateDetectionHistoryTimeWindow;
+
+ /*
+ * The maximum delivery count. A message is automatically deadlettered
+ * after this number of deliveries. default value is 10.
+ */
+ @JsonProperty(value = "properties.maxDeliveryCount")
+ private Integer maxDeliveryCount;
+
+ /*
+ * Enumerates the possible values for the status of a messaging entity.
+ */
+ @JsonProperty(value = "properties.status")
+ private EntityStatus status;
+
+ /*
+ * Value that indicates whether server-side batched operations are enabled.
+ */
+ @JsonProperty(value = "properties.enableBatchedOperations")
+ private Boolean enableBatchedOperations;
+
+ /*
+ * ISO 8061 timeSpan idle interval after which the queue is automatically
+ * deleted. The minimum duration is 5 minutes.
+ */
+ @JsonProperty(value = "properties.autoDeleteOnIdle")
+ private Duration autoDeleteOnIdle;
+
+ /*
+ * A value that indicates whether the queue is to be partitioned across
+ * multiple message brokers.
+ */
+ @JsonProperty(value = "properties.enablePartitioning")
+ private Boolean enablePartitioning;
+
+ /*
+ * A value that indicates whether Express Entities are enabled. An express
+ * queue holds a message in memory temporarily before writing it to
+ * persistent storage.
+ */
+ @JsonProperty(value = "properties.enableExpress")
+ private Boolean enableExpress;
+
+ /*
+ * Queue/Topic name to forward the messages
+ */
+ @JsonProperty(value = "properties.forwardTo")
+ private String forwardTo;
+
+ /*
+ * Queue/Topic name to forward the Dead Letter message
+ */
+ @JsonProperty(value = "properties.forwardDeadLetteredMessagesTo")
+ private String forwardDeadLetteredMessagesTo;
+
+ /**
+ * Get the countDetails property: Message Count Details.
+ *
+ * @return the countDetails value.
+ */
+ public MessageCountDetails countDetails() {
+ return this.countDetails;
+ }
+
+ /**
+ * Get the createdAt property: The exact time the message was created.
+ *
+ * @return the createdAt value.
+ */
+ public OffsetDateTime createdAt() {
+ return this.createdAt;
+ }
+
+ /**
+ * Get the updatedAt property: The exact time the message was updated.
+ *
+ * @return the updatedAt value.
+ */
+ public OffsetDateTime updatedAt() {
+ return this.updatedAt;
+ }
+
+ /**
+ * Get the accessedAt property: Last time a message was sent, or the last time there was a receive request to this
+ * queue.
+ *
+ * @return the accessedAt value.
+ */
+ public OffsetDateTime accessedAt() {
+ return this.accessedAt;
+ }
+
+ /**
+ * Get the sizeInBytes property: The size of the queue, in bytes.
+ *
+ * @return the sizeInBytes value.
+ */
+ public Long sizeInBytes() {
+ return this.sizeInBytes;
+ }
+
+ /**
+ * Get the messageCount property: The number of messages in the queue.
+ *
+ * @return the messageCount value.
+ */
+ public Long messageCount() {
+ return this.messageCount;
+ }
+
+ /**
+ * Get the lockDuration property: ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the
+ * message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1
+ * minute.
+ *
+ * @return the lockDuration value.
+ */
+ public Duration lockDuration() {
+ return this.lockDuration;
+ }
+
+ /**
+ * Set the lockDuration property: ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the
+ * message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1
+ * minute.
+ *
+ * @param lockDuration the lockDuration value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withLockDuration(Duration lockDuration) {
+ this.lockDuration = lockDuration;
+ return this;
+ }
+
+ /**
+ * Get the maxSizeInMegabytes property: The maximum size of the queue in megabytes, which is the size of memory
+ * allocated for the queue. Default is 1024.
+ *
+ * @return the maxSizeInMegabytes value.
+ */
+ public Integer maxSizeInMegabytes() {
+ return this.maxSizeInMegabytes;
+ }
+
+ /**
+ * Set the maxSizeInMegabytes property: The maximum size of the queue in megabytes, which is the size of memory
+ * allocated for the queue. Default is 1024.
+ *
+ * @param maxSizeInMegabytes the maxSizeInMegabytes value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withMaxSizeInMegabytes(Integer maxSizeInMegabytes) {
+ this.maxSizeInMegabytes = maxSizeInMegabytes;
+ return this;
+ }
+
+ /**
+ * Get the requiresDuplicateDetection property: A value indicating if this queue requires duplicate detection.
+ *
+ * @return the requiresDuplicateDetection value.
+ */
+ public Boolean requiresDuplicateDetection() {
+ return this.requiresDuplicateDetection;
+ }
+
+ /**
+ * Set the requiresDuplicateDetection property: A value indicating if this queue requires duplicate detection.
+ *
+ * @param requiresDuplicateDetection the requiresDuplicateDetection value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withRequiresDuplicateDetection(Boolean requiresDuplicateDetection) {
+ this.requiresDuplicateDetection = requiresDuplicateDetection;
+ return this;
+ }
+
+ /**
+ * Get the requiresSession property: A value that indicates whether the queue supports the concept of sessions.
+ *
+ * @return the requiresSession value.
+ */
+ public Boolean requiresSession() {
+ return this.requiresSession;
+ }
+
+ /**
+ * Set the requiresSession property: A value that indicates whether the queue supports the concept of sessions.
+ *
+ * @param requiresSession the requiresSession value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withRequiresSession(Boolean requiresSession) {
+ this.requiresSession = requiresSession;
+ return this;
+ }
+
+ /**
+ * Get the defaultMessageTimeToLive property: ISO 8601 default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @return the defaultMessageTimeToLive value.
+ */
+ public Duration defaultMessageTimeToLive() {
+ return this.defaultMessageTimeToLive;
+ }
+
+ /**
+ * Set the defaultMessageTimeToLive property: ISO 8601 default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @param defaultMessageTimeToLive the defaultMessageTimeToLive value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withDefaultMessageTimeToLive(Duration defaultMessageTimeToLive) {
+ this.defaultMessageTimeToLive = defaultMessageTimeToLive;
+ return this;
+ }
+
+ /**
+ * Get the deadLetteringOnMessageExpiration property: A value that indicates whether this queue has dead letter
+ * support when a message expires.
+ *
+ * @return the deadLetteringOnMessageExpiration value.
+ */
+ public Boolean deadLetteringOnMessageExpiration() {
+ return this.deadLetteringOnMessageExpiration;
+ }
+
+ /**
+ * Set the deadLetteringOnMessageExpiration property: A value that indicates whether this queue has dead letter
+ * support when a message expires.
+ *
+ * @param deadLetteringOnMessageExpiration the deadLetteringOnMessageExpiration value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withDeadLetteringOnMessageExpiration(Boolean deadLetteringOnMessageExpiration) {
+ this.deadLetteringOnMessageExpiration = deadLetteringOnMessageExpiration;
+ return this;
+ }
+
+ /**
+ * Get the duplicateDetectionHistoryTimeWindow property: ISO 8601 timeSpan structure that defines the duration of
+ * the duplicate detection history. The default value is 10 minutes.
+ *
+ * @return the duplicateDetectionHistoryTimeWindow value.
+ */
+ public Duration duplicateDetectionHistoryTimeWindow() {
+ return this.duplicateDetectionHistoryTimeWindow;
+ }
+
+ /**
+ * Set the duplicateDetectionHistoryTimeWindow property: ISO 8601 timeSpan structure that defines the duration of
+ * the duplicate detection history. The default value is 10 minutes.
+ *
+ * @param duplicateDetectionHistoryTimeWindow the duplicateDetectionHistoryTimeWindow value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow) {
+ this.duplicateDetectionHistoryTimeWindow = duplicateDetectionHistoryTimeWindow;
+ return this;
+ }
+
+ /**
+ * Get the maxDeliveryCount property: The maximum delivery count. A message is automatically deadlettered after this
+ * number of deliveries. default value is 10.
+ *
+ * @return the maxDeliveryCount value.
+ */
+ public Integer maxDeliveryCount() {
+ return this.maxDeliveryCount;
+ }
+
+ /**
+ * Set the maxDeliveryCount property: The maximum delivery count. A message is automatically deadlettered after this
+ * number of deliveries. default value is 10.
+ *
+ * @param maxDeliveryCount the maxDeliveryCount value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withMaxDeliveryCount(Integer maxDeliveryCount) {
+ this.maxDeliveryCount = maxDeliveryCount;
+ return this;
+ }
+
+ /**
+ * Get the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @return the status value.
+ */
+ public EntityStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @param status the status value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withStatus(EntityStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @return the enableBatchedOperations value.
+ */
+ public Boolean enableBatchedOperations() {
+ return this.enableBatchedOperations;
+ }
+
+ /**
+ * Set the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @param enableBatchedOperations the enableBatchedOperations value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withEnableBatchedOperations(Boolean enableBatchedOperations) {
+ this.enableBatchedOperations = enableBatchedOperations;
+ return this;
+ }
+
+ /**
+ * Get the autoDeleteOnIdle property: ISO 8061 timeSpan idle interval after which the queue is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @return the autoDeleteOnIdle value.
+ */
+ public Duration autoDeleteOnIdle() {
+ return this.autoDeleteOnIdle;
+ }
+
+ /**
+ * Set the autoDeleteOnIdle property: ISO 8061 timeSpan idle interval after which the queue is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @param autoDeleteOnIdle the autoDeleteOnIdle value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withAutoDeleteOnIdle(Duration autoDeleteOnIdle) {
+ this.autoDeleteOnIdle = autoDeleteOnIdle;
+ return this;
+ }
+
+ /**
+ * Get the enablePartitioning property: A value that indicates whether the queue is to be partitioned across
+ * multiple message brokers.
+ *
+ * @return the enablePartitioning value.
+ */
+ public Boolean enablePartitioning() {
+ return this.enablePartitioning;
+ }
+
+ /**
+ * Set the enablePartitioning property: A value that indicates whether the queue is to be partitioned across
+ * multiple message brokers.
+ *
+ * @param enablePartitioning the enablePartitioning value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withEnablePartitioning(Boolean enablePartitioning) {
+ this.enablePartitioning = enablePartitioning;
+ return this;
+ }
+
+ /**
+ * Get the enableExpress property: A value that indicates whether Express Entities are enabled. An express queue
+ * holds a message in memory temporarily before writing it to persistent storage.
+ *
+ * @return the enableExpress value.
+ */
+ public Boolean enableExpress() {
+ return this.enableExpress;
+ }
+
+ /**
+ * Set the enableExpress property: A value that indicates whether Express Entities are enabled. An express queue
+ * holds a message in memory temporarily before writing it to persistent storage.
+ *
+ * @param enableExpress the enableExpress value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withEnableExpress(Boolean enableExpress) {
+ this.enableExpress = enableExpress;
+ return this;
+ }
+
+ /**
+ * Get the forwardTo property: Queue/Topic name to forward the messages.
+ *
+ * @return the forwardTo value.
+ */
+ public String forwardTo() {
+ return this.forwardTo;
+ }
+
+ /**
+ * Set the forwardTo property: Queue/Topic name to forward the messages.
+ *
+ * @param forwardTo the forwardTo value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withForwardTo(String forwardTo) {
+ this.forwardTo = forwardTo;
+ return this;
+ }
+
+ /**
+ * Get the forwardDeadLetteredMessagesTo property: Queue/Topic name to forward the Dead Letter message.
+ *
+ * @return the forwardDeadLetteredMessagesTo value.
+ */
+ public String forwardDeadLetteredMessagesTo() {
+ return this.forwardDeadLetteredMessagesTo;
+ }
+
+ /**
+ * Set the forwardDeadLetteredMessagesTo property: Queue/Topic name to forward the Dead Letter message.
+ *
+ * @param forwardDeadLetteredMessagesTo the forwardDeadLetteredMessagesTo value to set.
+ * @return the SBQueueInner object itself.
+ */
+ public SBQueueInner withForwardDeadLetteredMessagesTo(String forwardDeadLetteredMessagesTo) {
+ this.forwardDeadLetteredMessagesTo = forwardDeadLetteredMessagesTo;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (countDetails() != null) {
+ countDetails().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBSubscriptionInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBSubscriptionInner.java
new file mode 100644
index 0000000000000..6e2ed4e2f7faf
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBSubscriptionInner.java
@@ -0,0 +1,446 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.EntityStatus;
+import com.azure.resourcemanager.servicebus.generated.models.MessageCountDetails;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.Duration;
+import java.time.OffsetDateTime;
+
+/** Description of subscription resource. */
+@JsonFlatten
+@Fluent
+public class SBSubscriptionInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SBSubscriptionInner.class);
+
+ /*
+ * Number of messages.
+ */
+ @JsonProperty(value = "properties.messageCount", access = JsonProperty.Access.WRITE_ONLY)
+ private Long messageCount;
+
+ /*
+ * Exact time the message was created.
+ */
+ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdAt;
+
+ /*
+ * Last time there was a receive request to this subscription.
+ */
+ @JsonProperty(value = "properties.accessedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime accessedAt;
+
+ /*
+ * The exact time the message was updated.
+ */
+ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updatedAt;
+
+ /*
+ * Message count details
+ */
+ @JsonProperty(value = "properties.countDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private MessageCountDetails countDetails;
+
+ /*
+ * ISO 8061 lock duration timespan for the subscription. The default value
+ * is 1 minute.
+ */
+ @JsonProperty(value = "properties.lockDuration")
+ private Duration lockDuration;
+
+ /*
+ * Value indicating if a subscription supports the concept of sessions.
+ */
+ @JsonProperty(value = "properties.requiresSession")
+ private Boolean requiresSession;
+
+ /*
+ * ISO 8061 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent
+ * to Service Bus. This is the default value used when TimeToLive is not
+ * set on a message itself.
+ */
+ @JsonProperty(value = "properties.defaultMessageTimeToLive")
+ private Duration defaultMessageTimeToLive;
+
+ /*
+ * Value that indicates whether a subscription has dead letter support on
+ * filter evaluation exceptions.
+ */
+ @JsonProperty(value = "properties.deadLetteringOnFilterEvaluationExceptions")
+ private Boolean deadLetteringOnFilterEvaluationExceptions;
+
+ /*
+ * Value that indicates whether a subscription has dead letter support when
+ * a message expires.
+ */
+ @JsonProperty(value = "properties.deadLetteringOnMessageExpiration")
+ private Boolean deadLetteringOnMessageExpiration;
+
+ /*
+ * ISO 8601 timeSpan structure that defines the duration of the duplicate
+ * detection history. The default value is 10 minutes.
+ */
+ @JsonProperty(value = "properties.duplicateDetectionHistoryTimeWindow")
+ private Duration duplicateDetectionHistoryTimeWindow;
+
+ /*
+ * Number of maximum deliveries.
+ */
+ @JsonProperty(value = "properties.maxDeliveryCount")
+ private Integer maxDeliveryCount;
+
+ /*
+ * Enumerates the possible values for the status of a messaging entity.
+ */
+ @JsonProperty(value = "properties.status")
+ private EntityStatus status;
+
+ /*
+ * Value that indicates whether server-side batched operations are enabled.
+ */
+ @JsonProperty(value = "properties.enableBatchedOperations")
+ private Boolean enableBatchedOperations;
+
+ /*
+ * ISO 8061 timeSpan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ */
+ @JsonProperty(value = "properties.autoDeleteOnIdle")
+ private Duration autoDeleteOnIdle;
+
+ /*
+ * Queue/Topic name to forward the messages
+ */
+ @JsonProperty(value = "properties.forwardTo")
+ private String forwardTo;
+
+ /*
+ * Queue/Topic name to forward the Dead Letter message
+ */
+ @JsonProperty(value = "properties.forwardDeadLetteredMessagesTo")
+ private String forwardDeadLetteredMessagesTo;
+
+ /**
+ * Get the messageCount property: Number of messages.
+ *
+ * @return the messageCount value.
+ */
+ public Long messageCount() {
+ return this.messageCount;
+ }
+
+ /**
+ * Get the createdAt property: Exact time the message was created.
+ *
+ * @return the createdAt value.
+ */
+ public OffsetDateTime createdAt() {
+ return this.createdAt;
+ }
+
+ /**
+ * Get the accessedAt property: Last time there was a receive request to this subscription.
+ *
+ * @return the accessedAt value.
+ */
+ public OffsetDateTime accessedAt() {
+ return this.accessedAt;
+ }
+
+ /**
+ * Get the updatedAt property: The exact time the message was updated.
+ *
+ * @return the updatedAt value.
+ */
+ public OffsetDateTime updatedAt() {
+ return this.updatedAt;
+ }
+
+ /**
+ * Get the countDetails property: Message count details.
+ *
+ * @return the countDetails value.
+ */
+ public MessageCountDetails countDetails() {
+ return this.countDetails;
+ }
+
+ /**
+ * Get the lockDuration property: ISO 8061 lock duration timespan for the subscription. The default value is 1
+ * minute.
+ *
+ * @return the lockDuration value.
+ */
+ public Duration lockDuration() {
+ return this.lockDuration;
+ }
+
+ /**
+ * Set the lockDuration property: ISO 8061 lock duration timespan for the subscription. The default value is 1
+ * minute.
+ *
+ * @param lockDuration the lockDuration value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withLockDuration(Duration lockDuration) {
+ this.lockDuration = lockDuration;
+ return this;
+ }
+
+ /**
+ * Get the requiresSession property: Value indicating if a subscription supports the concept of sessions.
+ *
+ * @return the requiresSession value.
+ */
+ public Boolean requiresSession() {
+ return this.requiresSession;
+ }
+
+ /**
+ * Set the requiresSession property: Value indicating if a subscription supports the concept of sessions.
+ *
+ * @param requiresSession the requiresSession value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withRequiresSession(Boolean requiresSession) {
+ this.requiresSession = requiresSession;
+ return this;
+ }
+
+ /**
+ * Get the defaultMessageTimeToLive property: ISO 8061 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @return the defaultMessageTimeToLive value.
+ */
+ public Duration defaultMessageTimeToLive() {
+ return this.defaultMessageTimeToLive;
+ }
+
+ /**
+ * Set the defaultMessageTimeToLive property: ISO 8061 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @param defaultMessageTimeToLive the defaultMessageTimeToLive value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withDefaultMessageTimeToLive(Duration defaultMessageTimeToLive) {
+ this.defaultMessageTimeToLive = defaultMessageTimeToLive;
+ return this;
+ }
+
+ /**
+ * Get the deadLetteringOnFilterEvaluationExceptions property: Value that indicates whether a subscription has dead
+ * letter support on filter evaluation exceptions.
+ *
+ * @return the deadLetteringOnFilterEvaluationExceptions value.
+ */
+ public Boolean deadLetteringOnFilterEvaluationExceptions() {
+ return this.deadLetteringOnFilterEvaluationExceptions;
+ }
+
+ /**
+ * Set the deadLetteringOnFilterEvaluationExceptions property: Value that indicates whether a subscription has dead
+ * letter support on filter evaluation exceptions.
+ *
+ * @param deadLetteringOnFilterEvaluationExceptions the deadLetteringOnFilterEvaluationExceptions value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withDeadLetteringOnFilterEvaluationExceptions(
+ Boolean deadLetteringOnFilterEvaluationExceptions) {
+ this.deadLetteringOnFilterEvaluationExceptions = deadLetteringOnFilterEvaluationExceptions;
+ return this;
+ }
+
+ /**
+ * Get the deadLetteringOnMessageExpiration property: Value that indicates whether a subscription has dead letter
+ * support when a message expires.
+ *
+ * @return the deadLetteringOnMessageExpiration value.
+ */
+ public Boolean deadLetteringOnMessageExpiration() {
+ return this.deadLetteringOnMessageExpiration;
+ }
+
+ /**
+ * Set the deadLetteringOnMessageExpiration property: Value that indicates whether a subscription has dead letter
+ * support when a message expires.
+ *
+ * @param deadLetteringOnMessageExpiration the deadLetteringOnMessageExpiration value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withDeadLetteringOnMessageExpiration(Boolean deadLetteringOnMessageExpiration) {
+ this.deadLetteringOnMessageExpiration = deadLetteringOnMessageExpiration;
+ return this;
+ }
+
+ /**
+ * Get the duplicateDetectionHistoryTimeWindow property: ISO 8601 timeSpan structure that defines the duration of
+ * the duplicate detection history. The default value is 10 minutes.
+ *
+ * @return the duplicateDetectionHistoryTimeWindow value.
+ */
+ public Duration duplicateDetectionHistoryTimeWindow() {
+ return this.duplicateDetectionHistoryTimeWindow;
+ }
+
+ /**
+ * Set the duplicateDetectionHistoryTimeWindow property: ISO 8601 timeSpan structure that defines the duration of
+ * the duplicate detection history. The default value is 10 minutes.
+ *
+ * @param duplicateDetectionHistoryTimeWindow the duplicateDetectionHistoryTimeWindow value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow) {
+ this.duplicateDetectionHistoryTimeWindow = duplicateDetectionHistoryTimeWindow;
+ return this;
+ }
+
+ /**
+ * Get the maxDeliveryCount property: Number of maximum deliveries.
+ *
+ * @return the maxDeliveryCount value.
+ */
+ public Integer maxDeliveryCount() {
+ return this.maxDeliveryCount;
+ }
+
+ /**
+ * Set the maxDeliveryCount property: Number of maximum deliveries.
+ *
+ * @param maxDeliveryCount the maxDeliveryCount value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withMaxDeliveryCount(Integer maxDeliveryCount) {
+ this.maxDeliveryCount = maxDeliveryCount;
+ return this;
+ }
+
+ /**
+ * Get the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @return the status value.
+ */
+ public EntityStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @param status the status value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withStatus(EntityStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @return the enableBatchedOperations value.
+ */
+ public Boolean enableBatchedOperations() {
+ return this.enableBatchedOperations;
+ }
+
+ /**
+ * Set the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @param enableBatchedOperations the enableBatchedOperations value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withEnableBatchedOperations(Boolean enableBatchedOperations) {
+ this.enableBatchedOperations = enableBatchedOperations;
+ return this;
+ }
+
+ /**
+ * Get the autoDeleteOnIdle property: ISO 8061 timeSpan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @return the autoDeleteOnIdle value.
+ */
+ public Duration autoDeleteOnIdle() {
+ return this.autoDeleteOnIdle;
+ }
+
+ /**
+ * Set the autoDeleteOnIdle property: ISO 8061 timeSpan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @param autoDeleteOnIdle the autoDeleteOnIdle value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withAutoDeleteOnIdle(Duration autoDeleteOnIdle) {
+ this.autoDeleteOnIdle = autoDeleteOnIdle;
+ return this;
+ }
+
+ /**
+ * Get the forwardTo property: Queue/Topic name to forward the messages.
+ *
+ * @return the forwardTo value.
+ */
+ public String forwardTo() {
+ return this.forwardTo;
+ }
+
+ /**
+ * Set the forwardTo property: Queue/Topic name to forward the messages.
+ *
+ * @param forwardTo the forwardTo value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withForwardTo(String forwardTo) {
+ this.forwardTo = forwardTo;
+ return this;
+ }
+
+ /**
+ * Get the forwardDeadLetteredMessagesTo property: Queue/Topic name to forward the Dead Letter message.
+ *
+ * @return the forwardDeadLetteredMessagesTo value.
+ */
+ public String forwardDeadLetteredMessagesTo() {
+ return this.forwardDeadLetteredMessagesTo;
+ }
+
+ /**
+ * Set the forwardDeadLetteredMessagesTo property: Queue/Topic name to forward the Dead Letter message.
+ *
+ * @param forwardDeadLetteredMessagesTo the forwardDeadLetteredMessagesTo value to set.
+ * @return the SBSubscriptionInner object itself.
+ */
+ public SBSubscriptionInner withForwardDeadLetteredMessagesTo(String forwardDeadLetteredMessagesTo) {
+ this.forwardDeadLetteredMessagesTo = forwardDeadLetteredMessagesTo;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (countDetails() != null) {
+ countDetails().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBTopicInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBTopicInner.java
new file mode 100644
index 0000000000000..52fb74c8f123c
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/SBTopicInner.java
@@ -0,0 +1,410 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.models.EntityStatus;
+import com.azure.resourcemanager.servicebus.generated.models.MessageCountDetails;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.Duration;
+import java.time.OffsetDateTime;
+
+/** Description of topic resource. */
+@JsonFlatten
+@Fluent
+public class SBTopicInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SBTopicInner.class);
+
+ /*
+ * Size of the topic, in bytes.
+ */
+ @JsonProperty(value = "properties.sizeInBytes", access = JsonProperty.Access.WRITE_ONLY)
+ private Long sizeInBytes;
+
+ /*
+ * Exact time the message was created.
+ */
+ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdAt;
+
+ /*
+ * The exact time the message was updated.
+ */
+ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updatedAt;
+
+ /*
+ * Last time the message was sent, or a request was received, for this
+ * topic.
+ */
+ @JsonProperty(value = "properties.accessedAt", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime accessedAt;
+
+ /*
+ * Number of subscriptions.
+ */
+ @JsonProperty(value = "properties.subscriptionCount", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer subscriptionCount;
+
+ /*
+ * Message count details
+ */
+ @JsonProperty(value = "properties.countDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private MessageCountDetails countDetails;
+
+ /*
+ * ISO 8601 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent
+ * to Service Bus. This is the default value used when TimeToLive is not
+ * set on a message itself.
+ */
+ @JsonProperty(value = "properties.defaultMessageTimeToLive")
+ private Duration defaultMessageTimeToLive;
+
+ /*
+ * Maximum size of the topic in megabytes, which is the size of the memory
+ * allocated for the topic. Default is 1024.
+ */
+ @JsonProperty(value = "properties.maxSizeInMegabytes")
+ private Integer maxSizeInMegabytes;
+
+ /*
+ * Value indicating if this topic requires duplicate detection.
+ */
+ @JsonProperty(value = "properties.requiresDuplicateDetection")
+ private Boolean requiresDuplicateDetection;
+
+ /*
+ * ISO8601 timespan structure that defines the duration of the duplicate
+ * detection history. The default value is 10 minutes.
+ */
+ @JsonProperty(value = "properties.duplicateDetectionHistoryTimeWindow")
+ private Duration duplicateDetectionHistoryTimeWindow;
+
+ /*
+ * Value that indicates whether server-side batched operations are enabled.
+ */
+ @JsonProperty(value = "properties.enableBatchedOperations")
+ private Boolean enableBatchedOperations;
+
+ /*
+ * Enumerates the possible values for the status of a messaging entity.
+ */
+ @JsonProperty(value = "properties.status")
+ private EntityStatus status;
+
+ /*
+ * Value that indicates whether the topic supports ordering.
+ */
+ @JsonProperty(value = "properties.supportOrdering")
+ private Boolean supportOrdering;
+
+ /*
+ * ISO 8601 timespan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ */
+ @JsonProperty(value = "properties.autoDeleteOnIdle")
+ private Duration autoDeleteOnIdle;
+
+ /*
+ * Value that indicates whether the topic to be partitioned across multiple
+ * message brokers is enabled.
+ */
+ @JsonProperty(value = "properties.enablePartitioning")
+ private Boolean enablePartitioning;
+
+ /*
+ * Value that indicates whether Express Entities are enabled. An express
+ * topic holds a message in memory temporarily before writing it to
+ * persistent storage.
+ */
+ @JsonProperty(value = "properties.enableExpress")
+ private Boolean enableExpress;
+
+ /**
+ * Get the sizeInBytes property: Size of the topic, in bytes.
+ *
+ * @return the sizeInBytes value.
+ */
+ public Long sizeInBytes() {
+ return this.sizeInBytes;
+ }
+
+ /**
+ * Get the createdAt property: Exact time the message was created.
+ *
+ * @return the createdAt value.
+ */
+ public OffsetDateTime createdAt() {
+ return this.createdAt;
+ }
+
+ /**
+ * Get the updatedAt property: The exact time the message was updated.
+ *
+ * @return the updatedAt value.
+ */
+ public OffsetDateTime updatedAt() {
+ return this.updatedAt;
+ }
+
+ /**
+ * Get the accessedAt property: Last time the message was sent, or a request was received, for this topic.
+ *
+ * @return the accessedAt value.
+ */
+ public OffsetDateTime accessedAt() {
+ return this.accessedAt;
+ }
+
+ /**
+ * Get the subscriptionCount property: Number of subscriptions.
+ *
+ * @return the subscriptionCount value.
+ */
+ public Integer subscriptionCount() {
+ return this.subscriptionCount;
+ }
+
+ /**
+ * Get the countDetails property: Message count details.
+ *
+ * @return the countDetails value.
+ */
+ public MessageCountDetails countDetails() {
+ return this.countDetails;
+ }
+
+ /**
+ * Get the defaultMessageTimeToLive property: ISO 8601 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @return the defaultMessageTimeToLive value.
+ */
+ public Duration defaultMessageTimeToLive() {
+ return this.defaultMessageTimeToLive;
+ }
+
+ /**
+ * Set the defaultMessageTimeToLive property: ISO 8601 Default message timespan to live value. This is the duration
+ * after which the message expires, starting from when the message is sent to Service Bus. This is the default value
+ * used when TimeToLive is not set on a message itself.
+ *
+ * @param defaultMessageTimeToLive the defaultMessageTimeToLive value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withDefaultMessageTimeToLive(Duration defaultMessageTimeToLive) {
+ this.defaultMessageTimeToLive = defaultMessageTimeToLive;
+ return this;
+ }
+
+ /**
+ * Get the maxSizeInMegabytes property: Maximum size of the topic in megabytes, which is the size of the memory
+ * allocated for the topic. Default is 1024.
+ *
+ * @return the maxSizeInMegabytes value.
+ */
+ public Integer maxSizeInMegabytes() {
+ return this.maxSizeInMegabytes;
+ }
+
+ /**
+ * Set the maxSizeInMegabytes property: Maximum size of the topic in megabytes, which is the size of the memory
+ * allocated for the topic. Default is 1024.
+ *
+ * @param maxSizeInMegabytes the maxSizeInMegabytes value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withMaxSizeInMegabytes(Integer maxSizeInMegabytes) {
+ this.maxSizeInMegabytes = maxSizeInMegabytes;
+ return this;
+ }
+
+ /**
+ * Get the requiresDuplicateDetection property: Value indicating if this topic requires duplicate detection.
+ *
+ * @return the requiresDuplicateDetection value.
+ */
+ public Boolean requiresDuplicateDetection() {
+ return this.requiresDuplicateDetection;
+ }
+
+ /**
+ * Set the requiresDuplicateDetection property: Value indicating if this topic requires duplicate detection.
+ *
+ * @param requiresDuplicateDetection the requiresDuplicateDetection value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withRequiresDuplicateDetection(Boolean requiresDuplicateDetection) {
+ this.requiresDuplicateDetection = requiresDuplicateDetection;
+ return this;
+ }
+
+ /**
+ * Get the duplicateDetectionHistoryTimeWindow property: ISO8601 timespan structure that defines the duration of the
+ * duplicate detection history. The default value is 10 minutes.
+ *
+ * @return the duplicateDetectionHistoryTimeWindow value.
+ */
+ public Duration duplicateDetectionHistoryTimeWindow() {
+ return this.duplicateDetectionHistoryTimeWindow;
+ }
+
+ /**
+ * Set the duplicateDetectionHistoryTimeWindow property: ISO8601 timespan structure that defines the duration of the
+ * duplicate detection history. The default value is 10 minutes.
+ *
+ * @param duplicateDetectionHistoryTimeWindow the duplicateDetectionHistoryTimeWindow value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow) {
+ this.duplicateDetectionHistoryTimeWindow = duplicateDetectionHistoryTimeWindow;
+ return this;
+ }
+
+ /**
+ * Get the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @return the enableBatchedOperations value.
+ */
+ public Boolean enableBatchedOperations() {
+ return this.enableBatchedOperations;
+ }
+
+ /**
+ * Set the enableBatchedOperations property: Value that indicates whether server-side batched operations are
+ * enabled.
+ *
+ * @param enableBatchedOperations the enableBatchedOperations value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withEnableBatchedOperations(Boolean enableBatchedOperations) {
+ this.enableBatchedOperations = enableBatchedOperations;
+ return this;
+ }
+
+ /**
+ * Get the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @return the status value.
+ */
+ public EntityStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Enumerates the possible values for the status of a messaging entity.
+ *
+ * @param status the status value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withStatus(EntityStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the supportOrdering property: Value that indicates whether the topic supports ordering.
+ *
+ * @return the supportOrdering value.
+ */
+ public Boolean supportOrdering() {
+ return this.supportOrdering;
+ }
+
+ /**
+ * Set the supportOrdering property: Value that indicates whether the topic supports ordering.
+ *
+ * @param supportOrdering the supportOrdering value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withSupportOrdering(Boolean supportOrdering) {
+ this.supportOrdering = supportOrdering;
+ return this;
+ }
+
+ /**
+ * Get the autoDeleteOnIdle property: ISO 8601 timespan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @return the autoDeleteOnIdle value.
+ */
+ public Duration autoDeleteOnIdle() {
+ return this.autoDeleteOnIdle;
+ }
+
+ /**
+ * Set the autoDeleteOnIdle property: ISO 8601 timespan idle interval after which the topic is automatically
+ * deleted. The minimum duration is 5 minutes.
+ *
+ * @param autoDeleteOnIdle the autoDeleteOnIdle value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withAutoDeleteOnIdle(Duration autoDeleteOnIdle) {
+ this.autoDeleteOnIdle = autoDeleteOnIdle;
+ return this;
+ }
+
+ /**
+ * Get the enablePartitioning property: Value that indicates whether the topic to be partitioned across multiple
+ * message brokers is enabled.
+ *
+ * @return the enablePartitioning value.
+ */
+ public Boolean enablePartitioning() {
+ return this.enablePartitioning;
+ }
+
+ /**
+ * Set the enablePartitioning property: Value that indicates whether the topic to be partitioned across multiple
+ * message brokers is enabled.
+ *
+ * @param enablePartitioning the enablePartitioning value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withEnablePartitioning(Boolean enablePartitioning) {
+ this.enablePartitioning = enablePartitioning;
+ return this;
+ }
+
+ /**
+ * Get the enableExpress property: Value that indicates whether Express Entities are enabled. An express topic holds
+ * a message in memory temporarily before writing it to persistent storage.
+ *
+ * @return the enableExpress value.
+ */
+ public Boolean enableExpress() {
+ return this.enableExpress;
+ }
+
+ /**
+ * Set the enableExpress property: Value that indicates whether Express Entities are enabled. An express topic holds
+ * a message in memory temporarily before writing it to persistent storage.
+ *
+ * @param enableExpress the enableExpress value to set.
+ * @return the SBTopicInner object itself.
+ */
+ public SBTopicInner withEnableExpress(Boolean enableExpress) {
+ this.enableExpress = enableExpress;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (countDetails() != null) {
+ countDetails().validate();
+ }
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/VirtualNetworkRuleInner.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/VirtualNetworkRuleInner.java
new file mode 100644
index 0000000000000..a4d6ea4ba7cff
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/VirtualNetworkRuleInner.java
@@ -0,0 +1,53 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Single item in a List or Get VirtualNetworkRules operation. */
+@JsonFlatten
+@Fluent
+public class VirtualNetworkRuleInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(VirtualNetworkRuleInner.class);
+
+ /*
+ * Resource ID of Virtual Network Subnet
+ */
+ @JsonProperty(value = "properties.virtualNetworkSubnetId")
+ private String virtualNetworkSubnetId;
+
+ /**
+ * Get the virtualNetworkSubnetId property: Resource ID of Virtual Network Subnet.
+ *
+ * @return the virtualNetworkSubnetId value.
+ */
+ public String virtualNetworkSubnetId() {
+ return this.virtualNetworkSubnetId;
+ }
+
+ /**
+ * Set the virtualNetworkSubnetId property: Resource ID of Virtual Network Subnet.
+ *
+ * @param virtualNetworkSubnetId the virtualNetworkSubnetId value to set.
+ * @return the VirtualNetworkRuleInner object itself.
+ */
+ public VirtualNetworkRuleInner withVirtualNetworkSubnetId(String virtualNetworkSubnetId) {
+ this.virtualNetworkSubnetId = virtualNetworkSubnetId;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/package-info.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/package-info.java
new file mode 100644
index 0000000000000..a1369cacfbdc9
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/models/package-info.java
@@ -0,0 +1,9 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the inner data models for ServiceBusManagementClient. Azure Service Bus client for managing
+ * Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant.
+ */
+package com.azure.resourcemanager.servicebus.generated.fluent.models;
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/package-info.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/package-info.java
new file mode 100644
index 0000000000000..8e26079024835
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/fluent/package-info.java
@@ -0,0 +1,9 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the service clients for ServiceBusManagementClient. Azure Service Bus client for managing
+ * Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant.
+ */
+package com.azure.resourcemanager.servicebus.generated.fluent;
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/AccessKeysImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/AccessKeysImpl.java
new file mode 100644
index 0000000000000..160cd328ea14c
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/AccessKeysImpl.java
@@ -0,0 +1,56 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.resourcemanager.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.models.AccessKeys;
+
+public final class AccessKeysImpl implements AccessKeys {
+ private AccessKeysInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ AccessKeysImpl(
+ AccessKeysInner innerObject, com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String primaryConnectionString() {
+ return this.innerModel().primaryConnectionString();
+ }
+
+ public String secondaryConnectionString() {
+ return this.innerModel().secondaryConnectionString();
+ }
+
+ public String aliasPrimaryConnectionString() {
+ return this.innerModel().aliasPrimaryConnectionString();
+ }
+
+ public String aliasSecondaryConnectionString() {
+ return this.innerModel().aliasSecondaryConnectionString();
+ }
+
+ public String primaryKey() {
+ return this.innerModel().primaryKey();
+ }
+
+ public String secondaryKey() {
+ return this.innerModel().secondaryKey();
+ }
+
+ public String keyName() {
+ return this.innerModel().keyName();
+ }
+
+ public AccessKeysInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/ArmDisasterRecoveryImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/ArmDisasterRecoveryImpl.java
new file mode 100644
index 0000000000000..eb5731e838ca9
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/ArmDisasterRecoveryImpl.java
@@ -0,0 +1,183 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.ArmDisasterRecoveryInner;
+import com.azure.resourcemanager.servicebus.generated.models.ArmDisasterRecovery;
+import com.azure.resourcemanager.servicebus.generated.models.FailoverProperties;
+import com.azure.resourcemanager.servicebus.generated.models.ProvisioningStateDR;
+import com.azure.resourcemanager.servicebus.generated.models.RoleDisasterRecovery;
+
+public final class ArmDisasterRecoveryImpl
+ implements ArmDisasterRecovery, ArmDisasterRecovery.Definition, ArmDisasterRecovery.Update {
+ private ArmDisasterRecoveryInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public ProvisioningStateDR provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public Long pendingReplicationOperationsCount() {
+ return this.innerModel().pendingReplicationOperationsCount();
+ }
+
+ public String partnerNamespace() {
+ return this.innerModel().partnerNamespace();
+ }
+
+ public String alternateName() {
+ return this.innerModel().alternateName();
+ }
+
+ public RoleDisasterRecovery role() {
+ return this.innerModel().role();
+ }
+
+ public ArmDisasterRecoveryInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String namespaceName;
+
+ private String alias;
+
+ public ArmDisasterRecoveryImpl withExistingNamespace(String resourceGroupName, String namespaceName) {
+ this.resourceGroupName = resourceGroupName;
+ this.namespaceName = namespaceName;
+ return this;
+ }
+
+ public ArmDisasterRecovery create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .createOrUpdateWithResponse(resourceGroupName, namespaceName, alias, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public ArmDisasterRecovery create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .createOrUpdateWithResponse(resourceGroupName, namespaceName, alias, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ ArmDisasterRecoveryImpl(
+ String name, com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = new ArmDisasterRecoveryInner();
+ this.serviceManager = serviceManager;
+ this.alias = name;
+ }
+
+ public ArmDisasterRecoveryImpl update() {
+ return this;
+ }
+
+ public ArmDisasterRecovery apply() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .createOrUpdateWithResponse(resourceGroupName, namespaceName, alias, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public ArmDisasterRecovery apply(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .createOrUpdateWithResponse(resourceGroupName, namespaceName, alias, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ ArmDisasterRecoveryImpl(
+ ArmDisasterRecoveryInner innerObject,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+ this.namespaceName = Utils.getValueFromIdByName(innerObject.id(), "namespaces");
+ this.alias = Utils.getValueFromIdByName(innerObject.id(), "disasterRecoveryConfigs");
+ }
+
+ public ArmDisasterRecovery refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .getWithResponse(resourceGroupName, namespaceName, alias, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public ArmDisasterRecovery refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getDisasterRecoveryConfigs()
+ .getWithResponse(resourceGroupName, namespaceName, alias, context)
+ .getValue();
+ return this;
+ }
+
+ public void breakPairing() {
+ serviceManager.disasterRecoveryConfigs().breakPairing(resourceGroupName, namespaceName, alias);
+ }
+
+ public Response breakPairingWithResponse(Context context) {
+ return serviceManager
+ .disasterRecoveryConfigs()
+ .breakPairingWithResponse(resourceGroupName, namespaceName, alias, context);
+ }
+
+ public void failOver() {
+ serviceManager.disasterRecoveryConfigs().failOver(resourceGroupName, namespaceName, alias);
+ }
+
+ public Response failOverWithResponse(FailoverProperties parameters, Context context) {
+ return serviceManager
+ .disasterRecoveryConfigs()
+ .failOverWithResponse(resourceGroupName, namespaceName, alias, parameters, context);
+ }
+
+ public ArmDisasterRecoveryImpl withPartnerNamespace(String partnerNamespace) {
+ this.innerModel().withPartnerNamespace(partnerNamespace);
+ return this;
+ }
+
+ public ArmDisasterRecoveryImpl withAlternateName(String alternateName) {
+ this.innerModel().withAlternateName(alternateName);
+ return this;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/CheckNameAvailabilityResultImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/CheckNameAvailabilityResultImpl.java
new file mode 100644
index 0000000000000..bcb2fad2862bb
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/CheckNameAvailabilityResultImpl.java
@@ -0,0 +1,42 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.resourcemanager.servicebus.generated.fluent.models.CheckNameAvailabilityResultInner;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailabilityResult;
+import com.azure.resourcemanager.servicebus.generated.models.UnavailableReason;
+
+public final class CheckNameAvailabilityResultImpl implements CheckNameAvailabilityResult {
+ private CheckNameAvailabilityResultInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ CheckNameAvailabilityResultImpl(
+ CheckNameAvailabilityResultInner innerObject,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String message() {
+ return this.innerModel().message();
+ }
+
+ public Boolean nameAvailable() {
+ return this.innerModel().nameAvailable();
+ }
+
+ public UnavailableReason reason() {
+ return this.innerModel().reason();
+ }
+
+ public CheckNameAvailabilityResultInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsClientImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsClientImpl.java
new file mode 100644
index 0000000000000..4eba6b1710c34
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsClientImpl.java
@@ -0,0 +1,2150 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Post;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.fluent.DisasterRecoveryConfigsClient;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.ArmDisasterRecoveryInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.CheckNameAvailabilityResultInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.models.ArmDisasterRecoveryListResult;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailability;
+import com.azure.resourcemanager.servicebus.generated.models.FailoverProperties;
+import com.azure.resourcemanager.servicebus.generated.models.SBAuthorizationRuleListResult;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in DisasterRecoveryConfigsClient. */
+public final class DisasterRecoveryConfigsClientImpl implements DisasterRecoveryConfigsClient {
+ private final ClientLogger logger = new ClientLogger(DisasterRecoveryConfigsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final DisasterRecoveryConfigsService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceBusManagementClientImpl client;
+
+ /**
+ * Initializes an instance of DisasterRecoveryConfigsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ DisasterRecoveryConfigsClientImpl(ServiceBusManagementClientImpl client) {
+ this.service =
+ RestProxy
+ .create(DisasterRecoveryConfigsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceBusManagementClientDisasterRecoveryConfigs to be used by the
+ * proxy service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceBusManagement")
+ private interface DisasterRecoveryConfigsService {
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> checkNameAvailability(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @BodyParam("application/json") CheckNameAvailability parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> createOrUpdate(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @BodyParam("application/json") ArmDisasterRecoveryInner parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> breakPairing(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> failOver(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @BodyParam("application/json") FailoverProperties parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listAuthorizationRules(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules"
+ + "/{authorizationRuleName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getAuthorizationRule(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @PathParam("authorizationRuleName") String authorizationRuleName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules"
+ + "/{authorizationRuleName}/listKeys")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listKeys(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("alias") String alias,
+ @PathParam("authorizationRuleName") String authorizationRuleName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listAuthorizationRulesNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace name.
+ * @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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> checkNameAvailabilityWithResponseAsync(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .checkNameAvailability(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace name.
+ * @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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> checkNameAvailabilityWithResponseAsync(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .checkNameAvailability(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace name.
+ * @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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono checkNameAvailabilityAsync(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters) {
+ return checkNameAvailabilityWithResponseAsync(resourceGroupName, namespaceName, parameters)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace name.
+ * @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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public CheckNameAvailabilityResultInner checkNameAvailability(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters) {
+ return checkNameAvailabilityAsync(resourceGroupName, namespaceName, parameters).block();
+ }
+
+ /**
+ * Check the give namespace name availability.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param parameters Parameters to check availability of the given namespace name.
+ * @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 description of a Check Name availability request properties.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response checkNameAvailabilityWithResponse(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters, Context context) {
+ return checkNameAvailabilityWithResponseAsync(resourceGroupName, namespaceName, parameters, context).block();
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String namespaceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String namespaceName) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, namespaceName), nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, namespaceName, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String namespaceName) {
+ return new PagedIterable<>(listAsync(resourceGroupName, namespaceName));
+ }
+
+ /**
+ * Gets all Alias(Disaster Recovery configurations).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all Alias(Disaster Recovery configurations).
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, namespaceName, context));
+ }
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, ArmDisasterRecoveryInner parameters) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ String resourceGroupName,
+ String namespaceName,
+ String alias,
+ ArmDisasterRecoveryInner parameters,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(
+ String resourceGroupName, String namespaceName, String alias, ArmDisasterRecoveryInner parameters) {
+ return createOrUpdateWithResponseAsync(resourceGroupName, namespaceName, alias, parameters)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArmDisasterRecoveryInner createOrUpdate(
+ String resourceGroupName, String namespaceName, String alias, ArmDisasterRecoveryInner parameters) {
+ return createOrUpdateAsync(resourceGroupName, namespaceName, alias, parameters).block();
+ }
+
+ /**
+ * Creates or updates a new Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String namespaceName,
+ String alias,
+ ArmDisasterRecoveryInner parameters,
+ Context context) {
+ return createOrUpdateWithResponseAsync(resourceGroupName, namespaceName, alias, parameters, context).block();
+ }
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(String resourceGroupName, String namespaceName, String alias) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context);
+ }
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String namespaceName, String alias) {
+ return deleteWithResponseAsync(resourceGroupName, namespaceName, alias)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String namespaceName, String alias) {
+ deleteAsync(resourceGroupName, namespaceName, alias).block();
+ }
+
+ /**
+ * Deletes an Alias(Disaster Recovery configuration).
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return deleteWithResponseAsync(resourceGroupName, namespaceName, alias, context).block();
+ }
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .get(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .get(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context);
+ }
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(String resourceGroupName, String namespaceName, String alias) {
+ return getWithResponseAsync(resourceGroupName, namespaceName, alias)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArmDisasterRecoveryInner get(String resourceGroupName, String namespaceName, String alias) {
+ return getAsync(resourceGroupName, namespaceName, alias).block();
+ }
+
+ /**
+ * Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 single item in List or Get Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return getWithResponseAsync(resourceGroupName, namespaceName, alias, context).block();
+ }
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> breakPairingWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .breakPairing(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> breakPairingWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .breakPairing(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context);
+ }
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono breakPairingAsync(String resourceGroupName, String namespaceName, String alias) {
+ return breakPairingWithResponseAsync(resourceGroupName, namespaceName, alias)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void breakPairing(String resourceGroupName, String namespaceName, String alias) {
+ breakPairingAsync(resourceGroupName, namespaceName, alias).block();
+ }
+
+ /**
+ * This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response breakPairingWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return breakPairingWithResponseAsync(resourceGroupName, namespaceName, alias, context).block();
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> failOverWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters != null) {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .failOver(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> failOverWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters != null) {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .failOver(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono failOverAsync(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters) {
+ return failOverWithResponseAsync(resourceGroupName, namespaceName, alias, parameters)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono failOverAsync(String resourceGroupName, String namespaceName, String alias) {
+ final FailoverProperties parameters = null;
+ return failOverWithResponseAsync(resourceGroupName, namespaceName, alias, parameters)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void failOver(String resourceGroupName, String namespaceName, String alias) {
+ final FailoverProperties parameters = null;
+ failOverAsync(resourceGroupName, namespaceName, alias, parameters).block();
+ }
+
+ /**
+ * Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param parameters Parameters required to create an Alias(Disaster Recovery configuration).
+ * @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 the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response failOverWithResponse(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters, Context context) {
+ return failOverWithResponseAsync(resourceGroupName, namespaceName, alias, parameters, context).block();
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listAuthorizationRulesSinglePageAsync(
+ String resourceGroupName, String namespaceName, String alias) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listAuthorizationRules(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listAuthorizationRulesSinglePageAsync(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listAuthorizationRules(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAuthorizationRulesAsync(
+ String resourceGroupName, String namespaceName, String alias) {
+ return new PagedFlux<>(
+ () -> listAuthorizationRulesSinglePageAsync(resourceGroupName, namespaceName, alias),
+ nextLink -> listAuthorizationRulesNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAuthorizationRulesAsync(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return new PagedFlux<>(
+ () -> listAuthorizationRulesSinglePageAsync(resourceGroupName, namespaceName, alias, context),
+ nextLink -> listAuthorizationRulesNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias) {
+ return new PagedIterable<>(listAuthorizationRulesAsync(resourceGroupName, namespaceName, alias));
+ }
+
+ /**
+ * Gets the authorization rules for a namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @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 the authorization rules for a namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return new PagedIterable<>(listAuthorizationRulesAsync(resourceGroupName, namespaceName, alias, context));
+ }
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getAuthorizationRuleWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (authorizationRuleName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter authorizationRuleName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getAuthorizationRule(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ authorizationRuleName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getAuthorizationRuleWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (authorizationRuleName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter authorizationRuleName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getAuthorizationRule(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ authorizationRuleName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context);
+ }
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAuthorizationRuleAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ return getAuthorizationRuleWithResponseAsync(resourceGroupName, namespaceName, alias, authorizationRuleName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SBAuthorizationRuleInner getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ return getAuthorizationRuleAsync(resourceGroupName, namespaceName, alias, authorizationRuleName).block();
+ }
+
+ /**
+ * Gets an authorization rule for a namespace by rule name.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 an authorization rule for a namespace by rule name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getAuthorizationRuleWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ return getAuthorizationRuleWithResponseAsync(
+ resourceGroupName, namespaceName, alias, authorizationRuleName, context)
+ .block();
+ }
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listKeysWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (authorizationRuleName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter authorizationRuleName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listKeys(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ authorizationRuleName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listKeysWithResponseAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (alias == null) {
+ return Mono.error(new IllegalArgumentException("Parameter alias is required and cannot be null."));
+ }
+ if (authorizationRuleName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter authorizationRuleName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listKeys(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ alias,
+ authorizationRuleName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context);
+ }
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono listKeysAsync(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ return listKeysWithResponseAsync(resourceGroupName, namespaceName, alias, authorizationRuleName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public AccessKeysInner listKeys(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ return listKeysAsync(resourceGroupName, namespaceName, alias, authorizationRuleName).block();
+ }
+
+ /**
+ * Gets the primary and secondary connection strings for the namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param alias The Disaster Recovery configuration name.
+ * @param authorizationRuleName The authorization rule name.
+ * @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 the primary and secondary connection strings for the namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response listKeysWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ return listKeysWithResponseAsync(resourceGroupName, namespaceName, alias, authorizationRuleName, context)
+ .block();
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the result of the List Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the result of the List Alias(Disaster Recovery configuration) operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the response to the List Namespace operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listAuthorizationRulesNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listAuthorizationRulesNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the response to the List Namespace operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listAuthorizationRulesNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listAuthorizationRulesNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsImpl.java
new file mode 100644
index 0000000000000..5c4af1b922d84
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/DisasterRecoveryConfigsImpl.java
@@ -0,0 +1,328 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.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.servicebus.generated.fluent.DisasterRecoveryConfigsClient;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.AccessKeysInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.ArmDisasterRecoveryInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.CheckNameAvailabilityResultInner;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.SBAuthorizationRuleInner;
+import com.azure.resourcemanager.servicebus.generated.models.AccessKeys;
+import com.azure.resourcemanager.servicebus.generated.models.ArmDisasterRecovery;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailability;
+import com.azure.resourcemanager.servicebus.generated.models.CheckNameAvailabilityResult;
+import com.azure.resourcemanager.servicebus.generated.models.DisasterRecoveryConfigs;
+import com.azure.resourcemanager.servicebus.generated.models.FailoverProperties;
+import com.azure.resourcemanager.servicebus.generated.models.SBAuthorizationRule;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class DisasterRecoveryConfigsImpl implements DisasterRecoveryConfigs {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(DisasterRecoveryConfigsImpl.class);
+
+ private final DisasterRecoveryConfigsClient innerClient;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ public DisasterRecoveryConfigsImpl(
+ DisasterRecoveryConfigsClient innerClient,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public CheckNameAvailabilityResult checkNameAvailability(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters) {
+ CheckNameAvailabilityResultInner inner =
+ this.serviceClient().checkNameAvailability(resourceGroupName, namespaceName, parameters);
+ if (inner != null) {
+ return new CheckNameAvailabilityResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response checkNameAvailabilityWithResponse(
+ String resourceGroupName, String namespaceName, CheckNameAvailability parameters, Context context) {
+ Response inner =
+ this
+ .serviceClient()
+ .checkNameAvailabilityWithResponse(resourceGroupName, namespaceName, parameters, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new CheckNameAvailabilityResultImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public PagedIterable list(String resourceGroupName, String namespaceName) {
+ PagedIterable inner = this.serviceClient().list(resourceGroupName, namespaceName);
+ return Utils.mapPage(inner, inner1 -> new ArmDisasterRecoveryImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list(String resourceGroupName, String namespaceName, Context context) {
+ PagedIterable inner =
+ this.serviceClient().list(resourceGroupName, namespaceName, context);
+ return Utils.mapPage(inner, inner1 -> new ArmDisasterRecoveryImpl(inner1, this.manager()));
+ }
+
+ public void delete(String resourceGroupName, String namespaceName, String alias) {
+ this.serviceClient().delete(resourceGroupName, namespaceName, alias);
+ }
+
+ public Response deleteWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return this.serviceClient().deleteWithResponse(resourceGroupName, namespaceName, alias, context);
+ }
+
+ public ArmDisasterRecovery get(String resourceGroupName, String namespaceName, String alias) {
+ ArmDisasterRecoveryInner inner = this.serviceClient().get(resourceGroupName, namespaceName, alias);
+ if (inner != null) {
+ return new ArmDisasterRecoveryImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ Response inner =
+ this.serviceClient().getWithResponse(resourceGroupName, namespaceName, alias, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ArmDisasterRecoveryImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public void breakPairing(String resourceGroupName, String namespaceName, String alias) {
+ this.serviceClient().breakPairing(resourceGroupName, namespaceName, alias);
+ }
+
+ public Response breakPairingWithResponse(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ return this.serviceClient().breakPairingWithResponse(resourceGroupName, namespaceName, alias, context);
+ }
+
+ public void failOver(String resourceGroupName, String namespaceName, String alias) {
+ this.serviceClient().failOver(resourceGroupName, namespaceName, alias);
+ }
+
+ public Response failOverWithResponse(
+ String resourceGroupName, String namespaceName, String alias, FailoverProperties parameters, Context context) {
+ return this.serviceClient().failOverWithResponse(resourceGroupName, namespaceName, alias, parameters, context);
+ }
+
+ public PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias) {
+ PagedIterable inner =
+ this.serviceClient().listAuthorizationRules(resourceGroupName, namespaceName, alias);
+ return Utils.mapPage(inner, inner1 -> new SBAuthorizationRuleImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listAuthorizationRules(
+ String resourceGroupName, String namespaceName, String alias, Context context) {
+ PagedIterable inner =
+ this.serviceClient().listAuthorizationRules(resourceGroupName, namespaceName, alias, context);
+ return Utils.mapPage(inner, inner1 -> new SBAuthorizationRuleImpl(inner1, this.manager()));
+ }
+
+ public SBAuthorizationRule getAuthorizationRule(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ SBAuthorizationRuleInner inner =
+ this.serviceClient().getAuthorizationRule(resourceGroupName, namespaceName, alias, authorizationRuleName);
+ if (inner != null) {
+ return new SBAuthorizationRuleImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getAuthorizationRuleWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ Response inner =
+ this
+ .serviceClient()
+ .getAuthorizationRuleWithResponse(
+ resourceGroupName, namespaceName, alias, authorizationRuleName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new SBAuthorizationRuleImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public AccessKeys listKeys(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName) {
+ AccessKeysInner inner =
+ this.serviceClient().listKeys(resourceGroupName, namespaceName, alias, authorizationRuleName);
+ if (inner != null) {
+ return new AccessKeysImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response listKeysWithResponse(
+ String resourceGroupName, String namespaceName, String alias, String authorizationRuleName, Context context) {
+ Response inner =
+ this
+ .serviceClient()
+ .listKeysWithResponse(resourceGroupName, namespaceName, alias, authorizationRuleName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new AccessKeysImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public ArmDisasterRecovery getById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String namespaceName = Utils.getValueFromIdByName(id, "namespaces");
+ if (namespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'namespaces'.", id)));
+ }
+ String alias = Utils.getValueFromIdByName(id, "disasterRecoveryConfigs");
+ if (alias == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'disasterRecoveryConfigs'.",
+ id)));
+ }
+ return this.getWithResponse(resourceGroupName, namespaceName, alias, Context.NONE).getValue();
+ }
+
+ public Response getByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String namespaceName = Utils.getValueFromIdByName(id, "namespaces");
+ if (namespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'namespaces'.", id)));
+ }
+ String alias = Utils.getValueFromIdByName(id, "disasterRecoveryConfigs");
+ if (alias == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'disasterRecoveryConfigs'.",
+ id)));
+ }
+ return this.getWithResponse(resourceGroupName, namespaceName, alias, context);
+ }
+
+ public void deleteById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String namespaceName = Utils.getValueFromIdByName(id, "namespaces");
+ if (namespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'namespaces'.", id)));
+ }
+ String alias = Utils.getValueFromIdByName(id, "disasterRecoveryConfigs");
+ if (alias == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'disasterRecoveryConfigs'.",
+ id)));
+ }
+ this.deleteWithResponse(resourceGroupName, namespaceName, alias, Context.NONE).getValue();
+ }
+
+ public Response deleteByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String namespaceName = Utils.getValueFromIdByName(id, "namespaces");
+ if (namespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'namespaces'.", id)));
+ }
+ String alias = Utils.getValueFromIdByName(id, "disasterRecoveryConfigs");
+ if (alias == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'disasterRecoveryConfigs'.",
+ id)));
+ }
+ return this.deleteWithResponse(resourceGroupName, namespaceName, alias, context);
+ }
+
+ private DisasterRecoveryConfigsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+
+ public ArmDisasterRecoveryImpl define(String name) {
+ return new ArmDisasterRecoveryImpl(name, this.manager());
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsClientImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsClientImpl.java
new file mode 100644
index 0000000000000..78e24753c5577
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsClientImpl.java
@@ -0,0 +1,338 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.fluent.EventHubsClient;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.EventhubInner;
+import com.azure.resourcemanager.servicebus.generated.models.EventHubListResult;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in EventHubsClient. */
+public final class EventHubsClientImpl implements EventHubsClient {
+ private final ClientLogger logger = new ClientLogger(EventHubsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final EventHubsService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceBusManagementClientImpl client;
+
+ /**
+ * Initializes an instance of EventHubsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ EventHubsClientImpl(ServiceBusManagementClientImpl client) {
+ this.service =
+ RestProxy.create(EventHubsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceBusManagementClientEventHubs to be used by the proxy service
+ * to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceBusManagement")
+ private interface EventHubsService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/eventhubs")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByNamespace(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByNamespaceNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByNamespaceSinglePageAsync(
+ String resourceGroupName, String namespaceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listByNamespace(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByNamespaceSinglePageAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByNamespace(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByNamespaceAsync(String resourceGroupName, String namespaceName) {
+ return new PagedFlux<>(
+ () -> listByNamespaceSinglePageAsync(resourceGroupName, namespaceName),
+ nextLink -> listByNamespaceNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByNamespaceAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedFlux<>(
+ () -> listByNamespaceSinglePageAsync(resourceGroupName, namespaceName, context),
+ nextLink -> listByNamespaceNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByNamespace(String resourceGroupName, String namespaceName) {
+ return new PagedIterable<>(listByNamespaceAsync(resourceGroupName, namespaceName));
+ }
+
+ /**
+ * Gets all the Event Hubs in a service bus Namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all the Event Hubs in a service bus Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByNamespace(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedIterable<>(listByNamespaceAsync(resourceGroupName, namespaceName, context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the result of the List EventHubs operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByNamespaceNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.listByNamespaceNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @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 the result of the List EventHubs operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByNamespaceNextSinglePageAsync(String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByNamespaceNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsImpl.java
new file mode 100644
index 0000000000000..18afe269f811d
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventHubsImpl.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.servicebus.generated.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicebus.generated.fluent.EventHubsClient;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.EventhubInner;
+import com.azure.resourcemanager.servicebus.generated.models.EventHubs;
+import com.azure.resourcemanager.servicebus.generated.models.Eventhub;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class EventHubsImpl implements EventHubs {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(EventHubsImpl.class);
+
+ private final EventHubsClient innerClient;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ public EventHubsImpl(
+ EventHubsClient innerClient, com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public PagedIterable listByNamespace(String resourceGroupName, String namespaceName) {
+ PagedIterable inner = this.serviceClient().listByNamespace(resourceGroupName, namespaceName);
+ return Utils.mapPage(inner, inner1 -> new EventhubImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listByNamespace(String resourceGroupName, String namespaceName, Context context) {
+ PagedIterable inner =
+ this.serviceClient().listByNamespace(resourceGroupName, namespaceName, context);
+ return Utils.mapPage(inner, inner1 -> new EventhubImpl(inner1, this.manager()));
+ }
+
+ private EventHubsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventhubImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventhubImpl.java
new file mode 100644
index 0000000000000..b65c8738a4717
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/EventhubImpl.java
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.resourcemanager.servicebus.generated.fluent.models.EventhubInner;
+import com.azure.resourcemanager.servicebus.generated.models.CaptureDescription;
+import com.azure.resourcemanager.servicebus.generated.models.EntityStatus;
+import com.azure.resourcemanager.servicebus.generated.models.Eventhub;
+import java.time.OffsetDateTime;
+import java.util.Collections;
+import java.util.List;
+
+public final class EventhubImpl implements Eventhub {
+ private EventhubInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ EventhubImpl(
+ EventhubInner innerObject, com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public List partitionIds() {
+ List inner = this.innerModel().partitionIds();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public OffsetDateTime createdAt() {
+ return this.innerModel().createdAt();
+ }
+
+ public OffsetDateTime updatedAt() {
+ return this.innerModel().updatedAt();
+ }
+
+ public Long messageRetentionInDays() {
+ return this.innerModel().messageRetentionInDays();
+ }
+
+ public Long partitionCount() {
+ return this.innerModel().partitionCount();
+ }
+
+ public EntityStatus status() {
+ return this.innerModel().status();
+ }
+
+ public CaptureDescription captureDescription() {
+ return this.innerModel().captureDescription();
+ }
+
+ public EventhubInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/IpFilterRuleImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/IpFilterRuleImpl.java
new file mode 100644
index 0000000000000..b2571212c6449
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/IpFilterRuleImpl.java
@@ -0,0 +1,159 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.IpFilterRuleInner;
+import com.azure.resourcemanager.servicebus.generated.models.IpAction;
+import com.azure.resourcemanager.servicebus.generated.models.IpFilterRule;
+
+public final class IpFilterRuleImpl implements IpFilterRule, IpFilterRule.Definition, IpFilterRule.Update {
+ private IpFilterRuleInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String ipMask() {
+ return this.innerModel().ipMask();
+ }
+
+ public IpAction action() {
+ return this.innerModel().action();
+ }
+
+ public String filterName() {
+ return this.innerModel().filterName();
+ }
+
+ public IpFilterRuleInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String namespaceName;
+
+ private String ipFilterRuleName;
+
+ public IpFilterRuleImpl withExistingNamespace(String resourceGroupName, String namespaceName) {
+ this.resourceGroupName = resourceGroupName;
+ this.namespaceName = namespaceName;
+ return this;
+ }
+
+ public IpFilterRule create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .createOrUpdateIpFilterRuleWithResponse(
+ resourceGroupName, namespaceName, ipFilterRuleName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public IpFilterRule create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .createOrUpdateIpFilterRuleWithResponse(
+ resourceGroupName, namespaceName, ipFilterRuleName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ IpFilterRuleImpl(String name, com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = new IpFilterRuleInner();
+ this.serviceManager = serviceManager;
+ this.ipFilterRuleName = name;
+ }
+
+ public IpFilterRuleImpl update() {
+ return this;
+ }
+
+ public IpFilterRule apply() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .createOrUpdateIpFilterRuleWithResponse(
+ resourceGroupName, namespaceName, ipFilterRuleName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public IpFilterRule apply(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .createOrUpdateIpFilterRuleWithResponse(
+ resourceGroupName, namespaceName, ipFilterRuleName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ IpFilterRuleImpl(
+ IpFilterRuleInner innerObject,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+ this.namespaceName = Utils.getValueFromIdByName(innerObject.id(), "namespaces");
+ this.ipFilterRuleName = Utils.getValueFromIdByName(innerObject.id(), "ipfilterrules");
+ }
+
+ public IpFilterRule refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .getIpFilterRuleWithResponse(resourceGroupName, namespaceName, ipFilterRuleName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public IpFilterRule refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNamespaces()
+ .getIpFilterRuleWithResponse(resourceGroupName, namespaceName, ipFilterRuleName, context)
+ .getValue();
+ return this;
+ }
+
+ public IpFilterRuleImpl withIpMask(String ipMask) {
+ this.innerModel().withIpMask(ipMask);
+ return this;
+ }
+
+ public IpFilterRuleImpl withAction(IpAction action) {
+ this.innerModel().withAction(action);
+ return this;
+ }
+
+ public IpFilterRuleImpl withFilterName(String filterName) {
+ this.innerModel().withFilterName(filterName);
+ return this;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigPropertiesImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigPropertiesImpl.java
new file mode 100644
index 0000000000000..dd1e163e34798
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigPropertiesImpl.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.servicebus.generated.implementation;
+
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.MigrationConfigPropertiesInner;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigProperties;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigurationName;
+
+public final class MigrationConfigPropertiesImpl
+ implements MigrationConfigProperties, MigrationConfigProperties.Definition {
+ private MigrationConfigPropertiesInner innerObject;
+
+ private final com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager;
+
+ MigrationConfigPropertiesImpl(
+ MigrationConfigPropertiesInner innerObject,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public Long pendingReplicationOperationsCount() {
+ return this.innerModel().pendingReplicationOperationsCount();
+ }
+
+ public String targetNamespace() {
+ return this.innerModel().targetNamespace();
+ }
+
+ public String postMigrationName() {
+ return this.innerModel().postMigrationName();
+ }
+
+ public String migrationState() {
+ return this.innerModel().migrationState();
+ }
+
+ public MigrationConfigPropertiesInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicebus.generated.ServiceBusManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String namespaceName;
+
+ private MigrationConfigurationName configName;
+
+ public MigrationConfigPropertiesImpl withExistingNamespace(String resourceGroupName, String namespaceName) {
+ this.resourceGroupName = resourceGroupName;
+ this.namespaceName = namespaceName;
+ return this;
+ }
+
+ public MigrationConfigProperties create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getMigrationConfigs()
+ .createAndStartMigration(resourceGroupName, namespaceName, configName, this.innerModel(), Context.NONE);
+ return this;
+ }
+
+ public MigrationConfigProperties create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getMigrationConfigs()
+ .createAndStartMigration(resourceGroupName, namespaceName, configName, this.innerModel(), context);
+ return this;
+ }
+
+ MigrationConfigPropertiesImpl(
+ MigrationConfigurationName name,
+ com.azure.resourcemanager.servicebus.generated.ServiceBusManager serviceManager) {
+ this.innerObject = new MigrationConfigPropertiesInner();
+ this.serviceManager = serviceManager;
+ this.configName = name;
+ }
+
+ public MigrationConfigProperties refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getMigrationConfigs()
+ .getWithResponse(resourceGroupName, namespaceName, configName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public MigrationConfigProperties refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getMigrationConfigs()
+ .getWithResponse(resourceGroupName, namespaceName, configName, context)
+ .getValue();
+ return this;
+ }
+
+ public void completeMigration() {
+ serviceManager.migrationConfigs().completeMigration(resourceGroupName, namespaceName, configName);
+ }
+
+ public Response completeMigrationWithResponse(Context context) {
+ return serviceManager
+ .migrationConfigs()
+ .completeMigrationWithResponse(resourceGroupName, namespaceName, configName, context);
+ }
+
+ public void revert() {
+ serviceManager.migrationConfigs().revert(resourceGroupName, namespaceName, configName);
+ }
+
+ public Response revertWithResponse(Context context) {
+ return serviceManager
+ .migrationConfigs()
+ .revertWithResponse(resourceGroupName, namespaceName, configName, context);
+ }
+
+ public MigrationConfigPropertiesImpl withTargetNamespace(String targetNamespace) {
+ this.innerModel().withTargetNamespace(targetNamespace);
+ return this;
+ }
+
+ public MigrationConfigPropertiesImpl withPostMigrationName(String postMigrationName) {
+ this.innerModel().withPostMigrationName(postMigrationName);
+ return this;
+ }
+}
diff --git a/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigsClientImpl.java b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigsClientImpl.java
new file mode 100644
index 0000000000000..47b4327edcff6
--- /dev/null
+++ b/sdk/servicebus/azure-resourcemanager-servicebus-generated/src/main/java/com/azure/resourcemanager/servicebus/generated/implementation/MigrationConfigsClientImpl.java
@@ -0,0 +1,1399 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicebus.generated.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Post;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.servicebus.generated.fluent.MigrationConfigsClient;
+import com.azure.resourcemanager.servicebus.generated.fluent.models.MigrationConfigPropertiesInner;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigListResult;
+import com.azure.resourcemanager.servicebus.generated.models.MigrationConfigurationName;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in MigrationConfigsClient. */
+public final class MigrationConfigsClientImpl implements MigrationConfigsClient {
+ private final ClientLogger logger = new ClientLogger(MigrationConfigsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final MigrationConfigsService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceBusManagementClientImpl client;
+
+ /**
+ * Initializes an instance of MigrationConfigsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ MigrationConfigsClientImpl(ServiceBusManagementClientImpl client) {
+ this.service =
+ RestProxy.create(MigrationConfigsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceBusManagementClientMigrationConfigs to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceBusManagement")
+ private interface MigrationConfigsService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations/{configName}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> createAndStartMigration(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("configName") MigrationConfigurationName configName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @BodyParam("application/json") MigrationConfigPropertiesInner parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations/{configName}")
+ @ExpectedResponses({200, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("configName") MigrationConfigurationName configName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations/{configName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("configName") MigrationConfigurationName configName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> completeMigration(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("configName") MigrationConfigurationName configName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus"
+ + "/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> revert(
+ @HostParam("$host") String endpoint,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("namespaceName") String namespaceName,
+ @PathParam("configName") MigrationConfigurationName configName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String namespaceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String namespaceName) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, namespaceName), nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, namespaceName, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String namespaceName) {
+ return new PagedIterable<>(listAsync(resourceGroupName, namespaceName));
+ }
+
+ /**
+ * Gets all migrationConfigurations.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @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 all migrationConfigurations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(
+ String resourceGroupName, String namespaceName, Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, namespaceName, context));
+ }
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration Configuration.
+ * @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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createAndStartMigrationWithResponseAsync(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (configName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter configName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .createAndStartMigration(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ configName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration Configuration.
+ * @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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createAndStartMigrationWithResponseAsync(
+ String resourceGroupName,
+ String namespaceName,
+ MigrationConfigurationName configName,
+ MigrationConfigPropertiesInner parameters,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (namespaceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter namespaceName is required and cannot be null."));
+ }
+ if (configName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter configName is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (parameters == null) {
+ return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+ } else {
+ parameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .createAndStartMigration(
+ this.client.getEndpoint(),
+ resourceGroupName,
+ namespaceName,
+ configName,
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ parameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Creates Migration configuration and starts migration of entities from Standard to Premium namespace.
+ *
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
+ * @param namespaceName The namespace name.
+ * @param configName The configuration name. Should always be "$default".
+ * @param parameters Parameters required to create Migration Configuration.
+ * @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 single item in List or Get Migration Config operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PollerFlux