diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/CHANGELOG.md b/sdk/eventgrid/azure-resourcemanager-eventgrid/CHANGELOG.md
index 3d5228d69c042..20833462ca090 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/CHANGELOG.md
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/CHANGELOG.md
@@ -1,7 +1,320 @@
# Release History
-## 1.1.0-beta.1 (Unreleased)
+## 1.1.0-beta.1 (2021-06-21)
+- Azure Resource Manager EventGrid client library for Java. This package contains Microsoft Azure SDK for EventGrid Management SDK. Azure EventGrid Management Client. Package tag package-2021-06-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+### New Feature
+
+* `models.ExtensionTopic` was added
+
+* `models.PartnerNamespaces` was added
+
+* `models.SystemTopic` was added
+
+* `models.StringNotBeginsWithAdvancedFilter` was added
+
+* `models.EventSubscriptionIdentity` was added
+
+* `models.PartnerNamespaceSharedAccessKeys` was added
+
+* `models.EventChannel` was added
+
+* `models.Sku` was added
+
+* `models.PartnerNamespace` was added
+
+* `models.NumberInRangeAdvancedFilter` was added
+
+* `models.DeadLetterWithResourceIdentity` was added
+
+* `models.IsNotNullAdvancedFilter` was added
+
+* `models.PartnerRegistration$UpdateStages` was added
+
+* `models.PartnerRegistration$Update` was added
+
+* `models.EventChannel$Definition` was added
+
+* `models.UserIdentityProperties` was added
+
+* `models.SystemTopic$Definition` was added
+
+* `models.EventChannels` was added
+
+* `models.EventChannelDestination` was added
+
+* `models.IsNullOrUndefinedAdvancedFilter` was added
+
+* `models.PartnerTopicUpdateParameters` was added
+
+* `models.ResourceSku` was added
+
+* `models.ResourceKind` was added
+
+* `models.PartnerRegistration$DefinitionStages` was added
+
+* `models.EventChannelProvisioningState` was added
+
+* `models.NumberNotInRangeAdvancedFilter` was added
+
+* `models.PartnerTopicEventSubscriptions` was added
+
+* `models.PartnerNamespace$Update` was added
+
+* `models.EventChannel$DefinitionStages` was added
+
+* `models.IdentityInfo` was added
+
+* `models.EventChannelSource` was added
+
+* `models.PartnerTopicReadinessState` was added
+
+* `models.PartnerNamespacesListResult` was added
+
+* `models.SystemTopic$UpdateStages` was added
+
+* `models.DeliveryAttributeListResult` was added
+
+* `models.DeliveryAttributeMapping` was added
+
+* `models.PartnerRegistration$Definition` was added
+
+* `models.StringNotEndsWithAdvancedFilter` was added
+
+* `models.EventChannel$Update` was added
+
+* `models.PartnerTopicActivationState` was added
+
+* `models.SystemTopicUpdateParameters` was added
+
+* `models.PartnerRegistrationProvisioningState` was added
+
+* `models.DeliveryAttributeMappingType` was added
+
+* `models.PartnerNamespaceUpdateParameters` was added
+
+* `models.IdentityType` was added
+
+* `models.StaticDeliveryAttributeMapping` was added
+
+* `models.PartnerTopics` was added
+
+* `models.DeliveryWithResourceIdentity` was added
+
+* `models.TopicTypePropertiesSupportedScopesForSourceItem` was added
+
+* `models.PartnerRegistrationsListResult` was added
+
+* `models.PartnerRegistrationUpdateParameters` was added
+
+* `models.DynamicDeliveryAttributeMapping` was added
+
+* `models.ExtensionTopics` was added
+
+* `models.EventChannelsListResult` was added
+
+* `models.PartnerRegistration` was added
+
+* `models.SystemTopicsListResult` was added
+
+* `models.PartnerRegistrationVisibilityState` was added
+
+* `models.EventSubscriptionIdentityType` was added
+
+* `models.PartnerNamespace$DefinitionStages` was added
+
+* `models.StringNotContainsAdvancedFilter` was added
+
+* `models.SystemTopic$Update` was added
+
+* `models.EventChannelFilter` was added
+
+* `models.SystemTopic$DefinitionStages` was added
+
+* `models.PartnerNamespaceProvisioningState` was added
+
+* `models.PartnerTopicProvisioningState` was added
+
+* `models.PartnerTopicsListResult` was added
+
+* `models.EventChannel$UpdateStages` was added
+
+* `models.PartnerTopic` was added
+
+* `models.SystemTopics` was added
+
+* `models.ExtendedLocation` was added
+
+* `models.PartnerNamespace$Definition` was added
+
+* `models.PartnerRegistrations` was added
+
+* `models.PartnerNamespaceRegenerateKeyRequest` was added
+
+* `models.PartnerNamespace$UpdateStages` was added
+
+* `models.SystemTopicEventSubscriptions` was added
+
+#### `models.Topic` was modified
+
+* `disableLocalAuth()` was added
+* `kind()` was added
+* `identity()` was added
+* `extendedLocation()` was added
+* `sku()` was added
+
+#### `models.EventSubscriptionFilter` was modified
+
+* `withEnableAdvancedFilteringOnArrays(java.lang.Boolean)` was added
+* `enableAdvancedFilteringOnArrays()` was added
+
+#### `models.WebhookEventSubscriptionDestination` was modified
+
+* `withDeliveryAttributeMappings(java.util.List)` was added
+* `deliveryAttributeMappings()` was added
+
+#### `models.StorageQueueEventSubscriptionDestination` was modified
+
+* `queueMessageTimeToLiveInSeconds()` was added
+* `withQueueMessageTimeToLiveInSeconds(java.lang.Long)` was added
+
+#### `models.EventSubscription$Definition` was modified
+
+* `withDeliveryWithResourceIdentity(models.DeliveryWithResourceIdentity)` was added
+* `withDeadLetterWithResourceIdentity(models.DeadLetterWithResourceIdentity)` was added
+
+#### `models.ServiceBusQueueEventSubscriptionDestination` was modified
+
+* `deliveryAttributeMappings()` was added
+* `withDeliveryAttributeMappings(java.util.List)` was added
+
+#### `models.TopicUpdateParameters` was modified
+
+* `withIdentity(models.IdentityInfo)` was added
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `identity()` was added
+* `withSku(models.ResourceSku)` was added
+* `disableLocalAuth()` was added
+* `sku()` was added
+
+#### `models.Domain$Update` was modified
+
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `withIdentity(models.IdentityInfo)` was added
+* `withSku(models.ResourceSku)` was added
+* `withAutoDeleteTopicWithLastSubscription(java.lang.Boolean)` was added
+* `withAutoCreateTopicWithFirstSubscription(java.lang.Boolean)` was added
+
+#### `models.Topic$Definition` was modified
+
+* `withExtendedLocation(models.ExtendedLocation)` was added
+* `withKind(models.ResourceKind)` was added
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `withIdentity(models.IdentityInfo)` was added
+* `withSku(models.ResourceSku)` was added
+
+#### `models.ServiceBusTopicEventSubscriptionDestination` was modified
+
+* `deliveryAttributeMappings()` was added
+* `withDeliveryAttributeMappings(java.util.List)` was added
+
+#### `models.DomainUpdateParameters` was modified
+
+* `autoDeleteTopicWithLastSubscription()` was added
+* `identity()` was added
+* `sku()` was added
+* `withAutoCreateTopicWithFirstSubscription(java.lang.Boolean)` was added
+* `withAutoDeleteTopicWithLastSubscription(java.lang.Boolean)` was added
+* `withSku(models.ResourceSku)` was added
+* `withIdentity(models.IdentityInfo)` was added
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `autoCreateTopicWithFirstSubscription()` was added
+* `disableLocalAuth()` was added
+
+#### `models.Topic$Update` was modified
+
+* `withIdentity(models.IdentityInfo)` was added
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `withSku(models.ResourceSku)` was added
+
+#### `models.Operation` was modified
+
+* `isDataAction()` was added
+
+#### `models.EventSubscription` was modified
+
+* `deliveryWithResourceIdentity()` was added
+* `getDeliveryAttributesWithResponse(com.azure.core.util.Context)` was added
+* `deadLetterWithResourceIdentity()` was added
+* `getDeliveryAttributes()` was added
+
+#### `models.Domain` was modified
+
+* `disableLocalAuth()` was added
+* `autoCreateTopicWithFirstSubscription()` was added
+* `identity()` was added
+* `sku()` was added
+* `autoDeleteTopicWithLastSubscription()` was added
+
+#### `models.AzureFunctionEventSubscriptionDestination` was modified
+
+* `withDeliveryAttributeMappings(java.util.List)` was added
+* `deliveryAttributeMappings()` was added
+
+#### `models.EventSubscription$Update` was modified
+
+* `withDeadLetterWithResourceIdentity(models.DeadLetterWithResourceIdentity)` was added
+* `withDeliveryWithResourceIdentity(models.DeliveryWithResourceIdentity)` was added
+
+#### `models.HybridConnectionEventSubscriptionDestination` was modified
+
+* `deliveryAttributeMappings()` was added
+* `withDeliveryAttributeMappings(java.util.List)` was added
+
+#### `models.TopicTypeInfo` was modified
+
+* `supportedScopesForSource()` was added
+
+#### `models.EventHubEventSubscriptionDestination` was modified
+
+* `deliveryAttributeMappings()` was added
+* `withDeliveryAttributeMappings(java.util.List)` was added
+
+#### `models.EventSubscriptions` was modified
+
+* `getDeliveryAttributes(java.lang.String,java.lang.String)` was added
+* `getDeliveryAttributesWithResponse(java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+
+#### `EventGridManager` was modified
+
+* `partnerTopicEventSubscriptions()` was added
+* `systemTopics()` was added
+* `partnerNamespaces()` was added
+* `partnerRegistrations()` was added
+* `eventChannels()` was added
+* `systemTopicEventSubscriptions()` was added
+* `partnerTopics()` was added
+* `extensionTopics()` was added
+
+#### `models.Domain$Definition` was modified
+
+* `withSku(models.ResourceSku)` was added
+* `withAutoDeleteTopicWithLastSubscription(java.lang.Boolean)` was added
+* `withDisableLocalAuth(java.lang.Boolean)` was added
+* `withAutoCreateTopicWithFirstSubscription(java.lang.Boolean)` was added
+* `withIdentity(models.IdentityInfo)` was added
+
+#### `EventGridManager$Configurable` was modified
+
+* `withScope(java.lang.String)` was added
+
+#### `models.EventSubscriptionUpdateParameters` was modified
+
+* `withDeadLetterWithResourceIdentity(models.DeadLetterWithResourceIdentity)` was added
+* `deadLetterWithResourceIdentity()` was added
+* `deliveryWithResourceIdentity()` was added
+* `withDeliveryWithResourceIdentity(models.DeliveryWithResourceIdentity)` was added
## 1.0.0 (2021-04-09)
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/README.md b/sdk/eventgrid/azure-resourcemanager-eventgrid/README.md
index fe6f2a5a4af41..338cfae3bd23b 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/README.md
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/README.md
@@ -2,7 +2,7 @@
Azure Resource Manager EventGrid client library for Java.
-This package contains Microsoft Azure SDK for EventGrid Management SDK. Azure EventGrid Management Client. Package tag package-2020-06. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+This package contains Microsoft Azure SDK for EventGrid Management SDK. Azure EventGrid Management Client. Package tag package-2021-06-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
@@ -32,7 +32,7 @@ Various documentation is available to help you get started
com.azure.resourcemanager
azure-resourcemanager-eventgrid
- 1.0.0
+ 1.1.0-beta.1
```
[//]: # ({x-version-update-end})
@@ -74,6 +74,8 @@ See [API design][design] for general introduction on design and key concepts on
## Examples
+
+
## Troubleshooting
## Next steps
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/pom.xml b/sdk/eventgrid/azure-resourcemanager-eventgrid/pom.xml
index 790929709e3ac..7ebff73ea30f9 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/pom.xml
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/pom.xml
@@ -1,67 +1,88 @@
- 4.0.0
-
- com.azure
- azure-client-sdk-parent
- 1.7.0
- ../../parents/azure-client-sdk-parent
-
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
- com.azure.resourcemanager
- azure-resourcemanager-eventgrid
- 1.1.0-beta.1
- jar
+ com.azure.resourcemanager
+ azure-resourcemanager-eventgrid
+ 1.1.0-beta.1
+ jar
- Microsoft Azure SDK for EventGrid Management
- This package contains Microsoft Azure SDK for EventGrid Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Azure EventGrid Management Client. Package tag package-2020-06.
- https://github.com/Azure/azure-sdk-for-java
+ Microsoft Azure SDK for EventGrid Management
+ This package contains Microsoft Azure SDK for EventGrid Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Azure EventGrid Management Client. Package tag package-2021-06-preview.
+ https://github.com/Azure/azure-sdk-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
-
- https://github.com/Azure/azure-sdk-for-java
- scm:git:git@github.com:Azure/azure-sdk-for-java.git
- scm:git:git@github.com:Azure/azure-sdk-for-java.git
- HEAD
-
-
-
- microsoft
- Microsoft
-
-
-
- UTF-8
-
-
-
-
- com.azure
- azure-core
- 1.17.0
-
-
- com.azure
- azure-core-management
- 1.3.0
-
-
-
-
-
- org.jacoco
- jacoco-maven-plugin
- 0.8.5
-
- true
-
-
-
-
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+
+
+
+
+ com.azure
+ azure-core
+ 1.17.0
+
+
+ com.azure
+ azure-core-management
+ 1.3.0
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.5
+
+ true
+
+
+
+ org.revapi
+ revapi-maven-plugin
+ 0.11.2
+
+ true
+
+
+
+ -
+
java.method.addedToInterface
+
+ -
+ true
+
.*
+ com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)*
+
+
+
+
+
+
+
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/EventGridManager.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/EventGridManager.java
index 90a7cc9cf8bb0..e7954e196a763 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/EventGridManager.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/EventGridManager.java
@@ -9,7 +9,6 @@
import com.azure.core.http.HttpPipeline;
import com.azure.core.http.HttpPipelineBuilder;
import com.azure.core.http.policy.AddDatePolicy;
-import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
import com.azure.core.http.policy.HttpLogOptions;
import com.azure.core.http.policy.HttpLoggingPolicy;
import com.azure.core.http.policy.HttpPipelinePolicy;
@@ -17,25 +16,42 @@
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.eventgrid.fluent.EventGridManagementClient;
import com.azure.resourcemanager.eventgrid.implementation.DomainTopicsImpl;
import com.azure.resourcemanager.eventgrid.implementation.DomainsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.EventChannelsImpl;
import com.azure.resourcemanager.eventgrid.implementation.EventGridManagementClientBuilder;
import com.azure.resourcemanager.eventgrid.implementation.EventSubscriptionsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.ExtensionTopicsImpl;
import com.azure.resourcemanager.eventgrid.implementation.OperationsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.PartnerNamespacesImpl;
+import com.azure.resourcemanager.eventgrid.implementation.PartnerRegistrationsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.PartnerTopicEventSubscriptionsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.PartnerTopicsImpl;
import com.azure.resourcemanager.eventgrid.implementation.PrivateEndpointConnectionsImpl;
import com.azure.resourcemanager.eventgrid.implementation.PrivateLinkResourcesImpl;
+import com.azure.resourcemanager.eventgrid.implementation.SystemTopicEventSubscriptionsImpl;
+import com.azure.resourcemanager.eventgrid.implementation.SystemTopicsImpl;
import com.azure.resourcemanager.eventgrid.implementation.TopicTypesImpl;
import com.azure.resourcemanager.eventgrid.implementation.TopicsImpl;
import com.azure.resourcemanager.eventgrid.models.DomainTopics;
import com.azure.resourcemanager.eventgrid.models.Domains;
+import com.azure.resourcemanager.eventgrid.models.EventChannels;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptions;
+import com.azure.resourcemanager.eventgrid.models.ExtensionTopics;
import com.azure.resourcemanager.eventgrid.models.Operations;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaces;
+import com.azure.resourcemanager.eventgrid.models.PartnerRegistrations;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicEventSubscriptions;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopics;
import com.azure.resourcemanager.eventgrid.models.PrivateEndpointConnections;
import com.azure.resourcemanager.eventgrid.models.PrivateLinkResources;
+import com.azure.resourcemanager.eventgrid.models.SystemTopicEventSubscriptions;
+import com.azure.resourcemanager.eventgrid.models.SystemTopics;
import com.azure.resourcemanager.eventgrid.models.TopicTypes;
import com.azure.resourcemanager.eventgrid.models.Topics;
import java.time.Duration;
@@ -50,16 +66,32 @@ public final class EventGridManager {
private DomainTopics domainTopics;
+ private EventChannels eventChannels;
+
private EventSubscriptions eventSubscriptions;
+ private SystemTopicEventSubscriptions systemTopicEventSubscriptions;
+
+ private PartnerTopicEventSubscriptions partnerTopicEventSubscriptions;
+
private Operations operations;
- private Topics topics;
+ private PartnerNamespaces partnerNamespaces;
+
+ private PartnerRegistrations partnerRegistrations;
+
+ private PartnerTopics partnerTopics;
private PrivateEndpointConnections privateEndpointConnections;
private PrivateLinkResources privateLinkResources;
+ private SystemTopics systemTopics;
+
+ private Topics topics;
+
+ private ExtensionTopics extensionTopics;
+
private TopicTypes topicTypes;
private final EventGridManagementClient clientObject;
@@ -105,6 +137,7 @@ public static final class Configurable {
private HttpClient httpClient;
private HttpLogOptions httpLogOptions;
private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
private RetryPolicy retryPolicy;
private Duration defaultPollInterval;
@@ -144,6 +177,17 @@ public Configurable withPolicy(HttpPipelinePolicy policy) {
return this;
}
+ /**
+ * Adds the scope to permission sets.
+ *
+ * @param scope the scope.
+ * @return the configurable object itself.
+ */
+ public Configurable withScope(String scope) {
+ this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+ return this;
+ }
+
/**
* Sets the retry policy to the HTTP pipeline.
*
@@ -186,7 +230,7 @@ public EventGridManager authenticate(TokenCredential credential, AzureProfile pr
.append("-")
.append("com.azure.resourcemanager.eventgrid")
.append("/")
- .append("1.0.0");
+ .append("1.1.0-beta.1");
if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
userAgentBuilder
.append(" (")
@@ -200,6 +244,9 @@ public EventGridManager authenticate(TokenCredential credential, AzureProfile pr
userAgentBuilder.append(" (auto-generated)");
}
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
if (retryPolicy == null) {
retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
}
@@ -209,10 +256,7 @@ public EventGridManager authenticate(TokenCredential credential, AzureProfile pr
HttpPolicyProviders.addBeforeRetryPolicies(policies);
policies.add(retryPolicy);
policies.add(new AddDatePolicy());
- policies
- .add(
- new BearerTokenAuthenticationPolicy(
- credential, profile.getEnvironment().getManagementEndpoint() + "/.default"));
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
policies.addAll(this.policies);
HttpPolicyProviders.addAfterRetryPolicies(policies);
policies.add(new HttpLoggingPolicy(httpLogOptions));
@@ -241,6 +285,14 @@ public DomainTopics domainTopics() {
return domainTopics;
}
+ /** @return Resource collection API of EventChannels. */
+ public EventChannels eventChannels() {
+ if (this.eventChannels == null) {
+ this.eventChannels = new EventChannelsImpl(clientObject.getEventChannels(), this);
+ }
+ return eventChannels;
+ }
+
/** @return Resource collection API of EventSubscriptions. */
public EventSubscriptions eventSubscriptions() {
if (this.eventSubscriptions == null) {
@@ -249,6 +301,24 @@ public EventSubscriptions eventSubscriptions() {
return eventSubscriptions;
}
+ /** @return Resource collection API of SystemTopicEventSubscriptions. */
+ public SystemTopicEventSubscriptions systemTopicEventSubscriptions() {
+ if (this.systemTopicEventSubscriptions == null) {
+ this.systemTopicEventSubscriptions =
+ new SystemTopicEventSubscriptionsImpl(clientObject.getSystemTopicEventSubscriptions(), this);
+ }
+ return systemTopicEventSubscriptions;
+ }
+
+ /** @return Resource collection API of PartnerTopicEventSubscriptions. */
+ public PartnerTopicEventSubscriptions partnerTopicEventSubscriptions() {
+ if (this.partnerTopicEventSubscriptions == null) {
+ this.partnerTopicEventSubscriptions =
+ new PartnerTopicEventSubscriptionsImpl(clientObject.getPartnerTopicEventSubscriptions(), this);
+ }
+ return partnerTopicEventSubscriptions;
+ }
+
/** @return Resource collection API of Operations. */
public Operations operations() {
if (this.operations == null) {
@@ -257,12 +327,28 @@ public Operations operations() {
return operations;
}
- /** @return Resource collection API of Topics. */
- public Topics topics() {
- if (this.topics == null) {
- this.topics = new TopicsImpl(clientObject.getTopics(), this);
+ /** @return Resource collection API of PartnerNamespaces. */
+ public PartnerNamespaces partnerNamespaces() {
+ if (this.partnerNamespaces == null) {
+ this.partnerNamespaces = new PartnerNamespacesImpl(clientObject.getPartnerNamespaces(), this);
}
- return topics;
+ return partnerNamespaces;
+ }
+
+ /** @return Resource collection API of PartnerRegistrations. */
+ public PartnerRegistrations partnerRegistrations() {
+ if (this.partnerRegistrations == null) {
+ this.partnerRegistrations = new PartnerRegistrationsImpl(clientObject.getPartnerRegistrations(), this);
+ }
+ return partnerRegistrations;
+ }
+
+ /** @return Resource collection API of PartnerTopics. */
+ public PartnerTopics partnerTopics() {
+ if (this.partnerTopics == null) {
+ this.partnerTopics = new PartnerTopicsImpl(clientObject.getPartnerTopics(), this);
+ }
+ return partnerTopics;
}
/** @return Resource collection API of PrivateEndpointConnections. */
@@ -282,6 +368,30 @@ public PrivateLinkResources privateLinkResources() {
return privateLinkResources;
}
+ /** @return Resource collection API of SystemTopics. */
+ public SystemTopics systemTopics() {
+ if (this.systemTopics == null) {
+ this.systemTopics = new SystemTopicsImpl(clientObject.getSystemTopics(), this);
+ }
+ return systemTopics;
+ }
+
+ /** @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 ExtensionTopics. */
+ public ExtensionTopics extensionTopics() {
+ if (this.extensionTopics == null) {
+ this.extensionTopics = new ExtensionTopicsImpl(clientObject.getExtensionTopics(), this);
+ }
+ return extensionTopics;
+ }
+
/** @return Resource collection API of TopicTypes. */
public TopicTypes topicTypes() {
if (this.topicTypes == null) {
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventChannelsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventChannelsClient.java
new file mode 100644
index 0000000000000..2bf14d42d1ad2
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventChannelsClient.java
@@ -0,0 +1,181 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.EventChannelInner;
+
+/** An instance of this class provides access to all the operations defined in EventChannelsClient. */
+public interface EventChannelsClient {
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventChannelInner get(String resourceGroupName, String partnerNamespaceName, String eventChannelName);
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context);
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventChannelInner createOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo);
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo,
+ Context context);
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerNamespaceName, String eventChannelName);
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName, Context context);
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerNamespaceName, String eventChannelName);
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName, Context context);
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPartnerNamespace(String resourceGroupName, String partnerNamespaceName);
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPartnerNamespace(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventGridManagementClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventGridManagementClient.java
index 20e684f70955b..6587e4e987fa3 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventGridManagementClient.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventGridManagementClient.java
@@ -59,6 +59,13 @@ public interface EventGridManagementClient {
*/
DomainTopicsClient getDomainTopics();
+ /**
+ * Gets the EventChannelsClient object to access its operations.
+ *
+ * @return the EventChannelsClient object.
+ */
+ EventChannelsClient getEventChannels();
+
/**
* Gets the EventSubscriptionsClient object to access its operations.
*
@@ -66,6 +73,20 @@ public interface EventGridManagementClient {
*/
EventSubscriptionsClient getEventSubscriptions();
+ /**
+ * Gets the SystemTopicEventSubscriptionsClient object to access its operations.
+ *
+ * @return the SystemTopicEventSubscriptionsClient object.
+ */
+ SystemTopicEventSubscriptionsClient getSystemTopicEventSubscriptions();
+
+ /**
+ * Gets the PartnerTopicEventSubscriptionsClient object to access its operations.
+ *
+ * @return the PartnerTopicEventSubscriptionsClient object.
+ */
+ PartnerTopicEventSubscriptionsClient getPartnerTopicEventSubscriptions();
+
/**
* Gets the OperationsClient object to access its operations.
*
@@ -74,11 +95,25 @@ public interface EventGridManagementClient {
OperationsClient getOperations();
/**
- * Gets the TopicsClient object to access its operations.
+ * Gets the PartnerNamespacesClient object to access its operations.
*
- * @return the TopicsClient object.
+ * @return the PartnerNamespacesClient object.
*/
- TopicsClient getTopics();
+ PartnerNamespacesClient getPartnerNamespaces();
+
+ /**
+ * Gets the PartnerRegistrationsClient object to access its operations.
+ *
+ * @return the PartnerRegistrationsClient object.
+ */
+ PartnerRegistrationsClient getPartnerRegistrations();
+
+ /**
+ * Gets the PartnerTopicsClient object to access its operations.
+ *
+ * @return the PartnerTopicsClient object.
+ */
+ PartnerTopicsClient getPartnerTopics();
/**
* Gets the PrivateEndpointConnectionsClient object to access its operations.
@@ -94,6 +129,27 @@ public interface EventGridManagementClient {
*/
PrivateLinkResourcesClient getPrivateLinkResources();
+ /**
+ * Gets the SystemTopicsClient object to access its operations.
+ *
+ * @return the SystemTopicsClient object.
+ */
+ SystemTopicsClient getSystemTopics();
+
+ /**
+ * Gets the TopicsClient object to access its operations.
+ *
+ * @return the TopicsClient object.
+ */
+ TopicsClient getTopics();
+
+ /**
+ * Gets the ExtensionTopicsClient object to access its operations.
+ *
+ * @return the ExtensionTopicsClient object.
+ */
+ ExtensionTopicsClient getExtensionTopics();
+
/**
* Gets the TopicTypesClient object to access its operations.
*
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventSubscriptionsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventSubscriptionsClient.java
index ea8f74e3a9865..08313ffe430b7 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventSubscriptionsClient.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/EventSubscriptionsClient.java
@@ -11,6 +11,7 @@
import com.azure.core.management.polling.PollResult;
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.eventgrid.fluent.models.DeliveryAttributeListResultInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionFullUrlInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionUpdateParameters;
@@ -745,4 +746,46 @@ PagedIterable listByDomainTopic(
@ServiceMethod(returns = ReturnType.COLLECTION)
PagedIterable listByDomainTopic(
String resourceGroupName, String domainName, String topicName, String filter, Integer top, Context context);
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event 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 all delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DeliveryAttributeListResultInner getDeliveryAttributes(String scope, String eventSubscriptionName);
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event 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 all delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getDeliveryAttributesWithResponse(
+ String scope, String eventSubscriptionName, Context context);
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/ExtensionTopicsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/ExtensionTopicsClient.java
new file mode 100644
index 0000000000000..49da41e827f0e
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/ExtensionTopicsClient.java
@@ -0,0 +1,49 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.ExtensionTopicInner;
+
+/** An instance of this class provides access to all the operations defined in ExtensionTopicsClient. */
+public interface ExtensionTopicsClient {
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure 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 the properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ExtensionTopicInner get(String scope);
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure 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 the properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String scope, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerNamespacesClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerNamespacesClient.java
new file mode 100644
index 0000000000000..94b0cb2c7899b
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerNamespacesClient.java
@@ -0,0 +1,369 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.PartnerNamespaceInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.PartnerNamespaceSharedAccessKeysInner;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceRegenerateKeyRequest;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in PartnerNamespacesClient. */
+public interface PartnerNamespacesClient {
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerNamespaceInner getByResourceGroup(String resourceGroupName, String partnerNamespaceName);
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String partnerNamespaceName, Context context);
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, PartnerNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo);
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, PartnerNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context);
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerNamespaceInner createOrUpdate(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo);
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerNamespaceInner createOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context);
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerNamespaceName);
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName, Context context);
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerNamespaceName);
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName, Context context);
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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)
+ SyncPoller, PartnerNamespaceInner> beginUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters);
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ SyncPoller, PartnerNamespaceInner> beginUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context);
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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)
+ PartnerNamespaceInner update(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters);
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ PartnerNamespaceInner update(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context);
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @throws com.azure.core.management.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 List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Integer top, Context context);
+
+ /**
+ * List all the partner namespaces under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's 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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * List all the partner namespaces under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(
+ String resourceGroupName, String filter, Integer top, Context context);
+
+ /**
+ * List the two keys used to publish to a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 shared access keys of the partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerNamespaceSharedAccessKeysInner listSharedAccessKeys(String resourceGroupName, String partnerNamespaceName);
+
+ /**
+ * List the two keys used to publish to a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 shared access keys of the partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listSharedAccessKeysWithResponse(
+ String resourceGroupName, String partnerNamespaceName, Context context);
+
+ /**
+ * Regenerate a shared access key for a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param regenerateKeyRequest Request body to regenerate key.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 shared access keys of the partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerNamespaceSharedAccessKeysInner regenerateKey(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceRegenerateKeyRequest regenerateKeyRequest);
+
+ /**
+ * Regenerate a shared access key for a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param regenerateKeyRequest Request body to regenerate key.
+ * @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 shared access keys of the partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response regenerateKeyWithResponse(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceRegenerateKeyRequest regenerateKeyRequest,
+ Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerRegistrationsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerRegistrationsClient.java
new file mode 100644
index 0000000000000..19f8295662507
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerRegistrationsClient.java
@@ -0,0 +1,204 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.PartnerRegistrationInner;
+import com.azure.resourcemanager.eventgrid.models.PartnerRegistrationUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in PartnerRegistrationsClient. */
+public interface PartnerRegistrationsClient {
+ /**
+ * Gets a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partner registration with the specified parameters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerRegistrationInner getByResourceGroup(String resourceGroupName, String partnerRegistrationName);
+
+ /**
+ * Gets a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @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 partner registration with the specified parameters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String partnerRegistrationName, Context context);
+
+ /**
+ * Creates a new partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @param partnerRegistrationInfo PartnerRegistration information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about a partner registration.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerRegistrationInner createOrUpdate(
+ String resourceGroupName, String partnerRegistrationName, PartnerRegistrationInner partnerRegistrationInfo);
+
+ /**
+ * Creates a new partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @param partnerRegistrationInfo PartnerRegistration information.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about a partner registration.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String partnerRegistrationName,
+ PartnerRegistrationInner partnerRegistrationInfo,
+ Context context);
+
+ /**
+ * Deletes a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerRegistrationName);
+
+ /**
+ * Deletes a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @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 partnerRegistrationName, Context context);
+
+ /**
+ * Updates a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @param partnerRegistrationUpdateParameters Partner registration update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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)
+ PartnerRegistrationInner update(
+ String resourceGroupName,
+ String partnerRegistrationName,
+ PartnerRegistrationUpdateParameters partnerRegistrationUpdateParameters);
+
+ /**
+ * Updates a partner registration with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerRegistrationName Name of the partner registration.
+ * @param partnerRegistrationUpdateParameters Partner registration update information.
+ * @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 updateWithResponse(
+ String resourceGroupName,
+ String partnerRegistrationName,
+ PartnerRegistrationUpdateParameters partnerRegistrationUpdateParameters,
+ Context context);
+
+ /**
+ * List all the partner registrations under an Azure subscription.
+ *
+ * @throws com.azure.core.management.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 List Partner Registrations operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * List all the partner registrations under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Registrations operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Integer top, Context context);
+
+ /**
+ * List all the partner registrations under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's 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 result of the List Partner Registrations operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * List all the partner registrations under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Registrations operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(
+ String resourceGroupName, String filter, Integer top, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicEventSubscriptionsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicEventSubscriptionsClient.java
new file mode 100644
index 0000000000000..153c03b1ddd41
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicEventSubscriptionsClient.java
@@ -0,0 +1,388 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.DeliveryAttributeListResultInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionFullUrlInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
+import com.azure.resourcemanager.eventgrid.models.EventSubscriptionUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in PartnerTopicEventSubscriptionsClient. */
+public interface PartnerTopicEventSubscriptionsClient {
+ /**
+ * Get an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names must be between
+ * 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner get(String resourceGroupName, String partnerTopicName, String eventSubscriptionName);
+
+ /**
+ * Get an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names must be between
+ * 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String partnerTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified parameters.
+ * Existing event subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo);
+
+ /**
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified parameters.
+ * Existing event subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo,
+ Context context);
+
+ /**
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified parameters.
+ * Existing event subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner createOrUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo);
+
+ /**
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified parameters.
+ * Existing event subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner createOrUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo,
+ Context context);
+
+ /**
+ * Delete an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerTopicName, String eventSubscriptionName);
+
+ /**
+ * Delete an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 partnerTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Delete an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerTopicName, String eventSubscriptionName);
+
+ /**
+ * Delete an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 partnerTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Update event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters);
+
+ /**
+ * Update event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginUpdate(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters,
+ Context context);
+
+ /**
+ * Update event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner update(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters);
+
+ /**
+ * Update event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner update(
+ String resourceGroupName,
+ String partnerTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters,
+ Context context);
+
+ /**
+ * Get the full endpoint URL for an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 full endpoint URL for an event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionFullUrlInner getFullUrl(
+ String resourceGroupName, String partnerTopicName, String eventSubscriptionName);
+
+ /**
+ * Get the full endpoint URL for an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 full endpoint URL for an event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getFullUrlWithResponse(
+ String resourceGroupName, String partnerTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * List event subscriptions that belong to a specific partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 List EventSubscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPartnerTopic(String resourceGroupName, String partnerTopicName);
+
+ /**
+ * List event subscriptions that belong to a specific partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List EventSubscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPartnerTopic(
+ String resourceGroupName, String partnerTopicName, String filter, Integer top, Context context);
+
+ /**
+ * Get all delivery attributes for an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 delivery attributes for an event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DeliveryAttributeListResultInner getDeliveryAttributes(
+ String resourceGroupName, String partnerTopicName, String eventSubscriptionName);
+
+ /**
+ * Get all delivery attributes for an event subscription of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 delivery attributes for an event subscription of a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getDeliveryAttributesWithResponse(
+ String resourceGroupName, String partnerTopicName, String eventSubscriptionName, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicsClient.java
new file mode 100644
index 0000000000000..5cfb018bf3dfa
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PartnerTopicsClient.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.eventgrid.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.eventgrid.fluent.models.PartnerTopicInner;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in PartnerTopicsClient. */
+public interface PartnerTopicsClient {
+ /**
+ * Get properties of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerTopicInner getByResourceGroup(String resourceGroupName, String partnerTopicName);
+
+ /**
+ * Get properties of a partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @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 a partner topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String partnerTopicName, Context context);
+
+ /**
+ * Delete existing partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerTopicName);
+
+ /**
+ * Delete existing partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @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 partnerTopicName, Context context);
+
+ /**
+ * Delete existing partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 partnerTopicName);
+
+ /**
+ * Delete existing partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @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 partnerTopicName, Context context);
+
+ /**
+ * Asynchronously updates a partner topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param partnerTopicUpdateParameters PartnerTopic update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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)
+ PartnerTopicInner update(
+ String resourceGroupName, String partnerTopicName, PartnerTopicUpdateParameters partnerTopicUpdateParameters);
+
+ /**
+ * Asynchronously updates a partner topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @param partnerTopicUpdateParameters PartnerTopic update information.
+ * @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 updateWithResponse(
+ String resourceGroupName,
+ String partnerTopicName,
+ PartnerTopicUpdateParameters partnerTopicUpdateParameters,
+ Context context);
+
+ /**
+ * List all the partner topics under an Azure subscription.
+ *
+ * @throws com.azure.core.management.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 List Partner Topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * List all the partner topics under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Integer top, Context context);
+
+ /**
+ * List all the partner topics under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's 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 result of the List Partner Topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * List all the partner topics under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List Partner Topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(
+ String resourceGroupName, String filter, Integer top, Context context);
+
+ /**
+ * Activate a newly created partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid Partner Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerTopicInner activate(String resourceGroupName, String partnerTopicName);
+
+ /**
+ * Activate a newly created partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @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 eventGrid Partner Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response activateWithResponse(
+ String resourceGroupName, String partnerTopicName, Context context);
+
+ /**
+ * Deactivate specific partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid Partner Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PartnerTopicInner deactivate(String resourceGroupName, String partnerTopicName);
+
+ /**
+ * Deactivate specific partner topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerTopicName Name of the partner topic.
+ * @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 eventGrid Partner Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deactivateWithResponse(
+ String resourceGroupName, String partnerTopicName, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateEndpointConnectionsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateEndpointConnectionsClient.java
index 5290f5aca91ee..aba2d14a4d018 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateEndpointConnectionsClient.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateEndpointConnectionsClient.java
@@ -17,16 +17,18 @@
/** An instance of this class provides access to all the operations defined in PrivateEndpointConnectionsClient. */
public interface PrivateEndpointConnectionsClient {
/**
- * Get a specific private endpoint connection under a topic or domain.
+ * Get a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a specific private endpoint connection under a topic or domain.
+ * @return a specific private endpoint connection under a topic, domain, or partner namespace.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
PrivateEndpointConnectionInner get(
@@ -36,17 +38,19 @@ PrivateEndpointConnectionInner get(
String privateEndpointConnectionName);
/**
- * Get a specific private endpoint connection under a topic or domain.
+ * Get a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return a specific private endpoint connection under a topic or domain.
+ * @return a specific private endpoint connection under a topic, domain, or partner namespace.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
Response getWithResponse(
@@ -57,11 +61,13 @@ Response getWithResponse(
Context context);
/**
- * Update a specific private endpoint connection under a topic or domain.
+ * Update a specific private endpoint connection under a topic, domain or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param privateEndpointConnection The private endpoint connection object to update.
* @throws IllegalArgumentException thrown if parameters fail the validation.
@@ -78,11 +84,13 @@ SyncPoller, PrivateEndpointConnection
PrivateEndpointConnectionInner privateEndpointConnection);
/**
- * Update a specific private endpoint connection under a topic or domain.
+ * Update a specific private endpoint connection under a topic, domain or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param privateEndpointConnection The private endpoint connection object to update.
* @param context The context to associate with this operation.
@@ -101,11 +109,13 @@ SyncPoller, PrivateEndpointConnection
Context context);
/**
- * Update a specific private endpoint connection under a topic or domain.
+ * Update a specific private endpoint connection under a topic, domain or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param privateEndpointConnection The private endpoint connection object to update.
* @throws IllegalArgumentException thrown if parameters fail the validation.
@@ -122,11 +132,13 @@ PrivateEndpointConnectionInner update(
PrivateEndpointConnectionInner privateEndpointConnection);
/**
- * Update a specific private endpoint connection under a topic or domain.
+ * Update a specific private endpoint connection under a topic, domain or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param privateEndpointConnection The private endpoint connection object to update.
* @param context The context to associate with this operation.
@@ -145,11 +157,13 @@ PrivateEndpointConnectionInner update(
Context context);
/**
- * Delete a specific private endpoint connection under a topic or domain.
+ * Delete a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -164,11 +178,13 @@ SyncPoller, Void> beginDelete(
String privateEndpointConnectionName);
/**
- * Delete a specific private endpoint connection under a topic or domain.
+ * Delete a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
@@ -185,11 +201,13 @@ SyncPoller, Void> beginDelete(
Context context);
/**
- * Delete a specific private endpoint connection under a topic or domain.
+ * Delete a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -203,11 +221,13 @@ void delete(
String privateEndpointConnectionName);
/**
- * Delete a specific private endpoint connection under a topic or domain.
+ * Delete a specific private endpoint connection under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateEndpointConnectionName The name of the private endpoint connection connection.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
@@ -223,26 +243,30 @@ void delete(
Context context);
/**
- * Get all private endpoint connections under a topic or domain.
+ * Get all private endpoint connections under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * 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 private endpoint connections under a topic or domain.
+ * @return all private endpoint connections under a topic, domain, or partner namespace.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
PagedIterable listByResource(
String resourceGroupName, PrivateEndpointConnectionsParentType parentType, String parentName);
/**
- * Get all private endpoint connections under a topic or domain.
+ * Get all private endpoint connections under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
* 'name' property only and with limited number of OData operations. These operations are: the 'contains'
* function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
@@ -255,7 +279,7 @@ PagedIterable listByResource(
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return all private endpoint connections under a topic or domain.
+ * @return all private endpoint connections under a topic, domain, or partner namespace.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
PagedIterable listByResource(
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateLinkResourcesClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateLinkResourcesClient.java
index 4c4194990383b..981f54ced396b 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateLinkResourcesClient.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/PrivateLinkResourcesClient.java
@@ -17,8 +17,10 @@ public interface PrivateLinkResourcesClient {
* Get properties of a private link resource.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateLinkResourceName The name of private link resource.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
@@ -33,8 +35,10 @@ PrivateLinkResourceInner get(
* Get properties of a private link resource.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param privateLinkResourceName The name of private link resource.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
@@ -51,11 +55,13 @@ Response getWithResponse(
Context context);
/**
- * List all the private link resources under a topic or domain.
+ * List all the private link resources under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * 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.
@@ -66,11 +72,13 @@ PagedIterable listByResource(
String resourceGroupName, String parentType, String parentName);
/**
- * List all the private link resources under a topic or domain.
+ * List all the private link resources under a topic, domain, or partner namespace.
*
* @param resourceGroupName The name of the resource group within the user's subscription.
- * @param parentType The type of the parent resource. This can be either \'topics\' or \'domains\'.
- * @param parentName The name of the parent resource (namely, either, the topic name or domain name).
+ * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or
+ * \'partnerNamespaces\'.
+ * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or partner
+ * namespace name).
* @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
* 'name' property only and with limited number of OData operations. These operations are: the 'contains'
* function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicEventSubscriptionsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicEventSubscriptionsClient.java
new file mode 100644
index 0000000000000..d262c1711b10a
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicEventSubscriptionsClient.java
@@ -0,0 +1,388 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.DeliveryAttributeListResultInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionFullUrlInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
+import com.azure.resourcemanager.eventgrid.models.EventSubscriptionUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in SystemTopicEventSubscriptionsClient. */
+public interface SystemTopicEventSubscriptionsClient {
+ /**
+ * Get an event subscription.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner get(String resourceGroupName, String systemTopicName, String eventSubscriptionName);
+
+ /**
+ * Get an event subscription.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String systemTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Asynchronously creates or updates an event subscription with the specified parameters. Existing event
+ * subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo);
+
+ /**
+ * Asynchronously creates or updates an event subscription with the specified parameters. Existing event
+ * subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo,
+ Context context);
+
+ /**
+ * Asynchronously creates or updates an event subscription with the specified parameters. Existing event
+ * subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner createOrUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo);
+
+ /**
+ * Asynchronously creates or updates an event subscription with the specified parameters. Existing event
+ * subscriptions will be updated with this API.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner createOrUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionInner eventSubscriptionInfo,
+ Context context);
+
+ /**
+ * Delete an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 systemTopicName, String eventSubscriptionName);
+
+ /**
+ * Delete an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 systemTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Delete an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 systemTopicName, String eventSubscriptionName);
+
+ /**
+ * Delete an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 systemTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * Update event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters);
+
+ /**
+ * Update event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, EventSubscriptionInner> beginUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters,
+ Context context);
+
+ /**
+ * Update event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner update(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters);
+
+ /**
+ * Update event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
+ * @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 event Subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionInner update(
+ String resourceGroupName,
+ String systemTopicName,
+ String eventSubscriptionName,
+ EventSubscriptionUpdateParameters eventSubscriptionUpdateParameters,
+ Context context);
+
+ /**
+ * Get the full endpoint URL for an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 full endpoint URL for an event subscription of a system topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventSubscriptionFullUrlInner getFullUrl(
+ String resourceGroupName, String systemTopicName, String eventSubscriptionName);
+
+ /**
+ * Get the full endpoint URL for an event subscription of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 full endpoint URL for an event subscription of a system topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getFullUrlWithResponse(
+ String resourceGroupName, String systemTopicName, String eventSubscriptionName, Context context);
+
+ /**
+ * List event subscriptions that belong to a specific system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 List EventSubscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySystemTopic(String resourceGroupName, String systemTopicName);
+
+ /**
+ * List event subscriptions that belong to a specific system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List EventSubscriptions operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySystemTopic(
+ String resourceGroupName, String systemTopicName, String filter, Integer top, Context context);
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DeliveryAttributeListResultInner getDeliveryAttributes(
+ String resourceGroupName, String systemTopicName, String eventSubscriptionName);
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names must be
+ * between 3 and 100 characters in length and use alphanumeric letters only.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getDeliveryAttributesWithResponse(
+ String resourceGroupName, String systemTopicName, String eventSubscriptionName, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicsClient.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicsClient.java
new file mode 100644
index 0000000000000..bd32ce30c7f17
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/SystemTopicsClient.java
@@ -0,0 +1,291 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.models.SystemTopicInner;
+import com.azure.resourcemanager.eventgrid.models.SystemTopicUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in SystemTopicsClient. */
+public interface SystemTopicsClient {
+ /**
+ * Get properties of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 a system topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SystemTopicInner getByResourceGroup(String resourceGroupName, String systemTopicName);
+
+ /**
+ * Get properties of a system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @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 a system topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String systemTopicName, Context context);
+
+ /**
+ * Asynchronously creates a new system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicInfo System Topic information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SystemTopicInner> beginCreateOrUpdate(
+ String resourceGroupName, String systemTopicName, SystemTopicInner systemTopicInfo);
+
+ /**
+ * Asynchronously creates a new system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicInfo System Topic information.
+ * @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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SystemTopicInner> beginCreateOrUpdate(
+ String resourceGroupName, String systemTopicName, SystemTopicInner systemTopicInfo, Context context);
+
+ /**
+ * Asynchronously creates a new system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicInfo System Topic information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SystemTopicInner createOrUpdate(String resourceGroupName, String systemTopicName, SystemTopicInner systemTopicInfo);
+
+ /**
+ * Asynchronously creates a new system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicInfo System Topic information.
+ * @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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SystemTopicInner createOrUpdate(
+ String resourceGroupName, String systemTopicName, SystemTopicInner systemTopicInfo, Context context);
+
+ /**
+ * Delete existing system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 systemTopicName);
+
+ /**
+ * Delete existing system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @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 systemTopicName, Context context);
+
+ /**
+ * Delete existing system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 systemTopicName);
+
+ /**
+ * Delete existing system topic.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @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 systemTopicName, Context context);
+
+ /**
+ * Asynchronously updates a system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicUpdateParameters SystemTopic update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SystemTopicInner> beginUpdate(
+ String resourceGroupName, String systemTopicName, SystemTopicUpdateParameters systemTopicUpdateParameters);
+
+ /**
+ * Asynchronously updates a system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicUpdateParameters SystemTopic update information.
+ * @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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, SystemTopicInner> beginUpdate(
+ String resourceGroupName,
+ String systemTopicName,
+ SystemTopicUpdateParameters systemTopicUpdateParameters,
+ Context context);
+
+ /**
+ * Asynchronously updates a system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicUpdateParameters SystemTopic update information.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SystemTopicInner update(
+ String resourceGroupName, String systemTopicName, SystemTopicUpdateParameters systemTopicUpdateParameters);
+
+ /**
+ * Asynchronously updates a system topic with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param systemTopicName Name of the system topic.
+ * @param systemTopicUpdateParameters SystemTopic update information.
+ * @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 eventGrid System Topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SystemTopicInner update(
+ String resourceGroupName,
+ String systemTopicName,
+ SystemTopicUpdateParameters systemTopicUpdateParameters,
+ Context context);
+
+ /**
+ * List all the system topics under an Azure subscription.
+ *
+ * @throws com.azure.core.management.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 List System topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * List all the system topics under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List System topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Integer top, Context context);
+
+ /**
+ * List all the system topics under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's 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 result of the List System topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * List all the system topics under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 List System topics operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(
+ String resourceGroupName, String filter, Integer top, Context context);
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DeliveryAttributeListResultInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DeliveryAttributeListResultInner.java
new file mode 100644
index 0000000000000..d52a5c5c7a478
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DeliveryAttributeListResultInner.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.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.DeliveryAttributeMapping;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Result of the Get delivery attributes operation. */
+@Fluent
+public final class DeliveryAttributeListResultInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(DeliveryAttributeListResultInner.class);
+
+ /*
+ * A collection of DeliveryAttributeMapping
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /**
+ * Get the value property: A collection of DeliveryAttributeMapping.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: A collection of DeliveryAttributeMapping.
+ *
+ * @param value the value value to set.
+ * @return the DeliveryAttributeListResultInner object itself.
+ */
+ public DeliveryAttributeListResultInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DomainInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DomainInner.java
index a6789d7892ffa..08a6cc55f92ef 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DomainInner.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/DomainInner.java
@@ -10,10 +10,12 @@
import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.eventgrid.models.DomainProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.IdentityInfo;
import com.azure.resourcemanager.eventgrid.models.InboundIpRule;
import com.azure.resourcemanager.eventgrid.models.InputSchema;
import com.azure.resourcemanager.eventgrid.models.InputSchemaMapping;
import com.azure.resourcemanager.eventgrid.models.PublicNetworkAccess;
+import com.azure.resourcemanager.eventgrid.models.ResourceSku;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
@@ -26,7 +28,19 @@ public class DomainInner extends Resource {
@JsonIgnore private final ClientLogger logger = new ClientLogger(DomainInner.class);
/*
- * The system metadata relating to Domain resource.
+ * The Sku pricing tier for the Event Grid Domain resource.
+ */
+ @JsonProperty(value = "sku")
+ private ResourceSku sku;
+
+ /*
+ * Identity information for the Event Grid Domain resource.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityInfo identity;
+
+ /*
+ * The system metadata relating to the Event Grid Domain resource.
*/
@JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
private SystemData systemData;
@@ -38,20 +52,21 @@ public class DomainInner extends Resource {
private List privateEndpointConnections;
/*
- * Provisioning state of the domain.
+ * Provisioning state of the Event Grid Domain Resource.
*/
@JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
private DomainProvisioningState provisioningState;
/*
- * Endpoint for the domain.
+ * Endpoint for the Event Grid Domain Resource which is used for publishing
+ * the events.
*/
@JsonProperty(value = "properties.endpoint", access = JsonProperty.Access.WRITE_ONLY)
private String endpoint;
/*
* This determines the format that Event Grid should expect for incoming
- * events published to the domain.
+ * events published to the Event Grid Domain Resource.
*/
@JsonProperty(value = "properties.inputSchema")
private InputSchema inputSchema;
@@ -64,7 +79,7 @@ public class DomainInner extends Resource {
private InputSchemaMapping inputSchemaMapping;
/*
- * Metric resource id for the domain.
+ * Metric resource id for the Event Grid Domain Resource.
*/
@JsonProperty(value = "properties.metricResourceId", access = JsonProperty.Access.WRITE_ONLY)
private String metricResourceId;
@@ -86,8 +101,104 @@ public class DomainInner extends Resource {
@JsonProperty(value = "properties.inboundIpRules")
private List inboundIpRules;
+ /*
+ * This boolean is used to enable or disable local auth. Default value is
+ * false. When the property is set to true, only AAD token will be used to
+ * authenticate if user is allowed to publish to the domain.
+ */
+ @JsonProperty(value = "properties.disableLocalAuth")
+ private Boolean disableLocalAuth;
+
+ /*
+ * This Boolean is used to specify the creation mechanism for 'all' the
+ * Event Grid Domain Topics associated with this Event Grid Domain
+ * resource.
+ * In this context, creation of domain topic can be auto-managed (when
+ * true) or self-managed (when false). The default value for this property
+ * is true.
+ * When this property is null or set to true, Event Grid is responsible of
+ * automatically creating the domain topic when the first event
+ * subscription is
+ * created at the scope of the domain topic. If this property is set to
+ * false, then creating the first event subscription will require creating
+ * a domain topic
+ * by the user. The self-management mode can be used if the user wants full
+ * control of when the domain topic is created, while auto-managed mode
+ * provides the
+ * flexibility to perform less operations and manage fewer resources by the
+ * user. Also, note that in auto-managed creation mode, user is allowed to
+ * create the
+ * domain topic on demand if needed.
+ */
+ @JsonProperty(value = "properties.autoCreateTopicWithFirstSubscription")
+ private Boolean autoCreateTopicWithFirstSubscription;
+
+ /*
+ * This Boolean is used to specify the deletion mechanism for 'all' the
+ * Event Grid Domain Topics associated with this Event Grid Domain
+ * resource.
+ * In this context, deletion of domain topic can be auto-managed (when
+ * true) or self-managed (when false). The default value for this property
+ * is true.
+ * When this property is set to true, Event Grid is responsible of
+ * automatically deleting the domain topic when the last event subscription
+ * at the scope
+ * of the domain topic is deleted. If this property is set to false, then
+ * the user needs to manually delete the domain topic when it is no longer
+ * needed
+ * (e.g., when last event subscription is deleted and the resource needs to
+ * be cleaned up). The self-management mode can be used if the user wants
+ * full
+ * control of when the domain topic needs to be deleted, while auto-managed
+ * mode provides the flexibility to perform less operations and manage
+ * fewer
+ * resources by the user.
+ */
+ @JsonProperty(value = "properties.autoDeleteTopicWithLastSubscription")
+ private Boolean autoDeleteTopicWithLastSubscription;
+
+ /**
+ * Get the sku property: The Sku pricing tier for the Event Grid Domain resource.
+ *
+ * @return the sku value.
+ */
+ public ResourceSku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku property: The Sku pricing tier for the Event Grid Domain resource.
+ *
+ * @param sku the sku value to set.
+ * @return the DomainInner object itself.
+ */
+ public DomainInner withSku(ResourceSku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the identity property: Identity information for the Event Grid Domain resource.
+ *
+ * @return the identity value.
+ */
+ public IdentityInfo identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: Identity information for the Event Grid Domain resource.
+ *
+ * @param identity the identity value to set.
+ * @return the DomainInner object itself.
+ */
+ public DomainInner withIdentity(IdentityInfo identity) {
+ this.identity = identity;
+ return this;
+ }
+
/**
- * Get the systemData property: The system metadata relating to Domain resource.
+ * Get the systemData property: The system metadata relating to the Event Grid Domain resource.
*
* @return the systemData value.
*/
@@ -105,7 +216,7 @@ public List privateEndpointConnections() {
}
/**
- * Get the provisioningState property: Provisioning state of the domain.
+ * Get the provisioningState property: Provisioning state of the Event Grid Domain Resource.
*
* @return the provisioningState value.
*/
@@ -114,7 +225,7 @@ public DomainProvisioningState provisioningState() {
}
/**
- * Get the endpoint property: Endpoint for the domain.
+ * Get the endpoint property: Endpoint for the Event Grid Domain Resource which is used for publishing the events.
*
* @return the endpoint value.
*/
@@ -124,7 +235,7 @@ public String endpoint() {
/**
* Get the inputSchema property: This determines the format that Event Grid should expect for incoming events
- * published to the domain.
+ * published to the Event Grid Domain Resource.
*
* @return the inputSchema value.
*/
@@ -134,7 +245,7 @@ public InputSchema inputSchema() {
/**
* Set the inputSchema property: This determines the format that Event Grid should expect for incoming events
- * published to the domain.
+ * published to the Event Grid Domain Resource.
*
* @param inputSchema the inputSchema value to set.
* @return the DomainInner object itself.
@@ -167,7 +278,7 @@ public DomainInner withInputSchemaMapping(InputSchemaMapping inputSchemaMapping)
}
/**
- * Get the metricResourceId property: Metric resource id for the domain.
+ * Get the metricResourceId property: Metric resource id for the Event Grid Domain Resource.
*
* @return the metricResourceId value.
*/
@@ -221,6 +332,102 @@ public DomainInner withInboundIpRules(List inboundIpRules) {
return this;
}
+ /**
+ * Get the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the domain.
+ *
+ * @return the disableLocalAuth value.
+ */
+ public Boolean disableLocalAuth() {
+ return this.disableLocalAuth;
+ }
+
+ /**
+ * Set the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the domain.
+ *
+ * @param disableLocalAuth the disableLocalAuth value to set.
+ * @return the DomainInner object itself.
+ */
+ public DomainInner withDisableLocalAuth(Boolean disableLocalAuth) {
+ this.disableLocalAuth = disableLocalAuth;
+ return this;
+ }
+
+ /**
+ * Get the autoCreateTopicWithFirstSubscription property: This Boolean is used to specify the creation mechanism for
+ * 'all' the Event Grid Domain Topics associated with this Event Grid Domain resource. In this context, creation of
+ * domain topic can be auto-managed (when true) or self-managed (when false). The default value for this property is
+ * true. When this property is null or set to true, Event Grid is responsible of automatically creating the domain
+ * topic when the first event subscription is created at the scope of the domain topic. If this property is set to
+ * false, then creating the first event subscription will require creating a domain topic by the user. The
+ * self-management mode can be used if the user wants full control of when the domain topic is created, while
+ * auto-managed mode provides the flexibility to perform less operations and manage fewer resources by the user.
+ * Also, note that in auto-managed creation mode, user is allowed to create the domain topic on demand if needed.
+ *
+ * @return the autoCreateTopicWithFirstSubscription value.
+ */
+ public Boolean autoCreateTopicWithFirstSubscription() {
+ return this.autoCreateTopicWithFirstSubscription;
+ }
+
+ /**
+ * Set the autoCreateTopicWithFirstSubscription property: This Boolean is used to specify the creation mechanism for
+ * 'all' the Event Grid Domain Topics associated with this Event Grid Domain resource. In this context, creation of
+ * domain topic can be auto-managed (when true) or self-managed (when false). The default value for this property is
+ * true. When this property is null or set to true, Event Grid is responsible of automatically creating the domain
+ * topic when the first event subscription is created at the scope of the domain topic. If this property is set to
+ * false, then creating the first event subscription will require creating a domain topic by the user. The
+ * self-management mode can be used if the user wants full control of when the domain topic is created, while
+ * auto-managed mode provides the flexibility to perform less operations and manage fewer resources by the user.
+ * Also, note that in auto-managed creation mode, user is allowed to create the domain topic on demand if needed.
+ *
+ * @param autoCreateTopicWithFirstSubscription the autoCreateTopicWithFirstSubscription value to set.
+ * @return the DomainInner object itself.
+ */
+ public DomainInner withAutoCreateTopicWithFirstSubscription(Boolean autoCreateTopicWithFirstSubscription) {
+ this.autoCreateTopicWithFirstSubscription = autoCreateTopicWithFirstSubscription;
+ return this;
+ }
+
+ /**
+ * Get the autoDeleteTopicWithLastSubscription property: This Boolean is used to specify the deletion mechanism for
+ * 'all' the Event Grid Domain Topics associated with this Event Grid Domain resource. In this context, deletion of
+ * domain topic can be auto-managed (when true) or self-managed (when false). The default value for this property is
+ * true. When this property is set to true, Event Grid is responsible of automatically deleting the domain topic
+ * when the last event subscription at the scope of the domain topic is deleted. If this property is set to false,
+ * then the user needs to manually delete the domain topic when it is no longer needed (e.g., when last event
+ * subscription is deleted and the resource needs to be cleaned up). The self-management mode can be used if the
+ * user wants full control of when the domain topic needs to be deleted, while auto-managed mode provides the
+ * flexibility to perform less operations and manage fewer resources by the user.
+ *
+ * @return the autoDeleteTopicWithLastSubscription value.
+ */
+ public Boolean autoDeleteTopicWithLastSubscription() {
+ return this.autoDeleteTopicWithLastSubscription;
+ }
+
+ /**
+ * Set the autoDeleteTopicWithLastSubscription property: This Boolean is used to specify the deletion mechanism for
+ * 'all' the Event Grid Domain Topics associated with this Event Grid Domain resource. In this context, deletion of
+ * domain topic can be auto-managed (when true) or self-managed (when false). The default value for this property is
+ * true. When this property is set to true, Event Grid is responsible of automatically deleting the domain topic
+ * when the last event subscription at the scope of the domain topic is deleted. If this property is set to false,
+ * then the user needs to manually delete the domain topic when it is no longer needed (e.g., when last event
+ * subscription is deleted and the resource needs to be cleaned up). The self-management mode can be used if the
+ * user wants full control of when the domain topic needs to be deleted, while auto-managed mode provides the
+ * flexibility to perform less operations and manage fewer resources by the user.
+ *
+ * @param autoDeleteTopicWithLastSubscription the autoDeleteTopicWithLastSubscription value to set.
+ * @return the DomainInner object itself.
+ */
+ public DomainInner withAutoDeleteTopicWithLastSubscription(Boolean autoDeleteTopicWithLastSubscription) {
+ this.autoDeleteTopicWithLastSubscription = autoDeleteTopicWithLastSubscription;
+ return this;
+ }
+
/** {@inheritDoc} */
@Override
public DomainInner withLocation(String location) {
@@ -241,6 +448,12 @@ public DomainInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
+ if (sku() != null) {
+ sku().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
if (privateEndpointConnections() != null) {
privateEndpointConnections().forEach(e -> e.validate());
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventChannelInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventChannelInner.java
new file mode 100644
index 0000000000000..f90a4c6bff511
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventChannelInner.java
@@ -0,0 +1,235 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.EventChannelDestination;
+import com.azure.resourcemanager.eventgrid.models.EventChannelFilter;
+import com.azure.resourcemanager.eventgrid.models.EventChannelProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.EventChannelSource;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicReadinessState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Event Channel. */
+@JsonFlatten
+@Fluent
+public class EventChannelInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(EventChannelInner.class);
+
+ /*
+ * The system metadata relating to Event Channel resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Source of the event channel. This represents a unique resource in the
+ * partner's resource model.
+ */
+ @JsonProperty(value = "properties.source")
+ private EventChannelSource source;
+
+ /*
+ * Represents the destination of an event channel.
+ */
+ @JsonProperty(value = "properties.destination")
+ private EventChannelDestination destination;
+
+ /*
+ * Provisioning state of the event channel.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private EventChannelProvisioningState provisioningState;
+
+ /*
+ * The readiness state of the corresponding partner topic.
+ */
+ @JsonProperty(value = "properties.partnerTopicReadinessState", access = JsonProperty.Access.WRITE_ONLY)
+ private PartnerTopicReadinessState partnerTopicReadinessState;
+
+ /*
+ * Expiration time of the event channel. If this timer expires while the
+ * corresponding partner topic is never activated,
+ * the event channel and corresponding partner topic are deleted.
+ */
+ @JsonProperty(value = "properties.expirationTimeIfNotActivatedUtc")
+ private OffsetDateTime expirationTimeIfNotActivatedUtc;
+
+ /*
+ * Information about the filter for the event channel.
+ */
+ @JsonProperty(value = "properties.filter")
+ private EventChannelFilter filter;
+
+ /*
+ * Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner
+ * topic.
+ * This will be helpful to remove any ambiguity of the origin of creation
+ * of the partner topic for the customer.
+ */
+ @JsonProperty(value = "properties.partnerTopicFriendlyDescription")
+ private String partnerTopicFriendlyDescription;
+
+ /**
+ * Get the systemData property: The system metadata relating to Event Channel resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the source property: Source of the event channel. This represents a unique resource in the partner's resource
+ * model.
+ *
+ * @return the source value.
+ */
+ public EventChannelSource source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source property: Source of the event channel. This represents a unique resource in the partner's resource
+ * model.
+ *
+ * @param source the source value to set.
+ * @return the EventChannelInner object itself.
+ */
+ public EventChannelInner withSource(EventChannelSource source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the destination property: Represents the destination of an event channel.
+ *
+ * @return the destination value.
+ */
+ public EventChannelDestination destination() {
+ return this.destination;
+ }
+
+ /**
+ * Set the destination property: Represents the destination of an event channel.
+ *
+ * @param destination the destination value to set.
+ * @return the EventChannelInner object itself.
+ */
+ public EventChannelInner withDestination(EventChannelDestination destination) {
+ this.destination = destination;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the event channel.
+ *
+ * @return the provisioningState value.
+ */
+ public EventChannelProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the partnerTopicReadinessState property: The readiness state of the corresponding partner topic.
+ *
+ * @return the partnerTopicReadinessState value.
+ */
+ public PartnerTopicReadinessState partnerTopicReadinessState() {
+ return this.partnerTopicReadinessState;
+ }
+
+ /**
+ * Get the expirationTimeIfNotActivatedUtc property: Expiration time of the event channel. If this timer expires
+ * while the corresponding partner topic is never activated, the event channel and corresponding partner topic are
+ * deleted.
+ *
+ * @return the expirationTimeIfNotActivatedUtc value.
+ */
+ public OffsetDateTime expirationTimeIfNotActivatedUtc() {
+ return this.expirationTimeIfNotActivatedUtc;
+ }
+
+ /**
+ * Set the expirationTimeIfNotActivatedUtc property: Expiration time of the event channel. If this timer expires
+ * while the corresponding partner topic is never activated, the event channel and corresponding partner topic are
+ * deleted.
+ *
+ * @param expirationTimeIfNotActivatedUtc the expirationTimeIfNotActivatedUtc value to set.
+ * @return the EventChannelInner object itself.
+ */
+ public EventChannelInner withExpirationTimeIfNotActivatedUtc(OffsetDateTime expirationTimeIfNotActivatedUtc) {
+ this.expirationTimeIfNotActivatedUtc = expirationTimeIfNotActivatedUtc;
+ return this;
+ }
+
+ /**
+ * Get the filter property: Information about the filter for the event channel.
+ *
+ * @return the filter value.
+ */
+ public EventChannelFilter filter() {
+ return this.filter;
+ }
+
+ /**
+ * Set the filter property: Information about the filter for the event channel.
+ *
+ * @param filter the filter value to set.
+ * @return the EventChannelInner object itself.
+ */
+ public EventChannelInner withFilter(EventChannelFilter filter) {
+ this.filter = filter;
+ return this;
+ }
+
+ /**
+ * Get the partnerTopicFriendlyDescription property: Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner topic. This will be helpful to remove any
+ * ambiguity of the origin of creation of the partner topic for the customer.
+ *
+ * @return the partnerTopicFriendlyDescription value.
+ */
+ public String partnerTopicFriendlyDescription() {
+ return this.partnerTopicFriendlyDescription;
+ }
+
+ /**
+ * Set the partnerTopicFriendlyDescription property: Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner topic. This will be helpful to remove any
+ * ambiguity of the origin of creation of the partner topic for the customer.
+ *
+ * @param partnerTopicFriendlyDescription the partnerTopicFriendlyDescription value to set.
+ * @return the EventChannelInner object itself.
+ */
+ public EventChannelInner withPartnerTopicFriendlyDescription(String partnerTopicFriendlyDescription) {
+ this.partnerTopicFriendlyDescription = partnerTopicFriendlyDescription;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (source() != null) {
+ source().validate();
+ }
+ if (destination() != null) {
+ destination().validate();
+ }
+ if (filter() != null) {
+ filter().validate();
+ }
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventSubscriptionInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventSubscriptionInner.java
index 8e3d8223713d8..0850862cd1ea9 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventSubscriptionInner.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/EventSubscriptionInner.java
@@ -10,6 +10,8 @@
import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.eventgrid.models.DeadLetterDestination;
+import com.azure.resourcemanager.eventgrid.models.DeadLetterWithResourceIdentity;
+import com.azure.resourcemanager.eventgrid.models.DeliveryWithResourceIdentity;
import com.azure.resourcemanager.eventgrid.models.EventDeliverySchema;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionDestination;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionFilter;
@@ -47,10 +49,22 @@ public class EventSubscriptionInner extends ProxyResource {
/*
* Information about the destination where events have to be delivered for
* the event subscription.
+ * Uses Azure Event Grid's identity to acquire the authentication tokens
+ * being used during delivery / dead-lettering.
*/
@JsonProperty(value = "properties.destination")
private EventSubscriptionDestination destination;
+ /*
+ * Information about the destination where events have to be delivered for
+ * the event subscription.
+ * Uses the managed identity setup on the parent resource (namely, topic or
+ * domain) to acquire the authentication tokens being used during delivery
+ * / dead-lettering.
+ */
+ @JsonProperty(value = "properties.deliveryWithResourceIdentity")
+ private DeliveryWithResourceIdentity deliveryWithResourceIdentity;
+
/*
* Information about the filter for the event subscription.
*/
@@ -83,11 +97,26 @@ public class EventSubscriptionInner extends ProxyResource {
private RetryPolicy retryPolicy;
/*
- * The DeadLetter destination of the event subscription.
+ * The dead letter destination of the event subscription. Any event that
+ * cannot be delivered to its' destination is sent to the dead letter
+ * destination.
+ * Uses Azure Event Grid's identity to acquire the authentication tokens
+ * being used during delivery / dead-lettering.
*/
@JsonProperty(value = "properties.deadLetterDestination")
private DeadLetterDestination deadLetterDestination;
+ /*
+ * The dead letter destination of the event subscription. Any event that
+ * cannot be delivered to its' destination is sent to the dead letter
+ * destination.
+ * Uses the managed identity setup on the parent resource (namely, topic or
+ * domain) to acquire the authentication tokens being used during delivery
+ * / dead-lettering.
+ */
+ @JsonProperty(value = "properties.deadLetterWithResourceIdentity")
+ private DeadLetterWithResourceIdentity deadLetterWithResourceIdentity;
+
/**
* Get the systemData property: The system metadata relating to Event Subscription resource.
*
@@ -117,7 +146,8 @@ public EventSubscriptionProvisioningState provisioningState() {
/**
* Get the destination property: Information about the destination where events have to be delivered for the event
- * subscription.
+ * subscription. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery /
+ * dead-lettering.
*
* @return the destination value.
*/
@@ -127,7 +157,8 @@ public EventSubscriptionDestination destination() {
/**
* Set the destination property: Information about the destination where events have to be delivered for the event
- * subscription.
+ * subscription. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery /
+ * dead-lettering.
*
* @param destination the destination value to set.
* @return the EventSubscriptionInner object itself.
@@ -137,6 +168,31 @@ public EventSubscriptionInner withDestination(EventSubscriptionDestination desti
return this;
}
+ /**
+ * Get the deliveryWithResourceIdentity property: Information about the destination where events have to be
+ * delivered for the event subscription. Uses the managed identity setup on the parent resource (namely, topic or
+ * domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ *
+ * @return the deliveryWithResourceIdentity value.
+ */
+ public DeliveryWithResourceIdentity deliveryWithResourceIdentity() {
+ return this.deliveryWithResourceIdentity;
+ }
+
+ /**
+ * Set the deliveryWithResourceIdentity property: Information about the destination where events have to be
+ * delivered for the event subscription. Uses the managed identity setup on the parent resource (namely, topic or
+ * domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ *
+ * @param deliveryWithResourceIdentity the deliveryWithResourceIdentity value to set.
+ * @return the EventSubscriptionInner object itself.
+ */
+ public EventSubscriptionInner withDeliveryWithResourceIdentity(
+ DeliveryWithResourceIdentity deliveryWithResourceIdentity) {
+ this.deliveryWithResourceIdentity = deliveryWithResourceIdentity;
+ return this;
+ }
+
/**
* Get the filter property: Information about the filter for the event subscription.
*
@@ -240,7 +296,9 @@ public EventSubscriptionInner withRetryPolicy(RetryPolicy retryPolicy) {
}
/**
- * Get the deadLetterDestination property: The DeadLetter destination of the event subscription.
+ * Get the deadLetterDestination property: The dead letter destination of the event subscription. Any event that
+ * cannot be delivered to its' destination is sent to the dead letter destination. Uses Azure Event Grid's identity
+ * to acquire the authentication tokens being used during delivery / dead-lettering.
*
* @return the deadLetterDestination value.
*/
@@ -249,7 +307,9 @@ public DeadLetterDestination deadLetterDestination() {
}
/**
- * Set the deadLetterDestination property: The DeadLetter destination of the event subscription.
+ * Set the deadLetterDestination property: The dead letter destination of the event subscription. Any event that
+ * cannot be delivered to its' destination is sent to the dead letter destination. Uses Azure Event Grid's identity
+ * to acquire the authentication tokens being used during delivery / dead-lettering.
*
* @param deadLetterDestination the deadLetterDestination value to set.
* @return the EventSubscriptionInner object itself.
@@ -259,6 +319,33 @@ public EventSubscriptionInner withDeadLetterDestination(DeadLetterDestination de
return this;
}
+ /**
+ * Get the deadLetterWithResourceIdentity property: The dead letter destination of the event subscription. Any event
+ * that cannot be delivered to its' destination is sent to the dead letter destination. Uses the managed identity
+ * setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during
+ * delivery / dead-lettering.
+ *
+ * @return the deadLetterWithResourceIdentity value.
+ */
+ public DeadLetterWithResourceIdentity deadLetterWithResourceIdentity() {
+ return this.deadLetterWithResourceIdentity;
+ }
+
+ /**
+ * Set the deadLetterWithResourceIdentity property: The dead letter destination of the event subscription. Any event
+ * that cannot be delivered to its' destination is sent to the dead letter destination. Uses the managed identity
+ * setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during
+ * delivery / dead-lettering.
+ *
+ * @param deadLetterWithResourceIdentity the deadLetterWithResourceIdentity value to set.
+ * @return the EventSubscriptionInner object itself.
+ */
+ public EventSubscriptionInner withDeadLetterWithResourceIdentity(
+ DeadLetterWithResourceIdentity deadLetterWithResourceIdentity) {
+ this.deadLetterWithResourceIdentity = deadLetterWithResourceIdentity;
+ return this;
+ }
+
/**
* Validates the instance.
*
@@ -268,6 +355,9 @@ public void validate() {
if (destination() != null) {
destination().validate();
}
+ if (deliveryWithResourceIdentity() != null) {
+ deliveryWithResourceIdentity().validate();
+ }
if (filter() != null) {
filter().validate();
}
@@ -277,5 +367,8 @@ public void validate() {
if (deadLetterDestination() != null) {
deadLetterDestination().validate();
}
+ if (deadLetterWithResourceIdentity() != null) {
+ deadLetterWithResourceIdentity().validate();
+ }
}
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/ExtensionTopicInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/ExtensionTopicInner.java
new file mode 100644
index 0000000000000..ac9f5bdbe27f0
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/ExtensionTopicInner.java
@@ -0,0 +1,79 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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;
+
+/** Event grid Extension Topic. This is used for getting Event Grid related metrics for Azure resources. */
+@JsonFlatten
+@Fluent
+public class ExtensionTopicInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ExtensionTopicInner.class);
+
+ /*
+ * Description of the extension topic.
+ */
+ @JsonProperty(value = "properties.description")
+ private String description;
+
+ /*
+ * System topic resource id which is mapped to the source.
+ */
+ @JsonProperty(value = "properties.systemTopic")
+ private String systemTopic;
+
+ /**
+ * Get the description property: Description of the extension topic.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: Description of the extension topic.
+ *
+ * @param description the description value to set.
+ * @return the ExtensionTopicInner object itself.
+ */
+ public ExtensionTopicInner withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the systemTopic property: System topic resource id which is mapped to the source.
+ *
+ * @return the systemTopic value.
+ */
+ public String systemTopic() {
+ return this.systemTopic;
+ }
+
+ /**
+ * Set the systemTopic property: System topic resource id which is mapped to the source.
+ *
+ * @param systemTopic the systemTopic value to set.
+ * @return the ExtensionTopicInner object itself.
+ */
+ public ExtensionTopicInner withSystemTopic(String systemTopic) {
+ this.systemTopic = systemTopic;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/OperationInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/OperationInner.java
index c834a95f0038e..3f6937b156d2f 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/OperationInner.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/OperationInner.java
@@ -33,6 +33,13 @@ public final class OperationInner {
@JsonProperty(value = "origin")
private String origin;
+ /*
+ * This Boolean is used to determine if the operation is a data plane
+ * action or not.
+ */
+ @JsonProperty(value = "isDataAction")
+ private Boolean isDataAction;
+
/*
* Properties of the operation
*/
@@ -99,6 +106,26 @@ public OperationInner withOrigin(String origin) {
return this;
}
+ /**
+ * Get the isDataAction property: This Boolean is used to determine if the operation is a data plane action or not.
+ *
+ * @return the isDataAction value.
+ */
+ public Boolean isDataAction() {
+ return this.isDataAction;
+ }
+
+ /**
+ * Set the isDataAction property: This Boolean is used to determine if the operation is a data plane action or not.
+ *
+ * @param isDataAction the isDataAction value to set.
+ * @return the OperationInner object itself.
+ */
+ public OperationInner withIsDataAction(Boolean isDataAction) {
+ this.isDataAction = isDataAction;
+ return this;
+ }
+
/**
* Get the properties property: Properties of the operation.
*
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceInner.java
new file mode 100644
index 0000000000000..1bbbb5bc79820
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceInner.java
@@ -0,0 +1,242 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.InboundIpRule;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.PublicNetworkAccess;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** EventGrid Partner Namespace. */
+@JsonFlatten
+@Fluent
+public class PartnerNamespaceInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PartnerNamespaceInner.class);
+
+ /*
+ * The system metadata relating to Partner Namespace resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * The privateEndpointConnections property.
+ */
+ @JsonProperty(value = "properties.privateEndpointConnections", access = JsonProperty.Access.WRITE_ONLY)
+ private List privateEndpointConnections;
+
+ /*
+ * Provisioning state of the partner namespace.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private PartnerNamespaceProvisioningState provisioningState;
+
+ /*
+ * The fully qualified ARM Id of the partner registration that should be
+ * associated with this partner namespace. This takes the following format:
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}.
+ */
+ @JsonProperty(value = "properties.partnerRegistrationFullyQualifiedId")
+ private String partnerRegistrationFullyQualifiedId;
+
+ /*
+ * Endpoint for the partner namespace.
+ */
+ @JsonProperty(value = "properties.endpoint", access = JsonProperty.Access.WRITE_ONLY)
+ private String endpoint;
+
+ /*
+ * This determines if traffic is allowed over public network. By default it
+ * is enabled.
+ * You can further restrict to specific IPs by configuring
+ */
+ @JsonProperty(value = "properties.publicNetworkAccess")
+ private PublicNetworkAccess publicNetworkAccess;
+
+ /*
+ * This can be used to restrict traffic from specific IPs instead of all
+ * IPs. Note: These are considered only if PublicNetworkAccess is enabled.
+ */
+ @JsonProperty(value = "properties.inboundIpRules")
+ private List inboundIpRules;
+
+ /*
+ * This boolean is used to enable or disable local auth. Default value is
+ * false. When the property is set to true, only AAD token will be used to
+ * authenticate if user is allowed to publish to the partner namespace.
+ */
+ @JsonProperty(value = "properties.disableLocalAuth")
+ private Boolean disableLocalAuth;
+
+ /**
+ * Get the systemData property: The system metadata relating to Partner Namespace resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the privateEndpointConnections property: The privateEndpointConnections property.
+ *
+ * @return the privateEndpointConnections value.
+ */
+ public List privateEndpointConnections() {
+ return this.privateEndpointConnections;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the partner namespace.
+ *
+ * @return the provisioningState value.
+ */
+ public PartnerNamespaceProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the partnerRegistrationFullyQualifiedId property: The fully qualified ARM Id of the partner registration that
+ * should be associated with this partner namespace. This takes the following format:
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}.
+ *
+ * @return the partnerRegistrationFullyQualifiedId value.
+ */
+ public String partnerRegistrationFullyQualifiedId() {
+ return this.partnerRegistrationFullyQualifiedId;
+ }
+
+ /**
+ * Set the partnerRegistrationFullyQualifiedId property: The fully qualified ARM Id of the partner registration that
+ * should be associated with this partner namespace. This takes the following format:
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}.
+ *
+ * @param partnerRegistrationFullyQualifiedId the partnerRegistrationFullyQualifiedId value to set.
+ * @return the PartnerNamespaceInner object itself.
+ */
+ public PartnerNamespaceInner withPartnerRegistrationFullyQualifiedId(String partnerRegistrationFullyQualifiedId) {
+ this.partnerRegistrationFullyQualifiedId = partnerRegistrationFullyQualifiedId;
+ return this;
+ }
+
+ /**
+ * Get the endpoint property: Endpoint for the partner namespace.
+ *
+ * @return the endpoint value.
+ */
+ public String endpoint() {
+ return this.endpoint;
+ }
+
+ /**
+ * Get the publicNetworkAccess property: This determines if traffic is allowed over public network. By default it is
+ * enabled. You can further restrict to specific IPs by configuring <seealso
+ * cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.PartnerNamespaceProperties.InboundIpRules"
+ * />.
+ *
+ * @return the publicNetworkAccess value.
+ */
+ public PublicNetworkAccess publicNetworkAccess() {
+ return this.publicNetworkAccess;
+ }
+
+ /**
+ * Set the publicNetworkAccess property: This determines if traffic is allowed over public network. By default it is
+ * enabled. You can further restrict to specific IPs by configuring <seealso
+ * cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.PartnerNamespaceProperties.InboundIpRules"
+ * />.
+ *
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
+ * @return the PartnerNamespaceInner object itself.
+ */
+ public PartnerNamespaceInner withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) {
+ this.publicNetworkAccess = publicNetworkAccess;
+ return this;
+ }
+
+ /**
+ * Get the inboundIpRules property: This can be used to restrict traffic from specific IPs instead of all IPs. Note:
+ * These are considered only if PublicNetworkAccess is enabled.
+ *
+ * @return the inboundIpRules value.
+ */
+ public List inboundIpRules() {
+ return this.inboundIpRules;
+ }
+
+ /**
+ * Set the inboundIpRules property: This can be used to restrict traffic from specific IPs instead of all IPs. Note:
+ * These are considered only if PublicNetworkAccess is enabled.
+ *
+ * @param inboundIpRules the inboundIpRules value to set.
+ * @return the PartnerNamespaceInner object itself.
+ */
+ public PartnerNamespaceInner withInboundIpRules(List inboundIpRules) {
+ this.inboundIpRules = inboundIpRules;
+ return this;
+ }
+
+ /**
+ * Get the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the partner namespace.
+ *
+ * @return the disableLocalAuth value.
+ */
+ public Boolean disableLocalAuth() {
+ return this.disableLocalAuth;
+ }
+
+ /**
+ * Set the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the partner namespace.
+ *
+ * @param disableLocalAuth the disableLocalAuth value to set.
+ * @return the PartnerNamespaceInner object itself.
+ */
+ public PartnerNamespaceInner withDisableLocalAuth(Boolean disableLocalAuth) {
+ this.disableLocalAuth = disableLocalAuth;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerNamespaceInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerNamespaceInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (privateEndpointConnections() != null) {
+ privateEndpointConnections().forEach(e -> e.validate());
+ }
+ if (inboundIpRules() != null) {
+ inboundIpRules().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceSharedAccessKeysInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceSharedAccessKeysInner.java
new file mode 100644
index 0000000000000..e9b2ff0c26788
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerNamespaceSharedAccessKeysInner.java
@@ -0,0 +1,76 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Shared access keys of the partner namespace. */
+@Fluent
+public final class PartnerNamespaceSharedAccessKeysInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PartnerNamespaceSharedAccessKeysInner.class);
+
+ /*
+ * Shared access key1 for the partner namespace.
+ */
+ @JsonProperty(value = "key1")
+ private String key1;
+
+ /*
+ * Shared access key2 for the partner namespace.
+ */
+ @JsonProperty(value = "key2")
+ private String key2;
+
+ /**
+ * Get the key1 property: Shared access key1 for the partner namespace.
+ *
+ * @return the key1 value.
+ */
+ public String key1() {
+ return this.key1;
+ }
+
+ /**
+ * Set the key1 property: Shared access key1 for the partner namespace.
+ *
+ * @param key1 the key1 value to set.
+ * @return the PartnerNamespaceSharedAccessKeysInner object itself.
+ */
+ public PartnerNamespaceSharedAccessKeysInner withKey1(String key1) {
+ this.key1 = key1;
+ return this;
+ }
+
+ /**
+ * Get the key2 property: Shared access key2 for the partner namespace.
+ *
+ * @return the key2 value.
+ */
+ public String key2() {
+ return this.key2;
+ }
+
+ /**
+ * Set the key2 property: Shared access key2 for the partner namespace.
+ *
+ * @param key2 the key2 value to set.
+ * @return the PartnerNamespaceSharedAccessKeysInner object itself.
+ */
+ public PartnerNamespaceSharedAccessKeysInner withKey2(String key2) {
+ this.key2 = key2;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerRegistrationInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerRegistrationInner.java
new file mode 100644
index 0000000000000..dee8234a62bfa
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerRegistrationInner.java
@@ -0,0 +1,429 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.PartnerRegistrationProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.PartnerRegistrationVisibilityState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** Information about a partner registration. */
+@JsonFlatten
+@Fluent
+public class PartnerRegistrationInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PartnerRegistrationInner.class);
+
+ /*
+ * The system metadata relating to Partner Registration resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Provisioning state of the partner registration.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private PartnerRegistrationProvisioningState provisioningState;
+
+ /*
+ * Official name of the partner name. For example: "Contoso".
+ */
+ @JsonProperty(value = "properties.partnerName")
+ private String partnerName;
+
+ /*
+ * Name of the partner resource type.
+ */
+ @JsonProperty(value = "properties.partnerResourceTypeName")
+ private String partnerResourceTypeName;
+
+ /*
+ * Display name of the partner resource type.
+ */
+ @JsonProperty(value = "properties.partnerResourceTypeDisplayName")
+ private String partnerResourceTypeDisplayName;
+
+ /*
+ * Short description of the partner resource type. The length of this
+ * description should not exceed 256 characters.
+ */
+ @JsonProperty(value = "properties.partnerResourceTypeDescription")
+ private String partnerResourceTypeDescription;
+
+ /*
+ * Long description for the custom scenarios and integration to be
+ * displayed in the portal if needed.
+ * Length of this description should not exceed 2048 characters.
+ */
+ @JsonProperty(value = "properties.longDescription")
+ private String longDescription;
+
+ /*
+ * The customer service number of the publisher. The expected phone format
+ * should start with a '+' sign
+ * followed by the country code. The remaining digits are then followed.
+ * Only digits and spaces are allowed and its
+ * length cannot exceed 16 digits including country code. Examples of valid
+ * phone numbers are: +1 515 123 4567 and
+ * +966 7 5115 2471. Examples of invalid phone numbers are: +1 (515)
+ * 123-4567, 1 515 123 4567 and +966 121 5115 24 7 551 1234 43
+ */
+ @JsonProperty(value = "properties.partnerCustomerServiceNumber")
+ private String partnerCustomerServiceNumber;
+
+ /*
+ * The extension of the customer service number of the publisher. Only
+ * digits are allowed and number of digits should not exceed 10.
+ */
+ @JsonProperty(value = "properties.partnerCustomerServiceExtension")
+ private String partnerCustomerServiceExtension;
+
+ /*
+ * The extension of the customer service URI of the publisher.
+ */
+ @JsonProperty(value = "properties.customerServiceUri")
+ private String customerServiceUri;
+
+ /*
+ * URI of the partner website that can be used by Azure customers to setup
+ * Event Grid
+ * integration on an event source.
+ */
+ @JsonProperty(value = "properties.setupUri")
+ private String setupUri;
+
+ /*
+ * URI of the logo.
+ */
+ @JsonProperty(value = "properties.logoUri")
+ private String logoUri;
+
+ /*
+ * Visibility state of the partner registration.
+ */
+ @JsonProperty(value = "properties.visibilityState")
+ private PartnerRegistrationVisibilityState visibilityState;
+
+ /*
+ * List of Azure subscription Ids that are authorized to create a partner
+ * namespace
+ * associated with this partner registration. This is an optional property.
+ * Creating
+ * partner namespaces is always permitted under the same Azure subscription
+ * as the one used
+ * for creating the partner registration.
+ */
+ @JsonProperty(value = "properties.authorizedAzureSubscriptionIds")
+ private List authorizedAzureSubscriptionIds;
+
+ /**
+ * Get the systemData property: The system metadata relating to Partner Registration resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the partner registration.
+ *
+ * @return the provisioningState value.
+ */
+ public PartnerRegistrationProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the partnerName property: Official name of the partner name. For example: "Contoso".
+ *
+ * @return the partnerName value.
+ */
+ public String partnerName() {
+ return this.partnerName;
+ }
+
+ /**
+ * Set the partnerName property: Official name of the partner name. For example: "Contoso".
+ *
+ * @param partnerName the partnerName value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerName(String partnerName) {
+ this.partnerName = partnerName;
+ return this;
+ }
+
+ /**
+ * Get the partnerResourceTypeName property: Name of the partner resource type.
+ *
+ * @return the partnerResourceTypeName value.
+ */
+ public String partnerResourceTypeName() {
+ return this.partnerResourceTypeName;
+ }
+
+ /**
+ * Set the partnerResourceTypeName property: Name of the partner resource type.
+ *
+ * @param partnerResourceTypeName the partnerResourceTypeName value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerResourceTypeName(String partnerResourceTypeName) {
+ this.partnerResourceTypeName = partnerResourceTypeName;
+ return this;
+ }
+
+ /**
+ * Get the partnerResourceTypeDisplayName property: Display name of the partner resource type.
+ *
+ * @return the partnerResourceTypeDisplayName value.
+ */
+ public String partnerResourceTypeDisplayName() {
+ return this.partnerResourceTypeDisplayName;
+ }
+
+ /**
+ * Set the partnerResourceTypeDisplayName property: Display name of the partner resource type.
+ *
+ * @param partnerResourceTypeDisplayName the partnerResourceTypeDisplayName value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerResourceTypeDisplayName(String partnerResourceTypeDisplayName) {
+ this.partnerResourceTypeDisplayName = partnerResourceTypeDisplayName;
+ return this;
+ }
+
+ /**
+ * Get the partnerResourceTypeDescription property: Short description of the partner resource type. The length of
+ * this description should not exceed 256 characters.
+ *
+ * @return the partnerResourceTypeDescription value.
+ */
+ public String partnerResourceTypeDescription() {
+ return this.partnerResourceTypeDescription;
+ }
+
+ /**
+ * Set the partnerResourceTypeDescription property: Short description of the partner resource type. The length of
+ * this description should not exceed 256 characters.
+ *
+ * @param partnerResourceTypeDescription the partnerResourceTypeDescription value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerResourceTypeDescription(String partnerResourceTypeDescription) {
+ this.partnerResourceTypeDescription = partnerResourceTypeDescription;
+ return this;
+ }
+
+ /**
+ * Get the longDescription property: Long description for the custom scenarios and integration to be displayed in
+ * the portal if needed. Length of this description should not exceed 2048 characters.
+ *
+ * @return the longDescription value.
+ */
+ public String longDescription() {
+ return this.longDescription;
+ }
+
+ /**
+ * Set the longDescription property: Long description for the custom scenarios and integration to be displayed in
+ * the portal if needed. Length of this description should not exceed 2048 characters.
+ *
+ * @param longDescription the longDescription value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withLongDescription(String longDescription) {
+ this.longDescription = longDescription;
+ return this;
+ }
+
+ /**
+ * Get the partnerCustomerServiceNumber property: The customer service number of the publisher. The expected phone
+ * format should start with a '+' sign followed by the country code. The remaining digits are then followed. Only
+ * digits and spaces are allowed and its length cannot exceed 16 digits including country code. Examples of valid
+ * phone numbers are: +1 515 123 4567 and +966 7 5115 2471. Examples of invalid phone numbers are: +1 (515)
+ * 123-4567, 1 515 123 4567 and +966 121 5115 24 7 551 1234 43.
+ *
+ * @return the partnerCustomerServiceNumber value.
+ */
+ public String partnerCustomerServiceNumber() {
+ return this.partnerCustomerServiceNumber;
+ }
+
+ /**
+ * Set the partnerCustomerServiceNumber property: The customer service number of the publisher. The expected phone
+ * format should start with a '+' sign followed by the country code. The remaining digits are then followed. Only
+ * digits and spaces are allowed and its length cannot exceed 16 digits including country code. Examples of valid
+ * phone numbers are: +1 515 123 4567 and +966 7 5115 2471. Examples of invalid phone numbers are: +1 (515)
+ * 123-4567, 1 515 123 4567 and +966 121 5115 24 7 551 1234 43.
+ *
+ * @param partnerCustomerServiceNumber the partnerCustomerServiceNumber value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerCustomerServiceNumber(String partnerCustomerServiceNumber) {
+ this.partnerCustomerServiceNumber = partnerCustomerServiceNumber;
+ return this;
+ }
+
+ /**
+ * Get the partnerCustomerServiceExtension property: The extension of the customer service number of the publisher.
+ * Only digits are allowed and number of digits should not exceed 10.
+ *
+ * @return the partnerCustomerServiceExtension value.
+ */
+ public String partnerCustomerServiceExtension() {
+ return this.partnerCustomerServiceExtension;
+ }
+
+ /**
+ * Set the partnerCustomerServiceExtension property: The extension of the customer service number of the publisher.
+ * Only digits are allowed and number of digits should not exceed 10.
+ *
+ * @param partnerCustomerServiceExtension the partnerCustomerServiceExtension value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withPartnerCustomerServiceExtension(String partnerCustomerServiceExtension) {
+ this.partnerCustomerServiceExtension = partnerCustomerServiceExtension;
+ return this;
+ }
+
+ /**
+ * Get the customerServiceUri property: The extension of the customer service URI of the publisher.
+ *
+ * @return the customerServiceUri value.
+ */
+ public String customerServiceUri() {
+ return this.customerServiceUri;
+ }
+
+ /**
+ * Set the customerServiceUri property: The extension of the customer service URI of the publisher.
+ *
+ * @param customerServiceUri the customerServiceUri value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withCustomerServiceUri(String customerServiceUri) {
+ this.customerServiceUri = customerServiceUri;
+ return this;
+ }
+
+ /**
+ * Get the setupUri property: URI of the partner website that can be used by Azure customers to setup Event Grid
+ * integration on an event source.
+ *
+ * @return the setupUri value.
+ */
+ public String setupUri() {
+ return this.setupUri;
+ }
+
+ /**
+ * Set the setupUri property: URI of the partner website that can be used by Azure customers to setup Event Grid
+ * integration on an event source.
+ *
+ * @param setupUri the setupUri value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withSetupUri(String setupUri) {
+ this.setupUri = setupUri;
+ return this;
+ }
+
+ /**
+ * Get the logoUri property: URI of the logo.
+ *
+ * @return the logoUri value.
+ */
+ public String logoUri() {
+ return this.logoUri;
+ }
+
+ /**
+ * Set the logoUri property: URI of the logo.
+ *
+ * @param logoUri the logoUri value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withLogoUri(String logoUri) {
+ this.logoUri = logoUri;
+ return this;
+ }
+
+ /**
+ * Get the visibilityState property: Visibility state of the partner registration.
+ *
+ * @return the visibilityState value.
+ */
+ public PartnerRegistrationVisibilityState visibilityState() {
+ return this.visibilityState;
+ }
+
+ /**
+ * Set the visibilityState property: Visibility state of the partner registration.
+ *
+ * @param visibilityState the visibilityState value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withVisibilityState(PartnerRegistrationVisibilityState visibilityState) {
+ this.visibilityState = visibilityState;
+ return this;
+ }
+
+ /**
+ * Get the authorizedAzureSubscriptionIds property: List of Azure subscription Ids that are authorized to create a
+ * partner namespace associated with this partner registration. This is an optional property. Creating partner
+ * namespaces is always permitted under the same Azure subscription as the one used for creating the partner
+ * registration.
+ *
+ * @return the authorizedAzureSubscriptionIds value.
+ */
+ public List authorizedAzureSubscriptionIds() {
+ return this.authorizedAzureSubscriptionIds;
+ }
+
+ /**
+ * Set the authorizedAzureSubscriptionIds property: List of Azure subscription Ids that are authorized to create a
+ * partner namespace associated with this partner registration. This is an optional property. Creating partner
+ * namespaces is always permitted under the same Azure subscription as the one used for creating the partner
+ * registration.
+ *
+ * @param authorizedAzureSubscriptionIds the authorizedAzureSubscriptionIds value to set.
+ * @return the PartnerRegistrationInner object itself.
+ */
+ public PartnerRegistrationInner withAuthorizedAzureSubscriptionIds(List authorizedAzureSubscriptionIds) {
+ this.authorizedAzureSubscriptionIds = authorizedAzureSubscriptionIds;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerRegistrationInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerRegistrationInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerTopicInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerTopicInner.java
new file mode 100644
index 0000000000000..471688f446369
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/PartnerTopicInner.java
@@ -0,0 +1,223 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.IdentityInfo;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicActivationState;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicProvisioningState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** EventGrid Partner Topic. */
+@JsonFlatten
+@Fluent
+public class PartnerTopicInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(PartnerTopicInner.class);
+
+ /*
+ * The system metadata relating to Partner Topic resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Identity information for the Partner Topic resource.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityInfo identity;
+
+ /*
+ * Source associated with this partner topic. This represents a unique
+ * partner resource.
+ */
+ @JsonProperty(value = "properties.source")
+ private String source;
+
+ /*
+ * Expiration time of the partner topic. If this timer expires while the
+ * partner topic is still never activated,
+ * the partner topic and corresponding event channel are deleted.
+ */
+ @JsonProperty(value = "properties.expirationTimeIfNotActivatedUtc")
+ private OffsetDateTime expirationTimeIfNotActivatedUtc;
+
+ /*
+ * Provisioning state of the partner topic.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private PartnerTopicProvisioningState provisioningState;
+
+ /*
+ * Activation state of the partner topic.
+ */
+ @JsonProperty(value = "properties.activationState")
+ private PartnerTopicActivationState activationState;
+
+ /*
+ * Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner
+ * topic.
+ * This will be helpful to remove any ambiguity of the origin of creation
+ * of the partner topic for the customer.
+ */
+ @JsonProperty(value = "properties.partnerTopicFriendlyDescription")
+ private String partnerTopicFriendlyDescription;
+
+ /**
+ * Get the systemData property: The system metadata relating to Partner Topic resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the identity property: Identity information for the Partner Topic resource.
+ *
+ * @return the identity value.
+ */
+ public IdentityInfo identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: Identity information for the Partner Topic resource.
+ *
+ * @param identity the identity value to set.
+ * @return the PartnerTopicInner object itself.
+ */
+ public PartnerTopicInner withIdentity(IdentityInfo identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the source property: Source associated with this partner topic. This represents a unique partner resource.
+ *
+ * @return the source value.
+ */
+ public String source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source property: Source associated with this partner topic. This represents a unique partner resource.
+ *
+ * @param source the source value to set.
+ * @return the PartnerTopicInner object itself.
+ */
+ public PartnerTopicInner withSource(String source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the expirationTimeIfNotActivatedUtc property: Expiration time of the partner topic. If this timer expires
+ * while the partner topic is still never activated, the partner topic and corresponding event channel are deleted.
+ *
+ * @return the expirationTimeIfNotActivatedUtc value.
+ */
+ public OffsetDateTime expirationTimeIfNotActivatedUtc() {
+ return this.expirationTimeIfNotActivatedUtc;
+ }
+
+ /**
+ * Set the expirationTimeIfNotActivatedUtc property: Expiration time of the partner topic. If this timer expires
+ * while the partner topic is still never activated, the partner topic and corresponding event channel are deleted.
+ *
+ * @param expirationTimeIfNotActivatedUtc the expirationTimeIfNotActivatedUtc value to set.
+ * @return the PartnerTopicInner object itself.
+ */
+ public PartnerTopicInner withExpirationTimeIfNotActivatedUtc(OffsetDateTime expirationTimeIfNotActivatedUtc) {
+ this.expirationTimeIfNotActivatedUtc = expirationTimeIfNotActivatedUtc;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the partner topic.
+ *
+ * @return the provisioningState value.
+ */
+ public PartnerTopicProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the activationState property: Activation state of the partner topic.
+ *
+ * @return the activationState value.
+ */
+ public PartnerTopicActivationState activationState() {
+ return this.activationState;
+ }
+
+ /**
+ * Set the activationState property: Activation state of the partner topic.
+ *
+ * @param activationState the activationState value to set.
+ * @return the PartnerTopicInner object itself.
+ */
+ public PartnerTopicInner withActivationState(PartnerTopicActivationState activationState) {
+ this.activationState = activationState;
+ return this;
+ }
+
+ /**
+ * Get the partnerTopicFriendlyDescription property: Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner topic. This will be helpful to remove any
+ * ambiguity of the origin of creation of the partner topic for the customer.
+ *
+ * @return the partnerTopicFriendlyDescription value.
+ */
+ public String partnerTopicFriendlyDescription() {
+ return this.partnerTopicFriendlyDescription;
+ }
+
+ /**
+ * Set the partnerTopicFriendlyDescription property: Friendly description about the topic. This can be set by the
+ * publisher/partner to show custom description for the customer partner topic. This will be helpful to remove any
+ * ambiguity of the origin of creation of the partner topic for the customer.
+ *
+ * @param partnerTopicFriendlyDescription the partnerTopicFriendlyDescription value to set.
+ * @return the PartnerTopicInner object itself.
+ */
+ public PartnerTopicInner withPartnerTopicFriendlyDescription(String partnerTopicFriendlyDescription) {
+ this.partnerTopicFriendlyDescription = partnerTopicFriendlyDescription;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerTopicInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public PartnerTopicInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (identity() != null) {
+ identity().validate();
+ }
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/SystemTopicInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/SystemTopicInner.java
new file mode 100644
index 0000000000000..68934a58ddc47
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/SystemTopicInner.java
@@ -0,0 +1,171 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.IdentityInfo;
+import com.azure.resourcemanager.eventgrid.models.ResourceProvisioningState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** EventGrid System Topic. */
+@JsonFlatten
+@Fluent
+public class SystemTopicInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SystemTopicInner.class);
+
+ /*
+ * The system metadata relating to System Topic resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Identity information for the resource.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityInfo identity;
+
+ /*
+ * Provisioning state of the system topic.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ResourceProvisioningState provisioningState;
+
+ /*
+ * Source for the system topic.
+ */
+ @JsonProperty(value = "properties.source")
+ private String source;
+
+ /*
+ * TopicType for the system topic.
+ */
+ @JsonProperty(value = "properties.topicType")
+ private String topicType;
+
+ /*
+ * Metric resource id for the system topic.
+ */
+ @JsonProperty(value = "properties.metricResourceId", access = JsonProperty.Access.WRITE_ONLY)
+ private String metricResourceId;
+
+ /**
+ * Get the systemData property: The system metadata relating to System Topic resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the identity property: Identity information for the resource.
+ *
+ * @return the identity value.
+ */
+ public IdentityInfo identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: Identity information for the resource.
+ *
+ * @param identity the identity value to set.
+ * @return the SystemTopicInner object itself.
+ */
+ public SystemTopicInner withIdentity(IdentityInfo identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the system topic.
+ *
+ * @return the provisioningState value.
+ */
+ public ResourceProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the source property: Source for the system topic.
+ *
+ * @return the source value.
+ */
+ public String source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source property: Source for the system topic.
+ *
+ * @param source the source value to set.
+ * @return the SystemTopicInner object itself.
+ */
+ public SystemTopicInner withSource(String source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the topicType property: TopicType for the system topic.
+ *
+ * @return the topicType value.
+ */
+ public String topicType() {
+ return this.topicType;
+ }
+
+ /**
+ * Set the topicType property: TopicType for the system topic.
+ *
+ * @param topicType the topicType value to set.
+ * @return the SystemTopicInner object itself.
+ */
+ public SystemTopicInner withTopicType(String topicType) {
+ this.topicType = topicType;
+ return this;
+ }
+
+ /**
+ * Get the metricResourceId property: Metric resource id for the system topic.
+ *
+ * @return the metricResourceId value.
+ */
+ public String metricResourceId() {
+ return this.metricResourceId;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SystemTopicInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SystemTopicInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (identity() != null) {
+ identity().validate();
+ }
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicInner.java
index 39f6d0864eb71..509f9d84387e4 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicInner.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicInner.java
@@ -9,10 +9,14 @@
import com.azure.core.management.Resource;
import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.eventgrid.models.ExtendedLocation;
+import com.azure.resourcemanager.eventgrid.models.IdentityInfo;
import com.azure.resourcemanager.eventgrid.models.InboundIpRule;
import com.azure.resourcemanager.eventgrid.models.InputSchema;
import com.azure.resourcemanager.eventgrid.models.InputSchemaMapping;
import com.azure.resourcemanager.eventgrid.models.PublicNetworkAccess;
+import com.azure.resourcemanager.eventgrid.models.ResourceKind;
+import com.azure.resourcemanager.eventgrid.models.ResourceSku;
import com.azure.resourcemanager.eventgrid.models.TopicProvisioningState;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -25,6 +29,30 @@
public class TopicInner extends Resource {
@JsonIgnore private final ClientLogger logger = new ClientLogger(TopicInner.class);
+ /*
+ * The Sku pricing tier for the topic.
+ */
+ @JsonProperty(value = "sku")
+ private ResourceSku sku;
+
+ /*
+ * Identity information for the resource.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityInfo identity;
+
+ /*
+ * Kind of the resource.
+ */
+ @JsonProperty(value = "kind")
+ private ResourceKind kind;
+
+ /*
+ * Extended location of the resource.
+ */
+ @JsonProperty(value = "extendedLocation")
+ private ExtendedLocation extendedLocation;
+
/*
* The system metadata relating to Topic resource.
*/
@@ -88,6 +116,94 @@ public class TopicInner extends Resource {
@JsonProperty(value = "properties.inboundIpRules")
private List inboundIpRules;
+ /*
+ * This boolean is used to enable or disable local auth. Default value is
+ * false. When the property is set to true, only AAD token will be used to
+ * authenticate if user is allowed to publish to the topic.
+ */
+ @JsonProperty(value = "properties.disableLocalAuth")
+ private Boolean disableLocalAuth;
+
+ /**
+ * Get the sku property: The Sku pricing tier for the topic.
+ *
+ * @return the sku value.
+ */
+ public ResourceSku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku property: The Sku pricing tier for the topic.
+ *
+ * @param sku the sku value to set.
+ * @return the TopicInner object itself.
+ */
+ public TopicInner withSku(ResourceSku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the identity property: Identity information for the resource.
+ *
+ * @return the identity value.
+ */
+ public IdentityInfo identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: Identity information for the resource.
+ *
+ * @param identity the identity value to set.
+ * @return the TopicInner object itself.
+ */
+ public TopicInner withIdentity(IdentityInfo identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the kind property: Kind of the resource.
+ *
+ * @return the kind value.
+ */
+ public ResourceKind kind() {
+ return this.kind;
+ }
+
+ /**
+ * Set the kind property: Kind of the resource.
+ *
+ * @param kind the kind value to set.
+ * @return the TopicInner object itself.
+ */
+ public TopicInner withKind(ResourceKind kind) {
+ this.kind = kind;
+ return this;
+ }
+
+ /**
+ * Get the extendedLocation property: Extended location of the resource.
+ *
+ * @return the extendedLocation value.
+ */
+ public ExtendedLocation extendedLocation() {
+ return this.extendedLocation;
+ }
+
+ /**
+ * Set the extendedLocation property: Extended location of the resource.
+ *
+ * @param extendedLocation the extendedLocation value to set.
+ * @return the TopicInner object itself.
+ */
+ public TopicInner withExtendedLocation(ExtendedLocation extendedLocation) {
+ this.extendedLocation = extendedLocation;
+ return this;
+ }
+
/**
* Get the systemData property: The system metadata relating to Topic resource.
*
@@ -225,6 +341,30 @@ public TopicInner withInboundIpRules(List inboundIpRules) {
return this;
}
+ /**
+ * Get the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the topic.
+ *
+ * @return the disableLocalAuth value.
+ */
+ public Boolean disableLocalAuth() {
+ return this.disableLocalAuth;
+ }
+
+ /**
+ * Set the disableLocalAuth property: This boolean is used to enable or disable local auth. Default value is false.
+ * When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to
+ * the topic.
+ *
+ * @param disableLocalAuth the disableLocalAuth value to set.
+ * @return the TopicInner object itself.
+ */
+ public TopicInner withDisableLocalAuth(Boolean disableLocalAuth) {
+ this.disableLocalAuth = disableLocalAuth;
+ return this;
+ }
+
/** {@inheritDoc} */
@Override
public TopicInner withLocation(String location) {
@@ -245,6 +385,15 @@ public TopicInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
+ if (sku() != null) {
+ sku().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
+ if (extendedLocation() != null) {
+ extendedLocation().validate();
+ }
if (privateEndpointConnections() != null) {
privateEndpointConnections().forEach(e -> e.validate());
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicTypeInfoInner.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicTypeInfoInner.java
index 2c47fb5cc7925..bec9d15a43969 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicTypeInfoInner.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/fluent/models/TopicTypeInfoInner.java
@@ -9,6 +9,7 @@
import com.azure.core.management.ProxyResource;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.eventgrid.models.ResourceRegionType;
+import com.azure.resourcemanager.eventgrid.models.TopicTypePropertiesSupportedScopesForSourceItem;
import com.azure.resourcemanager.eventgrid.models.TopicTypeProvisioningState;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -62,6 +63,12 @@ public class TopicTypeInfoInner extends ProxyResource {
@JsonProperty(value = "properties.sourceResourceFormat")
private String sourceResourceFormat;
+ /*
+ * Supported source scopes.
+ */
+ @JsonProperty(value = "properties.supportedScopesForSource")
+ private List supportedScopesForSource;
+
/**
* Get the provider property: Namespace of the provider of the topic type.
*
@@ -202,6 +209,27 @@ public TopicTypeInfoInner withSourceResourceFormat(String sourceResourceFormat)
return this;
}
+ /**
+ * Get the supportedScopesForSource property: Supported source scopes.
+ *
+ * @return the supportedScopesForSource value.
+ */
+ public List supportedScopesForSource() {
+ return this.supportedScopesForSource;
+ }
+
+ /**
+ * Set the supportedScopesForSource property: Supported source scopes.
+ *
+ * @param supportedScopesForSource the supportedScopesForSource value to set.
+ * @return the TopicTypeInfoInner object itself.
+ */
+ public TopicTypeInfoInner withSupportedScopesForSource(
+ List supportedScopesForSource) {
+ this.supportedScopesForSource = supportedScopesForSource;
+ return this;
+ }
+
/**
* Validates the instance.
*
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DeliveryAttributeListResultImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DeliveryAttributeListResultImpl.java
new file mode 100644
index 0000000000000..7d3e04860133f
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DeliveryAttributeListResultImpl.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.eventgrid.implementation;
+
+import com.azure.resourcemanager.eventgrid.fluent.models.DeliveryAttributeListResultInner;
+import com.azure.resourcemanager.eventgrid.models.DeliveryAttributeListResult;
+import com.azure.resourcemanager.eventgrid.models.DeliveryAttributeMapping;
+import java.util.Collections;
+import java.util.List;
+
+public final class DeliveryAttributeListResultImpl implements DeliveryAttributeListResult {
+ private DeliveryAttributeListResultInner innerObject;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ DeliveryAttributeListResultImpl(
+ DeliveryAttributeListResultInner innerObject,
+ com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public List value() {
+ List inner = this.innerModel().value();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public DeliveryAttributeListResultInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DomainImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DomainImpl.java
index f8d34eb52ab2d..d8e544de82853 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DomainImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/DomainImpl.java
@@ -15,11 +15,13 @@
import com.azure.resourcemanager.eventgrid.models.DomainRegenerateKeyRequest;
import com.azure.resourcemanager.eventgrid.models.DomainSharedAccessKeys;
import com.azure.resourcemanager.eventgrid.models.DomainUpdateParameters;
+import com.azure.resourcemanager.eventgrid.models.IdentityInfo;
import com.azure.resourcemanager.eventgrid.models.InboundIpRule;
import com.azure.resourcemanager.eventgrid.models.InputSchema;
import com.azure.resourcemanager.eventgrid.models.InputSchemaMapping;
import com.azure.resourcemanager.eventgrid.models.PrivateEndpointConnection;
import com.azure.resourcemanager.eventgrid.models.PublicNetworkAccess;
+import com.azure.resourcemanager.eventgrid.models.ResourceSku;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -55,6 +57,14 @@ public Map tags() {
}
}
+ public ResourceSku sku() {
+ return this.innerModel().sku();
+ }
+
+ public IdentityInfo identity() {
+ return this.innerModel().identity();
+ }
+
public SystemData systemData() {
return this.innerModel().systemData();
}
@@ -106,6 +116,18 @@ public List inboundIpRules() {
}
}
+ public Boolean disableLocalAuth() {
+ return this.innerModel().disableLocalAuth();
+ }
+
+ public Boolean autoCreateTopicWithFirstSubscription() {
+ return this.innerModel().autoCreateTopicWithFirstSubscription();
+ }
+
+ public Boolean autoDeleteTopicWithLastSubscription() {
+ return this.innerModel().autoDeleteTopicWithLastSubscription();
+ }
+
public Region region() {
return Region.fromName(this.regionName());
}
@@ -246,6 +268,26 @@ public DomainImpl withTags(Map tags) {
}
}
+ public DomainImpl withSku(ResourceSku sku) {
+ if (isInCreateMode()) {
+ this.innerModel().withSku(sku);
+ return this;
+ } else {
+ this.updateDomainUpdateParameters.withSku(sku);
+ return this;
+ }
+ }
+
+ public DomainImpl withIdentity(IdentityInfo identity) {
+ if (isInCreateMode()) {
+ this.innerModel().withIdentity(identity);
+ return this;
+ } else {
+ this.updateDomainUpdateParameters.withIdentity(identity);
+ return this;
+ }
+ }
+
public DomainImpl withInputSchema(InputSchema inputSchema) {
this.innerModel().withInputSchema(inputSchema);
return this;
@@ -276,6 +318,40 @@ public DomainImpl withInboundIpRules(List inboundIpRules) {
}
}
+ public DomainImpl withDisableLocalAuth(Boolean disableLocalAuth) {
+ if (isInCreateMode()) {
+ this.innerModel().withDisableLocalAuth(disableLocalAuth);
+ return this;
+ } else {
+ this.updateDomainUpdateParameters.withDisableLocalAuth(disableLocalAuth);
+ return this;
+ }
+ }
+
+ public DomainImpl withAutoCreateTopicWithFirstSubscription(Boolean autoCreateTopicWithFirstSubscription) {
+ if (isInCreateMode()) {
+ this.innerModel().withAutoCreateTopicWithFirstSubscription(autoCreateTopicWithFirstSubscription);
+ return this;
+ } else {
+ this
+ .updateDomainUpdateParameters
+ .withAutoCreateTopicWithFirstSubscription(autoCreateTopicWithFirstSubscription);
+ return this;
+ }
+ }
+
+ public DomainImpl withAutoDeleteTopicWithLastSubscription(Boolean autoDeleteTopicWithLastSubscription) {
+ if (isInCreateMode()) {
+ this.innerModel().withAutoDeleteTopicWithLastSubscription(autoDeleteTopicWithLastSubscription);
+ return this;
+ } else {
+ this
+ .updateDomainUpdateParameters
+ .withAutoDeleteTopicWithLastSubscription(autoDeleteTopicWithLastSubscription);
+ return this;
+ }
+ }
+
private boolean isInCreateMode() {
return this.innerModel().id() == null;
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelImpl.java
new file mode 100644
index 0000000000000..dcb410c72bd27
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelImpl.java
@@ -0,0 +1,194 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.implementation;
+
+import com.azure.core.management.SystemData;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventChannelInner;
+import com.azure.resourcemanager.eventgrid.models.EventChannel;
+import com.azure.resourcemanager.eventgrid.models.EventChannelDestination;
+import com.azure.resourcemanager.eventgrid.models.EventChannelFilter;
+import com.azure.resourcemanager.eventgrid.models.EventChannelProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.EventChannelSource;
+import com.azure.resourcemanager.eventgrid.models.PartnerTopicReadinessState;
+import java.time.OffsetDateTime;
+
+public final class EventChannelImpl implements EventChannel, EventChannel.Definition, EventChannel.Update {
+ private EventChannelInner innerObject;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public SystemData systemData() {
+ return this.innerModel().systemData();
+ }
+
+ public EventChannelSource source() {
+ return this.innerModel().source();
+ }
+
+ public EventChannelDestination destination() {
+ return this.innerModel().destination();
+ }
+
+ public EventChannelProvisioningState provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public PartnerTopicReadinessState partnerTopicReadinessState() {
+ return this.innerModel().partnerTopicReadinessState();
+ }
+
+ public OffsetDateTime expirationTimeIfNotActivatedUtc() {
+ return this.innerModel().expirationTimeIfNotActivatedUtc();
+ }
+
+ public EventChannelFilter filter() {
+ return this.innerModel().filter();
+ }
+
+ public String partnerTopicFriendlyDescription() {
+ return this.innerModel().partnerTopicFriendlyDescription();
+ }
+
+ public EventChannelInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String partnerNamespaceName;
+
+ private String eventChannelName;
+
+ public EventChannelImpl withExistingPartnerNamespace(String resourceGroupName, String partnerNamespaceName) {
+ this.resourceGroupName = resourceGroupName;
+ this.partnerNamespaceName = partnerNamespaceName;
+ return this;
+ }
+
+ public EventChannel create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .createOrUpdateWithResponse(
+ resourceGroupName, partnerNamespaceName, eventChannelName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public EventChannel create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .createOrUpdateWithResponse(
+ resourceGroupName, partnerNamespaceName, eventChannelName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ EventChannelImpl(String name, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = new EventChannelInner();
+ this.serviceManager = serviceManager;
+ this.eventChannelName = name;
+ }
+
+ public EventChannelImpl update() {
+ return this;
+ }
+
+ public EventChannel apply() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .createOrUpdateWithResponse(
+ resourceGroupName, partnerNamespaceName, eventChannelName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public EventChannel apply(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .createOrUpdateWithResponse(
+ resourceGroupName, partnerNamespaceName, eventChannelName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ EventChannelImpl(
+ EventChannelInner innerObject, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+ this.partnerNamespaceName = Utils.getValueFromIdByName(innerObject.id(), "partnerNamespaces");
+ this.eventChannelName = Utils.getValueFromIdByName(innerObject.id(), "eventChannels");
+ }
+
+ public EventChannel refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .getWithResponse(resourceGroupName, partnerNamespaceName, eventChannelName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public EventChannel refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getEventChannels()
+ .getWithResponse(resourceGroupName, partnerNamespaceName, eventChannelName, context)
+ .getValue();
+ return this;
+ }
+
+ public EventChannelImpl withSource(EventChannelSource source) {
+ this.innerModel().withSource(source);
+ return this;
+ }
+
+ public EventChannelImpl withDestination(EventChannelDestination destination) {
+ this.innerModel().withDestination(destination);
+ return this;
+ }
+
+ public EventChannelImpl withExpirationTimeIfNotActivatedUtc(OffsetDateTime expirationTimeIfNotActivatedUtc) {
+ this.innerModel().withExpirationTimeIfNotActivatedUtc(expirationTimeIfNotActivatedUtc);
+ return this;
+ }
+
+ public EventChannelImpl withFilter(EventChannelFilter filter) {
+ this.innerModel().withFilter(filter);
+ return this;
+ }
+
+ public EventChannelImpl withPartnerTopicFriendlyDescription(String partnerTopicFriendlyDescription) {
+ this.innerModel().withPartnerTopicFriendlyDescription(partnerTopicFriendlyDescription);
+ return this;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsClientImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsClientImpl.java
new file mode 100644
index 0000000000000..4777a20734439
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsClientImpl.java
@@ -0,0 +1,1096 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.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.eventgrid.fluent.EventChannelsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventChannelInner;
+import com.azure.resourcemanager.eventgrid.models.EventChannelsListResult;
+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 EventChannelsClient. */
+public final class EventChannelsClientImpl implements EventChannelsClient {
+ private final ClientLogger logger = new ClientLogger(EventChannelsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final EventChannelsService service;
+
+ /** The service client containing this operation class. */
+ private final EventGridManagementClientImpl client;
+
+ /**
+ * Initializes an instance of EventChannelsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ EventChannelsClientImpl(EventGridManagementClientImpl client) {
+ this.service =
+ RestProxy.create(EventChannelsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for EventGridManagementClientEventChannels to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "EventGridManagementC")
+ private interface EventChannelsService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @PathParam("eventChannelName") String eventChannelName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> createOrUpdate(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @PathParam("eventChannelName") String eventChannelName,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") EventChannelInner eventChannelInfo,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @PathParam("eventChannelName") String eventChannelName,
+ @QueryParam("api-version") String apiVersion,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/eventChannels")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByPartnerNamespace(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @QueryParam("$filter") String filter,
+ @QueryParam("$top") Integer top,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByPartnerNamespaceNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 properties of an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .get(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 properties of an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .get(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ accept,
+ context);
+ }
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 properties of an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ return getWithResponseAsync(resourceGroupName, partnerNamespaceName, eventChannelName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 properties of an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public EventChannelInner get(String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ return getAsync(resourceGroupName, partnerNamespaceName, eventChannelName).block();
+ }
+
+ /**
+ * Get properties of an event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 properties of an event channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ return getWithResponseAsync(resourceGroupName, partnerNamespaceName, eventChannelName, context).block();
+ }
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ if (eventChannelInfo == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelInfo is required and cannot be null."));
+ } else {
+ eventChannelInfo.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ eventChannelInfo,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ if (eventChannelInfo == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelInfo is required and cannot be null."));
+ } else {
+ eventChannelInfo.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ eventChannelInfo,
+ accept,
+ context);
+ }
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo) {
+ return createOrUpdateWithResponseAsync(
+ resourceGroupName, partnerNamespaceName, eventChannelName, eventChannelInfo)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public EventChannelInner createOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo) {
+ return createOrUpdateAsync(resourceGroupName, partnerNamespaceName, eventChannelName, eventChannelInfo).block();
+ }
+
+ /**
+ * Asynchronously creates a new event channel with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @param eventChannelInfo EventChannel information.
+ * @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 event Channel.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response createOrUpdateWithResponse(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ String eventChannelName,
+ EventChannelInner eventChannelInfo,
+ Context context) {
+ return createOrUpdateWithResponseAsync(
+ resourceGroupName, partnerNamespaceName, eventChannelName, eventChannelInfo, context)
+ .block();
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (eventChannelName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventChannelName is required and cannot be null."));
+ }
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ eventChannelName,
+ this.client.getApiVersion(),
+ context);
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 PollerFlux, Void> beginDeleteAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ Mono>> mono =
+ deleteWithResponseAsync(resourceGroupName, partnerNamespaceName, eventChannelName);
+ return this
+ .client
+ .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 PollerFlux, Void> beginDeleteAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ deleteWithResponseAsync(resourceGroupName, partnerNamespaceName, eventChannelName, context);
+ return this
+ .client
+ .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, context);
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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)
+ public SyncPoller, Void> beginDelete(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName).getSyncPoller();
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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)
+ public SyncPoller, Void> beginDelete(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName, context).getSyncPoller();
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 deleteAsync(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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 partnerNamespaceName, String eventChannelName) {
+ deleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName).block();
+ }
+
+ /**
+ * Delete existing event channel.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param eventChannelName Name of the event channel.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ deleteAsync(resourceGroupName, partnerNamespaceName, eventChannelName, context).block();
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByPartnerNamespaceSinglePageAsync(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listByPartnerNamespace(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ filter,
+ top,
+ 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()));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByPartnerNamespaceSinglePageAsync(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByPartnerNamespace(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ filter,
+ top,
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByPartnerNamespaceAsync(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top) {
+ return new PagedFlux<>(
+ () -> listByPartnerNamespaceSinglePageAsync(resourceGroupName, partnerNamespaceName, filter, top),
+ nextLink -> listByPartnerNamespaceNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByPartnerNamespaceAsync(
+ String resourceGroupName, String partnerNamespaceName) {
+ final String filter = null;
+ final Integer top = null;
+ return new PagedFlux<>(
+ () -> listByPartnerNamespaceSinglePageAsync(resourceGroupName, partnerNamespaceName, filter, top),
+ nextLink -> listByPartnerNamespaceNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByPartnerNamespaceAsync(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top, Context context) {
+ return new PagedFlux<>(
+ () -> listByPartnerNamespaceSinglePageAsync(resourceGroupName, partnerNamespaceName, filter, top, context),
+ nextLink -> listByPartnerNamespaceNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByPartnerNamespace(
+ String resourceGroupName, String partnerNamespaceName) {
+ final String filter = null;
+ final Integer top = null;
+ return new PagedIterable<>(listByPartnerNamespaceAsync(resourceGroupName, partnerNamespaceName, filter, top));
+ }
+
+ /**
+ * List all the event channels in a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByPartnerNamespace(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top, Context context) {
+ return new PagedIterable<>(
+ listByPartnerNamespaceAsync(resourceGroupName, partnerNamespaceName, filter, top, 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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByPartnerNamespaceNextSinglePageAsync(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.listByPartnerNamespaceNext(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 result of the List Event Channels operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByPartnerNamespaceNextSinglePageAsync(
+ 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
+ .listByPartnerNamespaceNext(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/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsImpl.java
new file mode 100644
index 0000000000000..0691a98141b26
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventChannelsImpl.java
@@ -0,0 +1,200 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.eventgrid.fluent.EventChannelsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.EventChannelInner;
+import com.azure.resourcemanager.eventgrid.models.EventChannel;
+import com.azure.resourcemanager.eventgrid.models.EventChannels;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class EventChannelsImpl implements EventChannels {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(EventChannelsImpl.class);
+
+ private final EventChannelsClient innerClient;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ public EventChannelsImpl(
+ EventChannelsClient innerClient, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public EventChannel get(String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ EventChannelInner inner = this.serviceClient().get(resourceGroupName, partnerNamespaceName, eventChannelName);
+ if (inner != null) {
+ return new EventChannelImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getWithResponse(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ Response inner =
+ this.serviceClient().getWithResponse(resourceGroupName, partnerNamespaceName, eventChannelName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new EventChannelImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public void delete(String resourceGroupName, String partnerNamespaceName, String eventChannelName) {
+ this.serviceClient().delete(resourceGroupName, partnerNamespaceName, eventChannelName);
+ }
+
+ public void delete(
+ String resourceGroupName, String partnerNamespaceName, String eventChannelName, Context context) {
+ this.serviceClient().delete(resourceGroupName, partnerNamespaceName, eventChannelName, context);
+ }
+
+ public PagedIterable listByPartnerNamespace(String resourceGroupName, String partnerNamespaceName) {
+ PagedIterable inner =
+ this.serviceClient().listByPartnerNamespace(resourceGroupName, partnerNamespaceName);
+ return Utils.mapPage(inner, inner1 -> new EventChannelImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listByPartnerNamespace(
+ String resourceGroupName, String partnerNamespaceName, String filter, Integer top, Context context) {
+ PagedIterable inner =
+ this.serviceClient().listByPartnerNamespace(resourceGroupName, partnerNamespaceName, filter, top, context);
+ return Utils.mapPage(inner, inner1 -> new EventChannelImpl(inner1, this.manager()));
+ }
+
+ public EventChannel 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 partnerNamespaceName = Utils.getValueFromIdByName(id, "partnerNamespaces");
+ if (partnerNamespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'partnerNamespaces'.", id)));
+ }
+ String eventChannelName = Utils.getValueFromIdByName(id, "eventChannels");
+ if (eventChannelName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'eventChannels'.", id)));
+ }
+ return this.getWithResponse(resourceGroupName, partnerNamespaceName, eventChannelName, 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 partnerNamespaceName = Utils.getValueFromIdByName(id, "partnerNamespaces");
+ if (partnerNamespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'partnerNamespaces'.", id)));
+ }
+ String eventChannelName = Utils.getValueFromIdByName(id, "eventChannels");
+ if (eventChannelName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'eventChannels'.", id)));
+ }
+ return this.getWithResponse(resourceGroupName, partnerNamespaceName, eventChannelName, 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 partnerNamespaceName = Utils.getValueFromIdByName(id, "partnerNamespaces");
+ if (partnerNamespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'partnerNamespaces'.", id)));
+ }
+ String eventChannelName = Utils.getValueFromIdByName(id, "eventChannels");
+ if (eventChannelName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'eventChannels'.", id)));
+ }
+ this.delete(resourceGroupName, partnerNamespaceName, eventChannelName, Context.NONE);
+ }
+
+ public void 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 partnerNamespaceName = Utils.getValueFromIdByName(id, "partnerNamespaces");
+ if (partnerNamespaceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format(
+ "The resource ID '%s' is not valid. Missing path segment 'partnerNamespaces'.", id)));
+ }
+ String eventChannelName = Utils.getValueFromIdByName(id, "eventChannels");
+ if (eventChannelName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'eventChannels'.", id)));
+ }
+ this.delete(resourceGroupName, partnerNamespaceName, eventChannelName, context);
+ }
+
+ private EventChannelsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+
+ public EventChannelImpl define(String name) {
+ return new EventChannelImpl(name, this.manager());
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventGridManagementClientImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventGridManagementClientImpl.java
index 70695d22e1b2b..44f9253c52e1b 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventGridManagementClientImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventGridManagementClientImpl.java
@@ -23,11 +23,19 @@
import com.azure.core.util.serializer.SerializerEncoding;
import com.azure.resourcemanager.eventgrid.fluent.DomainTopicsClient;
import com.azure.resourcemanager.eventgrid.fluent.DomainsClient;
+import com.azure.resourcemanager.eventgrid.fluent.EventChannelsClient;
import com.azure.resourcemanager.eventgrid.fluent.EventGridManagementClient;
import com.azure.resourcemanager.eventgrid.fluent.EventSubscriptionsClient;
+import com.azure.resourcemanager.eventgrid.fluent.ExtensionTopicsClient;
import com.azure.resourcemanager.eventgrid.fluent.OperationsClient;
+import com.azure.resourcemanager.eventgrid.fluent.PartnerNamespacesClient;
+import com.azure.resourcemanager.eventgrid.fluent.PartnerRegistrationsClient;
+import com.azure.resourcemanager.eventgrid.fluent.PartnerTopicEventSubscriptionsClient;
+import com.azure.resourcemanager.eventgrid.fluent.PartnerTopicsClient;
import com.azure.resourcemanager.eventgrid.fluent.PrivateEndpointConnectionsClient;
import com.azure.resourcemanager.eventgrid.fluent.PrivateLinkResourcesClient;
+import com.azure.resourcemanager.eventgrid.fluent.SystemTopicEventSubscriptionsClient;
+import com.azure.resourcemanager.eventgrid.fluent.SystemTopicsClient;
import com.azure.resourcemanager.eventgrid.fluent.TopicTypesClient;
import com.azure.resourcemanager.eventgrid.fluent.TopicsClient;
import java.io.IOException;
@@ -145,6 +153,18 @@ public DomainTopicsClient getDomainTopics() {
return this.domainTopics;
}
+ /** The EventChannelsClient object to access its operations. */
+ private final EventChannelsClient eventChannels;
+
+ /**
+ * Gets the EventChannelsClient object to access its operations.
+ *
+ * @return the EventChannelsClient object.
+ */
+ public EventChannelsClient getEventChannels() {
+ return this.eventChannels;
+ }
+
/** The EventSubscriptionsClient object to access its operations. */
private final EventSubscriptionsClient eventSubscriptions;
@@ -157,6 +177,30 @@ public EventSubscriptionsClient getEventSubscriptions() {
return this.eventSubscriptions;
}
+ /** The SystemTopicEventSubscriptionsClient object to access its operations. */
+ private final SystemTopicEventSubscriptionsClient systemTopicEventSubscriptions;
+
+ /**
+ * Gets the SystemTopicEventSubscriptionsClient object to access its operations.
+ *
+ * @return the SystemTopicEventSubscriptionsClient object.
+ */
+ public SystemTopicEventSubscriptionsClient getSystemTopicEventSubscriptions() {
+ return this.systemTopicEventSubscriptions;
+ }
+
+ /** The PartnerTopicEventSubscriptionsClient object to access its operations. */
+ private final PartnerTopicEventSubscriptionsClient partnerTopicEventSubscriptions;
+
+ /**
+ * Gets the PartnerTopicEventSubscriptionsClient object to access its operations.
+ *
+ * @return the PartnerTopicEventSubscriptionsClient object.
+ */
+ public PartnerTopicEventSubscriptionsClient getPartnerTopicEventSubscriptions() {
+ return this.partnerTopicEventSubscriptions;
+ }
+
/** The OperationsClient object to access its operations. */
private final OperationsClient operations;
@@ -169,16 +213,40 @@ public OperationsClient getOperations() {
return this.operations;
}
- /** The TopicsClient object to access its operations. */
- private final TopicsClient topics;
+ /** The PartnerNamespacesClient object to access its operations. */
+ private final PartnerNamespacesClient partnerNamespaces;
/**
- * Gets the TopicsClient object to access its operations.
+ * Gets the PartnerNamespacesClient object to access its operations.
*
- * @return the TopicsClient object.
+ * @return the PartnerNamespacesClient object.
*/
- public TopicsClient getTopics() {
- return this.topics;
+ public PartnerNamespacesClient getPartnerNamespaces() {
+ return this.partnerNamespaces;
+ }
+
+ /** The PartnerRegistrationsClient object to access its operations. */
+ private final PartnerRegistrationsClient partnerRegistrations;
+
+ /**
+ * Gets the PartnerRegistrationsClient object to access its operations.
+ *
+ * @return the PartnerRegistrationsClient object.
+ */
+ public PartnerRegistrationsClient getPartnerRegistrations() {
+ return this.partnerRegistrations;
+ }
+
+ /** The PartnerTopicsClient object to access its operations. */
+ private final PartnerTopicsClient partnerTopics;
+
+ /**
+ * Gets the PartnerTopicsClient object to access its operations.
+ *
+ * @return the PartnerTopicsClient object.
+ */
+ public PartnerTopicsClient getPartnerTopics() {
+ return this.partnerTopics;
}
/** The PrivateEndpointConnectionsClient object to access its operations. */
@@ -205,6 +273,42 @@ public PrivateLinkResourcesClient getPrivateLinkResources() {
return this.privateLinkResources;
}
+ /** The SystemTopicsClient object to access its operations. */
+ private final SystemTopicsClient systemTopics;
+
+ /**
+ * Gets the SystemTopicsClient object to access its operations.
+ *
+ * @return the SystemTopicsClient object.
+ */
+ public SystemTopicsClient getSystemTopics() {
+ return this.systemTopics;
+ }
+
+ /** The TopicsClient object to access its operations. */
+ private final TopicsClient topics;
+
+ /**
+ * Gets the TopicsClient object to access its operations.
+ *
+ * @return the TopicsClient object.
+ */
+ public TopicsClient getTopics() {
+ return this.topics;
+ }
+
+ /** The ExtensionTopicsClient object to access its operations. */
+ private final ExtensionTopicsClient extensionTopics;
+
+ /**
+ * Gets the ExtensionTopicsClient object to access its operations.
+ *
+ * @return the ExtensionTopicsClient object.
+ */
+ public ExtensionTopicsClient getExtensionTopics() {
+ return this.extensionTopics;
+ }
+
/** The TopicTypesClient object to access its operations. */
private final TopicTypesClient topicTypes;
@@ -240,14 +344,22 @@ public TopicTypesClient getTopicTypes() {
this.defaultPollInterval = defaultPollInterval;
this.subscriptionId = subscriptionId;
this.endpoint = endpoint;
- this.apiVersion = "2020-06-01";
+ this.apiVersion = "2021-06-01-preview";
this.domains = new DomainsClientImpl(this);
this.domainTopics = new DomainTopicsClientImpl(this);
+ this.eventChannels = new EventChannelsClientImpl(this);
this.eventSubscriptions = new EventSubscriptionsClientImpl(this);
+ this.systemTopicEventSubscriptions = new SystemTopicEventSubscriptionsClientImpl(this);
+ this.partnerTopicEventSubscriptions = new PartnerTopicEventSubscriptionsClientImpl(this);
this.operations = new OperationsClientImpl(this);
- this.topics = new TopicsClientImpl(this);
+ this.partnerNamespaces = new PartnerNamespacesClientImpl(this);
+ this.partnerRegistrations = new PartnerRegistrationsClientImpl(this);
+ this.partnerTopics = new PartnerTopicsClientImpl(this);
this.privateEndpointConnections = new PrivateEndpointConnectionsClientImpl(this);
this.privateLinkResources = new PrivateLinkResourcesClientImpl(this);
+ this.systemTopics = new SystemTopicsClientImpl(this);
+ this.topics = new TopicsClientImpl(this);
+ this.extensionTopics = new ExtensionTopicsClientImpl(this);
this.topicTypes = new TopicTypesClientImpl(this);
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionImpl.java
index 2818991461e19..8b141b6ed28cb 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionImpl.java
@@ -9,6 +9,9 @@
import com.azure.core.util.Context;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
import com.azure.resourcemanager.eventgrid.models.DeadLetterDestination;
+import com.azure.resourcemanager.eventgrid.models.DeadLetterWithResourceIdentity;
+import com.azure.resourcemanager.eventgrid.models.DeliveryAttributeListResult;
+import com.azure.resourcemanager.eventgrid.models.DeliveryWithResourceIdentity;
import com.azure.resourcemanager.eventgrid.models.EventDeliverySchema;
import com.azure.resourcemanager.eventgrid.models.EventSubscription;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionDestination;
@@ -55,6 +58,10 @@ public EventSubscriptionDestination destination() {
return this.innerModel().destination();
}
+ public DeliveryWithResourceIdentity deliveryWithResourceIdentity() {
+ return this.innerModel().deliveryWithResourceIdentity();
+ }
+
public EventSubscriptionFilter filter() {
return this.innerModel().filter();
}
@@ -84,6 +91,10 @@ public DeadLetterDestination deadLetterDestination() {
return this.innerModel().deadLetterDestination();
}
+ public DeadLetterWithResourceIdentity deadLetterWithResourceIdentity() {
+ return this.innerModel().deadLetterWithResourceIdentity();
+ }
+
public EventSubscriptionInner innerModel() {
return this.innerObject;
}
@@ -196,6 +207,16 @@ public Response getFullUrlWithResponse(Context context
return serviceManager.eventSubscriptions().getFullUrlWithResponse(scope, eventSubscriptionName, context);
}
+ public DeliveryAttributeListResult getDeliveryAttributes() {
+ return serviceManager.eventSubscriptions().getDeliveryAttributes(scope, eventSubscriptionName);
+ }
+
+ public Response getDeliveryAttributesWithResponse(Context context) {
+ return serviceManager
+ .eventSubscriptions()
+ .getDeliveryAttributesWithResponse(scope, eventSubscriptionName, context);
+ }
+
public EventSubscriptionImpl withDestination(EventSubscriptionDestination destination) {
if (isInCreateMode()) {
this.innerModel().withDestination(destination);
@@ -206,6 +227,17 @@ public EventSubscriptionImpl withDestination(EventSubscriptionDestination destin
}
}
+ public EventSubscriptionImpl withDeliveryWithResourceIdentity(
+ DeliveryWithResourceIdentity deliveryWithResourceIdentity) {
+ if (isInCreateMode()) {
+ this.innerModel().withDeliveryWithResourceIdentity(deliveryWithResourceIdentity);
+ return this;
+ } else {
+ this.updateEventSubscriptionUpdateParameters.withDeliveryWithResourceIdentity(deliveryWithResourceIdentity);
+ return this;
+ }
+ }
+
public EventSubscriptionImpl withFilter(EventSubscriptionFilter filter) {
if (isInCreateMode()) {
this.innerModel().withFilter(filter);
@@ -266,6 +298,19 @@ public EventSubscriptionImpl withDeadLetterDestination(DeadLetterDestination dea
}
}
+ public EventSubscriptionImpl withDeadLetterWithResourceIdentity(
+ DeadLetterWithResourceIdentity deadLetterWithResourceIdentity) {
+ if (isInCreateMode()) {
+ this.innerModel().withDeadLetterWithResourceIdentity(deadLetterWithResourceIdentity);
+ return this;
+ } else {
+ this
+ .updateEventSubscriptionUpdateParameters
+ .withDeadLetterWithResourceIdentity(deadLetterWithResourceIdentity);
+ return this;
+ }
+ }
+
private boolean isInCreateMode() {
return this.innerModel().id() == null;
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsClientImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsClientImpl.java
index 560801820537d..95b9b7c19ae54 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsClientImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsClientImpl.java
@@ -35,6 +35,7 @@
import com.azure.core.util.polling.PollerFlux;
import com.azure.core.util.polling.SyncPoller;
import com.azure.resourcemanager.eventgrid.fluent.EventSubscriptionsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.DeliveryAttributeListResultInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionFullUrlInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionUpdateParameters;
@@ -297,6 +298,18 @@ Mono> listByDomainTopic(
@HeaderParam("Accept") String accept,
Context context);
+ @Headers({"Content-Type: application/json"})
+ @Post("/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getDeliveryAttributes(
+ @HostParam("$host") String endpoint,
+ @PathParam(value = "scope", encoded = true) String scope,
+ @PathParam("eventSubscriptionName") String eventSubscriptionName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@@ -4210,6 +4223,172 @@ public PagedIterable listByDomainTopic(
listByDomainTopicAsync(resourceGroupName, domainName, topicName, filter, top, context));
}
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event subscription.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getDeliveryAttributesWithResponseAsync(
+ String scope, String eventSubscriptionName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (scope == null) {
+ return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
+ }
+ if (eventSubscriptionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventSubscriptionName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getDeliveryAttributes(
+ this.client.getEndpoint(),
+ scope,
+ eventSubscriptionName,
+ this.client.getApiVersion(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event subscription.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getDeliveryAttributesWithResponseAsync(
+ String scope, String eventSubscriptionName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (scope == null) {
+ return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
+ }
+ if (eventSubscriptionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter eventSubscriptionName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getDeliveryAttributes(
+ this.client.getEndpoint(), scope, eventSubscriptionName, this.client.getApiVersion(), accept, context);
+ }
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event subscription.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getDeliveryAttributesAsync(
+ String scope, String eventSubscriptionName) {
+ return getDeliveryAttributesWithResponseAsync(scope, eventSubscriptionName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event subscription.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public DeliveryAttributeListResultInner getDeliveryAttributes(String scope, String eventSubscriptionName) {
+ return getDeliveryAttributesAsync(scope, eventSubscriptionName).block();
+ }
+
+ /**
+ * Get all delivery attributes for an event subscription.
+ *
+ * @param scope The scope of the event subscription. The scope can be a subscription, or a resource group, or a top
+ * level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for a resource, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
+ * for an EventGrid topic.
+ * @param eventSubscriptionName Name of the event subscription.
+ * @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 delivery attributes for an event subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getDeliveryAttributesWithResponse(
+ String scope, String eventSubscriptionName, Context context) {
+ return getDeliveryAttributesWithResponseAsync(scope, eventSubscriptionName, context).block();
+ }
+
/**
* Get the next page of items.
*
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsImpl.java
index a9b5934c36a8d..8ead64ccd47df 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/EventSubscriptionsImpl.java
@@ -10,8 +10,10 @@
import com.azure.core.util.Context;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.eventgrid.fluent.EventSubscriptionsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.DeliveryAttributeListResultInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionFullUrlInner;
import com.azure.resourcemanager.eventgrid.fluent.models.EventSubscriptionInner;
+import com.azure.resourcemanager.eventgrid.models.DeliveryAttributeListResult;
import com.azure.resourcemanager.eventgrid.models.EventSubscription;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptionFullUrl;
import com.azure.resourcemanager.eventgrid.models.EventSubscriptions;
@@ -229,6 +231,31 @@ public PagedIterable listByDomainTopic(
return Utils.mapPage(inner, inner1 -> new EventSubscriptionImpl(inner1, this.manager()));
}
+ public DeliveryAttributeListResult getDeliveryAttributes(String scope, String eventSubscriptionName) {
+ DeliveryAttributeListResultInner inner =
+ this.serviceClient().getDeliveryAttributes(scope, eventSubscriptionName);
+ if (inner != null) {
+ return new DeliveryAttributeListResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getDeliveryAttributesWithResponse(
+ String scope, String eventSubscriptionName, Context context) {
+ Response inner =
+ this.serviceClient().getDeliveryAttributesWithResponse(scope, eventSubscriptionName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new DeliveryAttributeListResultImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
public EventSubscription getById(String id) {
String scope =
Utils
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicImpl.java
new file mode 100644
index 0000000000000..2df278d08898f
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicImpl.java
@@ -0,0 +1,48 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.implementation;
+
+import com.azure.resourcemanager.eventgrid.fluent.models.ExtensionTopicInner;
+import com.azure.resourcemanager.eventgrid.models.ExtensionTopic;
+
+public final class ExtensionTopicImpl implements ExtensionTopic {
+ private ExtensionTopicInner innerObject;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ ExtensionTopicImpl(
+ ExtensionTopicInner innerObject, com.azure.resourcemanager.eventgrid.EventGridManager 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 description() {
+ return this.innerModel().description();
+ }
+
+ public String systemTopic() {
+ return this.innerModel().systemTopic();
+ }
+
+ public ExtensionTopicInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsClientImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsClientImpl.java
new file mode 100644
index 0000000000000..ed08707601a3a
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsClientImpl.java
@@ -0,0 +1,197 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.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.eventgrid.fluent.ExtensionTopicsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.ExtensionTopicInner;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in ExtensionTopicsClient. */
+public final class ExtensionTopicsClientImpl implements ExtensionTopicsClient {
+ private final ClientLogger logger = new ClientLogger(ExtensionTopicsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final ExtensionTopicsService service;
+
+ /** The service client containing this operation class. */
+ private final EventGridManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ExtensionTopicsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ExtensionTopicsClientImpl(EventGridManagementClientImpl client) {
+ this.service =
+ RestProxy.create(ExtensionTopicsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for EventGridManagementClientExtensionTopics to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "EventGridManagementC")
+ private interface ExtensionTopicsService {
+ @Headers({"Content-Type: application/json"})
+ @Get("/{scope}/providers/Microsoft.EventGrid/extensionTopics/default")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @PathParam("scope") String scope,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure resource.
+ * @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 properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String scope) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (scope == null) {
+ return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.get(this.client.getEndpoint(), scope, this.client.getApiVersion(), accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure resource.
+ * @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 properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String scope, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (scope == null) {
+ return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.get(this.client.getEndpoint(), scope, this.client.getApiVersion(), accept, context);
+ }
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure resource.
+ * @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 properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(String scope) {
+ return getWithResponseAsync(scope)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure resource.
+ * @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 properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ExtensionTopicInner get(String scope) {
+ return getAsync(scope).block();
+ }
+
+ /**
+ * Get the properties of an extension topic.
+ *
+ * @param scope The identifier of the resource to which extension topic is queried. The scope can be a subscription,
+ * or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+ * '/subscriptions/{subscriptionId}/' for a subscription,
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+ * for Azure resource.
+ * @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 properties of an extension topic.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(String scope, Context context) {
+ return getWithResponseAsync(scope, context).block();
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsImpl.java
new file mode 100644
index 0000000000000..653a268053811
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/ExtensionTopicsImpl.java
@@ -0,0 +1,59 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.implementation;
+
+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.eventgrid.fluent.ExtensionTopicsClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.ExtensionTopicInner;
+import com.azure.resourcemanager.eventgrid.models.ExtensionTopic;
+import com.azure.resourcemanager.eventgrid.models.ExtensionTopics;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class ExtensionTopicsImpl implements ExtensionTopics {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ExtensionTopicsImpl.class);
+
+ private final ExtensionTopicsClient innerClient;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ public ExtensionTopicsImpl(
+ ExtensionTopicsClient innerClient, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public ExtensionTopic get(String scope) {
+ ExtensionTopicInner inner = this.serviceClient().get(scope);
+ if (inner != null) {
+ return new ExtensionTopicImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getWithResponse(String scope, Context context) {
+ Response inner = this.serviceClient().getWithResponse(scope, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ExtensionTopicImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ private ExtensionTopicsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/OperationImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/OperationImpl.java
index f2138c1b4780e..2073d27d6ffa5 100644
--- a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/OperationImpl.java
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/OperationImpl.java
@@ -30,6 +30,10 @@ public String origin() {
return this.innerModel().origin();
}
+ public Boolean isDataAction() {
+ return this.innerModel().isDataAction();
+ }
+
public Object properties() {
return this.innerModel().properties();
}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceImpl.java
new file mode 100644
index 0000000000000..23cb6935485b1
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceImpl.java
@@ -0,0 +1,287 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.implementation;
+
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.Region;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.eventgrid.fluent.models.PartnerNamespaceInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.PrivateEndpointConnectionInner;
+import com.azure.resourcemanager.eventgrid.models.InboundIpRule;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespace;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceProvisioningState;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceRegenerateKeyRequest;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceSharedAccessKeys;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceUpdateParameters;
+import com.azure.resourcemanager.eventgrid.models.PrivateEndpointConnection;
+import com.azure.resourcemanager.eventgrid.models.PublicNetworkAccess;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+public final class PartnerNamespaceImpl
+ implements PartnerNamespace, PartnerNamespace.Definition, PartnerNamespace.Update {
+ private PartnerNamespaceInner innerObject;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String location() {
+ return this.innerModel().location();
+ }
+
+ public Map tags() {
+ Map inner = this.innerModel().tags();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
+ public SystemData systemData() {
+ return this.innerModel().systemData();
+ }
+
+ public List privateEndpointConnections() {
+ List inner = this.innerModel().privateEndpointConnections();
+ if (inner != null) {
+ return Collections
+ .unmodifiableList(
+ inner
+ .stream()
+ .map(inner1 -> new PrivateEndpointConnectionImpl(inner1, this.manager()))
+ .collect(Collectors.toList()));
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public PartnerNamespaceProvisioningState provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public String partnerRegistrationFullyQualifiedId() {
+ return this.innerModel().partnerRegistrationFullyQualifiedId();
+ }
+
+ public String endpoint() {
+ return this.innerModel().endpoint();
+ }
+
+ public PublicNetworkAccess publicNetworkAccess() {
+ return this.innerModel().publicNetworkAccess();
+ }
+
+ public List inboundIpRules() {
+ List inner = this.innerModel().inboundIpRules();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public Boolean disableLocalAuth() {
+ return this.innerModel().disableLocalAuth();
+ }
+
+ public Region region() {
+ return Region.fromName(this.regionName());
+ }
+
+ public String regionName() {
+ return this.location();
+ }
+
+ public PartnerNamespaceInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String partnerNamespaceName;
+
+ private PartnerNamespaceUpdateParameters updatePartnerNamespaceUpdateParameters;
+
+ public PartnerNamespaceImpl withExistingResourceGroup(String resourceGroupName) {
+ this.resourceGroupName = resourceGroupName;
+ return this;
+ }
+
+ public PartnerNamespace create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .createOrUpdate(resourceGroupName, partnerNamespaceName, this.innerModel(), Context.NONE);
+ return this;
+ }
+
+ public PartnerNamespace create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .createOrUpdate(resourceGroupName, partnerNamespaceName, this.innerModel(), context);
+ return this;
+ }
+
+ PartnerNamespaceImpl(String name, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = new PartnerNamespaceInner();
+ this.serviceManager = serviceManager;
+ this.partnerNamespaceName = name;
+ }
+
+ public PartnerNamespaceImpl update() {
+ this.updatePartnerNamespaceUpdateParameters = new PartnerNamespaceUpdateParameters();
+ return this;
+ }
+
+ public PartnerNamespace apply() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .update(resourceGroupName, partnerNamespaceName, updatePartnerNamespaceUpdateParameters, Context.NONE);
+ return this;
+ }
+
+ public PartnerNamespace apply(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .update(resourceGroupName, partnerNamespaceName, updatePartnerNamespaceUpdateParameters, context);
+ return this;
+ }
+
+ PartnerNamespaceImpl(
+ PartnerNamespaceInner innerObject, com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+ this.partnerNamespaceName = Utils.getValueFromIdByName(innerObject.id(), "partnerNamespaces");
+ }
+
+ public PartnerNamespace refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .getByResourceGroupWithResponse(resourceGroupName, partnerNamespaceName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public PartnerNamespace refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getPartnerNamespaces()
+ .getByResourceGroupWithResponse(resourceGroupName, partnerNamespaceName, context)
+ .getValue();
+ return this;
+ }
+
+ public PartnerNamespaceSharedAccessKeys listSharedAccessKeys() {
+ return serviceManager.partnerNamespaces().listSharedAccessKeys(resourceGroupName, partnerNamespaceName);
+ }
+
+ public Response listSharedAccessKeysWithResponse(Context context) {
+ return serviceManager
+ .partnerNamespaces()
+ .listSharedAccessKeysWithResponse(resourceGroupName, partnerNamespaceName, context);
+ }
+
+ public PartnerNamespaceSharedAccessKeys regenerateKey(PartnerNamespaceRegenerateKeyRequest regenerateKeyRequest) {
+ return serviceManager
+ .partnerNamespaces()
+ .regenerateKey(resourceGroupName, partnerNamespaceName, regenerateKeyRequest);
+ }
+
+ public Response regenerateKeyWithResponse(
+ PartnerNamespaceRegenerateKeyRequest regenerateKeyRequest, Context context) {
+ return serviceManager
+ .partnerNamespaces()
+ .regenerateKeyWithResponse(resourceGroupName, partnerNamespaceName, regenerateKeyRequest, context);
+ }
+
+ public PartnerNamespaceImpl withRegion(Region location) {
+ this.innerModel().withLocation(location.toString());
+ return this;
+ }
+
+ public PartnerNamespaceImpl withRegion(String location) {
+ this.innerModel().withLocation(location);
+ return this;
+ }
+
+ public PartnerNamespaceImpl withTags(Map tags) {
+ if (isInCreateMode()) {
+ this.innerModel().withTags(tags);
+ return this;
+ } else {
+ this.updatePartnerNamespaceUpdateParameters.withTags(tags);
+ return this;
+ }
+ }
+
+ public PartnerNamespaceImpl withPartnerRegistrationFullyQualifiedId(String partnerRegistrationFullyQualifiedId) {
+ this.innerModel().withPartnerRegistrationFullyQualifiedId(partnerRegistrationFullyQualifiedId);
+ return this;
+ }
+
+ public PartnerNamespaceImpl withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) {
+ if (isInCreateMode()) {
+ this.innerModel().withPublicNetworkAccess(publicNetworkAccess);
+ return this;
+ } else {
+ this.updatePartnerNamespaceUpdateParameters.withPublicNetworkAccess(publicNetworkAccess);
+ return this;
+ }
+ }
+
+ public PartnerNamespaceImpl withInboundIpRules(List inboundIpRules) {
+ if (isInCreateMode()) {
+ this.innerModel().withInboundIpRules(inboundIpRules);
+ return this;
+ } else {
+ this.updatePartnerNamespaceUpdateParameters.withInboundIpRules(inboundIpRules);
+ return this;
+ }
+ }
+
+ public PartnerNamespaceImpl withDisableLocalAuth(Boolean disableLocalAuth) {
+ if (isInCreateMode()) {
+ this.innerModel().withDisableLocalAuth(disableLocalAuth);
+ return this;
+ } else {
+ this.updatePartnerNamespaceUpdateParameters.withDisableLocalAuth(disableLocalAuth);
+ return this;
+ }
+ }
+
+ private boolean isInCreateMode() {
+ return this.innerModel().id() == null;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceSharedAccessKeysImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceSharedAccessKeysImpl.java
new file mode 100644
index 0000000000000..acdb6eb4281cd
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespaceSharedAccessKeysImpl.java
@@ -0,0 +1,37 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.implementation;
+
+import com.azure.resourcemanager.eventgrid.fluent.models.PartnerNamespaceSharedAccessKeysInner;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceSharedAccessKeys;
+
+public final class PartnerNamespaceSharedAccessKeysImpl implements PartnerNamespaceSharedAccessKeys {
+ private PartnerNamespaceSharedAccessKeysInner innerObject;
+
+ private final com.azure.resourcemanager.eventgrid.EventGridManager serviceManager;
+
+ PartnerNamespaceSharedAccessKeysImpl(
+ PartnerNamespaceSharedAccessKeysInner innerObject,
+ com.azure.resourcemanager.eventgrid.EventGridManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String key1() {
+ return this.innerModel().key1();
+ }
+
+ public String key2() {
+ return this.innerModel().key2();
+ }
+
+ public PartnerNamespaceSharedAccessKeysInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.eventgrid.EventGridManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespacesClientImpl.java b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespacesClientImpl.java
new file mode 100644
index 0000000000000..5ea1f6f26d08b
--- /dev/null
+++ b/sdk/eventgrid/azure-resourcemanager-eventgrid/src/main/java/com/azure/resourcemanager/eventgrid/implementation/PartnerNamespacesClientImpl.java
@@ -0,0 +1,2105 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.eventgrid.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.Patch;
+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.eventgrid.fluent.PartnerNamespacesClient;
+import com.azure.resourcemanager.eventgrid.fluent.models.PartnerNamespaceInner;
+import com.azure.resourcemanager.eventgrid.fluent.models.PartnerNamespaceSharedAccessKeysInner;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceRegenerateKeyRequest;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespaceUpdateParameters;
+import com.azure.resourcemanager.eventgrid.models.PartnerNamespacesListResult;
+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 PartnerNamespacesClient. */
+public final class PartnerNamespacesClientImpl implements PartnerNamespacesClient {
+ private final ClientLogger logger = new ClientLogger(PartnerNamespacesClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final PartnerNamespacesService service;
+
+ /** The service client containing this operation class. */
+ private final EventGridManagementClientImpl client;
+
+ /**
+ * Initializes an instance of PartnerNamespacesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ PartnerNamespacesClientImpl(EventGridManagementClientImpl client) {
+ this.service =
+ RestProxy.create(PartnerNamespacesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for EventGridManagementClientPartnerNamespaces to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "EventGridManagementC")
+ private interface PartnerNamespacesService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}")
+ @ExpectedResponses({201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> createOrUpdate(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") PartnerNamespaceInner partnerNamespaceInfo,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Patch(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> update(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerNamespaces")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @QueryParam("$filter") String filter,
+ @QueryParam("$top") Integer top,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @QueryParam("api-version") String apiVersion,
+ @QueryParam("$filter") String filter,
+ @QueryParam("$top") Integer top,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/listKeys")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listSharedAccessKeys(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid"
+ + "/partnerNamespaces/{partnerNamespaceName}/regenerateKey")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> regenerateKey(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("partnerNamespaceName") String partnerNamespaceName,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") PartnerNamespaceRegenerateKeyRequest regenerateKeyRequest,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listBySubscriptionNext(
+ @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> listByResourceGroupNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 properties of a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String partnerNamespaceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 properties of a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String partnerNamespaceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ accept,
+ context);
+ }
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 properties of a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getByResourceGroupAsync(String resourceGroupName, String partnerNamespaceName) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, partnerNamespaceName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 properties of a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public PartnerNamespaceInner getByResourceGroup(String resourceGroupName, String partnerNamespaceName) {
+ return getByResourceGroupAsync(resourceGroupName, partnerNamespaceName).block();
+ }
+
+ /**
+ * Get properties of a partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 properties of a partner namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByResourceGroupWithResponse(
+ String resourceGroupName, String partnerNamespaceName, Context context) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, partnerNamespaceName, context).block();
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createOrUpdateWithResponseAsync(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (partnerNamespaceInfo == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceInfo is required and cannot be null."));
+ } else {
+ partnerNamespaceInfo.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ partnerNamespaceInfo,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createOrUpdateWithResponseAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (partnerNamespaceInfo == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceInfo is required and cannot be null."));
+ } else {
+ partnerNamespaceInfo.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ partnerNamespaceInfo,
+ accept,
+ context);
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PollerFlux, PartnerNamespaceInner> beginCreateOrUpdateAsync(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo) {
+ Mono>> mono =
+ createOrUpdateWithResponseAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo);
+ return this
+ .client
+ .getLroResult(
+ mono,
+ this.client.getHttpPipeline(),
+ PartnerNamespaceInner.class,
+ PartnerNamespaceInner.class,
+ Context.NONE);
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private PollerFlux, PartnerNamespaceInner> beginCreateOrUpdateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ createOrUpdateWithResponseAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo, context);
+ return this
+ .client
+ .getLroResult(
+ mono, this.client.getHttpPipeline(), PartnerNamespaceInner.class, PartnerNamespaceInner.class, context);
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SyncPoller, PartnerNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo) {
+ return beginCreateOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo).getSyncPoller();
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SyncPoller, PartnerNamespaceInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context) {
+ return beginCreateOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo) {
+ return beginCreateOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context) {
+ return beginCreateOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public PartnerNamespaceInner createOrUpdate(
+ String resourceGroupName, String partnerNamespaceName, PartnerNamespaceInner partnerNamespaceInfo) {
+ return createOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo).block();
+ }
+
+ /**
+ * Asynchronously creates a new partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceInfo PartnerNamespace information.
+ * @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 eventGrid Partner Namespace.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public PartnerNamespaceInner createOrUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceInner partnerNamespaceInfo,
+ Context context) {
+ return createOrUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceInfo, context).block();
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ context);
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String partnerNamespaceName) {
+ Mono>> mono = deleteWithResponseAsync(resourceGroupName, partnerNamespaceName);
+ return this
+ .client
+ .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 PollerFlux, Void> beginDeleteAsync(
+ String resourceGroupName, String partnerNamespaceName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ deleteWithResponseAsync(resourceGroupName, partnerNamespaceName, context);
+ return this
+ .client
+ .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, context);
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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)
+ public SyncPoller, Void> beginDelete(String resourceGroupName, String partnerNamespaceName) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName).getSyncPoller();
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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)
+ public SyncPoller, Void> beginDelete(
+ String resourceGroupName, String partnerNamespaceName, Context context) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, context).getSyncPoller();
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 deleteAsync(String resourceGroupName, String partnerNamespaceName, Context context) {
+ return beginDeleteAsync(resourceGroupName, partnerNamespaceName, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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 partnerNamespaceName) {
+ deleteAsync(resourceGroupName, partnerNamespaceName).block();
+ }
+
+ /**
+ * Delete existing partner namespace.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String partnerNamespaceName, Context context) {
+ deleteAsync(resourceGroupName, partnerNamespaceName, context).block();
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private Mono>> updateWithResponseAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (partnerNamespaceUpdateParameters == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter partnerNamespaceUpdateParameters is required and cannot be null."));
+ } else {
+ partnerNamespaceUpdateParameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .update(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ partnerNamespaceUpdateParameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private Mono>> updateWithResponseAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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 (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (partnerNamespaceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter partnerNamespaceName is required and cannot be null."));
+ }
+ if (partnerNamespaceUpdateParameters == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter partnerNamespaceUpdateParameters is required and cannot be null."));
+ } else {
+ partnerNamespaceUpdateParameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .update(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ partnerNamespaceName,
+ this.client.getApiVersion(),
+ partnerNamespaceUpdateParameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private PollerFlux, PartnerNamespaceInner> beginUpdateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters) {
+ Mono>> mono =
+ updateWithResponseAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters);
+ return this
+ .client
+ .getLroResult(
+ mono,
+ this.client.getHttpPipeline(),
+ PartnerNamespaceInner.class,
+ PartnerNamespaceInner.class,
+ Context.NONE);
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private PollerFlux, PartnerNamespaceInner> beginUpdateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ updateWithResponseAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters, context);
+ return this
+ .client
+ .getLroResult(
+ mono, this.client.getHttpPipeline(), PartnerNamespaceInner.class, PartnerNamespaceInner.class, context);
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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 SyncPoller, PartnerNamespaceInner> beginUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters) {
+ return beginUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters)
+ .getSyncPoller();
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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 SyncPoller, PartnerNamespaceInner> beginUpdate(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context) {
+ return beginUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private Mono updateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters) {
+ return beginUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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)
+ private Mono updateAsync(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context) {
+ return beginUpdateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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 PartnerNamespaceInner update(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters) {
+ return updateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters).block();
+ }
+
+ /**
+ * Asynchronously updates a partner namespace with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param partnerNamespaceName Name of the partner namespace.
+ * @param partnerNamespaceUpdateParameters Partner namespace update information.
+ * @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 PartnerNamespaceInner update(
+ String resourceGroupName,
+ String partnerNamespaceName,
+ PartnerNamespaceUpdateParameters partnerNamespaceUpdateParameters,
+ Context context) {
+ return updateAsync(resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters, context).block();
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(String filter, Integer top) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ filter,
+ top,
+ 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()));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String filter, Integer top, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() 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(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ filter,
+ top,
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String filter, Integer top) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(filter, top), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync() {
+ final String filter = null;
+ final Integer top = null;
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(filter, top), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String filter, Integer top, Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(filter, top, context),
+ nextLink -> listBySubscriptionNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list() {
+ final String filter = null;
+ final Integer top = null;
+ return new PagedIterable<>(listAsync(filter, top));
+ }
+
+ /**
+ * List all the partner namespaces under an Azure subscription.
+ *
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String filter, Integer top, Context context) {
+ return new PagedIterable<>(listAsync(filter, top, context));
+ }
+
+ /**
+ * List all the partner namespaces under a resource group.
+ *
+ * @param resourceGroupName The name of the resource group within the user's subscription.
+ * @param filter The query used to filter the search results using OData syntax. Filtering is permitted on the
+ * 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+ * function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+ * No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+ * 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+ * 'westus'.
+ * @param top The number of results to return per page for the list operation. Valid range for top parameter is 1 to
+ * 100. If not specified, the default number of results to be returned is 20 items per page.
+ * @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 result of the List Partner Namespaces operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono