diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt
index 29cf79b0db6f..3bd6c0cfa30f 100644
--- a/eng/versioning/version_client.txt
+++ b/eng/versioning/version_client.txt
@@ -340,6 +340,7 @@ com.azure.resourcemanager:azure-resourcemanager-securityinsights;1.0.0-beta.2;1.
com.azure.resourcemanager:azure-resourcemanager-oep;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-dnsresolver;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-mobilenetwork;1.0.0-beta.2;1.0.0-beta.3
+com.azure.resourcemanager:azure-resourcemanager-containerregistry-generated;1.0.0-beta.1;1.0.0-beta.1
com.azure.tools:azure-sdk-archetype;1.0.0;1.0.0
com.azure.tools:azure-sdk-build-tool;1.0.0-beta.1;1.0.0-beta.2
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/CHANGELOG.md b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/CHANGELOG.md
new file mode 100644
index 000000000000..f54ec479b5ba
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/CHANGELOG.md
@@ -0,0 +1,5 @@
+# Release History
+
+## 1.0.0-beta.1 (2022-03-25)
+
+- Azure Resource Manager ContainerRegistry client library for Java. This package contains Microsoft Azure SDK for ContainerRegistry Management SDK. Package tag package-preview-2022-02. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/README.md b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/README.md
new file mode 100644
index 000000000000..7f90e548a878
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/README.md
@@ -0,0 +1,102 @@
+# Azure Resource Manager ContainerRegistry client library for Java
+
+Azure Resource Manager ContainerRegistry client library for Java.
+
+This package contains Microsoft Azure SDK for ContainerRegistry Management SDK. Package tag package-preview-2022-02. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+## We'd love to hear your feedback
+
+We're always working on improving our products and the way we communicate with our users. So we'd love to learn what's working and how we can do better.
+
+If you haven't already, please take a few minutes to [complete this short survey][survey] we have put together.
+
+Thank you in advance for your collaboration. We really appreciate your time!
+
+## Documentation
+
+Various documentation is available to help you get started
+
+- [API reference documentation][docs]
+
+## Getting started
+
+### Prerequisites
+
+- [Java Development Kit (JDK)][jdk] with version 8 or above
+- [Azure Subscription][azure_subscription]
+
+### Adding the package to your product
+
+[//]: # ({x-version-update-start;com.azure.resourcemanager:azure-resourcemanager-containerregistry-generated;current})
+```xml
+
+ com.azure.resourcemanager
+ azure-resourcemanager-containerregistry-generated
+ 1.0.0-beta.1
+
+```
+[//]: # ({x-version-update-end})
+
+### Include the recommended packages
+
+Azure Management Libraries require a `TokenCredential` implementation for authentication and an `HttpClient` implementation for HTTP client.
+
+[Azure Identity][azure_identity] package and [Azure Core Netty HTTP][azure_core_http_netty] package provide the default implementation.
+
+### Authentication
+
+By default, Azure Active Directory token authentication depends on correct configure of following environment variables.
+
+- `AZURE_CLIENT_ID` for Azure client ID.
+- `AZURE_TENANT_ID` for Azure tenant ID.
+- `AZURE_CLIENT_SECRET` or `AZURE_CLIENT_CERTIFICATE_PATH` for client secret or client certificate.
+
+In addition, Azure subscription ID can be configured via environment variable `AZURE_SUBSCRIPTION_ID`.
+
+With above configuration, `azure` client can be authenticated by following code:
+
+```java
+AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
+TokenCredential credential = new DefaultAzureCredentialBuilder()
+ .authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
+ .build();
+ContainerRegistryManager manager = ContainerRegistryManager
+ .authenticate(credential, profile);
+```
+
+The sample code assumes global Azure. Please change `AzureEnvironment.AZURE` variable if otherwise.
+
+See [Authentication][authenticate] for more options.
+
+## Key concepts
+
+See [API design][design] for general introduction on design and key concepts on Azure Management Libraries.
+
+## Examples
+
+[Code snippets and samples](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/SAMPLE.md)
+
+
+## Troubleshooting
+
+## Next steps
+
+## Contributing
+
+For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md).
+
+1. Fork it
+1. Create your feature branch (`git checkout -b my-new-feature`)
+1. Commit your changes (`git commit -am 'Add some feature'`)
+1. Push to the branch (`git push origin my-new-feature`)
+1. Create new Pull Request
+
+
+[survey]: https://microsoft.qualtrics.com/jfe/form/SV_ehN0lIk2FKEBkwd?Q_CHL=DOCS
+[docs]: https://azure.github.io/azure-sdk-for-java/
+[jdk]: https://docs.microsoft.com/java/azure/jdk/
+[azure_subscription]: https://azure.microsoft.com/free/
+[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity
+[azure_core_http_netty]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/core/azure-core-http-netty
+[authenticate]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/AUTH.md
+[design]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/DESIGN.md
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/SAMPLE.md b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/SAMPLE.md
new file mode 100644
index 000000000000..e9aa0214f5f8
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/SAMPLE.md
@@ -0,0 +1,1933 @@
+# Code snippets and samples
+
+
+## ConnectedRegistries
+
+- [Create](#connectedregistries_create)
+- [Deactivate](#connectedregistries_deactivate)
+- [Delete](#connectedregistries_delete)
+- [Get](#connectedregistries_get)
+- [List](#connectedregistries_list)
+- [Update](#connectedregistries_update)
+
+## ExportPipelines
+
+- [Create](#exportpipelines_create)
+- [Delete](#exportpipelines_delete)
+- [Get](#exportpipelines_get)
+- [List](#exportpipelines_list)
+
+## ImportPipelines
+
+- [Create](#importpipelines_create)
+- [Delete](#importpipelines_delete)
+- [Get](#importpipelines_get)
+- [List](#importpipelines_list)
+
+## Operations
+
+- [List](#operations_list)
+
+## PipelineRuns
+
+- [Create](#pipelineruns_create)
+- [Delete](#pipelineruns_delete)
+- [Get](#pipelineruns_get)
+- [List](#pipelineruns_list)
+
+## PrivateEndpointConnections
+
+- [CreateOrUpdate](#privateendpointconnections_createorupdate)
+- [Delete](#privateendpointconnections_delete)
+- [Get](#privateendpointconnections_get)
+- [List](#privateendpointconnections_list)
+
+## Registries
+
+- [CheckNameAvailability](#registries_checknameavailability)
+- [Create](#registries_create)
+- [Delete](#registries_delete)
+- [GenerateCredentials](#registries_generatecredentials)
+- [GetByResourceGroup](#registries_getbyresourcegroup)
+- [GetPrivateLinkResource](#registries_getprivatelinkresource)
+- [ImportImage](#registries_importimage)
+- [List](#registries_list)
+- [ListByResourceGroup](#registries_listbyresourcegroup)
+- [ListCredentials](#registries_listcredentials)
+- [ListPrivateLinkResources](#registries_listprivatelinkresources)
+- [ListUsages](#registries_listusages)
+- [RegenerateCredential](#registries_regeneratecredential)
+- [Update](#registries_update)
+
+## Replications
+
+- [Create](#replications_create)
+- [Delete](#replications_delete)
+- [Get](#replications_get)
+- [List](#replications_list)
+- [Update](#replications_update)
+
+## ScopeMaps
+
+- [Create](#scopemaps_create)
+- [Delete](#scopemaps_delete)
+- [Get](#scopemaps_get)
+- [List](#scopemaps_list)
+- [Update](#scopemaps_update)
+
+## Tokens
+
+- [Create](#tokens_create)
+- [Delete](#tokens_delete)
+- [Get](#tokens_get)
+- [List](#tokens_list)
+- [Update](#tokens_update)
+
+## Webhooks
+
+- [Create](#webhooks_create)
+- [Delete](#webhooks_delete)
+- [Get](#webhooks_get)
+- [GetCallbackConfig](#webhooks_getcallbackconfig)
+- [List](#webhooks_list)
+- [ListEvents](#webhooks_listevents)
+- [Ping](#webhooks_ping)
+- [Update](#webhooks_update)
+### ConnectedRegistries_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryMode;
+import com.azure.resourcemanager.containerregistry.generated.models.ParentProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.SyncProperties;
+import java.time.Duration;
+import java.util.Arrays;
+
+/** Samples for ConnectedRegistries Create. */
+public final class ConnectedRegistriesCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryCreate.json
+ */
+ /**
+ * Sample code: ConnectedRegistryCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .connectedRegistries()
+ .define("myConnectedRegistry")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withMode(ConnectedRegistryMode.READ_WRITE)
+ .withParent(
+ new ParentProperties()
+ .withSyncProperties(
+ new SyncProperties()
+ .withTokenId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken")
+ .withSchedule("0 9 * * *")
+ .withSyncWindow(Duration.parse("PT3H"))
+ .withMessageTtl(Duration.parse("P2D"))))
+ .withClientTokenIds(
+ Arrays
+ .asList(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"))
+ .withNotificationsList(Arrays.asList("hello-world:*:*", "sample/repo/*:1.0:*"))
+ .create();
+ }
+}
+```
+
+### ConnectedRegistries_Deactivate
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ConnectedRegistries Deactivate. */
+public final class ConnectedRegistriesDeactivateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryDeactivate.json
+ */
+ /**
+ * Sample code: ConnectedRegistryDeactivate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryDeactivate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.connectedRegistries().deactivate("myResourceGroup", "myRegistry", "myConnectedRegistry", Context.NONE);
+ }
+}
+```
+
+### ConnectedRegistries_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ConnectedRegistries Delete. */
+public final class ConnectedRegistriesDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryDelete.json
+ */
+ /**
+ * Sample code: ConnectedRegistryDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.connectedRegistries().delete("myResourceGroup", "myRegistry", "myConnectedRegistry", Context.NONE);
+ }
+}
+```
+
+### ConnectedRegistries_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ConnectedRegistries Get. */
+public final class ConnectedRegistriesGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryGet.json
+ */
+ /**
+ * Sample code: ConnectedRegistryGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .connectedRegistries()
+ .getWithResponse("myResourceGroup", "myRegistry", "myConnectedRegistry", Context.NONE);
+ }
+}
+```
+
+### ConnectedRegistries_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ConnectedRegistries List. */
+public final class ConnectedRegistriesListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryList.json
+ */
+ /**
+ * Sample code: ConnectedRegistryList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.connectedRegistries().list("myResourceGroup", "myRegistry", null, Context.NONE);
+ }
+}
+```
+
+### ConnectedRegistries_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.AuditLogStatus;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistry;
+import com.azure.resourcemanager.containerregistry.generated.models.LogLevel;
+import com.azure.resourcemanager.containerregistry.generated.models.LoggingProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.SyncUpdateProperties;
+import java.time.Duration;
+import java.util.Arrays;
+
+/** Samples for ConnectedRegistries Update. */
+public final class ConnectedRegistriesUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ConnectedRegistryUpdate.json
+ */
+ /**
+ * Sample code: ConnectedRegistryUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void connectedRegistryUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ ConnectedRegistry resource =
+ manager
+ .connectedRegistries()
+ .getWithResponse("myResourceGroup", "myRegistry", "myScopeMap", Context.NONE)
+ .getValue();
+ resource
+ .update()
+ .withSyncProperties(
+ new SyncUpdateProperties()
+ .withSchedule("0 0 */10 * *")
+ .withSyncWindow(Duration.parse("P2D"))
+ .withMessageTtl(Duration.parse("P30D")))
+ .withLogging(
+ new LoggingProperties().withLogLevel(LogLevel.DEBUG).withAuditLogStatus(AuditLogStatus.ENABLED))
+ .withClientTokenIds(
+ Arrays
+ .asList(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client2Token"))
+ .withNotificationsList(Arrays.asList("hello-world:*:*", "sample/repo/*:1.0:*"))
+ .apply();
+ }
+}
+```
+
+### ExportPipelines_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.ExportPipelineTargetProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.ResourceIdentityType;
+import java.util.Arrays;
+
+/** Samples for ExportPipelines Create. */
+public final class ExportPipelinesCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ExportPipelineCreate.json
+ */
+ /**
+ * Sample code: ExportPipelineCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void exportPipelineCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .exportPipelines()
+ .define("myExportPipeline")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withRegion("westus")
+ .withIdentity(new IdentityProperties().withType(ResourceIdentityType.SYSTEM_ASSIGNED))
+ .withTarget(
+ new ExportPipelineTargetProperties()
+ .withType("AzureStorageBlobContainer")
+ .withUri("https://accountname.blob.core.windows.net/containername")
+ .withKeyVaultUri("https://myvault.vault.azure.net/secrets/acrexportsas"))
+ .withOptions(Arrays.asList(PipelineOptions.OVERWRITE_BLOBS))
+ .create();
+ }
+}
+```
+
+### ExportPipelines_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ExportPipelines Delete. */
+public final class ExportPipelinesDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ExportPipelineDelete.json
+ */
+ /**
+ * Sample code: ExportPipelineDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void exportPipelineDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.exportPipelines().delete("myResourceGroup", "myRegistry", "myExportPipeline", Context.NONE);
+ }
+}
+```
+
+### ExportPipelines_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ExportPipelines Get. */
+public final class ExportPipelinesGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ExportPipelineGet.json
+ */
+ /**
+ * Sample code: ExportPipelineGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void exportPipelineGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.exportPipelines().getWithResponse("myResourceGroup", "myRegistry", "myExportPipeline", Context.NONE);
+ }
+}
+```
+
+### ExportPipelines_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ExportPipelines List. */
+public final class ExportPipelinesListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ExportPipelineList.json
+ */
+ /**
+ * Sample code: ExportPipelineList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void exportPipelineList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.exportPipelines().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### ImportPipelines_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportPipelineSourceProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineSourceType;
+import com.azure.resourcemanager.containerregistry.generated.models.ResourceIdentityType;
+import com.azure.resourcemanager.containerregistry.generated.models.UserIdentityProperties;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for ImportPipelines Create. */
+public final class ImportPipelinesCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportPipelineCreate.json
+ */
+ /**
+ * Sample code: ImportPipelineCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importPipelineCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .importPipelines()
+ .define("myImportPipeline")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withRegion("westus")
+ .withIdentity(
+ new IdentityProperties()
+ .withType(ResourceIdentityType.USER_ASSIGNED)
+ .withUserAssignedIdentities(
+ mapOf(
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2",
+ new UserIdentityProperties())))
+ .withSource(
+ new ImportPipelineSourceProperties()
+ .withType(PipelineSourceType.AZURE_STORAGE_BLOB_CONTAINER)
+ .withUri("https://accountname.blob.core.windows.net/containername")
+ .withKeyVaultUri("https://myvault.vault.azure.net/secrets/acrimportsas"))
+ .withOptions(
+ Arrays
+ .asList(
+ PipelineOptions.OVERWRITE_TAGS,
+ PipelineOptions.DELETE_SOURCE_BLOB_ON_SUCCESS,
+ PipelineOptions.CONTINUE_ON_ERRORS))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### ImportPipelines_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ImportPipelines Delete. */
+public final class ImportPipelinesDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportPipelineDelete.json
+ */
+ /**
+ * Sample code: ImportPipelineDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importPipelineDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.importPipelines().delete("myResourceGroup", "myRegistry", "myImportPipeline", Context.NONE);
+ }
+}
+```
+
+### ImportPipelines_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ImportPipelines Get. */
+public final class ImportPipelinesGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportPipelineGet.json
+ */
+ /**
+ * Sample code: ImportPipelineGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importPipelineGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.importPipelines().getWithResponse("myResourceGroup", "myRegistry", "myImportPipeline", Context.NONE);
+ }
+}
+```
+
+### ImportPipelines_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ImportPipelines List. */
+public final class ImportPipelinesListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportPipelineList.json
+ */
+ /**
+ * Sample code: ImportPipelineList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importPipelineList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.importPipelines().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Operations_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Operations List. */
+public final class OperationsListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/OperationList.json
+ */
+ /**
+ * Sample code: OperationList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void operationList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.operations().list(Context.NONE);
+ }
+}
+```
+
+### PipelineRuns_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunRequest;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunSourceProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunSourceType;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunTargetProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunTargetType;
+import java.util.Arrays;
+
+/** Samples for PipelineRuns Create. */
+public final class PipelineRunsCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PipelineRunCreate_Import.json
+ */
+ /**
+ * Sample code: PipelineRunCreate_Import.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void pipelineRunCreateImport(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .pipelineRuns()
+ .define("myPipelineRun")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withRequest(
+ new PipelineRunRequest()
+ .withPipelineResourceId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline")
+ .withSource(
+ new PipelineRunSourceProperties()
+ .withType(PipelineRunSourceType.AZURE_STORAGE_BLOB)
+ .withName("myblob.tar.gz"))
+ .withCatalogDigest("sha256@"))
+ .withForceUpdateTag("2020-03-04T17:23:21.9261521+00:00")
+ .create();
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PipelineRunCreate_Export.json
+ */
+ /**
+ * Sample code: PipelineRunCreate_Export.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void pipelineRunCreateExport(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .pipelineRuns()
+ .define("myPipelineRun")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withRequest(
+ new PipelineRunRequest()
+ .withPipelineResourceId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline")
+ .withArtifacts(
+ Arrays
+ .asList(
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"))
+ .withTarget(
+ new PipelineRunTargetProperties()
+ .withType(PipelineRunTargetType.AZURE_STORAGE_BLOB)
+ .withName("myblob.tar.gz")))
+ .create();
+ }
+}
+```
+
+### PipelineRuns_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PipelineRuns Delete. */
+public final class PipelineRunsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PipelineRunDelete.json
+ */
+ /**
+ * Sample code: PipelineRunDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void pipelineRunDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.pipelineRuns().delete("myResourceGroup", "myRegistry", "myPipelineRun", Context.NONE);
+ }
+}
+```
+
+### PipelineRuns_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PipelineRuns Get. */
+public final class PipelineRunsGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PipelineRunGet.json
+ */
+ /**
+ * Sample code: PipelineRunGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void pipelineRunGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.pipelineRuns().getWithResponse("myResourceGroup", "myRegistry", "myPipelineRun", Context.NONE);
+ }
+}
+```
+
+### PipelineRuns_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PipelineRuns List. */
+public final class PipelineRunsListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PipelineRunList.json
+ */
+ /**
+ * Sample code: PipelineRunList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void pipelineRunList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.pipelineRuns().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### PrivateEndpointConnections_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectionStatus;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateLinkServiceConnectionState;
+
+/** Samples for PrivateEndpointConnections CreateOrUpdate. */
+public final class PrivateEndpointConnectionsCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json
+ */
+ /**
+ * Sample code: PrivateEndpointConnectionCreateOrUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void privateEndpointConnectionCreateOrUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .privateEndpointConnections()
+ .define("myConnection")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withPrivateLinkServiceConnectionState(
+ new PrivateLinkServiceConnectionState()
+ .withStatus(ConnectionStatus.APPROVED)
+ .withDescription("Auto-Approved"))
+ .create();
+ }
+}
+```
+
+### PrivateEndpointConnections_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PrivateEndpointConnections Delete. */
+public final class PrivateEndpointConnectionsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PrivateEndpointConnectionDelete.json
+ */
+ /**
+ * Sample code: PrivateEndpointConnectionDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void privateEndpointConnectionDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.privateEndpointConnections().delete("myResourceGroup", "myRegistry", "myConnection", Context.NONE);
+ }
+}
+```
+
+### PrivateEndpointConnections_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PrivateEndpointConnections Get. */
+public final class PrivateEndpointConnectionsGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PrivateEndpointConnectionGet.json
+ */
+ /**
+ * Sample code: PrivateEndpointConnectionGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void privateEndpointConnectionGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .privateEndpointConnections()
+ .getWithResponse("myResourceGroup", "myRegistry", "myConnection", Context.NONE);
+ }
+}
+```
+
+### PrivateEndpointConnections_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for PrivateEndpointConnections List. */
+public final class PrivateEndpointConnectionsListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/PrivateEndpointConnectionList.json
+ */
+ /**
+ * Sample code: PrivateEndpointConnectionList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void privateEndpointConnectionList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.privateEndpointConnections().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_CheckNameAvailability
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.RegistryNameCheckRequest;
+
+/** Samples for Registries CheckNameAvailability. */
+public final class RegistriesCheckNameAvailabilitySamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryCheckNameAvailable.json
+ */
+ /**
+ * Sample code: RegistryCheckNameAvailable.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryCheckNameAvailable(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .checkNameAvailabilityWithResponse(new RegistryNameCheckRequest().withName("myRegistry"), Context.NONE);
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryCheckNameNotAvailable.json
+ */
+ /**
+ * Sample code: RegistryCheckNameNotAvailable.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryCheckNameNotAvailable(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .checkNameAvailabilityWithResponse(new RegistryNameCheckRequest().withName("myRegistry"), Context.NONE);
+ }
+}
+```
+
+### Registries_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.Sku;
+import com.azure.resourcemanager.containerregistry.generated.models.SkuName;
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Registries Create. */
+public final class RegistriesCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryCreateZoneRedundant.json
+ */
+ /**
+ * Sample code: RegistryCreateZoneRedundant.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryCreateZoneRedundant(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .define("myRegistry")
+ .withRegion("westus")
+ .withExistingResourceGroup("myResourceGroup")
+ .withSku(new Sku().withName(SkuName.STANDARD))
+ .withTags(mapOf("key", "value"))
+ .withZoneRedundancy(ZoneRedundancy.ENABLED)
+ .create();
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryCreate.json
+ */
+ /**
+ * Sample code: RegistryCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .define("myRegistry")
+ .withRegion("westus")
+ .withExistingResourceGroup("myResourceGroup")
+ .withSku(new Sku().withName(SkuName.STANDARD))
+ .withTags(mapOf("key", "value"))
+ .withAdminUserEnabled(true)
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Registries_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries Delete. */
+public final class RegistriesDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryDelete.json
+ */
+ /**
+ * Sample code: RegistryDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().delete("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_GenerateCredentials
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.GenerateCredentialsParameters;
+import java.time.OffsetDateTime;
+
+/** Samples for Registries GenerateCredentials. */
+public final class RegistriesGenerateCredentialsSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryGenerateCredentials.json
+ */
+ /**
+ * Sample code: RegistryGenerateCredentials.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryGenerateCredentials(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .generateCredentials(
+ "myResourceGroup",
+ "myRegistry",
+ new GenerateCredentialsParameters()
+ .withTokenId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken")
+ .withExpiry(OffsetDateTime.parse("2020-12-31T15:59:59.0707808Z")),
+ Context.NONE);
+ }
+}
+```
+
+### Registries_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries GetByResourceGroup. */
+public final class RegistriesGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryGet.json
+ */
+ /**
+ * Sample code: RegistryGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().getByResourceGroupWithResponse("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_GetPrivateLinkResource
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries GetPrivateLinkResource. */
+public final class RegistriesGetPrivateLinkResourceSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryGetPrivateLinkResource.json
+ */
+ /**
+ * Sample code: RegistryGetPrivateLinkResource.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryGetPrivateLinkResource(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .getPrivateLinkResourceWithResponse("myResourceGroup", "myRegistry", "registry", Context.NONE);
+ }
+}
+```
+
+### Registries_ImportImage
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportImageParameters;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportMode;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportSource;
+import java.util.Arrays;
+
+/** Samples for Registries ImportImage. */
+public final class RegistriesImportImageSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportImageFromPublicRegistry.json
+ */
+ /**
+ * Sample code: ImportImageFromPublicRegistry.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importImageFromPublicRegistry(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .importImage(
+ "myResourceGroup",
+ "myRegistry",
+ new ImportImageParameters()
+ .withSource(
+ new ImportSource()
+ .withRegistryUri("registry.hub.docker.com")
+ .withSourceImage("library/hello-world"))
+ .withTargetTags(Arrays.asList("targetRepository:targetTag"))
+ .withUntaggedTargetRepositories(Arrays.asList("targetRepository1"))
+ .withMode(ImportMode.FORCE),
+ Context.NONE);
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportImageByTag.json
+ */
+ /**
+ * Sample code: ImportImageByTag.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importImageByTag(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .importImage(
+ "myResourceGroup",
+ "myRegistry",
+ new ImportImageParameters()
+ .withSource(
+ new ImportSource()
+ .withResourceId(
+ "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry")
+ .withSourceImage("sourceRepository:sourceTag"))
+ .withTargetTags(Arrays.asList("targetRepository:targetTag"))
+ .withUntaggedTargetRepositories(Arrays.asList("targetRepository1"))
+ .withMode(ImportMode.FORCE),
+ Context.NONE);
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ImportImageByManifestDigest.json
+ */
+ /**
+ * Sample code: ImportImageByManifestDigest.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void importImageByManifestDigest(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .importImage(
+ "myResourceGroup",
+ "myRegistry",
+ new ImportImageParameters()
+ .withSource(
+ new ImportSource()
+ .withResourceId(
+ "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry")
+ .withSourceImage(
+ "sourceRepository@sha256:0000000000000000000000000000000000000000000000000000000000000000"))
+ .withTargetTags(Arrays.asList("targetRepository:targetTag"))
+ .withUntaggedTargetRepositories(Arrays.asList("targetRepository1"))
+ .withMode(ImportMode.FORCE),
+ Context.NONE);
+ }
+}
+```
+
+### Registries_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries List. */
+public final class RegistriesListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryList.json
+ */
+ /**
+ * Sample code: RegistryList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().list(Context.NONE);
+ }
+}
+```
+
+### Registries_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries ListByResourceGroup. */
+public final class RegistriesListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryListByResourceGroup.json
+ */
+ /**
+ * Sample code: RegistryListByResourceGroup.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryListByResourceGroup(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().listByResourceGroup("myResourceGroup", Context.NONE);
+ }
+}
+```
+
+### Registries_ListCredentials
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries ListCredentials. */
+public final class RegistriesListCredentialsSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryListCredentials.json
+ */
+ /**
+ * Sample code: RegistryListCredentials.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryListCredentials(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().listCredentialsWithResponse("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_ListPrivateLinkResources
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries ListPrivateLinkResources. */
+public final class RegistriesListPrivateLinkResourcesSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryListPrivateLinkResources.json
+ */
+ /**
+ * Sample code: RegistryListPrivateLinkResources.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryListPrivateLinkResources(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().listPrivateLinkResources("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_ListUsages
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Registries ListUsages. */
+public final class RegistriesListUsagesSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryListUsages.json
+ */
+ /**
+ * Sample code: RegistryListUsages.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryListUsages(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.registries().listUsagesWithResponse("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Registries_RegenerateCredential
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.PasswordName;
+import com.azure.resourcemanager.containerregistry.generated.models.RegenerateCredentialParameters;
+
+/** Samples for Registries RegenerateCredential. */
+public final class RegistriesRegenerateCredentialSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryRegenerateCredential.json
+ */
+ /**
+ * Sample code: RegistryRegenerateCredential.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryRegenerateCredential(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .registries()
+ .regenerateCredentialWithResponse(
+ "myResourceGroup",
+ "myRegistry",
+ new RegenerateCredentialParameters().withName(PasswordName.PASSWORD),
+ Context.NONE);
+ }
+}
+```
+
+### Registries_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.Registry;
+import com.azure.resourcemanager.containerregistry.generated.models.Sku;
+import com.azure.resourcemanager.containerregistry.generated.models.SkuName;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Registries Update. */
+public final class RegistriesUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/RegistryUpdate.json
+ */
+ /**
+ * Sample code: RegistryUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void registryUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ Registry resource =
+ manager
+ .registries()
+ .getByResourceGroupWithResponse("myResourceGroup", "myRegistry", Context.NONE)
+ .getValue();
+ resource
+ .update()
+ .withTags(mapOf("key", "value"))
+ .withSku(new Sku().withName(SkuName.STANDARD))
+ .withAdminUserEnabled(true)
+ .apply();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Replications_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Replications Create. */
+public final class ReplicationsCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationCreate.json
+ */
+ /**
+ * Sample code: ReplicationCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .replications()
+ .define("myReplication")
+ .withRegion("eastus")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withTags(mapOf("key", "value"))
+ .create();
+ }
+
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationCreateZoneRedundant.json
+ */
+ /**
+ * Sample code: ReplicationCreateZoneRedundant.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationCreateZoneRedundant(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .replications()
+ .define("myReplication")
+ .withRegion("eastus")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withTags(mapOf("key", "value"))
+ .withRegionEndpointEnabled(true)
+ .withZoneRedundancy(ZoneRedundancy.ENABLED)
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Replications_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Replications Delete. */
+public final class ReplicationsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationDelete.json
+ */
+ /**
+ * Sample code: ReplicationDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.replications().delete("myResourceGroup", "myRegistry", "myReplication", Context.NONE);
+ }
+}
+```
+
+### Replications_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Replications Get. */
+public final class ReplicationsGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationGet.json
+ */
+ /**
+ * Sample code: ReplicationGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.replications().getWithResponse("myResourceGroup", "myRegistry", "myReplication", Context.NONE);
+ }
+}
+```
+
+### Replications_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Replications List. */
+public final class ReplicationsListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationList.json
+ */
+ /**
+ * Sample code: ReplicationList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.replications().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Replications_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.Replication;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Replications Update. */
+public final class ReplicationsUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ReplicationUpdate.json
+ */
+ /**
+ * Sample code: ReplicationUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void replicationUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ Replication resource =
+ manager
+ .replications()
+ .getWithResponse("myResourceGroup", "myRegistry", "myReplication", Context.NONE)
+ .getValue();
+ resource.update().withTags(mapOf("key", "value")).apply();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### ScopeMaps_Create
+
+```java
+import java.util.Arrays;
+
+/** Samples for ScopeMaps Create. */
+public final class ScopeMapsCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ScopeMapCreate.json
+ */
+ /**
+ * Sample code: ScopeMapCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void scopeMapCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .scopeMaps()
+ .define("myScopeMap")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withDescription("Developer Scopes")
+ .withActions(Arrays.asList("repositories/myrepository/contentWrite", "repositories/myrepository/delete"))
+ .create();
+ }
+}
+```
+
+### ScopeMaps_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ScopeMaps Delete. */
+public final class ScopeMapsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ScopeMapDelete.json
+ */
+ /**
+ * Sample code: ScopeMapDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void scopeMapDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.scopeMaps().delete("myResourceGroup", "myRegistry", "myScopeMap", Context.NONE);
+ }
+}
+```
+
+### ScopeMaps_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ScopeMaps Get. */
+public final class ScopeMapsGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ScopeMapGet.json
+ */
+ /**
+ * Sample code: ScopeMapGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void scopeMapGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.scopeMaps().getWithResponse("myResourceGroup", "myRegistry", "myScopeMap", Context.NONE);
+ }
+}
+```
+
+### ScopeMaps_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ScopeMaps List. */
+public final class ScopeMapsListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ScopeMapList.json
+ */
+ /**
+ * Sample code: ScopeMapList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void scopeMapList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.scopeMaps().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### ScopeMaps_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.ScopeMap;
+import java.util.Arrays;
+
+/** Samples for ScopeMaps Update. */
+public final class ScopeMapsUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/ScopeMapUpdate.json
+ */
+ /**
+ * Sample code: ScopeMapUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void scopeMapUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ ScopeMap resource =
+ manager.scopeMaps().getWithResponse("myResourceGroup", "myRegistry", "myScopeMap", Context.NONE).getValue();
+ resource
+ .update()
+ .withDescription("Developer Scopes")
+ .withActions(
+ Arrays.asList("repositories/myrepository/contentWrite", "repositories/myrepository/contentRead"))
+ .apply();
+ }
+}
+```
+
+### Tokens_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCertificate;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCertificateName;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCredentialsProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenStatus;
+import java.util.Arrays;
+
+/** Samples for Tokens Create. */
+public final class TokensCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/TokenCreate.json
+ */
+ /**
+ * Sample code: TokenCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void tokenCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .tokens()
+ .define("myToken")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withScopeMapId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap")
+ .withCredentials(
+ new TokenCredentialsProperties()
+ .withCertificates(
+ Arrays
+ .asList(
+ new TokenCertificate()
+ .withName(TokenCertificateName.CERTIFICATE1)
+ .withEncodedPemCertificate(
+ "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="))))
+ .withStatus(TokenStatus.DISABLED)
+ .create();
+ }
+}
+```
+
+### Tokens_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tokens Delete. */
+public final class TokensDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/TokenDelete.json
+ */
+ /**
+ * Sample code: TokenDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void tokenDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.tokens().delete("myResourceGroup", "myRegistry", "myToken", Context.NONE);
+ }
+}
+```
+
+### Tokens_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tokens Get. */
+public final class TokensGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/TokenGet.json
+ */
+ /**
+ * Sample code: TokenGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void tokenGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.tokens().getWithResponse("myResourceGroup", "myRegistry", "myToken", Context.NONE);
+ }
+}
+```
+
+### Tokens_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tokens List. */
+public final class TokensListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/TokenList.json
+ */
+ /**
+ * Sample code: TokenList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void tokenList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.tokens().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Tokens_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.Token;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCertificate;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCertificateName;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCredentialsProperties;
+import java.util.Arrays;
+
+/** Samples for Tokens Update. */
+public final class TokensUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/TokenUpdate.json
+ */
+ /**
+ * Sample code: TokenUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void tokenUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ Token resource =
+ manager.tokens().getWithResponse("myResourceGroup", "myRegistry", "myToken", Context.NONE).getValue();
+ resource
+ .update()
+ .withScopeMapId(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap")
+ .withCredentials(
+ new TokenCredentialsProperties()
+ .withCertificates(
+ Arrays
+ .asList(
+ new TokenCertificate()
+ .withName(TokenCertificateName.CERTIFICATE1)
+ .withEncodedPemCertificate(
+ "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="))))
+ .apply();
+ }
+}
+```
+
+### Webhooks_Create
+
+```java
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Webhooks Create. */
+public final class WebhooksCreateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookCreate.json
+ */
+ /**
+ * Sample code: WebhookCreate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookCreate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager
+ .webhooks()
+ .define("myWebhook")
+ .withRegion("westus")
+ .withExistingRegistry("myResourceGroup", "myRegistry")
+ .withTags(mapOf("key", "value"))
+ .withServiceUri("http://myservice.com")
+ .withCustomHeaders(mapOf("Authorization", "Basic 000000000000000000000000000000000000000000000000000"))
+ .withStatus(WebhookStatus.ENABLED)
+ .withScope("myRepository")
+ .withActions(Arrays.asList(WebhookAction.PUSH))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Webhooks_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks Delete. */
+public final class WebhooksDeleteSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookDelete.json
+ */
+ /**
+ * Sample code: WebhookDelete.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookDelete(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().delete("myResourceGroup", "myRegistry", "myWebhook", Context.NONE);
+ }
+}
+```
+
+### Webhooks_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks Get. */
+public final class WebhooksGetSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookGet.json
+ */
+ /**
+ * Sample code: WebhookGet.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookGet(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().getWithResponse("myResourceGroup", "myRegistry", "myWebhook", Context.NONE);
+ }
+}
+```
+
+### Webhooks_GetCallbackConfig
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks GetCallbackConfig. */
+public final class WebhooksGetCallbackConfigSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookGetCallbackConfig.json
+ */
+ /**
+ * Sample code: WebhookGetCallbackConfig.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookGetCallbackConfig(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().getCallbackConfigWithResponse("myResourceGroup", "myRegistry", "myWebhook", Context.NONE);
+ }
+}
+```
+
+### Webhooks_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks List. */
+public final class WebhooksListSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookList.json
+ */
+ /**
+ * Sample code: WebhookList.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookList(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().list("myResourceGroup", "myRegistry", Context.NONE);
+ }
+}
+```
+
+### Webhooks_ListEvents
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks ListEvents. */
+public final class WebhooksListEventsSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookListEvents.json
+ */
+ /**
+ * Sample code: WebhookListEvents.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookListEvents(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().listEvents("myResourceGroup", "myRegistry", "myWebhook", Context.NONE);
+ }
+}
+```
+
+### Webhooks_Ping
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Webhooks Ping. */
+public final class WebhooksPingSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookPing.json
+ */
+ /**
+ * Sample code: WebhookPing.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookPing(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ manager.webhooks().pingWithResponse("myResourceGroup", "myRegistry", "myWebhook", Context.NONE);
+ }
+}
+```
+
+### Webhooks_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.models.Webhook;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Webhooks Update. */
+public final class WebhooksUpdateSamples {
+ /*
+ * x-ms-original-file: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2022-02-01-preview/examples/WebhookUpdate.json
+ */
+ /**
+ * Sample code: WebhookUpdate.
+ *
+ * @param manager Entry point to ContainerRegistryManager.
+ */
+ public static void webhookUpdate(
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager) {
+ Webhook resource =
+ manager.webhooks().getWithResponse("myResourceGroup", "myRegistry", "myWebhook", Context.NONE).getValue();
+ resource
+ .update()
+ .withTags(mapOf("key", "value"))
+ .withServiceUri("http://myservice.com")
+ .withCustomHeaders(mapOf("Authorization", "Basic 000000000000000000000000000000000000000000000000000"))
+ .withStatus(WebhookStatus.ENABLED)
+ .withScope("myRepository")
+ .withActions(Arrays.asList(WebhookAction.PUSH))
+ .apply();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/pom.xml b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/pom.xml
new file mode 100644
index 000000000000..e2f58a8836fb
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/pom.xml
@@ -0,0 +1,55 @@
+
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
+
+ com.azure.resourcemanager
+ azure-resourcemanager-containerregistry-generated
+ 1.0.0-beta.1
+ jar
+
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft Azure SDK for ContainerRegistry Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Package tag package-preview-2022-02.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+ true
+
+
+
+ com.azure
+ azure-core
+ 1.26.0
+
+
+ com.azure
+ azure-core-management
+ 1.5.3
+
+
+
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/ContainerRegistryManager.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/ContainerRegistryManager.java
new file mode 100644
index 000000000000..7422f9f365a3
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/ContainerRegistryManager.java
@@ -0,0 +1,365 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated;
+
+import com.azure.core.credential.TokenCredential;
+import com.azure.core.http.HttpClient;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
+import com.azure.core.http.policy.AddDatePolicy;
+import com.azure.core.http.policy.HttpLogOptions;
+import com.azure.core.http.policy.HttpLoggingPolicy;
+import com.azure.core.http.policy.HttpPipelinePolicy;
+import com.azure.core.http.policy.HttpPolicyProviders;
+import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
+import com.azure.core.management.profile.AzureProfile;
+import com.azure.core.util.Configuration;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.fluent.ContainerRegistryManagementClient;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ConnectedRegistriesImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ContainerRegistryManagementClientBuilder;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ExportPipelinesImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ImportPipelinesImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.OperationsImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.PipelineRunsImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.PrivateEndpointConnectionsImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.RegistriesImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ReplicationsImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.ScopeMapsImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.TokensImpl;
+import com.azure.resourcemanager.containerregistry.generated.implementation.WebhooksImpl;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistries;
+import com.azure.resourcemanager.containerregistry.generated.models.ExportPipelines;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportPipelines;
+import com.azure.resourcemanager.containerregistry.generated.models.Operations;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRuns;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateEndpointConnections;
+import com.azure.resourcemanager.containerregistry.generated.models.Registries;
+import com.azure.resourcemanager.containerregistry.generated.models.Replications;
+import com.azure.resourcemanager.containerregistry.generated.models.ScopeMaps;
+import com.azure.resourcemanager.containerregistry.generated.models.Tokens;
+import com.azure.resourcemanager.containerregistry.generated.models.Webhooks;
+import java.time.Duration;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/** Entry point to ContainerRegistryManager. */
+public final class ContainerRegistryManager {
+ private ConnectedRegistries connectedRegistries;
+
+ private ExportPipelines exportPipelines;
+
+ private Registries registries;
+
+ private ImportPipelines importPipelines;
+
+ private Operations operations;
+
+ private PipelineRuns pipelineRuns;
+
+ private PrivateEndpointConnections privateEndpointConnections;
+
+ private Replications replications;
+
+ private ScopeMaps scopeMaps;
+
+ private Tokens tokens;
+
+ private Webhooks webhooks;
+
+ private final ContainerRegistryManagementClient clientObject;
+
+ private ContainerRegistryManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ this.clientObject =
+ new ContainerRegistryManagementClientBuilder()
+ .pipeline(httpPipeline)
+ .endpoint(profile.getEnvironment().getResourceManagerEndpoint())
+ .subscriptionId(profile.getSubscriptionId())
+ .defaultPollInterval(defaultPollInterval)
+ .buildClient();
+ }
+
+ /**
+ * Creates an instance of ContainerRegistry service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ContainerRegistry service API instance.
+ */
+ public static ContainerRegistryManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ return configure().authenticate(credential, profile);
+ }
+
+ /**
+ * Gets a Configurable instance that can be used to create ContainerRegistryManager with optional configuration.
+ *
+ * @return the Configurable instance allowing configurations.
+ */
+ public static Configurable configure() {
+ return new ContainerRegistryManager.Configurable();
+ }
+
+ /** The Configurable allowing configurations to be set. */
+ public static final class Configurable {
+ private static final ClientLogger LOGGER = new ClientLogger(Configurable.class);
+
+ private HttpClient httpClient;
+ private HttpLogOptions httpLogOptions;
+ private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
+ private RetryPolicy retryPolicy;
+ private Duration defaultPollInterval;
+
+ private Configurable() {
+ }
+
+ /**
+ * Sets the http client.
+ *
+ * @param httpClient the HTTP client.
+ * @return the configurable object itself.
+ */
+ public Configurable withHttpClient(HttpClient httpClient) {
+ this.httpClient = Objects.requireNonNull(httpClient, "'httpClient' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the logging options to the HTTP pipeline.
+ *
+ * @param httpLogOptions the HTTP log options.
+ * @return the configurable object itself.
+ */
+ public Configurable withLogOptions(HttpLogOptions httpLogOptions) {
+ this.httpLogOptions = Objects.requireNonNull(httpLogOptions, "'httpLogOptions' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Adds the pipeline policy to the HTTP pipeline.
+ *
+ * @param policy the HTTP pipeline policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withPolicy(HttpPipelinePolicy policy) {
+ this.policies.add(Objects.requireNonNull(policy, "'policy' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Adds the scope to permission sets.
+ *
+ * @param scope the scope.
+ * @return the configurable object itself.
+ */
+ public Configurable withScope(String scope) {
+ this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Sets the retry policy to the HTTP pipeline.
+ *
+ * @param retryPolicy the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
+ this.retryPolicy = Objects.requireNonNull(retryPolicy, "'retryPolicy' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the default poll interval, used when service does not provide "Retry-After" header.
+ *
+ * @param defaultPollInterval the default poll interval.
+ * @return the configurable object itself.
+ */
+ public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
+ this.defaultPollInterval =
+ Objects.requireNonNull(defaultPollInterval, "'defaultPollInterval' cannot be null.");
+ if (this.defaultPollInterval.isNegative()) {
+ throw LOGGER
+ .logExceptionAsError(new IllegalArgumentException("'defaultPollInterval' cannot be negative"));
+ }
+ return this;
+ }
+
+ /**
+ * Creates an instance of ContainerRegistry service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ContainerRegistry service API instance.
+ */
+ public ContainerRegistryManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+
+ StringBuilder userAgentBuilder = new StringBuilder();
+ userAgentBuilder
+ .append("azsdk-java")
+ .append("-")
+ .append("com.azure.resourcemanager.containerregistry.generated")
+ .append("/")
+ .append("1.0.0-beta.1");
+ if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
+ userAgentBuilder
+ .append(" (")
+ .append(Configuration.getGlobalConfiguration().get("java.version"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.name"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.version"))
+ .append("; auto-generated)");
+ } else {
+ userAgentBuilder.append(" (auto-generated)");
+ }
+
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
+ if (retryPolicy == null) {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ List policies = new ArrayList<>();
+ policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new RequestIdPolicy());
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addBeforeRetryPolicies(policies);
+ policies.add(retryPolicy);
+ policies.add(new AddDatePolicy());
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addAfterRetryPolicies(policies);
+ policies.add(new HttpLoggingPolicy(httpLogOptions));
+ HttpPipeline httpPipeline =
+ new HttpPipelineBuilder()
+ .httpClient(httpClient)
+ .policies(policies.toArray(new HttpPipelinePolicy[0]))
+ .build();
+ return new ContainerRegistryManager(httpPipeline, profile, defaultPollInterval);
+ }
+ }
+
+ /** @return Resource collection API of ConnectedRegistries. */
+ public ConnectedRegistries connectedRegistries() {
+ if (this.connectedRegistries == null) {
+ this.connectedRegistries = new ConnectedRegistriesImpl(clientObject.getConnectedRegistries(), this);
+ }
+ return connectedRegistries;
+ }
+
+ /** @return Resource collection API of ExportPipelines. */
+ public ExportPipelines exportPipelines() {
+ if (this.exportPipelines == null) {
+ this.exportPipelines = new ExportPipelinesImpl(clientObject.getExportPipelines(), this);
+ }
+ return exportPipelines;
+ }
+
+ /** @return Resource collection API of Registries. */
+ public Registries registries() {
+ if (this.registries == null) {
+ this.registries = new RegistriesImpl(clientObject.getRegistries(), this);
+ }
+ return registries;
+ }
+
+ /** @return Resource collection API of ImportPipelines. */
+ public ImportPipelines importPipelines() {
+ if (this.importPipelines == null) {
+ this.importPipelines = new ImportPipelinesImpl(clientObject.getImportPipelines(), this);
+ }
+ return importPipelines;
+ }
+
+ /** @return Resource collection API of Operations. */
+ public Operations operations() {
+ if (this.operations == null) {
+ this.operations = new OperationsImpl(clientObject.getOperations(), this);
+ }
+ return operations;
+ }
+
+ /** @return Resource collection API of PipelineRuns. */
+ public PipelineRuns pipelineRuns() {
+ if (this.pipelineRuns == null) {
+ this.pipelineRuns = new PipelineRunsImpl(clientObject.getPipelineRuns(), this);
+ }
+ return pipelineRuns;
+ }
+
+ /** @return Resource collection API of PrivateEndpointConnections. */
+ public PrivateEndpointConnections privateEndpointConnections() {
+ if (this.privateEndpointConnections == null) {
+ this.privateEndpointConnections =
+ new PrivateEndpointConnectionsImpl(clientObject.getPrivateEndpointConnections(), this);
+ }
+ return privateEndpointConnections;
+ }
+
+ /** @return Resource collection API of Replications. */
+ public Replications replications() {
+ if (this.replications == null) {
+ this.replications = new ReplicationsImpl(clientObject.getReplications(), this);
+ }
+ return replications;
+ }
+
+ /** @return Resource collection API of ScopeMaps. */
+ public ScopeMaps scopeMaps() {
+ if (this.scopeMaps == null) {
+ this.scopeMaps = new ScopeMapsImpl(clientObject.getScopeMaps(), this);
+ }
+ return scopeMaps;
+ }
+
+ /** @return Resource collection API of Tokens. */
+ public Tokens tokens() {
+ if (this.tokens == null) {
+ this.tokens = new TokensImpl(clientObject.getTokens(), this);
+ }
+ return tokens;
+ }
+
+ /** @return Resource collection API of Webhooks. */
+ public Webhooks webhooks() {
+ if (this.webhooks == null) {
+ this.webhooks = new WebhooksImpl(clientObject.getWebhooks(), this);
+ }
+ return webhooks;
+ }
+
+ /**
+ * @return Wrapped service client ContainerRegistryManagementClient providing direct access to the underlying
+ * auto-generated API implementation, based on Azure REST API.
+ */
+ public ContainerRegistryManagementClient serviceClient() {
+ return this.clientObject;
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ConnectedRegistriesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ConnectedRegistriesClient.java
new file mode 100644
index 000000000000..b1a76383ac06
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ConnectedRegistriesClient.java
@@ -0,0 +1,361 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ConnectedRegistryInner;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in ConnectedRegistriesClient. */
+public interface ConnectedRegistriesClient {
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @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 result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String registryName, String filter, Context context);
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the connected registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner get(String resourceGroupName, String registryName, String connectedRegistryName);
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String connectedRegistryName, Context context);
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectedRegistryInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters);
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectedRegistryInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context);
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner create(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters);
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @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 object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner create(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context);
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String connectedRegistryName);
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String connectedRegistryName, Context context);
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String connectedRegistryName);
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 registryName, String connectedRegistryName, Context context);
+
+ /**
+ * Updates a connected registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryUpdateParameters The parameters for updating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectedRegistryInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryUpdateParameters connectedRegistryUpdateParameters);
+
+ /**
+ * Updates a connected registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryUpdateParameters The parameters for updating a connectedRegistry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectedRegistryInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryUpdateParameters connectedRegistryUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a connected registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryUpdateParameters The parameters for updating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner update(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryUpdateParameters connectedRegistryUpdateParameters);
+
+ /**
+ * Updates a connected registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryUpdateParameters The parameters for updating a connectedRegistry.
+ * @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 object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner update(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryUpdateParameters connectedRegistryUpdateParameters,
+ Context context);
+
+ /**
+ * Deactivates the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDeactivate(
+ String resourceGroupName, String registryName, String connectedRegistryName);
+
+ /**
+ * Deactivates the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDeactivate(
+ String resourceGroupName, String registryName, String connectedRegistryName, Context context);
+
+ /**
+ * Deactivates the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 deactivate(String resourceGroupName, String registryName, String connectedRegistryName);
+
+ /**
+ * Deactivates the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 deactivate(String resourceGroupName, String registryName, String connectedRegistryName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ContainerRegistryManagementClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ContainerRegistryManagementClient.java
new file mode 100644
index 000000000000..fcf2678ebd83
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ContainerRegistryManagementClient.java
@@ -0,0 +1,123 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.http.HttpPipeline;
+import java.time.Duration;
+
+/** The interface for ContainerRegistryManagementClient class. */
+public interface ContainerRegistryManagementClient {
+ /**
+ * Gets The Microsoft Azure subscription ID.
+ *
+ * @return the subscriptionId value.
+ */
+ String getSubscriptionId();
+
+ /**
+ * Gets server parameter.
+ *
+ * @return the endpoint value.
+ */
+ String getEndpoint();
+
+ /**
+ * Gets Api Version.
+ *
+ * @return the apiVersion value.
+ */
+ String getApiVersion();
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ HttpPipeline getHttpPipeline();
+
+ /**
+ * Gets The default poll interval for long-running operation.
+ *
+ * @return the defaultPollInterval value.
+ */
+ Duration getDefaultPollInterval();
+
+ /**
+ * Gets the ConnectedRegistriesClient object to access its operations.
+ *
+ * @return the ConnectedRegistriesClient object.
+ */
+ ConnectedRegistriesClient getConnectedRegistries();
+
+ /**
+ * Gets the ExportPipelinesClient object to access its operations.
+ *
+ * @return the ExportPipelinesClient object.
+ */
+ ExportPipelinesClient getExportPipelines();
+
+ /**
+ * Gets the RegistriesClient object to access its operations.
+ *
+ * @return the RegistriesClient object.
+ */
+ RegistriesClient getRegistries();
+
+ /**
+ * Gets the ImportPipelinesClient object to access its operations.
+ *
+ * @return the ImportPipelinesClient object.
+ */
+ ImportPipelinesClient getImportPipelines();
+
+ /**
+ * Gets the OperationsClient object to access its operations.
+ *
+ * @return the OperationsClient object.
+ */
+ OperationsClient getOperations();
+
+ /**
+ * Gets the PipelineRunsClient object to access its operations.
+ *
+ * @return the PipelineRunsClient object.
+ */
+ PipelineRunsClient getPipelineRuns();
+
+ /**
+ * Gets the PrivateEndpointConnectionsClient object to access its operations.
+ *
+ * @return the PrivateEndpointConnectionsClient object.
+ */
+ PrivateEndpointConnectionsClient getPrivateEndpointConnections();
+
+ /**
+ * Gets the ReplicationsClient object to access its operations.
+ *
+ * @return the ReplicationsClient object.
+ */
+ ReplicationsClient getReplications();
+
+ /**
+ * Gets the ScopeMapsClient object to access its operations.
+ *
+ * @return the ScopeMapsClient object.
+ */
+ ScopeMapsClient getScopeMaps();
+
+ /**
+ * Gets the TokensClient object to access its operations.
+ *
+ * @return the TokensClient object.
+ */
+ TokensClient getTokens();
+
+ /**
+ * Gets the WebhooksClient object to access its operations.
+ *
+ * @return the WebhooksClient object.
+ */
+ WebhooksClient getWebhooks();
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ExportPipelinesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ExportPipelinesClient.java
new file mode 100644
index 000000000000..048b33611ec8
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ExportPipelinesClient.java
@@ -0,0 +1,216 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ExportPipelineInner;
+
+/** An instance of this class provides access to all the operations defined in ExportPipelinesClient. */
+public interface ExportPipelinesClient {
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list export pipelines for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list export pipelines for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the export pipeline.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ExportPipelineInner get(String resourceGroupName, String registryName, String exportPipelineName);
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @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 the export pipeline along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String exportPipelineName, Context context);
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @param exportPipelineCreateParameters The parameters for creating an export pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ExportPipelineInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters);
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @param exportPipelineCreateParameters The parameters for creating an export pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ExportPipelineInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters,
+ Context context);
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @param exportPipelineCreateParameters The parameters for creating an export pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ExportPipelineInner create(
+ String resourceGroupName,
+ String registryName,
+ String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters);
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @param exportPipelineCreateParameters The parameters for creating an export pipeline.
+ * @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 object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ExportPipelineInner create(
+ String resourceGroupName,
+ String registryName,
+ String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters,
+ Context context);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String exportPipelineName);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String exportPipelineName, Context context);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String exportPipelineName);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param exportPipelineName The name of the export pipeline.
+ * @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 registryName, String exportPipelineName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ImportPipelinesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ImportPipelinesClient.java
new file mode 100644
index 000000000000..14acfe04b7cb
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ImportPipelinesClient.java
@@ -0,0 +1,216 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ImportPipelineInner;
+
+/** An instance of this class provides access to all the operations defined in ImportPipelinesClient. */
+public interface ImportPipelinesClient {
+ /**
+ * Lists all import pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list import pipelines for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all import pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list import pipelines for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the import pipeline.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImportPipelineInner get(String resourceGroupName, String registryName, String importPipelineName);
+
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @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 the import pipeline along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String importPipelineName, Context context);
+
+ /**
+ * Creates an import pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @param importPipelineCreateParameters The parameters for creating an import pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an import pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ImportPipelineInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String importPipelineName,
+ ImportPipelineInner importPipelineCreateParameters);
+
+ /**
+ * Creates an import pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @param importPipelineCreateParameters The parameters for creating an import pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an import pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ImportPipelineInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String importPipelineName,
+ ImportPipelineInner importPipelineCreateParameters,
+ Context context);
+
+ /**
+ * Creates an import pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @param importPipelineCreateParameters The parameters for creating an import pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents an import pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImportPipelineInner create(
+ String resourceGroupName,
+ String registryName,
+ String importPipelineName,
+ ImportPipelineInner importPipelineCreateParameters);
+
+ /**
+ * Creates an import pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @param importPipelineCreateParameters The parameters for creating an import pipeline.
+ * @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 object that represents an import pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImportPipelineInner create(
+ String resourceGroupName,
+ String registryName,
+ String importPipelineName,
+ ImportPipelineInner importPipelineCreateParameters,
+ Context context);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String importPipelineName);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String importPipelineName, Context context);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String importPipelineName);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param importPipelineName The name of the import pipeline.
+ * @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 registryName, String importPipelineName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/OperationsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/OperationsClient.java
new file mode 100644
index 000000000000..1c30626832d4
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/OperationsClient.java
@@ -0,0 +1,38 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.OperationDefinitionInner;
+
+/** An instance of this class provides access to all the operations defined in OperationsClient. */
+public interface OperationsClient {
+ /**
+ * Lists all of the available Azure Container Registry REST API operations.
+ *
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list container registry operations as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Lists all of the available Azure Container Registry REST API operations.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list container registry operations as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PipelineRunsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PipelineRunsClient.java
new file mode 100644
index 000000000000..c84030c1bac8
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PipelineRunsClient.java
@@ -0,0 +1,214 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.PipelineRunInner;
+
+/** An instance of this class provides access to all the operations defined in PipelineRunsClient. */
+public interface PipelineRunsClient {
+ /**
+ * Lists all the pipeline runs for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list pipeline runs for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the pipeline runs for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list pipeline runs for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 detailed information for a given pipeline run.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineRunInner get(String resourceGroupName, String registryName, String pipelineRunName);
+
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @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 detailed information for a given pipeline run along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String pipelineRunName, Context context);
+
+ /**
+ * Creates a pipeline run for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @param pipelineRunCreateParameters The parameters for creating a pipeline run.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a pipeline run for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineRunInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String pipelineRunName,
+ PipelineRunInner pipelineRunCreateParameters);
+
+ /**
+ * Creates a pipeline run for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @param pipelineRunCreateParameters The parameters for creating a pipeline run.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a pipeline run for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineRunInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String pipelineRunName,
+ PipelineRunInner pipelineRunCreateParameters,
+ Context context);
+
+ /**
+ * Creates a pipeline run for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @param pipelineRunCreateParameters The parameters for creating a pipeline run.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a pipeline run for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineRunInner create(
+ String resourceGroupName,
+ String registryName,
+ String pipelineRunName,
+ PipelineRunInner pipelineRunCreateParameters);
+
+ /**
+ * Creates a pipeline run for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @param pipelineRunCreateParameters The parameters for creating a pipeline run.
+ * @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 object that represents a pipeline run for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineRunInner create(
+ String resourceGroupName,
+ String registryName,
+ String pipelineRunName,
+ PipelineRunInner pipelineRunCreateParameters,
+ Context context);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String pipelineRunName);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String pipelineRunName, Context context);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String pipelineRunName);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param pipelineRunName The name of the pipeline run.
+ * @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 registryName, String pipelineRunName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PrivateEndpointConnectionsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PrivateEndpointConnectionsClient.java
new file mode 100644
index 000000000000..9e7faf65982b
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/PrivateEndpointConnectionsClient.java
@@ -0,0 +1,218 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.PrivateEndpointConnectionInner;
+
+/** An instance of this class provides access to all the operations defined in PrivateEndpointConnectionsClient. */
+public interface PrivateEndpointConnectionsClient {
+ /**
+ * List all private endpoint connections in a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list private endpoint connections for a container registry as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * List all private endpoint connections in a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list private endpoint connections for a container registry as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Get the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the specified private endpoint connection associated with the container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner get(
+ String resourceGroupName, String registryName, String privateEndpointConnectionName);
+
+ /**
+ * Get the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the specified private endpoint connection associated with the container registry along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Update the state of specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param privateEndpointConnection The parameters for creating a private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a private endpoint connection for a
+ * container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String registryName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner privateEndpointConnection);
+
+ /**
+ * Update the state of specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param privateEndpointConnection The parameters for creating a private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a private endpoint connection for a
+ * container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PrivateEndpointConnectionInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String registryName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner privateEndpointConnection,
+ Context context);
+
+ /**
+ * Update the state of specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param privateEndpointConnection The parameters for creating a private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a private endpoint connection for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner createOrUpdate(
+ String resourceGroupName,
+ String registryName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner privateEndpointConnection);
+
+ /**
+ * Update the state of specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param privateEndpointConnection The parameters for creating a private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a private endpoint connection for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateEndpointConnectionInner createOrUpdate(
+ String resourceGroupName,
+ String registryName,
+ String privateEndpointConnectionName,
+ PrivateEndpointConnectionInner privateEndpointConnection,
+ Context context);
+
+ /**
+ * Deletes the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String privateEndpointConnectionName, Context context);
+
+ /**
+ * Deletes the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String privateEndpointConnectionName);
+
+ /**
+ * Deletes the specified private endpoint connection associated with the container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param privateEndpointConnectionName The name of the private endpoint connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String privateEndpointConnectionName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/RegistriesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/RegistriesClient.java
new file mode 100644
index 000000000000..d812344b5e85
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/RegistriesClient.java
@@ -0,0 +1,589 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.GenerateCredentialsResultInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.PrivateLinkResourceInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.RegistryInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.RegistryListCredentialsResultInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.RegistryNameStatusInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.RegistryUsageListResultInner;
+import com.azure.resourcemanager.containerregistry.generated.models.GenerateCredentialsParameters;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportImageParameters;
+import com.azure.resourcemanager.containerregistry.generated.models.RegenerateCredentialParameters;
+import com.azure.resourcemanager.containerregistry.generated.models.RegistryNameCheckRequest;
+import com.azure.resourcemanager.containerregistry.generated.models.RegistryUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in RegistriesClient. */
+public interface RegistriesClient {
+ /**
+ * Copies an image to this container registry from the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param parameters The parameters specifying the image to copy and the source container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginImportImage(
+ String resourceGroupName, String registryName, ImportImageParameters parameters);
+
+ /**
+ * Copies an image to this container registry from the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param parameters The parameters specifying the image to copy and the source container registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginImportImage(
+ String resourceGroupName, String registryName, ImportImageParameters parameters, Context context);
+
+ /**
+ * Copies an image to this container registry from the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param parameters The parameters specifying the image to copy and the source container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 importImage(String resourceGroupName, String registryName, ImportImageParameters parameters);
+
+ /**
+ * Copies an image to this container registry from the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param parameters The parameters specifying the image to copy and the source container registry.
+ * @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 importImage(String resourceGroupName, String registryName, ImportImageParameters parameters, Context context);
+
+ /**
+ * Checks whether the container registry name is available for use. The name must contain only alphanumeric
+ * characters, be globally unique, and between 5 and 50 characters in length.
+ *
+ * @param registryNameCheckRequest The object containing information for the availability request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to check the availability of a container registry name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryNameStatusInner checkNameAvailability(RegistryNameCheckRequest registryNameCheckRequest);
+
+ /**
+ * Checks whether the container registry name is available for use. The name must contain only alphanumeric
+ * characters, be globally unique, and between 5 and 50 characters in length.
+ *
+ * @param registryNameCheckRequest The object containing information for the availability request.
+ * @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 result of a request to check the availability of a container registry name along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response checkNameAvailabilityWithResponse(
+ RegistryNameCheckRequest registryNameCheckRequest, Context context);
+
+ /**
+ * Lists all the container registries under the specified 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 the result of a request to list container registries as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Lists all the container registries under the specified subscription.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list container registries as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+
+ /**
+ * Lists all the container registries under the specified resource group.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list container registries as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Lists all the container registries under the specified resource group.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @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 result of a request to list container registries as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the properties of the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the specified container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryInner getByResourceGroup(String resourceGroupName, String registryName);
+
+ /**
+ * Gets the properties of the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 the specified container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Creates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registry The parameters for creating a container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, RegistryInner> beginCreate(
+ String resourceGroupName, String registryName, RegistryInner registry);
+
+ /**
+ * Creates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registry The parameters for creating a container registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, RegistryInner> beginCreate(
+ String resourceGroupName, String registryName, RegistryInner registry, Context context);
+
+ /**
+ * Creates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registry The parameters for creating a container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryInner create(String resourceGroupName, String registryName, RegistryInner registry);
+
+ /**
+ * Creates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registry The parameters for creating a container registry.
+ * @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 object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryInner create(String resourceGroupName, String registryName, RegistryInner registry, Context context);
+
+ /**
+ * Deletes a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName);
+
+ /**
+ * Deletes a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Deletes a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName);
+
+ /**
+ * Deletes a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 registryName, Context context);
+
+ /**
+ * Updates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registryUpdateParameters The parameters for updating a container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, RegistryInner> beginUpdate(
+ String resourceGroupName, String registryName, RegistryUpdateParameters registryUpdateParameters);
+
+ /**
+ * Updates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registryUpdateParameters The parameters for updating a container registry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, RegistryInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ RegistryUpdateParameters registryUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registryUpdateParameters The parameters for updating a container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryInner update(
+ String resourceGroupName, String registryName, RegistryUpdateParameters registryUpdateParameters);
+
+ /**
+ * Updates a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param registryUpdateParameters The parameters for updating a container registry.
+ * @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 object that represents a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryInner update(
+ String resourceGroupName,
+ String registryName,
+ RegistryUpdateParameters registryUpdateParameters,
+ Context context);
+
+ /**
+ * Gets the quota usages for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 quota usages for the specified container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryUsageListResultInner listUsages(String resourceGroupName, String registryName);
+
+ /**
+ * Gets the quota usages for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 quota usages for the specified container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listUsagesWithResponse(
+ String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Lists the private link resources for a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list private link resources for a container registry as paginated response
+ * with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listPrivateLinkResources(String resourceGroupName, String registryName);
+
+ /**
+ * Lists the private link resources for a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list private link resources for a container registry as paginated response
+ * with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listPrivateLinkResources(
+ String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets a private link resource by a specified group name for a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param groupName The name of the private link resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private link resource by a specified group name for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PrivateLinkResourceInner getPrivateLinkResource(String resourceGroupName, String registryName, String groupName);
+
+ /**
+ * Gets a private link resource by a specified group name for a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param groupName The name of the private link resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a private link resource by a specified group name for a container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getPrivateLinkResourceWithResponse(
+ String resourceGroupName, String registryName, String groupName, Context context);
+
+ /**
+ * Lists the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 from the ListCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryListCredentialsResultInner listCredentials(String resourceGroupName, String registryName);
+
+ /**
+ * Lists the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 from the ListCredentials operation along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listCredentialsWithResponse(
+ String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Regenerates one of the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param regenerateCredentialParameters Specifies name of the password which should be regenerated -- password or
+ * password2.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 from the ListCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ RegistryListCredentialsResultInner regenerateCredential(
+ String resourceGroupName, String registryName, RegenerateCredentialParameters regenerateCredentialParameters);
+
+ /**
+ * Regenerates one of the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param regenerateCredentialParameters Specifies name of the password which should be regenerated -- password or
+ * password2.
+ * @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 from the ListCredentials operation along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response regenerateCredentialWithResponse(
+ String resourceGroupName,
+ String registryName,
+ RegenerateCredentialParameters regenerateCredentialParameters,
+ Context context);
+
+ /**
+ * Generate keys for a token of a specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param generateCredentialsParameters The parameters for generating credentials.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the response from the GenerateCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, GenerateCredentialsResultInner> beginGenerateCredentials(
+ String resourceGroupName, String registryName, GenerateCredentialsParameters generateCredentialsParameters);
+
+ /**
+ * Generate keys for a token of a specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param generateCredentialsParameters The parameters for generating credentials.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the response from the GenerateCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, GenerateCredentialsResultInner> beginGenerateCredentials(
+ String resourceGroupName,
+ String registryName,
+ GenerateCredentialsParameters generateCredentialsParameters,
+ Context context);
+
+ /**
+ * Generate keys for a token of a specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param generateCredentialsParameters The parameters for generating credentials.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 from the GenerateCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GenerateCredentialsResultInner generateCredentials(
+ String resourceGroupName, String registryName, GenerateCredentialsParameters generateCredentialsParameters);
+
+ /**
+ * Generate keys for a token of a specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param generateCredentialsParameters The parameters for generating credentials.
+ * @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 from the GenerateCredentials operation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GenerateCredentialsResultInner generateCredentials(
+ String resourceGroupName,
+ String registryName,
+ GenerateCredentialsParameters generateCredentialsParameters,
+ Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ReplicationsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ReplicationsClient.java
new file mode 100644
index 000000000000..dd28d2ca8caa
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ReplicationsClient.java
@@ -0,0 +1,289 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ReplicationInner;
+import com.azure.resourcemanager.containerregistry.generated.models.ReplicationUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in ReplicationsClient. */
+public interface ReplicationsClient {
+ /**
+ * Lists all the replications for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list replications for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the replications for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list replications for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the specified replication.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the specified replication.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ReplicationInner get(String resourceGroupName, String registryName, String replicationName);
+
+ /**
+ * Gets the properties of the specified replication.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @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 the specified replication along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String replicationName, Context context);
+
+ /**
+ * Creates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replication The parameters for creating a replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ReplicationInner> beginCreate(
+ String resourceGroupName, String registryName, String replicationName, ReplicationInner replication);
+
+ /**
+ * Creates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replication The parameters for creating a replication.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ReplicationInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationInner replication,
+ Context context);
+
+ /**
+ * Creates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replication The parameters for creating a replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ReplicationInner create(
+ String resourceGroupName, String registryName, String replicationName, ReplicationInner replication);
+
+ /**
+ * Creates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replication The parameters for creating a replication.
+ * @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 object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ReplicationInner create(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationInner replication,
+ Context context);
+
+ /**
+ * Deletes a replication from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String replicationName);
+
+ /**
+ * Deletes a replication from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String replicationName, Context context);
+
+ /**
+ * Deletes a replication from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String replicationName);
+
+ /**
+ * Deletes a replication from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @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 registryName, String replicationName, Context context);
+
+ /**
+ * Updates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replicationUpdateParameters The parameters for updating a replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ReplicationInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationUpdateParameters replicationUpdateParameters);
+
+ /**
+ * Updates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replicationUpdateParameters The parameters for updating a replication.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ReplicationInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationUpdateParameters replicationUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replicationUpdateParameters The parameters for updating a replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ReplicationInner update(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationUpdateParameters replicationUpdateParameters);
+
+ /**
+ * Updates a replication for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @param replicationUpdateParameters The parameters for updating a replication.
+ * @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 object that represents a replication for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ReplicationInner update(
+ String resourceGroupName,
+ String registryName,
+ String replicationName,
+ ReplicationUpdateParameters replicationUpdateParameters,
+ Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ScopeMapsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ScopeMapsClient.java
new file mode 100644
index 000000000000..f89de322de61
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/ScopeMapsClient.java
@@ -0,0 +1,288 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ScopeMapInner;
+import com.azure.resourcemanager.containerregistry.generated.models.ScopeMapUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in ScopeMapsClient. */
+public interface ScopeMapsClient {
+ /**
+ * Lists all the scope maps for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list scope maps for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the scope maps for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list scope maps for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the specified scope map.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the specified scope map.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScopeMapInner get(String resourceGroupName, String registryName, String scopeMapName);
+
+ /**
+ * Gets the properties of the specified scope map.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @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 the specified scope map along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String scopeMapName, Context context);
+
+ /**
+ * Creates a scope map for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapCreateParameters The parameters for creating a scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ScopeMapInner> beginCreate(
+ String resourceGroupName, String registryName, String scopeMapName, ScopeMapInner scopeMapCreateParameters);
+
+ /**
+ * Creates a scope map for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapCreateParameters The parameters for creating a scope map.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ScopeMapInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapInner scopeMapCreateParameters,
+ Context context);
+
+ /**
+ * Creates a scope map for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapCreateParameters The parameters for creating a scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScopeMapInner create(
+ String resourceGroupName, String registryName, String scopeMapName, ScopeMapInner scopeMapCreateParameters);
+
+ /**
+ * Creates a scope map for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapCreateParameters The parameters for creating a scope map.
+ * @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 object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScopeMapInner create(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapInner scopeMapCreateParameters,
+ Context context);
+
+ /**
+ * Deletes a scope map from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String scopeMapName);
+
+ /**
+ * Deletes a scope map from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String scopeMapName, Context context);
+
+ /**
+ * Deletes a scope map from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String scopeMapName);
+
+ /**
+ * Deletes a scope map from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @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 registryName, String scopeMapName, Context context);
+
+ /**
+ * Updates a scope map with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapUpdateParameters The parameters for updating a scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ScopeMapInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapUpdateParameters scopeMapUpdateParameters);
+
+ /**
+ * Updates a scope map with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapUpdateParameters The parameters for updating a scope map.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ScopeMapInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapUpdateParameters scopeMapUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a scope map with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapUpdateParameters The parameters for updating a scope map.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScopeMapInner update(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapUpdateParameters scopeMapUpdateParameters);
+
+ /**
+ * Updates a scope map with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param scopeMapName The name of the scope map.
+ * @param scopeMapUpdateParameters The parameters for updating a scope map.
+ * @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 object that represents a scope map for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScopeMapInner update(
+ String resourceGroupName,
+ String registryName,
+ String scopeMapName,
+ ScopeMapUpdateParameters scopeMapUpdateParameters,
+ Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/TokensClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/TokensClient.java
new file mode 100644
index 000000000000..e3c21dd11bea
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/TokensClient.java
@@ -0,0 +1,282 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.TokenInner;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in TokensClient. */
+public interface TokensClient {
+ /**
+ * Lists all the tokens for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list tokens for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the tokens for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list tokens for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the specified token.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the specified token.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ TokenInner get(String resourceGroupName, String registryName, String tokenName);
+
+ /**
+ * Gets the properties of the specified token.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @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 the specified token along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String tokenName, Context context);
+
+ /**
+ * Creates a token for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenCreateParameters The parameters for creating a token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, TokenInner> beginCreate(
+ String resourceGroupName, String registryName, String tokenName, TokenInner tokenCreateParameters);
+
+ /**
+ * Creates a token for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenCreateParameters The parameters for creating a token.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, TokenInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String tokenName,
+ TokenInner tokenCreateParameters,
+ Context context);
+
+ /**
+ * Creates a token for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenCreateParameters The parameters for creating a token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ TokenInner create(
+ String resourceGroupName, String registryName, String tokenName, TokenInner tokenCreateParameters);
+
+ /**
+ * Creates a token for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenCreateParameters The parameters for creating a token.
+ * @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 object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ TokenInner create(
+ String resourceGroupName,
+ String registryName,
+ String tokenName,
+ TokenInner tokenCreateParameters,
+ Context context);
+
+ /**
+ * Deletes a token from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String tokenName);
+
+ /**
+ * Deletes a token from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String tokenName, Context context);
+
+ /**
+ * Deletes a token from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String tokenName);
+
+ /**
+ * Deletes a token from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @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 registryName, String tokenName, Context context);
+
+ /**
+ * Updates a token with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenUpdateParameters The parameters for updating a token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, TokenInner> beginUpdate(
+ String resourceGroupName, String registryName, String tokenName, TokenUpdateParameters tokenUpdateParameters);
+
+ /**
+ * Updates a token with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenUpdateParameters The parameters for updating a token.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, TokenInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String tokenName,
+ TokenUpdateParameters tokenUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a token with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenUpdateParameters The parameters for updating a token.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ TokenInner update(
+ String resourceGroupName, String registryName, String tokenName, TokenUpdateParameters tokenUpdateParameters);
+
+ /**
+ * Updates a token with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param tokenName The name of the token.
+ * @param tokenUpdateParameters The parameters for updating a token.
+ * @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 object that represents a token for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ TokenInner update(
+ String resourceGroupName,
+ String registryName,
+ String tokenName,
+ TokenUpdateParameters tokenUpdateParameters,
+ Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/WebhooksClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/WebhooksClient.java
new file mode 100644
index 000000000000..103df3860a14
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/WebhooksClient.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.containerregistry.generated.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.CallbackConfigInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.EventInfoInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.EventInner;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.WebhookInner;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookCreateParameters;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in WebhooksClient. */
+public interface WebhooksClient {
+ /**
+ * Lists all the webhooks for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list webhooks for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the webhooks for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @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 result of a request to list webhooks for a container registry as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, Context context);
+
+ /**
+ * Gets the properties of the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the specified webhook.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WebhookInner get(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Gets the properties of the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @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 the specified webhook along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String registryName, String webhookName, Context context);
+
+ /**
+ * Creates a webhook for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookCreateParameters The parameters for creating a webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, WebhookInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookCreateParameters webhookCreateParameters);
+
+ /**
+ * Creates a webhook for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookCreateParameters The parameters for creating a webhook.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, WebhookInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookCreateParameters webhookCreateParameters,
+ Context context);
+
+ /**
+ * Creates a webhook for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookCreateParameters The parameters for creating a webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WebhookInner create(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookCreateParameters webhookCreateParameters);
+
+ /**
+ * Creates a webhook for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookCreateParameters The parameters for creating a webhook.
+ * @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 object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WebhookInner create(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookCreateParameters webhookCreateParameters,
+ Context context);
+
+ /**
+ * Deletes a webhook from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Deletes a webhook from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String registryName, String webhookName, Context context);
+
+ /**
+ * Deletes a webhook from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 registryName, String webhookName);
+
+ /**
+ * Deletes a webhook from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @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 registryName, String webhookName, Context context);
+
+ /**
+ * Updates a webhook with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookUpdateParameters The parameters for updating a webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, WebhookInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookUpdateParameters webhookUpdateParameters);
+
+ /**
+ * Updates a webhook with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookUpdateParameters The parameters for updating a webhook.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, WebhookInner> beginUpdate(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookUpdateParameters webhookUpdateParameters,
+ Context context);
+
+ /**
+ * Updates a webhook with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookUpdateParameters The parameters for updating a webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WebhookInner update(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookUpdateParameters webhookUpdateParameters);
+
+ /**
+ * Updates a webhook with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @param webhookUpdateParameters The parameters for updating a webhook.
+ * @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 object that represents a webhook for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ WebhookInner update(
+ String resourceGroupName,
+ String registryName,
+ String webhookName,
+ WebhookUpdateParameters webhookUpdateParameters,
+ Context context);
+
+ /**
+ * Triggers a ping event to be sent to the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 basic information of an event.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ EventInfoInner ping(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Triggers a ping event to be sent to the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @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 basic information of an event along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response pingWithResponse(
+ String resourceGroupName, String registryName, String webhookName, Context context);
+
+ /**
+ * Lists recent events for the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list events for a webhook as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listEvents(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Lists recent events for the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @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 result of a request to list events for a webhook as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listEvents(
+ String resourceGroupName, String registryName, String webhookName, Context context);
+
+ /**
+ * Gets the configuration of service URI and custom headers for the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 configuration of service URI and custom headers for the webhook.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CallbackConfigInner getCallbackConfig(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Gets the configuration of service URI and custom headers for the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @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 configuration of service URI and custom headers for the webhook along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getCallbackConfigWithResponse(
+ String resourceGroupName, String registryName, String webhookName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/CallbackConfigInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/CallbackConfigInner.java
new file mode 100644
index 000000000000..8cd11d95b088
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/CallbackConfigInner.java
@@ -0,0 +1,83 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** The configuration of service URI and custom headers for the webhook. */
+@Fluent
+public final class CallbackConfigInner {
+ /*
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "serviceUri", required = true)
+ private String serviceUri;
+
+ /*
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "customHeaders")
+ @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+ private Map customHeaders;
+
+ /**
+ * Get the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value.
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set.
+ * @return the CallbackConfigInner object itself.
+ */
+ public CallbackConfigInner withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value.
+ */
+ public Map customHeaders() {
+ return this.customHeaders;
+ }
+
+ /**
+ * Set the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @param customHeaders the customHeaders value to set.
+ * @return the CallbackConfigInner object itself.
+ */
+ public CallbackConfigInner withCustomHeaders(Map customHeaders) {
+ this.customHeaders = customHeaders;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (serviceUri() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property serviceUri in model CallbackConfigInner"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(CallbackConfigInner.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryInner.java
new file mode 100644
index 000000000000..c2d75351c6b8
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryInner.java
@@ -0,0 +1,263 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ActivationProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryMode;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectionState;
+import com.azure.resourcemanager.containerregistry.generated.models.LoggingProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.LoginServerProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ParentProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.StatusDetailProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** An object that represents a connected registry for a container registry. */
+@Fluent
+public final class ConnectedRegistryInner extends ProxyResource {
+ /*
+ * The properties of the connected registry.
+ */
+ @JsonProperty(value = "properties")
+ private ConnectedRegistryProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of the connected registry.
+ *
+ * @return the innerProperties value.
+ */
+ private ConnectedRegistryProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the mode property: The mode of the connected registry resource that indicates the permissions of the
+ * registry.
+ *
+ * @return the mode value.
+ */
+ public ConnectedRegistryMode mode() {
+ return this.innerProperties() == null ? null : this.innerProperties().mode();
+ }
+
+ /**
+ * Set the mode property: The mode of the connected registry resource that indicates the permissions of the
+ * registry.
+ *
+ * @param mode the mode value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withMode(ConnectedRegistryMode mode) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withMode(mode);
+ return this;
+ }
+
+ /**
+ * Get the version property: The current version of ACR runtime on the connected registry.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.innerProperties() == null ? null : this.innerProperties().version();
+ }
+
+ /**
+ * Get the connectionState property: The current connection state of the connected registry.
+ *
+ * @return the connectionState value.
+ */
+ public ConnectionState connectionState() {
+ return this.innerProperties() == null ? null : this.innerProperties().connectionState();
+ }
+
+ /**
+ * Get the lastActivityTime property: The last activity time of the connected registry.
+ *
+ * @return the lastActivityTime value.
+ */
+ public OffsetDateTime lastActivityTime() {
+ return this.innerProperties() == null ? null : this.innerProperties().lastActivityTime();
+ }
+
+ /**
+ * Get the activation property: The activation properties of the connected registry.
+ *
+ * @return the activation value.
+ */
+ public ActivationProperties activation() {
+ return this.innerProperties() == null ? null : this.innerProperties().activation();
+ }
+
+ /**
+ * Get the parent property: The parent of the connected registry.
+ *
+ * @return the parent value.
+ */
+ public ParentProperties parent() {
+ return this.innerProperties() == null ? null : this.innerProperties().parent();
+ }
+
+ /**
+ * Set the parent property: The parent of the connected registry.
+ *
+ * @param parent the parent value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withParent(ParentProperties parent) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withParent(parent);
+ return this;
+ }
+
+ /**
+ * Get the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @return the clientTokenIds value.
+ */
+ public List clientTokenIds() {
+ return this.innerProperties() == null ? null : this.innerProperties().clientTokenIds();
+ }
+
+ /**
+ * Set the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @param clientTokenIds the clientTokenIds value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withClientTokenIds(List clientTokenIds) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withClientTokenIds(clientTokenIds);
+ return this;
+ }
+
+ /**
+ * Get the loginServer property: The login server properties of the connected registry.
+ *
+ * @return the loginServer value.
+ */
+ public LoginServerProperties loginServer() {
+ return this.innerProperties() == null ? null : this.innerProperties().loginServer();
+ }
+
+ /**
+ * Set the loginServer property: The login server properties of the connected registry.
+ *
+ * @param loginServer the loginServer value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withLoginServer(LoginServerProperties loginServer) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withLoginServer(loginServer);
+ return this;
+ }
+
+ /**
+ * Get the logging property: The logging properties of the connected registry.
+ *
+ * @return the logging value.
+ */
+ public LoggingProperties logging() {
+ return this.innerProperties() == null ? null : this.innerProperties().logging();
+ }
+
+ /**
+ * Set the logging property: The logging properties of the connected registry.
+ *
+ * @param logging the logging value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withLogging(LoggingProperties logging) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withLogging(logging);
+ return this;
+ }
+
+ /**
+ * Get the statusDetails property: The list of current statuses of the connected registry.
+ *
+ * @return the statusDetails value.
+ */
+ public List statusDetails() {
+ return this.innerProperties() == null ? null : this.innerProperties().statusDetails();
+ }
+
+ /**
+ * Get the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @return the notificationsList value.
+ */
+ public List notificationsList() {
+ return this.innerProperties() == null ? null : this.innerProperties().notificationsList();
+ }
+
+ /**
+ * Set the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @param notificationsList the notificationsList value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withNotificationsList(List notificationsList) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withNotificationsList(notificationsList);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryProperties.java
new file mode 100644
index 000000000000..a5e54f5f58c3
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryProperties.java
@@ -0,0 +1,314 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.ActivationProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryMode;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectionState;
+import com.azure.resourcemanager.containerregistry.generated.models.LoggingProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.LoginServerProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ParentProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.StatusDetailProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** The properties of a connected registry. */
+@Fluent
+public final class ConnectedRegistryProperties {
+ /*
+ * Provisioning state of the resource.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The mode of the connected registry resource that indicates the
+ * permissions of the registry.
+ */
+ @JsonProperty(value = "mode", required = true)
+ private ConnectedRegistryMode mode;
+
+ /*
+ * The current version of ACR runtime on the connected registry.
+ */
+ @JsonProperty(value = "version", access = JsonProperty.Access.WRITE_ONLY)
+ private String version;
+
+ /*
+ * The current connection state of the connected registry.
+ */
+ @JsonProperty(value = "connectionState", access = JsonProperty.Access.WRITE_ONLY)
+ private ConnectionState connectionState;
+
+ /*
+ * The last activity time of the connected registry.
+ */
+ @JsonProperty(value = "lastActivityTime", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime lastActivityTime;
+
+ /*
+ * The activation properties of the connected registry.
+ */
+ @JsonProperty(value = "activation", access = JsonProperty.Access.WRITE_ONLY)
+ private ActivationProperties activation;
+
+ /*
+ * The parent of the connected registry.
+ */
+ @JsonProperty(value = "parent", required = true)
+ private ParentProperties parent;
+
+ /*
+ * The list of the ACR token resource IDs used to authenticate clients to
+ * the connected registry.
+ */
+ @JsonProperty(value = "clientTokenIds")
+ private List clientTokenIds;
+
+ /*
+ * The login server properties of the connected registry.
+ */
+ @JsonProperty(value = "loginServer")
+ private LoginServerProperties loginServer;
+
+ /*
+ * The logging properties of the connected registry.
+ */
+ @JsonProperty(value = "logging")
+ private LoggingProperties logging;
+
+ /*
+ * The list of current statuses of the connected registry.
+ */
+ @JsonProperty(value = "statusDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private List statusDetails;
+
+ /*
+ * The list of notifications subscription information for the connected
+ * registry.
+ */
+ @JsonProperty(value = "notificationsList")
+ private List notificationsList;
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the mode property: The mode of the connected registry resource that indicates the permissions of the
+ * registry.
+ *
+ * @return the mode value.
+ */
+ public ConnectedRegistryMode mode() {
+ return this.mode;
+ }
+
+ /**
+ * Set the mode property: The mode of the connected registry resource that indicates the permissions of the
+ * registry.
+ *
+ * @param mode the mode value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withMode(ConnectedRegistryMode mode) {
+ this.mode = mode;
+ return this;
+ }
+
+ /**
+ * Get the version property: The current version of ACR runtime on the connected registry.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Get the connectionState property: The current connection state of the connected registry.
+ *
+ * @return the connectionState value.
+ */
+ public ConnectionState connectionState() {
+ return this.connectionState;
+ }
+
+ /**
+ * Get the lastActivityTime property: The last activity time of the connected registry.
+ *
+ * @return the lastActivityTime value.
+ */
+ public OffsetDateTime lastActivityTime() {
+ return this.lastActivityTime;
+ }
+
+ /**
+ * Get the activation property: The activation properties of the connected registry.
+ *
+ * @return the activation value.
+ */
+ public ActivationProperties activation() {
+ return this.activation;
+ }
+
+ /**
+ * Get the parent property: The parent of the connected registry.
+ *
+ * @return the parent value.
+ */
+ public ParentProperties parent() {
+ return this.parent;
+ }
+
+ /**
+ * Set the parent property: The parent of the connected registry.
+ *
+ * @param parent the parent value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withParent(ParentProperties parent) {
+ this.parent = parent;
+ return this;
+ }
+
+ /**
+ * Get the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @return the clientTokenIds value.
+ */
+ public List clientTokenIds() {
+ return this.clientTokenIds;
+ }
+
+ /**
+ * Set the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @param clientTokenIds the clientTokenIds value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withClientTokenIds(List clientTokenIds) {
+ this.clientTokenIds = clientTokenIds;
+ return this;
+ }
+
+ /**
+ * Get the loginServer property: The login server properties of the connected registry.
+ *
+ * @return the loginServer value.
+ */
+ public LoginServerProperties loginServer() {
+ return this.loginServer;
+ }
+
+ /**
+ * Set the loginServer property: The login server properties of the connected registry.
+ *
+ * @param loginServer the loginServer value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withLoginServer(LoginServerProperties loginServer) {
+ this.loginServer = loginServer;
+ return this;
+ }
+
+ /**
+ * Get the logging property: The logging properties of the connected registry.
+ *
+ * @return the logging value.
+ */
+ public LoggingProperties logging() {
+ return this.logging;
+ }
+
+ /**
+ * Set the logging property: The logging properties of the connected registry.
+ *
+ * @param logging the logging value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withLogging(LoggingProperties logging) {
+ this.logging = logging;
+ return this;
+ }
+
+ /**
+ * Get the statusDetails property: The list of current statuses of the connected registry.
+ *
+ * @return the statusDetails value.
+ */
+ public List statusDetails() {
+ return this.statusDetails;
+ }
+
+ /**
+ * Get the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @return the notificationsList value.
+ */
+ public List notificationsList() {
+ return this.notificationsList;
+ }
+
+ /**
+ * Set the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @param notificationsList the notificationsList value to set.
+ * @return the ConnectedRegistryProperties object itself.
+ */
+ public ConnectedRegistryProperties withNotificationsList(List notificationsList) {
+ this.notificationsList = notificationsList;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (mode() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property mode in model ConnectedRegistryProperties"));
+ }
+ if (activation() != null) {
+ activation().validate();
+ }
+ if (parent() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property parent in model ConnectedRegistryProperties"));
+ } else {
+ parent().validate();
+ }
+ if (loginServer() != null) {
+ loginServer().validate();
+ }
+ if (logging() != null) {
+ logging().validate();
+ }
+ if (statusDetails() != null) {
+ statusDetails().forEach(e -> e.validate());
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ConnectedRegistryProperties.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryUpdateProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryUpdateProperties.java
new file mode 100644
index 000000000000..b41c3ae91305
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ConnectedRegistryUpdateProperties.java
@@ -0,0 +1,139 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.LoggingProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.SyncUpdateProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The parameters for updating token properties. */
+@Fluent
+public final class ConnectedRegistryUpdateProperties {
+ /*
+ * The sync properties of the connected registry with its parent.
+ */
+ @JsonProperty(value = "syncProperties")
+ private SyncUpdateProperties syncProperties;
+
+ /*
+ * The logging properties of the connected registry.
+ */
+ @JsonProperty(value = "logging")
+ private LoggingProperties logging;
+
+ /*
+ * The list of the ACR token resource IDs used to authenticate clients to
+ * the connected registry.
+ */
+ @JsonProperty(value = "clientTokenIds")
+ private List clientTokenIds;
+
+ /*
+ * The list of notifications subscription information for the connected
+ * registry.
+ */
+ @JsonProperty(value = "notificationsList")
+ private List notificationsList;
+
+ /**
+ * Get the syncProperties property: The sync properties of the connected registry with its parent.
+ *
+ * @return the syncProperties value.
+ */
+ public SyncUpdateProperties syncProperties() {
+ return this.syncProperties;
+ }
+
+ /**
+ * Set the syncProperties property: The sync properties of the connected registry with its parent.
+ *
+ * @param syncProperties the syncProperties value to set.
+ * @return the ConnectedRegistryUpdateProperties object itself.
+ */
+ public ConnectedRegistryUpdateProperties withSyncProperties(SyncUpdateProperties syncProperties) {
+ this.syncProperties = syncProperties;
+ return this;
+ }
+
+ /**
+ * Get the logging property: The logging properties of the connected registry.
+ *
+ * @return the logging value.
+ */
+ public LoggingProperties logging() {
+ return this.logging;
+ }
+
+ /**
+ * Set the logging property: The logging properties of the connected registry.
+ *
+ * @param logging the logging value to set.
+ * @return the ConnectedRegistryUpdateProperties object itself.
+ */
+ public ConnectedRegistryUpdateProperties withLogging(LoggingProperties logging) {
+ this.logging = logging;
+ return this;
+ }
+
+ /**
+ * Get the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @return the clientTokenIds value.
+ */
+ public List clientTokenIds() {
+ return this.clientTokenIds;
+ }
+
+ /**
+ * Set the clientTokenIds property: The list of the ACR token resource IDs used to authenticate clients to the
+ * connected registry.
+ *
+ * @param clientTokenIds the clientTokenIds value to set.
+ * @return the ConnectedRegistryUpdateProperties object itself.
+ */
+ public ConnectedRegistryUpdateProperties withClientTokenIds(List clientTokenIds) {
+ this.clientTokenIds = clientTokenIds;
+ return this;
+ }
+
+ /**
+ * Get the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @return the notificationsList value.
+ */
+ public List notificationsList() {
+ return this.notificationsList;
+ }
+
+ /**
+ * Set the notificationsList property: The list of notifications subscription information for the connected
+ * registry.
+ *
+ * @param notificationsList the notificationsList value to set.
+ * @return the ConnectedRegistryUpdateProperties object itself.
+ */
+ public ConnectedRegistryUpdateProperties withNotificationsList(List notificationsList) {
+ this.notificationsList = notificationsList;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (syncProperties() != null) {
+ syncProperties().validate();
+ }
+ if (logging() != null) {
+ logging().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInfoInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInfoInner.java
new file mode 100644
index 000000000000..ecc0a364d5e7
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInfoInner.java
@@ -0,0 +1,46 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The basic information of an event. */
+@Fluent
+public class EventInfoInner {
+ /*
+ * The event ID.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * Get the id property: The event ID.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: The event ID.
+ *
+ * @param id the id value to set.
+ * @return the EventInfoInner object itself.
+ */
+ public EventInfoInner withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInner.java
new file mode 100644
index 000000000000..ac8c0d888066
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/EventInner.java
@@ -0,0 +1,89 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.EventRequestMessage;
+import com.azure.resourcemanager.containerregistry.generated.models.EventResponseMessage;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The event for a webhook. */
+@Fluent
+public final class EventInner extends EventInfoInner {
+ /*
+ * The event request message sent to the service URI.
+ */
+ @JsonProperty(value = "eventRequestMessage")
+ private EventRequestMessage eventRequestMessage;
+
+ /*
+ * The event response message received from the service URI.
+ */
+ @JsonProperty(value = "eventResponseMessage")
+ private EventResponseMessage eventResponseMessage;
+
+ /**
+ * Get the eventRequestMessage property: The event request message sent to the service URI.
+ *
+ * @return the eventRequestMessage value.
+ */
+ public EventRequestMessage eventRequestMessage() {
+ return this.eventRequestMessage;
+ }
+
+ /**
+ * Set the eventRequestMessage property: The event request message sent to the service URI.
+ *
+ * @param eventRequestMessage the eventRequestMessage value to set.
+ * @return the EventInner object itself.
+ */
+ public EventInner withEventRequestMessage(EventRequestMessage eventRequestMessage) {
+ this.eventRequestMessage = eventRequestMessage;
+ return this;
+ }
+
+ /**
+ * Get the eventResponseMessage property: The event response message received from the service URI.
+ *
+ * @return the eventResponseMessage value.
+ */
+ public EventResponseMessage eventResponseMessage() {
+ return this.eventResponseMessage;
+ }
+
+ /**
+ * Set the eventResponseMessage property: The event response message received from the service URI.
+ *
+ * @param eventResponseMessage the eventResponseMessage value to set.
+ * @return the EventInner object itself.
+ */
+ public EventInner withEventResponseMessage(EventResponseMessage eventResponseMessage) {
+ this.eventResponseMessage = eventResponseMessage;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public EventInner withId(String id) {
+ super.withId(id);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (eventRequestMessage() != null) {
+ eventRequestMessage().validate();
+ }
+ if (eventResponseMessage() != null) {
+ eventResponseMessage().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineInner.java
new file mode 100644
index 000000000000..64831181f39b
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineInner.java
@@ -0,0 +1,170 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ExportPipelineTargetProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** An object that represents an export pipeline for a container registry. */
+@Fluent
+public final class ExportPipelineInner extends ProxyResource {
+ /*
+ * The location of the export pipeline.
+ */
+ @JsonProperty(value = "location")
+ private String location;
+
+ /*
+ * The identity of the export pipeline.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityProperties identity;
+
+ /*
+ * The properties of the export pipeline.
+ */
+ @JsonProperty(value = "properties")
+ private ExportPipelineProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the location property: The location of the export pipeline.
+ *
+ * @return the location value.
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location property: The location of the export pipeline.
+ *
+ * @param location the location value to set.
+ * @return the ExportPipelineInner object itself.
+ */
+ public ExportPipelineInner withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The identity of the export pipeline.
+ *
+ * @return the identity value.
+ */
+ public IdentityProperties identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The identity of the export pipeline.
+ *
+ * @param identity the identity value to set.
+ * @return the ExportPipelineInner object itself.
+ */
+ public ExportPipelineInner withIdentity(IdentityProperties identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the export pipeline.
+ *
+ * @return the innerProperties value.
+ */
+ private ExportPipelineProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the target property: The target properties of the export pipeline.
+ *
+ * @return the target value.
+ */
+ public ExportPipelineTargetProperties target() {
+ return this.innerProperties() == null ? null : this.innerProperties().target();
+ }
+
+ /**
+ * Set the target property: The target properties of the export pipeline.
+ *
+ * @param target the target value to set.
+ * @return the ExportPipelineInner object itself.
+ */
+ public ExportPipelineInner withTarget(ExportPipelineTargetProperties target) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ExportPipelineProperties();
+ }
+ this.innerProperties().withTarget(target);
+ return this;
+ }
+
+ /**
+ * Get the options property: The list of all options configured for the pipeline.
+ *
+ * @return the options value.
+ */
+ public List options() {
+ return this.innerProperties() == null ? null : this.innerProperties().options();
+ }
+
+ /**
+ * Set the options property: The list of all options configured for the pipeline.
+ *
+ * @param options the options value to set.
+ * @return the ExportPipelineInner object itself.
+ */
+ public ExportPipelineInner withOptions(List options) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ExportPipelineProperties();
+ }
+ this.innerProperties().withOptions(options);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the pipeline at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (identity() != null) {
+ identity().validate();
+ }
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineProperties.java
new file mode 100644
index 000000000000..003f624b7f91
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ExportPipelineProperties.java
@@ -0,0 +1,102 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.ExportPipelineTargetProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The properties of an export pipeline. */
+@Fluent
+public final class ExportPipelineProperties {
+ /*
+ * The target properties of the export pipeline.
+ */
+ @JsonProperty(value = "target", required = true)
+ private ExportPipelineTargetProperties target;
+
+ /*
+ * The list of all options configured for the pipeline.
+ */
+ @JsonProperty(value = "options")
+ private List options;
+
+ /*
+ * The provisioning state of the pipeline at the time the operation was
+ * called.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the target property: The target properties of the export pipeline.
+ *
+ * @return the target value.
+ */
+ public ExportPipelineTargetProperties target() {
+ return this.target;
+ }
+
+ /**
+ * Set the target property: The target properties of the export pipeline.
+ *
+ * @param target the target value to set.
+ * @return the ExportPipelineProperties object itself.
+ */
+ public ExportPipelineProperties withTarget(ExportPipelineTargetProperties target) {
+ this.target = target;
+ return this;
+ }
+
+ /**
+ * Get the options property: The list of all options configured for the pipeline.
+ *
+ * @return the options value.
+ */
+ public List options() {
+ return this.options;
+ }
+
+ /**
+ * Set the options property: The list of all options configured for the pipeline.
+ *
+ * @param options the options value to set.
+ * @return the ExportPipelineProperties object itself.
+ */
+ public ExportPipelineProperties withOptions(List options) {
+ this.options = options;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the pipeline at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (target() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property target in model ExportPipelineProperties"));
+ } else {
+ target().validate();
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ExportPipelineProperties.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/GenerateCredentialsResultInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/GenerateCredentialsResultInner.java
new file mode 100644
index 000000000000..6f18f2b420e0
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/GenerateCredentialsResultInner.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenPassword;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The response from the GenerateCredentials operation. */
+@Fluent
+public final class GenerateCredentialsResultInner {
+ /*
+ * The username for a container registry.
+ */
+ @JsonProperty(value = "username")
+ private String username;
+
+ /*
+ * The list of passwords for a container registry.
+ */
+ @JsonProperty(value = "passwords")
+ private List passwords;
+
+ /**
+ * Get the username property: The username for a container registry.
+ *
+ * @return the username value.
+ */
+ public String username() {
+ return this.username;
+ }
+
+ /**
+ * Set the username property: The username for a container registry.
+ *
+ * @param username the username value to set.
+ * @return the GenerateCredentialsResultInner object itself.
+ */
+ public GenerateCredentialsResultInner withUsername(String username) {
+ this.username = username;
+ return this;
+ }
+
+ /**
+ * Get the passwords property: The list of passwords for a container registry.
+ *
+ * @return the passwords value.
+ */
+ public List passwords() {
+ return this.passwords;
+ }
+
+ /**
+ * Set the passwords property: The list of passwords for a container registry.
+ *
+ * @param passwords the passwords value to set.
+ * @return the GenerateCredentialsResultInner object itself.
+ */
+ public GenerateCredentialsResultInner withPasswords(List passwords) {
+ this.passwords = passwords;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (passwords() != null) {
+ passwords().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineInner.java
new file mode 100644
index 000000000000..b84c1347a48e
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineInner.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.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportPipelineSourceProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineTriggerProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** An object that represents an import pipeline for a container registry. */
+@Fluent
+public final class ImportPipelineInner extends ProxyResource {
+ /*
+ * The location of the import pipeline.
+ */
+ @JsonProperty(value = "location")
+ private String location;
+
+ /*
+ * The identity of the import pipeline.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityProperties identity;
+
+ /*
+ * The properties of the import pipeline.
+ */
+ @JsonProperty(value = "properties")
+ private ImportPipelineProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the location property: The location of the import pipeline.
+ *
+ * @return the location value.
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location property: The location of the import pipeline.
+ *
+ * @param location the location value to set.
+ * @return the ImportPipelineInner object itself.
+ */
+ public ImportPipelineInner withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The identity of the import pipeline.
+ *
+ * @return the identity value.
+ */
+ public IdentityProperties identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The identity of the import pipeline.
+ *
+ * @param identity the identity value to set.
+ * @return the ImportPipelineInner object itself.
+ */
+ public ImportPipelineInner withIdentity(IdentityProperties identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the import pipeline.
+ *
+ * @return the innerProperties value.
+ */
+ private ImportPipelineProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the source property: The source properties of the import pipeline.
+ *
+ * @return the source value.
+ */
+ public ImportPipelineSourceProperties source() {
+ return this.innerProperties() == null ? null : this.innerProperties().source();
+ }
+
+ /**
+ * Set the source property: The source properties of the import pipeline.
+ *
+ * @param source the source value to set.
+ * @return the ImportPipelineInner object itself.
+ */
+ public ImportPipelineInner withSource(ImportPipelineSourceProperties source) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ImportPipelineProperties();
+ }
+ this.innerProperties().withSource(source);
+ return this;
+ }
+
+ /**
+ * Get the trigger property: The properties that describe the trigger of the import pipeline.
+ *
+ * @return the trigger value.
+ */
+ public PipelineTriggerProperties trigger() {
+ return this.innerProperties() == null ? null : this.innerProperties().trigger();
+ }
+
+ /**
+ * Set the trigger property: The properties that describe the trigger of the import pipeline.
+ *
+ * @param trigger the trigger value to set.
+ * @return the ImportPipelineInner object itself.
+ */
+ public ImportPipelineInner withTrigger(PipelineTriggerProperties trigger) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ImportPipelineProperties();
+ }
+ this.innerProperties().withTrigger(trigger);
+ return this;
+ }
+
+ /**
+ * Get the options property: The list of all options configured for the pipeline.
+ *
+ * @return the options value.
+ */
+ public List options() {
+ return this.innerProperties() == null ? null : this.innerProperties().options();
+ }
+
+ /**
+ * Set the options property: The list of all options configured for the pipeline.
+ *
+ * @param options the options value to set.
+ * @return the ImportPipelineInner object itself.
+ */
+ public ImportPipelineInner withOptions(List options) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ImportPipelineProperties();
+ }
+ this.innerProperties().withOptions(options);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the pipeline at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (identity() != null) {
+ identity().validate();
+ }
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineProperties.java
new file mode 100644
index 000000000000..c370580d0496
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ImportPipelineProperties.java
@@ -0,0 +1,132 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.ImportPipelineSourceProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineTriggerProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The properties of an import pipeline. */
+@Fluent
+public final class ImportPipelineProperties {
+ /*
+ * The source properties of the import pipeline.
+ */
+ @JsonProperty(value = "source", required = true)
+ private ImportPipelineSourceProperties source;
+
+ /*
+ * The properties that describe the trigger of the import pipeline.
+ */
+ @JsonProperty(value = "trigger")
+ private PipelineTriggerProperties trigger;
+
+ /*
+ * The list of all options configured for the pipeline.
+ */
+ @JsonProperty(value = "options")
+ private List options;
+
+ /*
+ * The provisioning state of the pipeline at the time the operation was
+ * called.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the source property: The source properties of the import pipeline.
+ *
+ * @return the source value.
+ */
+ public ImportPipelineSourceProperties source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source property: The source properties of the import pipeline.
+ *
+ * @param source the source value to set.
+ * @return the ImportPipelineProperties object itself.
+ */
+ public ImportPipelineProperties withSource(ImportPipelineSourceProperties source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the trigger property: The properties that describe the trigger of the import pipeline.
+ *
+ * @return the trigger value.
+ */
+ public PipelineTriggerProperties trigger() {
+ return this.trigger;
+ }
+
+ /**
+ * Set the trigger property: The properties that describe the trigger of the import pipeline.
+ *
+ * @param trigger the trigger value to set.
+ * @return the ImportPipelineProperties object itself.
+ */
+ public ImportPipelineProperties withTrigger(PipelineTriggerProperties trigger) {
+ this.trigger = trigger;
+ return this;
+ }
+
+ /**
+ * Get the options property: The list of all options configured for the pipeline.
+ *
+ * @return the options value.
+ */
+ public List options() {
+ return this.options;
+ }
+
+ /**
+ * Set the options property: The list of all options configured for the pipeline.
+ *
+ * @param options the options value to set.
+ * @return the ImportPipelineProperties object itself.
+ */
+ public ImportPipelineProperties withOptions(List options) {
+ this.options = options;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the pipeline at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (source() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property source in model ImportPipelineProperties"));
+ } else {
+ source().validate();
+ }
+ if (trigger() != null) {
+ trigger().validate();
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ImportPipelineProperties.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationDefinitionInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationDefinitionInner.java
new file mode 100644
index 000000000000..559e66511fce
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationDefinitionInner.java
@@ -0,0 +1,175 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.OperationDisplayDefinition;
+import com.azure.resourcemanager.containerregistry.generated.models.OperationServiceSpecificationDefinition;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The definition of a container registry operation. */
+@Fluent
+public final class OperationDefinitionInner {
+ /*
+ * The origin information of the container registry operation.
+ */
+ @JsonProperty(value = "origin")
+ private String origin;
+
+ /*
+ * Operation name: {provider}/{resource}/{operation}.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * The display information for the container registry operation.
+ */
+ @JsonProperty(value = "display")
+ private OperationDisplayDefinition display;
+
+ /*
+ * The properties information for the container registry operation.
+ */
+ @JsonProperty(value = "properties")
+ private OperationPropertiesDefinition innerProperties;
+
+ /*
+ * This property indicates if the operation is an action or a data action
+ * ref:
+ * https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions#management-and-data-operations
+ */
+ @JsonProperty(value = "isDataAction")
+ private Boolean isDataAction;
+
+ /**
+ * Get the origin property: The origin information of the container registry operation.
+ *
+ * @return the origin value.
+ */
+ public String origin() {
+ return this.origin;
+ }
+
+ /**
+ * Set the origin property: The origin information of the container registry operation.
+ *
+ * @param origin the origin value to set.
+ * @return the OperationDefinitionInner object itself.
+ */
+ public OperationDefinitionInner withOrigin(String origin) {
+ this.origin = origin;
+ return this;
+ }
+
+ /**
+ * Get the name property: Operation name: {provider}/{resource}/{operation}.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: Operation name: {provider}/{resource}/{operation}.
+ *
+ * @param name the name value to set.
+ * @return the OperationDefinitionInner object itself.
+ */
+ public OperationDefinitionInner withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the display property: The display information for the container registry operation.
+ *
+ * @return the display value.
+ */
+ public OperationDisplayDefinition display() {
+ return this.display;
+ }
+
+ /**
+ * Set the display property: The display information for the container registry operation.
+ *
+ * @param display the display value to set.
+ * @return the OperationDefinitionInner object itself.
+ */
+ public OperationDefinitionInner withDisplay(OperationDisplayDefinition display) {
+ this.display = display;
+ return this;
+ }
+
+ /**
+ * Get the innerProperties property: The properties information for the container registry operation.
+ *
+ * @return the innerProperties value.
+ */
+ private OperationPropertiesDefinition innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the isDataAction property: This property indicates if the operation is an action or a data action ref:
+ * https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions#management-and-data-operations.
+ *
+ * @return the isDataAction value.
+ */
+ public Boolean isDataAction() {
+ return this.isDataAction;
+ }
+
+ /**
+ * Set the isDataAction property: This property indicates if the operation is an action or a data action ref:
+ * https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions#management-and-data-operations.
+ *
+ * @param isDataAction the isDataAction value to set.
+ * @return the OperationDefinitionInner object itself.
+ */
+ public OperationDefinitionInner withIsDataAction(Boolean isDataAction) {
+ this.isDataAction = isDataAction;
+ return this;
+ }
+
+ /**
+ * Get the serviceSpecification property: The definition of Azure Monitoring service.
+ *
+ * @return the serviceSpecification value.
+ */
+ public OperationServiceSpecificationDefinition serviceSpecification() {
+ return this.innerProperties() == null ? null : this.innerProperties().serviceSpecification();
+ }
+
+ /**
+ * Set the serviceSpecification property: The definition of Azure Monitoring service.
+ *
+ * @param serviceSpecification the serviceSpecification value to set.
+ * @return the OperationDefinitionInner object itself.
+ */
+ public OperationDefinitionInner withServiceSpecification(
+ OperationServiceSpecificationDefinition serviceSpecification) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationPropertiesDefinition();
+ }
+ this.innerProperties().withServiceSpecification(serviceSpecification);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (display() != null) {
+ display().validate();
+ }
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationPropertiesDefinition.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationPropertiesDefinition.java
new file mode 100644
index 000000000000..8becdccd628b
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/OperationPropertiesDefinition.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.OperationServiceSpecificationDefinition;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The definition of Azure Monitoring properties. */
+@Fluent
+public final class OperationPropertiesDefinition {
+ /*
+ * The definition of Azure Monitoring service.
+ */
+ @JsonProperty(value = "serviceSpecification")
+ private OperationServiceSpecificationDefinition serviceSpecification;
+
+ /**
+ * Get the serviceSpecification property: The definition of Azure Monitoring service.
+ *
+ * @return the serviceSpecification value.
+ */
+ public OperationServiceSpecificationDefinition serviceSpecification() {
+ return this.serviceSpecification;
+ }
+
+ /**
+ * Set the serviceSpecification property: The definition of Azure Monitoring service.
+ *
+ * @param serviceSpecification the serviceSpecification value to set.
+ * @return the OperationPropertiesDefinition object itself.
+ */
+ public OperationPropertiesDefinition withServiceSpecification(
+ OperationServiceSpecificationDefinition serviceSpecification) {
+ this.serviceSpecification = serviceSpecification;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (serviceSpecification() != null) {
+ serviceSpecification().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunInner.java
new file mode 100644
index 000000000000..ced5841296e0
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunInner.java
@@ -0,0 +1,124 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunRequest;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunResponse;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** An object that represents a pipeline run for a container registry. */
+@Fluent
+public final class PipelineRunInner extends ProxyResource {
+ /*
+ * The properties of a pipeline run.
+ */
+ @JsonProperty(value = "properties")
+ private PipelineRunProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of a pipeline run.
+ *
+ * @return the innerProperties value.
+ */
+ private PipelineRunProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of a pipeline run.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the request property: The request parameters for a pipeline run.
+ *
+ * @return the request value.
+ */
+ public PipelineRunRequest request() {
+ return this.innerProperties() == null ? null : this.innerProperties().request();
+ }
+
+ /**
+ * Set the request property: The request parameters for a pipeline run.
+ *
+ * @param request the request value to set.
+ * @return the PipelineRunInner object itself.
+ */
+ public PipelineRunInner withRequest(PipelineRunRequest request) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PipelineRunProperties();
+ }
+ this.innerProperties().withRequest(request);
+ return this;
+ }
+
+ /**
+ * Get the response property: The response of a pipeline run.
+ *
+ * @return the response value.
+ */
+ public PipelineRunResponse response() {
+ return this.innerProperties() == null ? null : this.innerProperties().response();
+ }
+
+ /**
+ * Get the forceUpdateTag property: How the pipeline run should be forced to recreate even if the pipeline run
+ * configuration has not changed.
+ *
+ * @return the forceUpdateTag value.
+ */
+ public String forceUpdateTag() {
+ return this.innerProperties() == null ? null : this.innerProperties().forceUpdateTag();
+ }
+
+ /**
+ * Set the forceUpdateTag property: How the pipeline run should be forced to recreate even if the pipeline run
+ * configuration has not changed.
+ *
+ * @param forceUpdateTag the forceUpdateTag value to set.
+ * @return the PipelineRunInner object itself.
+ */
+ public PipelineRunInner withForceUpdateTag(String forceUpdateTag) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PipelineRunProperties();
+ }
+ this.innerProperties().withForceUpdateTag(forceUpdateTag);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunProperties.java
new file mode 100644
index 000000000000..a5ded82b2b03
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PipelineRunProperties.java
@@ -0,0 +1,114 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunRequest;
+import com.azure.resourcemanager.containerregistry.generated.models.PipelineRunResponse;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties of a pipeline run. */
+@Fluent
+public final class PipelineRunProperties {
+ /*
+ * The provisioning state of a pipeline run.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The request parameters for a pipeline run.
+ */
+ @JsonProperty(value = "request")
+ private PipelineRunRequest request;
+
+ /*
+ * The response of a pipeline run.
+ */
+ @JsonProperty(value = "response", access = JsonProperty.Access.WRITE_ONLY)
+ private PipelineRunResponse response;
+
+ /*
+ * How the pipeline run should be forced to recreate even if the pipeline
+ * run configuration has not changed.
+ */
+ @JsonProperty(value = "forceUpdateTag")
+ private String forceUpdateTag;
+
+ /**
+ * Get the provisioningState property: The provisioning state of a pipeline run.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the request property: The request parameters for a pipeline run.
+ *
+ * @return the request value.
+ */
+ public PipelineRunRequest request() {
+ return this.request;
+ }
+
+ /**
+ * Set the request property: The request parameters for a pipeline run.
+ *
+ * @param request the request value to set.
+ * @return the PipelineRunProperties object itself.
+ */
+ public PipelineRunProperties withRequest(PipelineRunRequest request) {
+ this.request = request;
+ return this;
+ }
+
+ /**
+ * Get the response property: The response of a pipeline run.
+ *
+ * @return the response value.
+ */
+ public PipelineRunResponse response() {
+ return this.response;
+ }
+
+ /**
+ * Get the forceUpdateTag property: How the pipeline run should be forced to recreate even if the pipeline run
+ * configuration has not changed.
+ *
+ * @return the forceUpdateTag value.
+ */
+ public String forceUpdateTag() {
+ return this.forceUpdateTag;
+ }
+
+ /**
+ * Set the forceUpdateTag property: How the pipeline run should be forced to recreate even if the pipeline run
+ * configuration has not changed.
+ *
+ * @param forceUpdateTag the forceUpdateTag value to set.
+ * @return the PipelineRunProperties object itself.
+ */
+ public PipelineRunProperties withForceUpdateTag(String forceUpdateTag) {
+ this.forceUpdateTag = forceUpdateTag;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (request() != null) {
+ request().validate();
+ }
+ if (response() != null) {
+ response().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionInner.java
new file mode 100644
index 000000000000..df14cd7faa20
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionInner.java
@@ -0,0 +1,116 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateEndpoint;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateLinkServiceConnectionState;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** An object that represents a private endpoint connection for a container registry. */
+@Fluent
+public final class PrivateEndpointConnectionInner extends ProxyResource {
+ /*
+ * The properties of a private endpoint connection.
+ */
+ @JsonProperty(value = "properties")
+ private PrivateEndpointConnectionProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of a private endpoint connection.
+ *
+ * @return the innerProperties value.
+ */
+ private PrivateEndpointConnectionProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the privateEndpoint property: The resource of private endpoint.
+ *
+ * @return the privateEndpoint value.
+ */
+ public PrivateEndpoint privateEndpoint() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateEndpoint();
+ }
+
+ /**
+ * Set the privateEndpoint property: The resource of private endpoint.
+ *
+ * @param privateEndpoint the privateEndpoint value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateEndpoint(PrivateEndpoint privateEndpoint) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateEndpointConnectionProperties();
+ }
+ this.innerProperties().withPrivateEndpoint(privateEndpoint);
+ return this;
+ }
+
+ /**
+ * Get the privateLinkServiceConnectionState property: A collection of information about the state of the connection
+ * between service consumer and provider.
+ *
+ * @return the privateLinkServiceConnectionState value.
+ */
+ public PrivateLinkServiceConnectionState privateLinkServiceConnectionState() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateLinkServiceConnectionState();
+ }
+
+ /**
+ * Set the privateLinkServiceConnectionState property: A collection of information about the state of the connection
+ * between service consumer and provider.
+ *
+ * @param privateLinkServiceConnectionState the privateLinkServiceConnectionState value to set.
+ * @return the PrivateEndpointConnectionInner object itself.
+ */
+ public PrivateEndpointConnectionInner withPrivateLinkServiceConnectionState(
+ PrivateLinkServiceConnectionState privateLinkServiceConnectionState) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateEndpointConnectionProperties();
+ }
+ this.innerProperties().withPrivateLinkServiceConnectionState(privateLinkServiceConnectionState);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of private endpoint connection resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionProperties.java
new file mode 100644
index 000000000000..55732e028384
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateEndpointConnectionProperties.java
@@ -0,0 +1,100 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateEndpoint;
+import com.azure.resourcemanager.containerregistry.generated.models.PrivateLinkServiceConnectionState;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties of a private endpoint connection. */
+@Fluent
+public final class PrivateEndpointConnectionProperties {
+ /*
+ * The resource of private endpoint.
+ */
+ @JsonProperty(value = "privateEndpoint")
+ private PrivateEndpoint privateEndpoint;
+
+ /*
+ * A collection of information about the state of the connection between
+ * service consumer and provider.
+ */
+ @JsonProperty(value = "privateLinkServiceConnectionState")
+ private PrivateLinkServiceConnectionState privateLinkServiceConnectionState;
+
+ /*
+ * The provisioning state of private endpoint connection resource.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the privateEndpoint property: The resource of private endpoint.
+ *
+ * @return the privateEndpoint value.
+ */
+ public PrivateEndpoint privateEndpoint() {
+ return this.privateEndpoint;
+ }
+
+ /**
+ * Set the privateEndpoint property: The resource of private endpoint.
+ *
+ * @param privateEndpoint the privateEndpoint value to set.
+ * @return the PrivateEndpointConnectionProperties object itself.
+ */
+ public PrivateEndpointConnectionProperties withPrivateEndpoint(PrivateEndpoint privateEndpoint) {
+ this.privateEndpoint = privateEndpoint;
+ return this;
+ }
+
+ /**
+ * Get the privateLinkServiceConnectionState property: A collection of information about the state of the connection
+ * between service consumer and provider.
+ *
+ * @return the privateLinkServiceConnectionState value.
+ */
+ public PrivateLinkServiceConnectionState privateLinkServiceConnectionState() {
+ return this.privateLinkServiceConnectionState;
+ }
+
+ /**
+ * Set the privateLinkServiceConnectionState property: A collection of information about the state of the connection
+ * between service consumer and provider.
+ *
+ * @param privateLinkServiceConnectionState the privateLinkServiceConnectionState value to set.
+ * @return the PrivateEndpointConnectionProperties object itself.
+ */
+ public PrivateEndpointConnectionProperties withPrivateLinkServiceConnectionState(
+ PrivateLinkServiceConnectionState privateLinkServiceConnectionState) {
+ this.privateLinkServiceConnectionState = privateLinkServiceConnectionState;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of private endpoint connection resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (privateEndpoint() != null) {
+ privateEndpoint().validate();
+ }
+ if (privateLinkServiceConnectionState() != null) {
+ privateLinkServiceConnectionState().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceInner.java
new file mode 100644
index 000000000000..3d7ed2449fb9
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceInner.java
@@ -0,0 +1,175 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** A resource that supports private link capabilities. */
+@Fluent
+public final class PrivateLinkResourceInner {
+ /*
+ * The resource type is private link resource.
+ */
+ @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+ private String type;
+
+ /*
+ * The resource ID.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /*
+ * The name of the resource.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * A resource that supports private link capabilities.
+ */
+ @JsonProperty(value = "properties")
+ private PrivateLinkResourceProperties innerProperties;
+
+ /**
+ * Get the type property: The resource type is private link resource.
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the id property: The resource ID.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: The resource ID.
+ *
+ * @param id the id value to set.
+ * @return the PrivateLinkResourceInner object itself.
+ */
+ public PrivateLinkResourceInner withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: The name of the resource.
+ *
+ * @param name the name value to set.
+ * @return the PrivateLinkResourceInner object itself.
+ */
+ public PrivateLinkResourceInner withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the innerProperties property: A resource that supports private link capabilities.
+ *
+ * @return the innerProperties value.
+ */
+ private PrivateLinkResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the groupId property: The private link resource group id.
+ *
+ * @return the groupId value.
+ */
+ public String groupId() {
+ return this.innerProperties() == null ? null : this.innerProperties().groupId();
+ }
+
+ /**
+ * Set the groupId property: The private link resource group id.
+ *
+ * @param groupId the groupId value to set.
+ * @return the PrivateLinkResourceInner object itself.
+ */
+ public PrivateLinkResourceInner withGroupId(String groupId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateLinkResourceProperties();
+ }
+ this.innerProperties().withGroupId(groupId);
+ return this;
+ }
+
+ /**
+ * Get the requiredMembers property: The private link resource required member names.
+ *
+ * @return the requiredMembers value.
+ */
+ public List requiredMembers() {
+ return this.innerProperties() == null ? null : this.innerProperties().requiredMembers();
+ }
+
+ /**
+ * Set the requiredMembers property: The private link resource required member names.
+ *
+ * @param requiredMembers the requiredMembers value to set.
+ * @return the PrivateLinkResourceInner object itself.
+ */
+ public PrivateLinkResourceInner withRequiredMembers(List requiredMembers) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateLinkResourceProperties();
+ }
+ this.innerProperties().withRequiredMembers(requiredMembers);
+ return this;
+ }
+
+ /**
+ * Get the requiredZoneNames property: The private link resource Private link DNS zone name.
+ *
+ * @return the requiredZoneNames value.
+ */
+ public List requiredZoneNames() {
+ return this.innerProperties() == null ? null : this.innerProperties().requiredZoneNames();
+ }
+
+ /**
+ * Set the requiredZoneNames property: The private link resource Private link DNS zone name.
+ *
+ * @param requiredZoneNames the requiredZoneNames value to set.
+ * @return the PrivateLinkResourceInner object itself.
+ */
+ public PrivateLinkResourceInner withRequiredZoneNames(List requiredZoneNames) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new PrivateLinkResourceProperties();
+ }
+ this.innerProperties().withRequiredZoneNames(requiredZoneNames);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceProperties.java
new file mode 100644
index 000000000000..713379b6415f
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/PrivateLinkResourceProperties.java
@@ -0,0 +1,99 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The properties of a private link resource. */
+@Fluent
+public final class PrivateLinkResourceProperties {
+ /*
+ * The private link resource group id.
+ */
+ @JsonProperty(value = "groupId")
+ private String groupId;
+
+ /*
+ * The private link resource required member names.
+ */
+ @JsonProperty(value = "requiredMembers")
+ private List requiredMembers;
+
+ /*
+ * The private link resource Private link DNS zone name.
+ */
+ @JsonProperty(value = "requiredZoneNames")
+ private List requiredZoneNames;
+
+ /**
+ * Get the groupId property: The private link resource group id.
+ *
+ * @return the groupId value.
+ */
+ public String groupId() {
+ return this.groupId;
+ }
+
+ /**
+ * Set the groupId property: The private link resource group id.
+ *
+ * @param groupId the groupId value to set.
+ * @return the PrivateLinkResourceProperties object itself.
+ */
+ public PrivateLinkResourceProperties withGroupId(String groupId) {
+ this.groupId = groupId;
+ return this;
+ }
+
+ /**
+ * Get the requiredMembers property: The private link resource required member names.
+ *
+ * @return the requiredMembers value.
+ */
+ public List requiredMembers() {
+ return this.requiredMembers;
+ }
+
+ /**
+ * Set the requiredMembers property: The private link resource required member names.
+ *
+ * @param requiredMembers the requiredMembers value to set.
+ * @return the PrivateLinkResourceProperties object itself.
+ */
+ public PrivateLinkResourceProperties withRequiredMembers(List requiredMembers) {
+ this.requiredMembers = requiredMembers;
+ return this;
+ }
+
+ /**
+ * Get the requiredZoneNames property: The private link resource Private link DNS zone name.
+ *
+ * @return the requiredZoneNames value.
+ */
+ public List requiredZoneNames() {
+ return this.requiredZoneNames;
+ }
+
+ /**
+ * Set the requiredZoneNames property: The private link resource Private link DNS zone name.
+ *
+ * @param requiredZoneNames the requiredZoneNames value to set.
+ * @return the PrivateLinkResourceProperties object itself.
+ */
+ public PrivateLinkResourceProperties withRequiredZoneNames(List requiredZoneNames) {
+ this.requiredZoneNames = requiredZoneNames;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryInner.java
new file mode 100644
index 000000000000..a986e0f31672
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryInner.java
@@ -0,0 +1,411 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.EncryptionProperty;
+import com.azure.resourcemanager.containerregistry.generated.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleBypassOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleSet;
+import com.azure.resourcemanager.containerregistry.generated.models.Policies;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.PublicNetworkAccess;
+import com.azure.resourcemanager.containerregistry.generated.models.Sku;
+import com.azure.resourcemanager.containerregistry.generated.models.Status;
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/** An object that represents a container registry. */
+@Fluent
+public final class RegistryInner extends Resource {
+ /*
+ * The SKU of the container registry.
+ */
+ @JsonProperty(value = "sku", required = true)
+ private Sku sku;
+
+ /*
+ * The identity of the container registry.
+ */
+ @JsonProperty(value = "identity")
+ private IdentityProperties identity;
+
+ /*
+ * The properties of the container registry.
+ */
+ @JsonProperty(value = "properties")
+ private RegistryProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the sku property: The SKU of the container registry.
+ *
+ * @return the sku value.
+ */
+ public Sku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku property: The SKU of the container registry.
+ *
+ * @param sku the sku value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withSku(Sku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The identity of the container registry.
+ *
+ * @return the identity value.
+ */
+ public IdentityProperties identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The identity of the container registry.
+ *
+ * @param identity the identity value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withIdentity(IdentityProperties identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the container registry.
+ *
+ * @return the innerProperties value.
+ */
+ private RegistryProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public RegistryInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public RegistryInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the loginServer property: The URL that can be used to log into the container registry.
+ *
+ * @return the loginServer value.
+ */
+ public String loginServer() {
+ return this.innerProperties() == null ? null : this.innerProperties().loginServer();
+ }
+
+ /**
+ * Get the creationDate property: The creation date of the container registry in ISO8601 format.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.innerProperties() == null ? null : this.innerProperties().creationDate();
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the container registry at the time the operation
+ * was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the status property: The status of the container registry at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public Status status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @return the adminUserEnabled value.
+ */
+ public Boolean adminUserEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().adminUserEnabled();
+ }
+
+ /**
+ * Set the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @param adminUserEnabled the adminUserEnabled value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withAdminUserEnabled(Boolean adminUserEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withAdminUserEnabled(adminUserEnabled);
+ return this;
+ }
+
+ /**
+ * Get the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @return the networkRuleSet value.
+ */
+ public NetworkRuleSet networkRuleSet() {
+ return this.innerProperties() == null ? null : this.innerProperties().networkRuleSet();
+ }
+
+ /**
+ * Set the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @param networkRuleSet the networkRuleSet value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withNetworkRuleSet(NetworkRuleSet networkRuleSet) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withNetworkRuleSet(networkRuleSet);
+ return this;
+ }
+
+ /**
+ * Get the policies property: The policies for a container registry.
+ *
+ * @return the policies value.
+ */
+ public Policies policies() {
+ return this.innerProperties() == null ? null : this.innerProperties().policies();
+ }
+
+ /**
+ * Set the policies property: The policies for a container registry.
+ *
+ * @param policies the policies value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withPolicies(Policies policies) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withPolicies(policies);
+ return this;
+ }
+
+ /**
+ * Get the encryption property: The encryption settings of container registry.
+ *
+ * @return the encryption value.
+ */
+ public EncryptionProperty encryption() {
+ return this.innerProperties() == null ? null : this.innerProperties().encryption();
+ }
+
+ /**
+ * Set the encryption property: The encryption settings of container registry.
+ *
+ * @param encryption the encryption value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withEncryption(EncryptionProperty encryption) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withEncryption(encryption);
+ return this;
+ }
+
+ /**
+ * Get the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @return the dataEndpointEnabled value.
+ */
+ public Boolean dataEndpointEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().dataEndpointEnabled();
+ }
+
+ /**
+ * Set the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @param dataEndpointEnabled the dataEndpointEnabled value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withDataEndpointEnabled(Boolean dataEndpointEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withDataEndpointEnabled(dataEndpointEnabled);
+ return this;
+ }
+
+ /**
+ * Get the dataEndpointHostNames property: List of host names that will serve data when dataEndpointEnabled is true.
+ *
+ * @return the dataEndpointHostNames value.
+ */
+ public List dataEndpointHostNames() {
+ return this.innerProperties() == null ? null : this.innerProperties().dataEndpointHostNames();
+ }
+
+ /**
+ * Get the privateEndpointConnections property: List of private endpoint connections for a container registry.
+ *
+ * @return the privateEndpointConnections value.
+ */
+ public List privateEndpointConnections() {
+ return this.innerProperties() == null ? null : this.innerProperties().privateEndpointConnections();
+ }
+
+ /**
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @return the publicNetworkAccess value.
+ */
+ public PublicNetworkAccess publicNetworkAccess() {
+ return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccess();
+ }
+
+ /**
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withPublicNetworkAccess(publicNetworkAccess);
+ return this;
+ }
+
+ /**
+ * Get the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @return the networkRuleBypassOptions value.
+ */
+ public NetworkRuleBypassOptions networkRuleBypassOptions() {
+ return this.innerProperties() == null ? null : this.innerProperties().networkRuleBypassOptions();
+ }
+
+ /**
+ * Set the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @param networkRuleBypassOptions the networkRuleBypassOptions value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withNetworkRuleBypassOptions(NetworkRuleBypassOptions networkRuleBypassOptions) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withNetworkRuleBypassOptions(networkRuleBypassOptions);
+ return this;
+ }
+
+ /**
+ * Get the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry.
+ *
+ * @return the zoneRedundancy value.
+ */
+ public ZoneRedundancy zoneRedundancy() {
+ return this.innerProperties() == null ? null : this.innerProperties().zoneRedundancy();
+ }
+
+ /**
+ * Set the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry.
+ *
+ * @param zoneRedundancy the zoneRedundancy value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withZoneRedundancy(ZoneRedundancy zoneRedundancy) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withZoneRedundancy(zoneRedundancy);
+ return this;
+ }
+
+ /**
+ * Get the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @return the anonymousPullEnabled value.
+ */
+ public Boolean anonymousPullEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().anonymousPullEnabled();
+ }
+
+ /**
+ * Set the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @param anonymousPullEnabled the anonymousPullEnabled value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withAnonymousPullEnabled(Boolean anonymousPullEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withAnonymousPullEnabled(anonymousPullEnabled);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (sku() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property sku in model RegistryInner"));
+ } else {
+ sku().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(RegistryInner.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryListCredentialsResultInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryListCredentialsResultInner.java
new file mode 100644
index 000000000000..25920dd2f586
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryListCredentialsResultInner.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.RegistryPassword;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The response from the ListCredentials operation. */
+@Fluent
+public final class RegistryListCredentialsResultInner {
+ /*
+ * The username for a container registry.
+ */
+ @JsonProperty(value = "username")
+ private String username;
+
+ /*
+ * The list of passwords for a container registry.
+ */
+ @JsonProperty(value = "passwords")
+ private List passwords;
+
+ /**
+ * Get the username property: The username for a container registry.
+ *
+ * @return the username value.
+ */
+ public String username() {
+ return this.username;
+ }
+
+ /**
+ * Set the username property: The username for a container registry.
+ *
+ * @param username the username value to set.
+ * @return the RegistryListCredentialsResultInner object itself.
+ */
+ public RegistryListCredentialsResultInner withUsername(String username) {
+ this.username = username;
+ return this;
+ }
+
+ /**
+ * Get the passwords property: The list of passwords for a container registry.
+ *
+ * @return the passwords value.
+ */
+ public List passwords() {
+ return this.passwords;
+ }
+
+ /**
+ * Set the passwords property: The list of passwords for a container registry.
+ *
+ * @param passwords the passwords value to set.
+ * @return the RegistryListCredentialsResultInner object itself.
+ */
+ public RegistryListCredentialsResultInner withPasswords(List passwords) {
+ this.passwords = passwords;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (passwords() != null) {
+ passwords().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryNameStatusInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryNameStatusInner.java
new file mode 100644
index 000000000000..b23d03c13cc1
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryNameStatusInner.java
@@ -0,0 +1,101 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The result of a request to check the availability of a container registry name. */
+@Fluent
+public final class RegistryNameStatusInner {
+ /*
+ * The value that indicates whether the name is available.
+ */
+ @JsonProperty(value = "nameAvailable")
+ private Boolean nameAvailable;
+
+ /*
+ * If any, the reason that the name is not available.
+ */
+ @JsonProperty(value = "reason")
+ private String reason;
+
+ /*
+ * If any, the error message that provides more detail for the reason that
+ * the name is not available.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * Get the nameAvailable property: The value that indicates whether the name is available.
+ *
+ * @return the nameAvailable value.
+ */
+ public Boolean nameAvailable() {
+ return this.nameAvailable;
+ }
+
+ /**
+ * Set the nameAvailable property: The value that indicates whether the name is available.
+ *
+ * @param nameAvailable the nameAvailable value to set.
+ * @return the RegistryNameStatusInner object itself.
+ */
+ public RegistryNameStatusInner withNameAvailable(Boolean nameAvailable) {
+ this.nameAvailable = nameAvailable;
+ return this;
+ }
+
+ /**
+ * Get the reason property: If any, the reason that the name is not available.
+ *
+ * @return the reason value.
+ */
+ public String reason() {
+ return this.reason;
+ }
+
+ /**
+ * Set the reason property: If any, the reason that the name is not available.
+ *
+ * @param reason the reason value to set.
+ * @return the RegistryNameStatusInner object itself.
+ */
+ public RegistryNameStatusInner withReason(String reason) {
+ this.reason = reason;
+ return this;
+ }
+
+ /**
+ * Get the message property: If any, the error message that provides more detail for the reason that the name is not
+ * available.
+ *
+ * @return the message value.
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the message property: If any, the error message that provides more detail for the reason that the name is not
+ * available.
+ *
+ * @param message the message value to set.
+ * @return the RegistryNameStatusInner object itself.
+ */
+ public RegistryNameStatusInner withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryProperties.java
new file mode 100644
index 000000000000..3e8f0602cd10
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryProperties.java
@@ -0,0 +1,377 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.EncryptionProperty;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleBypassOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleSet;
+import com.azure.resourcemanager.containerregistry.generated.models.Policies;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.PublicNetworkAccess;
+import com.azure.resourcemanager.containerregistry.generated.models.Status;
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** The properties of a container registry. */
+@Fluent
+public final class RegistryProperties {
+ /*
+ * The URL that can be used to log into the container registry.
+ */
+ @JsonProperty(value = "loginServer", access = JsonProperty.Access.WRITE_ONLY)
+ private String loginServer;
+
+ /*
+ * The creation date of the container registry in ISO8601 format.
+ */
+ @JsonProperty(value = "creationDate", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime creationDate;
+
+ /*
+ * The provisioning state of the container registry at the time the
+ * operation was called.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The status of the container registry at the time the operation was
+ * called.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private Status status;
+
+ /*
+ * The value that indicates whether the admin user is enabled.
+ */
+ @JsonProperty(value = "adminUserEnabled")
+ private Boolean adminUserEnabled;
+
+ /*
+ * The network rule set for a container registry.
+ */
+ @JsonProperty(value = "networkRuleSet")
+ private NetworkRuleSet networkRuleSet;
+
+ /*
+ * The policies for a container registry.
+ */
+ @JsonProperty(value = "policies")
+ private Policies policies;
+
+ /*
+ * The encryption settings of container registry.
+ */
+ @JsonProperty(value = "encryption")
+ private EncryptionProperty encryption;
+
+ /*
+ * Enable a single data endpoint per region for serving data.
+ */
+ @JsonProperty(value = "dataEndpointEnabled")
+ private Boolean dataEndpointEnabled;
+
+ /*
+ * List of host names that will serve data when dataEndpointEnabled is
+ * true.
+ */
+ @JsonProperty(value = "dataEndpointHostNames", access = JsonProperty.Access.WRITE_ONLY)
+ private List dataEndpointHostNames;
+
+ /*
+ * List of private endpoint connections for a container registry.
+ */
+ @JsonProperty(value = "privateEndpointConnections", access = JsonProperty.Access.WRITE_ONLY)
+ private List privateEndpointConnections;
+
+ /*
+ * Whether or not public network access is allowed for the container
+ * registry.
+ */
+ @JsonProperty(value = "publicNetworkAccess")
+ private PublicNetworkAccess publicNetworkAccess;
+
+ /*
+ * Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ */
+ @JsonProperty(value = "networkRuleBypassOptions")
+ private NetworkRuleBypassOptions networkRuleBypassOptions;
+
+ /*
+ * Whether or not zone redundancy is enabled for this container registry
+ */
+ @JsonProperty(value = "zoneRedundancy")
+ private ZoneRedundancy zoneRedundancy;
+
+ /*
+ * Enables registry-wide pull from unauthenticated clients.
+ */
+ @JsonProperty(value = "anonymousPullEnabled")
+ private Boolean anonymousPullEnabled;
+
+ /**
+ * Get the loginServer property: The URL that can be used to log into the container registry.
+ *
+ * @return the loginServer value.
+ */
+ public String loginServer() {
+ return this.loginServer;
+ }
+
+ /**
+ * Get the creationDate property: The creation date of the container registry in ISO8601 format.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.creationDate;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the container registry at the time the operation
+ * was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the status property: The status of the container registry at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public Status status() {
+ return this.status;
+ }
+
+ /**
+ * Get the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @return the adminUserEnabled value.
+ */
+ public Boolean adminUserEnabled() {
+ return this.adminUserEnabled;
+ }
+
+ /**
+ * Set the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @param adminUserEnabled the adminUserEnabled value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withAdminUserEnabled(Boolean adminUserEnabled) {
+ this.adminUserEnabled = adminUserEnabled;
+ return this;
+ }
+
+ /**
+ * Get the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @return the networkRuleSet value.
+ */
+ public NetworkRuleSet networkRuleSet() {
+ return this.networkRuleSet;
+ }
+
+ /**
+ * Set the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @param networkRuleSet the networkRuleSet value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withNetworkRuleSet(NetworkRuleSet networkRuleSet) {
+ this.networkRuleSet = networkRuleSet;
+ return this;
+ }
+
+ /**
+ * Get the policies property: The policies for a container registry.
+ *
+ * @return the policies value.
+ */
+ public Policies policies() {
+ return this.policies;
+ }
+
+ /**
+ * Set the policies property: The policies for a container registry.
+ *
+ * @param policies the policies value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withPolicies(Policies policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ /**
+ * Get the encryption property: The encryption settings of container registry.
+ *
+ * @return the encryption value.
+ */
+ public EncryptionProperty encryption() {
+ return this.encryption;
+ }
+
+ /**
+ * Set the encryption property: The encryption settings of container registry.
+ *
+ * @param encryption the encryption value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withEncryption(EncryptionProperty encryption) {
+ this.encryption = encryption;
+ return this;
+ }
+
+ /**
+ * Get the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @return the dataEndpointEnabled value.
+ */
+ public Boolean dataEndpointEnabled() {
+ return this.dataEndpointEnabled;
+ }
+
+ /**
+ * Set the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @param dataEndpointEnabled the dataEndpointEnabled value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withDataEndpointEnabled(Boolean dataEndpointEnabled) {
+ this.dataEndpointEnabled = dataEndpointEnabled;
+ return this;
+ }
+
+ /**
+ * Get the dataEndpointHostNames property: List of host names that will serve data when dataEndpointEnabled is true.
+ *
+ * @return the dataEndpointHostNames value.
+ */
+ public List dataEndpointHostNames() {
+ return this.dataEndpointHostNames;
+ }
+
+ /**
+ * Get the privateEndpointConnections property: List of private endpoint connections for a container registry.
+ *
+ * @return the privateEndpointConnections value.
+ */
+ public List privateEndpointConnections() {
+ return this.privateEndpointConnections;
+ }
+
+ /**
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @return the publicNetworkAccess value.
+ */
+ public PublicNetworkAccess publicNetworkAccess() {
+ return this.publicNetworkAccess;
+ }
+
+ /**
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) {
+ this.publicNetworkAccess = publicNetworkAccess;
+ return this;
+ }
+
+ /**
+ * Get the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @return the networkRuleBypassOptions value.
+ */
+ public NetworkRuleBypassOptions networkRuleBypassOptions() {
+ return this.networkRuleBypassOptions;
+ }
+
+ /**
+ * Set the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @param networkRuleBypassOptions the networkRuleBypassOptions value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withNetworkRuleBypassOptions(NetworkRuleBypassOptions networkRuleBypassOptions) {
+ this.networkRuleBypassOptions = networkRuleBypassOptions;
+ return this;
+ }
+
+ /**
+ * Get the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry.
+ *
+ * @return the zoneRedundancy value.
+ */
+ public ZoneRedundancy zoneRedundancy() {
+ return this.zoneRedundancy;
+ }
+
+ /**
+ * Set the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry.
+ *
+ * @param zoneRedundancy the zoneRedundancy value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withZoneRedundancy(ZoneRedundancy zoneRedundancy) {
+ this.zoneRedundancy = zoneRedundancy;
+ return this;
+ }
+
+ /**
+ * Get the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @return the anonymousPullEnabled value.
+ */
+ public Boolean anonymousPullEnabled() {
+ return this.anonymousPullEnabled;
+ }
+
+ /**
+ * Set the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @param anonymousPullEnabled the anonymousPullEnabled value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withAnonymousPullEnabled(Boolean anonymousPullEnabled) {
+ this.anonymousPullEnabled = anonymousPullEnabled;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (status() != null) {
+ status().validate();
+ }
+ if (networkRuleSet() != null) {
+ networkRuleSet().validate();
+ }
+ if (policies() != null) {
+ policies().validate();
+ }
+ if (encryption() != null) {
+ encryption().validate();
+ }
+ if (privateEndpointConnections() != null) {
+ privateEndpointConnections().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryPropertiesUpdateParameters.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryPropertiesUpdateParameters.java
new file mode 100644
index 000000000000..8ab25f11b4c5
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryPropertiesUpdateParameters.java
@@ -0,0 +1,247 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.EncryptionProperty;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleBypassOptions;
+import com.azure.resourcemanager.containerregistry.generated.models.NetworkRuleSet;
+import com.azure.resourcemanager.containerregistry.generated.models.Policies;
+import com.azure.resourcemanager.containerregistry.generated.models.PublicNetworkAccess;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The parameters for updating the properties of a container registry. */
+@Fluent
+public final class RegistryPropertiesUpdateParameters {
+ /*
+ * The value that indicates whether the admin user is enabled.
+ */
+ @JsonProperty(value = "adminUserEnabled")
+ private Boolean adminUserEnabled;
+
+ /*
+ * The network rule set for a container registry.
+ */
+ @JsonProperty(value = "networkRuleSet")
+ private NetworkRuleSet networkRuleSet;
+
+ /*
+ * The policies for a container registry.
+ */
+ @JsonProperty(value = "policies")
+ private Policies policies;
+
+ /*
+ * The encryption settings of container registry.
+ */
+ @JsonProperty(value = "encryption")
+ private EncryptionProperty encryption;
+
+ /*
+ * Enable a single data endpoint per region for serving data.
+ */
+ @JsonProperty(value = "dataEndpointEnabled")
+ private Boolean dataEndpointEnabled;
+
+ /*
+ * Whether or not public network access is allowed for the container
+ * registry.
+ */
+ @JsonProperty(value = "publicNetworkAccess")
+ private PublicNetworkAccess publicNetworkAccess;
+
+ /*
+ * Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ */
+ @JsonProperty(value = "networkRuleBypassOptions")
+ private NetworkRuleBypassOptions networkRuleBypassOptions;
+
+ /*
+ * Enables registry-wide pull from unauthenticated clients.
+ */
+ @JsonProperty(value = "anonymousPullEnabled")
+ private Boolean anonymousPullEnabled;
+
+ /**
+ * Get the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @return the adminUserEnabled value.
+ */
+ public Boolean adminUserEnabled() {
+ return this.adminUserEnabled;
+ }
+
+ /**
+ * Set the adminUserEnabled property: The value that indicates whether the admin user is enabled.
+ *
+ * @param adminUserEnabled the adminUserEnabled value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withAdminUserEnabled(Boolean adminUserEnabled) {
+ this.adminUserEnabled = adminUserEnabled;
+ return this;
+ }
+
+ /**
+ * Get the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @return the networkRuleSet value.
+ */
+ public NetworkRuleSet networkRuleSet() {
+ return this.networkRuleSet;
+ }
+
+ /**
+ * Set the networkRuleSet property: The network rule set for a container registry.
+ *
+ * @param networkRuleSet the networkRuleSet value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withNetworkRuleSet(NetworkRuleSet networkRuleSet) {
+ this.networkRuleSet = networkRuleSet;
+ return this;
+ }
+
+ /**
+ * Get the policies property: The policies for a container registry.
+ *
+ * @return the policies value.
+ */
+ public Policies policies() {
+ return this.policies;
+ }
+
+ /**
+ * Set the policies property: The policies for a container registry.
+ *
+ * @param policies the policies value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withPolicies(Policies policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ /**
+ * Get the encryption property: The encryption settings of container registry.
+ *
+ * @return the encryption value.
+ */
+ public EncryptionProperty encryption() {
+ return this.encryption;
+ }
+
+ /**
+ * Set the encryption property: The encryption settings of container registry.
+ *
+ * @param encryption the encryption value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withEncryption(EncryptionProperty encryption) {
+ this.encryption = encryption;
+ return this;
+ }
+
+ /**
+ * Get the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @return the dataEndpointEnabled value.
+ */
+ public Boolean dataEndpointEnabled() {
+ return this.dataEndpointEnabled;
+ }
+
+ /**
+ * Set the dataEndpointEnabled property: Enable a single data endpoint per region for serving data.
+ *
+ * @param dataEndpointEnabled the dataEndpointEnabled value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withDataEndpointEnabled(Boolean dataEndpointEnabled) {
+ this.dataEndpointEnabled = dataEndpointEnabled;
+ return this;
+ }
+
+ /**
+ * Get the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @return the publicNetworkAccess value.
+ */
+ public PublicNetworkAccess publicNetworkAccess() {
+ return this.publicNetworkAccess;
+ }
+
+ /**
+ * Set the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
+ *
+ * @param publicNetworkAccess the publicNetworkAccess value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) {
+ this.publicNetworkAccess = publicNetworkAccess;
+ return this;
+ }
+
+ /**
+ * Get the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @return the networkRuleBypassOptions value.
+ */
+ public NetworkRuleBypassOptions networkRuleBypassOptions() {
+ return this.networkRuleBypassOptions;
+ }
+
+ /**
+ * Set the networkRuleBypassOptions property: Whether to allow trusted Azure services to access a network restricted
+ * registry.
+ *
+ * @param networkRuleBypassOptions the networkRuleBypassOptions value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withNetworkRuleBypassOptions(
+ NetworkRuleBypassOptions networkRuleBypassOptions) {
+ this.networkRuleBypassOptions = networkRuleBypassOptions;
+ return this;
+ }
+
+ /**
+ * Get the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @return the anonymousPullEnabled value.
+ */
+ public Boolean anonymousPullEnabled() {
+ return this.anonymousPullEnabled;
+ }
+
+ /**
+ * Set the anonymousPullEnabled property: Enables registry-wide pull from unauthenticated clients.
+ *
+ * @param anonymousPullEnabled the anonymousPullEnabled value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withAnonymousPullEnabled(Boolean anonymousPullEnabled) {
+ this.anonymousPullEnabled = anonymousPullEnabled;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (networkRuleSet() != null) {
+ networkRuleSet().validate();
+ }
+ if (policies() != null) {
+ policies().validate();
+ }
+ if (encryption() != null) {
+ encryption().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryUsageListResultInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryUsageListResultInner.java
new file mode 100644
index 000000000000..ded96869f29d
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/RegistryUsageListResultInner.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.RegistryUsage;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The result of a request to get container registry quota usages. */
+@Fluent
+public final class RegistryUsageListResultInner {
+ /*
+ * The list of container registry quota usages.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /**
+ * Get the value property: The list of container registry quota usages.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: The list of container registry quota usages.
+ *
+ * @param value the value value to set.
+ * @return the RegistryUsageListResultInner object itself.
+ */
+ public RegistryUsageListResultInner 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/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationInner.java
new file mode 100644
index 000000000000..48efe2166ad7
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationInner.java
@@ -0,0 +1,144 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.Status;
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** An object that represents a replication for a container registry. */
+@Fluent
+public final class ReplicationInner extends Resource {
+ /*
+ * The properties of the replication.
+ */
+ @JsonProperty(value = "properties")
+ private ReplicationProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of the replication.
+ *
+ * @return the innerProperties value.
+ */
+ private ReplicationProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ReplicationInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ReplicationInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the replication at the time the operation was
+ * called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the status property: The status of the replication at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public Status status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @return the regionEndpointEnabled value.
+ */
+ public Boolean regionEndpointEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().regionEndpointEnabled();
+ }
+
+ /**
+ * Set the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @param regionEndpointEnabled the regionEndpointEnabled value to set.
+ * @return the ReplicationInner object itself.
+ */
+ public ReplicationInner withRegionEndpointEnabled(Boolean regionEndpointEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ReplicationProperties();
+ }
+ this.innerProperties().withRegionEndpointEnabled(regionEndpointEnabled);
+ return this;
+ }
+
+ /**
+ * Get the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry
+ * replication.
+ *
+ * @return the zoneRedundancy value.
+ */
+ public ZoneRedundancy zoneRedundancy() {
+ return this.innerProperties() == null ? null : this.innerProperties().zoneRedundancy();
+ }
+
+ /**
+ * Set the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry
+ * replication.
+ *
+ * @param zoneRedundancy the zoneRedundancy value to set.
+ * @return the ReplicationInner object itself.
+ */
+ public ReplicationInner withZoneRedundancy(ZoneRedundancy zoneRedundancy) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ReplicationProperties();
+ }
+ this.innerProperties().withZoneRedundancy(zoneRedundancy);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationProperties.java
new file mode 100644
index 000000000000..b58b2ad9044c
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationProperties.java
@@ -0,0 +1,120 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.Status;
+import com.azure.resourcemanager.containerregistry.generated.models.ZoneRedundancy;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The properties of a replication. */
+@Fluent
+public final class ReplicationProperties {
+ /*
+ * The provisioning state of the replication at the time the operation was
+ * called.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The status of the replication at the time the operation was called.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private Status status;
+
+ /*
+ * Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is
+ * disabled, however its data will continue to be synced with other
+ * replications.
+ */
+ @JsonProperty(value = "regionEndpointEnabled")
+ private Boolean regionEndpointEnabled;
+
+ /*
+ * Whether or not zone redundancy is enabled for this container registry
+ * replication
+ */
+ @JsonProperty(value = "zoneRedundancy")
+ private ZoneRedundancy zoneRedundancy;
+
+ /**
+ * Get the provisioningState property: The provisioning state of the replication at the time the operation was
+ * called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the status property: The status of the replication at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public Status status() {
+ return this.status;
+ }
+
+ /**
+ * Get the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @return the regionEndpointEnabled value.
+ */
+ public Boolean regionEndpointEnabled() {
+ return this.regionEndpointEnabled;
+ }
+
+ /**
+ * Set the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @param regionEndpointEnabled the regionEndpointEnabled value to set.
+ * @return the ReplicationProperties object itself.
+ */
+ public ReplicationProperties withRegionEndpointEnabled(Boolean regionEndpointEnabled) {
+ this.regionEndpointEnabled = regionEndpointEnabled;
+ return this;
+ }
+
+ /**
+ * Get the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry
+ * replication.
+ *
+ * @return the zoneRedundancy value.
+ */
+ public ZoneRedundancy zoneRedundancy() {
+ return this.zoneRedundancy;
+ }
+
+ /**
+ * Set the zoneRedundancy property: Whether or not zone redundancy is enabled for this container registry
+ * replication.
+ *
+ * @param zoneRedundancy the zoneRedundancy value to set.
+ * @return the ReplicationProperties object itself.
+ */
+ public ReplicationProperties withZoneRedundancy(ZoneRedundancy zoneRedundancy) {
+ this.zoneRedundancy = zoneRedundancy;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (status() != null) {
+ status().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationUpdateParametersProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationUpdateParametersProperties.java
new file mode 100644
index 000000000000..2fd2b2d8d856
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ReplicationUpdateParametersProperties.java
@@ -0,0 +1,53 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The ReplicationUpdateParametersProperties model. */
+@Fluent
+public final class ReplicationUpdateParametersProperties {
+ /*
+ * Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is
+ * disabled, however its data will continue to be synced with other
+ * replications.
+ */
+ @JsonProperty(value = "regionEndpointEnabled")
+ private Boolean regionEndpointEnabled;
+
+ /**
+ * Get the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @return the regionEndpointEnabled value.
+ */
+ public Boolean regionEndpointEnabled() {
+ return this.regionEndpointEnabled;
+ }
+
+ /**
+ * Set the regionEndpointEnabled property: Specifies whether the replication's regional endpoint is enabled.
+ * Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue
+ * to be synced with other replications.
+ *
+ * @param regionEndpointEnabled the regionEndpointEnabled value to set.
+ * @return the ReplicationUpdateParametersProperties object itself.
+ */
+ public ReplicationUpdateParametersProperties withRegionEndpointEnabled(Boolean regionEndpointEnabled) {
+ this.regionEndpointEnabled = regionEndpointEnabled;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapInner.java
new file mode 100644
index 000000000000..2319fad47af6
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapInner.java
@@ -0,0 +1,133 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** An object that represents a scope map for a container registry. */
+@Fluent
+public final class ScopeMapInner extends ProxyResource {
+ /*
+ * The properties of the scope map.
+ */
+ @JsonProperty(value = "properties")
+ private ScopeMapProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of the scope map.
+ *
+ * @return the innerProperties value.
+ */
+ private ScopeMapProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the description property: The user friendly description of the scope map.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: The user friendly description of the scope map.
+ *
+ * @param description the description value to set.
+ * @return the ScopeMapInner object itself.
+ */
+ public ScopeMapInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScopeMapProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the type property: The type of the scope map. E.g. BuildIn scope map.
+ *
+ * @return the type value.
+ */
+ public String typePropertiesType() {
+ return this.innerProperties() == null ? null : this.innerProperties().type();
+ }
+
+ /**
+ * Get the creationDate property: The creation date of scope map.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.innerProperties() == null ? null : this.innerProperties().creationDate();
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the actions property: The list of scoped permissions for registry artifacts. E.g.
+ * repositories/repository-name/content/read, repositories/repository-name/metadata/write.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.innerProperties() == null ? null : this.innerProperties().actions();
+ }
+
+ /**
+ * Set the actions property: The list of scoped permissions for registry artifacts. E.g.
+ * repositories/repository-name/content/read, repositories/repository-name/metadata/write.
+ *
+ * @param actions the actions value to set.
+ * @return the ScopeMapInner object itself.
+ */
+ public ScopeMapInner withActions(List actions) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScopeMapProperties();
+ }
+ this.innerProperties().withActions(actions);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapProperties.java
new file mode 100644
index 000000000000..1cdc257bd705
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapProperties.java
@@ -0,0 +1,132 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** The properties of a scope map. */
+@Fluent
+public final class ScopeMapProperties {
+ /*
+ * The user friendly description of the scope map.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * The type of the scope map. E.g. BuildIn scope map.
+ */
+ @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+ private String type;
+
+ /*
+ * The creation date of scope map.
+ */
+ @JsonProperty(value = "creationDate", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime creationDate;
+
+ /*
+ * Provisioning state of the resource.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The list of scoped permissions for registry artifacts.
+ * E.g. repositories/repository-name/content/read,
+ * repositories/repository-name/metadata/write
+ */
+ @JsonProperty(value = "actions", required = true)
+ private List actions;
+
+ /**
+ * Get the description property: The user friendly description of the scope map.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: The user friendly description of the scope map.
+ *
+ * @param description the description value to set.
+ * @return the ScopeMapProperties object itself.
+ */
+ public ScopeMapProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the type property: The type of the scope map. E.g. BuildIn scope map.
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the creationDate property: The creation date of scope map.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.creationDate;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the actions property: The list of scoped permissions for registry artifacts. E.g.
+ * repositories/repository-name/content/read, repositories/repository-name/metadata/write.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the actions property: The list of scoped permissions for registry artifacts. E.g.
+ * repositories/repository-name/content/read, repositories/repository-name/metadata/write.
+ *
+ * @param actions the actions value to set.
+ * @return the ScopeMapProperties object itself.
+ */
+ public ScopeMapProperties withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (actions() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property actions in model ScopeMapProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ScopeMapProperties.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapPropertiesUpdateParameters.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapPropertiesUpdateParameters.java
new file mode 100644
index 000000000000..a227eb8ee511
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/ScopeMapPropertiesUpdateParameters.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The update parameters for scope map properties. */
+@Fluent
+public final class ScopeMapPropertiesUpdateParameters {
+ /*
+ * The user friendly description of the scope map.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * The list of scope permissions for registry artifacts.
+ * E.g. repositories/repository-name/pull,
+ * repositories/repository-name/delete
+ */
+ @JsonProperty(value = "actions")
+ private List actions;
+
+ /**
+ * Get the description property: The user friendly description of the scope map.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: The user friendly description of the scope map.
+ *
+ * @param description the description value to set.
+ * @return the ScopeMapPropertiesUpdateParameters object itself.
+ */
+ public ScopeMapPropertiesUpdateParameters withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the actions property: The list of scope permissions for registry artifacts. E.g.
+ * repositories/repository-name/pull, repositories/repository-name/delete.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the actions property: The list of scope permissions for registry artifacts. E.g.
+ * repositories/repository-name/pull, repositories/repository-name/delete.
+ *
+ * @param actions the actions value to set.
+ * @return the ScopeMapPropertiesUpdateParameters object itself.
+ */
+ public ScopeMapPropertiesUpdateParameters withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenInner.java
new file mode 100644
index 000000000000..de9d67be8b56
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenInner.java
@@ -0,0 +1,146 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCredentialsProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** An object that represents a token for a container registry. */
+@Fluent
+public final class TokenInner extends ProxyResource {
+ /*
+ * The properties of the token.
+ */
+ @JsonProperty(value = "properties")
+ private TokenProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of the token.
+ *
+ * @return the innerProperties value.
+ */
+ private TokenProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the creationDate property: The creation date of scope map.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.innerProperties() == null ? null : this.innerProperties().creationDate();
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @return the scopeMapId value.
+ */
+ public String scopeMapId() {
+ return this.innerProperties() == null ? null : this.innerProperties().scopeMapId();
+ }
+
+ /**
+ * Set the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @param scopeMapId the scopeMapId value to set.
+ * @return the TokenInner object itself.
+ */
+ public TokenInner withScopeMapId(String scopeMapId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new TokenProperties();
+ }
+ this.innerProperties().withScopeMapId(scopeMapId);
+ return this;
+ }
+
+ /**
+ * Get the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @return the credentials value.
+ */
+ public TokenCredentialsProperties credentials() {
+ return this.innerProperties() == null ? null : this.innerProperties().credentials();
+ }
+
+ /**
+ * Set the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @param credentials the credentials value to set.
+ * @return the TokenInner object itself.
+ */
+ public TokenInner withCredentials(TokenCredentialsProperties credentials) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new TokenProperties();
+ }
+ this.innerProperties().withCredentials(credentials);
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the token example enabled or disabled.
+ *
+ * @return the status value.
+ */
+ public TokenStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Set the status property: The status of the token example enabled or disabled.
+ *
+ * @param status the status value to set.
+ * @return the TokenInner object itself.
+ */
+ public TokenInner withStatus(TokenStatus status) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new TokenProperties();
+ }
+ this.innerProperties().withStatus(status);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenProperties.java
new file mode 100644
index 000000000000..97473d337750
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenProperties.java
@@ -0,0 +1,136 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCredentialsProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** The properties of a token. */
+@Fluent
+public final class TokenProperties {
+ /*
+ * The creation date of scope map.
+ */
+ @JsonProperty(value = "creationDate", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime creationDate;
+
+ /*
+ * Provisioning state of the resource.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The resource ID of the scope map to which the token will be associated
+ * with.
+ */
+ @JsonProperty(value = "scopeMapId")
+ private String scopeMapId;
+
+ /*
+ * The credentials that can be used for authenticating the token.
+ */
+ @JsonProperty(value = "credentials")
+ private TokenCredentialsProperties credentials;
+
+ /*
+ * The status of the token example enabled or disabled.
+ */
+ @JsonProperty(value = "status")
+ private TokenStatus status;
+
+ /**
+ * Get the creationDate property: The creation date of scope map.
+ *
+ * @return the creationDate value.
+ */
+ public OffsetDateTime creationDate() {
+ return this.creationDate;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @return the scopeMapId value.
+ */
+ public String scopeMapId() {
+ return this.scopeMapId;
+ }
+
+ /**
+ * Set the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @param scopeMapId the scopeMapId value to set.
+ * @return the TokenProperties object itself.
+ */
+ public TokenProperties withScopeMapId(String scopeMapId) {
+ this.scopeMapId = scopeMapId;
+ return this;
+ }
+
+ /**
+ * Get the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @return the credentials value.
+ */
+ public TokenCredentialsProperties credentials() {
+ return this.credentials;
+ }
+
+ /**
+ * Set the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @param credentials the credentials value to set.
+ * @return the TokenProperties object itself.
+ */
+ public TokenProperties withCredentials(TokenCredentialsProperties credentials) {
+ this.credentials = credentials;
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the token example enabled or disabled.
+ *
+ * @return the status value.
+ */
+ public TokenStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: The status of the token example enabled or disabled.
+ *
+ * @param status the status value to set.
+ * @return the TokenProperties object itself.
+ */
+ public TokenProperties withStatus(TokenStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (credentials() != null) {
+ credentials().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenUpdateProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenUpdateProperties.java
new file mode 100644
index 000000000000..48dadeddd859
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/TokenUpdateProperties.java
@@ -0,0 +1,104 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenCredentialsProperties;
+import com.azure.resourcemanager.containerregistry.generated.models.TokenStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The parameters for updating token properties. */
+@Fluent
+public final class TokenUpdateProperties {
+ /*
+ * The resource ID of the scope map to which the token will be associated
+ * with.
+ */
+ @JsonProperty(value = "scopeMapId")
+ private String scopeMapId;
+
+ /*
+ * The status of the token example enabled or disabled.
+ */
+ @JsonProperty(value = "status")
+ private TokenStatus status;
+
+ /*
+ * The credentials that can be used for authenticating the token.
+ */
+ @JsonProperty(value = "credentials")
+ private TokenCredentialsProperties credentials;
+
+ /**
+ * Get the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @return the scopeMapId value.
+ */
+ public String scopeMapId() {
+ return this.scopeMapId;
+ }
+
+ /**
+ * Set the scopeMapId property: The resource ID of the scope map to which the token will be associated with.
+ *
+ * @param scopeMapId the scopeMapId value to set.
+ * @return the TokenUpdateProperties object itself.
+ */
+ public TokenUpdateProperties withScopeMapId(String scopeMapId) {
+ this.scopeMapId = scopeMapId;
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the token example enabled or disabled.
+ *
+ * @return the status value.
+ */
+ public TokenStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: The status of the token example enabled or disabled.
+ *
+ * @param status the status value to set.
+ * @return the TokenUpdateProperties object itself.
+ */
+ public TokenUpdateProperties withStatus(TokenStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @return the credentials value.
+ */
+ public TokenCredentialsProperties credentials() {
+ return this.credentials;
+ }
+
+ /**
+ * Set the credentials property: The credentials that can be used for authenticating the token.
+ *
+ * @param credentials the credentials value to set.
+ * @return the TokenUpdateProperties object itself.
+ */
+ public TokenUpdateProperties withCredentials(TokenCredentialsProperties credentials) {
+ this.credentials = credentials;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (credentials() != null) {
+ credentials().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookInner.java
new file mode 100644
index 000000000000..8d6e11ee1d9f
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookInner.java
@@ -0,0 +1,156 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** An object that represents a webhook for a container registry. */
+@Fluent
+public final class WebhookInner extends Resource {
+ /*
+ * The properties of the webhook.
+ */
+ @JsonProperty(value = "properties")
+ private WebhookProperties innerProperties;
+
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /**
+ * Get the innerProperties property: The properties of the webhook.
+ *
+ * @return the innerProperties value.
+ */
+ private WebhookProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public WebhookInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public WebhookInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the webhook at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public WebhookStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Set the status property: The status of the webhook at the time the operation was called.
+ *
+ * @param status the status value to set.
+ * @return the WebhookInner object itself.
+ */
+ public WebhookInner withStatus(WebhookStatus status) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WebhookProperties();
+ }
+ this.innerProperties().withStatus(status);
+ return this;
+ }
+
+ /**
+ * Get the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value.
+ */
+ public String scope() {
+ return this.innerProperties() == null ? null : this.innerProperties().scope();
+ }
+
+ /**
+ * Set the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set.
+ * @return the WebhookInner object itself.
+ */
+ public WebhookInner withScope(String scope) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WebhookProperties();
+ }
+ this.innerProperties().withScope(scope);
+ return this;
+ }
+
+ /**
+ * Get the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.innerProperties() == null ? null : this.innerProperties().actions();
+ }
+
+ /**
+ * Set the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set.
+ * @return the WebhookInner object itself.
+ */
+ public WebhookInner withActions(List actions) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new WebhookProperties();
+ }
+ this.innerProperties().withActions(actions);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the webhook at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookProperties.java
new file mode 100644
index 000000000000..bc151531f7f0
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookProperties.java
@@ -0,0 +1,133 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The properties of a webhook. */
+@Fluent
+public final class WebhookProperties {
+ /*
+ * The status of the webhook at the time the operation was called.
+ */
+ @JsonProperty(value = "status")
+ private WebhookStatus status;
+
+ /*
+ * The scope of repositories where the event can be triggered. For example,
+ * 'foo:*' means events for all tags under repository 'foo'. 'foo:bar'
+ * means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'.
+ * Empty means all events.
+ */
+ @JsonProperty(value = "scope")
+ private String scope;
+
+ /*
+ * The list of actions that trigger the webhook to post notifications.
+ */
+ @JsonProperty(value = "actions", required = true)
+ private List actions;
+
+ /*
+ * The provisioning state of the webhook at the time the operation was
+ * called.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the status property: The status of the webhook at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public WebhookStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: The status of the webhook at the time the operation was called.
+ *
+ * @param status the status value to set.
+ * @return the WebhookProperties object itself.
+ */
+ public WebhookProperties withStatus(WebhookStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value.
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set.
+ * @return the WebhookProperties object itself.
+ */
+ public WebhookProperties withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set.
+ * @return the WebhookProperties object itself.
+ */
+ public WebhookProperties withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the webhook at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (actions() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property actions in model WebhookProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(WebhookProperties.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesCreateParameters.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesCreateParameters.java
new file mode 100644
index 000000000000..e9eed9810aec
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesCreateParameters.java
@@ -0,0 +1,178 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** The parameters for creating the properties of a webhook. */
+@Fluent
+public final class WebhookPropertiesCreateParameters {
+ /*
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "serviceUri", required = true)
+ private String serviceUri;
+
+ /*
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "customHeaders")
+ @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+ private Map customHeaders;
+
+ /*
+ * The status of the webhook at the time the operation was called.
+ */
+ @JsonProperty(value = "status")
+ private WebhookStatus status;
+
+ /*
+ * The scope of repositories where the event can be triggered. For example,
+ * 'foo:*' means events for all tags under repository 'foo'. 'foo:bar'
+ * means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'.
+ * Empty means all events.
+ */
+ @JsonProperty(value = "scope")
+ private String scope;
+
+ /*
+ * The list of actions that trigger the webhook to post notifications.
+ */
+ @JsonProperty(value = "actions", required = true)
+ private List actions;
+
+ /**
+ * Get the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value.
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set.
+ * @return the WebhookPropertiesCreateParameters object itself.
+ */
+ public WebhookPropertiesCreateParameters withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value.
+ */
+ public Map customHeaders() {
+ return this.customHeaders;
+ }
+
+ /**
+ * Set the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @param customHeaders the customHeaders value to set.
+ * @return the WebhookPropertiesCreateParameters object itself.
+ */
+ public WebhookPropertiesCreateParameters withCustomHeaders(Map customHeaders) {
+ this.customHeaders = customHeaders;
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the webhook at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public WebhookStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: The status of the webhook at the time the operation was called.
+ *
+ * @param status the status value to set.
+ * @return the WebhookPropertiesCreateParameters object itself.
+ */
+ public WebhookPropertiesCreateParameters withStatus(WebhookStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value.
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set.
+ * @return the WebhookPropertiesCreateParameters object itself.
+ */
+ public WebhookPropertiesCreateParameters withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set.
+ * @return the WebhookPropertiesCreateParameters object itself.
+ */
+ public WebhookPropertiesCreateParameters withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (serviceUri() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property serviceUri in model WebhookPropertiesCreateParameters"));
+ }
+ if (actions() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property actions in model WebhookPropertiesCreateParameters"));
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(WebhookPropertiesCreateParameters.class);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesUpdateParameters.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesUpdateParameters.java
new file mode 100644
index 000000000000..e951466c749e
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/WebhookPropertiesUpdateParameters.java
@@ -0,0 +1,163 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookAction;
+import com.azure.resourcemanager.containerregistry.generated.models.WebhookStatus;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** The parameters for updating the properties of a webhook. */
+@Fluent
+public final class WebhookPropertiesUpdateParameters {
+ /*
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "serviceUri")
+ private String serviceUri;
+
+ /*
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "customHeaders")
+ @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+ private Map customHeaders;
+
+ /*
+ * The status of the webhook at the time the operation was called.
+ */
+ @JsonProperty(value = "status")
+ private WebhookStatus status;
+
+ /*
+ * The scope of repositories where the event can be triggered. For example,
+ * 'foo:*' means events for all tags under repository 'foo'. 'foo:bar'
+ * means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'.
+ * Empty means all events.
+ */
+ @JsonProperty(value = "scope")
+ private String scope;
+
+ /*
+ * The list of actions that trigger the webhook to post notifications.
+ */
+ @JsonProperty(value = "actions")
+ private List actions;
+
+ /**
+ * Get the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value.
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the serviceUri property: The service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set.
+ * @return the WebhookPropertiesUpdateParameters object itself.
+ */
+ public WebhookPropertiesUpdateParameters withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value.
+ */
+ public Map customHeaders() {
+ return this.customHeaders;
+ }
+
+ /**
+ * Set the customHeaders property: Custom headers that will be added to the webhook notifications.
+ *
+ * @param customHeaders the customHeaders value to set.
+ * @return the WebhookPropertiesUpdateParameters object itself.
+ */
+ public WebhookPropertiesUpdateParameters withCustomHeaders(Map customHeaders) {
+ this.customHeaders = customHeaders;
+ return this;
+ }
+
+ /**
+ * Get the status property: The status of the webhook at the time the operation was called.
+ *
+ * @return the status value.
+ */
+ public WebhookStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: The status of the webhook at the time the operation was called.
+ *
+ * @param status the status value to set.
+ * @return the WebhookPropertiesUpdateParameters object itself.
+ */
+ public WebhookPropertiesUpdateParameters withStatus(WebhookStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value.
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope property: The scope of repositories where the event can be triggered. For example, 'foo:*' means
+ * events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to
+ * 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set.
+ * @return the WebhookPropertiesUpdateParameters object itself.
+ */
+ public WebhookPropertiesUpdateParameters withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value.
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the actions property: The list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set.
+ * @return the WebhookPropertiesUpdateParameters object itself.
+ */
+ public WebhookPropertiesUpdateParameters withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/package-info.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/package-info.java
new file mode 100644
index 000000000000..fe41eebca6e1
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/models/package-info.java
@@ -0,0 +1,6 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/** Package containing the inner data models for ContainerRegistryManagementClient. null. */
+package com.azure.resourcemanager.containerregistry.generated.fluent.models;
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/package-info.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/package-info.java
new file mode 100644
index 000000000000..6eed057a4348
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/fluent/package-info.java
@@ -0,0 +1,6 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/** Package containing the service clients for ContainerRegistryManagementClient. null. */
+package com.azure.resourcemanager.containerregistry.generated.fluent;
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/CallbackConfigImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/CallbackConfigImpl.java
new file mode 100644
index 000000000000..f92498ee199d
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/CallbackConfigImpl.java
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.implementation;
+
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.CallbackConfigInner;
+import com.azure.resourcemanager.containerregistry.generated.models.CallbackConfig;
+import java.util.Collections;
+import java.util.Map;
+
+public final class CallbackConfigImpl implements CallbackConfig {
+ private CallbackConfigInner innerObject;
+
+ private final com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager serviceManager;
+
+ CallbackConfigImpl(
+ CallbackConfigInner innerObject,
+ com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String serviceUri() {
+ return this.innerModel().serviceUri();
+ }
+
+ public Map customHeaders() {
+ Map inner = this.innerModel().customHeaders();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
+ public CallbackConfigInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.containerregistry.generated.ContainerRegistryManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/ConnectedRegistriesClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/ConnectedRegistriesClientImpl.java
new file mode 100644
index 000000000000..9a927b4961d9
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry-generated/src/main/java/com/azure/resourcemanager/containerregistry/generated/implementation/ConnectedRegistriesClientImpl.java
@@ -0,0 +1,1854 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.containerregistry.generated.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.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.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.generated.fluent.ConnectedRegistriesClient;
+import com.azure.resourcemanager.containerregistry.generated.fluent.models.ConnectedRegistryInner;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryListResult;
+import com.azure.resourcemanager.containerregistry.generated.models.ConnectedRegistryUpdateParameters;
+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 ConnectedRegistriesClient. */
+public final class ConnectedRegistriesClientImpl implements ConnectedRegistriesClient {
+ /** The proxy service used to perform REST calls. */
+ private final ConnectedRegistriesService service;
+
+ /** The service client containing this operation class. */
+ private final ContainerRegistryManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ConnectedRegistriesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ConnectedRegistriesClientImpl(ContainerRegistryManagementClientImpl client) {
+ this.service =
+ RestProxy.create(ConnectedRegistriesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ContainerRegistryManagementClientConnectedRegistries to be used by
+ * the proxy service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ContainerRegistryMan")
+ private interface ConnectedRegistriesService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @QueryParam("$filter") String filter,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries/{connectedRegistryName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @PathParam("connectedRegistryName") String connectedRegistryName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries/{connectedRegistryName}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> create(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @PathParam("connectedRegistryName") String connectedRegistryName,
+ @BodyParam("application/json") ConnectedRegistryInner connectedRegistryCreateParameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries/{connectedRegistryName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @PathParam("connectedRegistryName") String connectedRegistryName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Patch(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries/{connectedRegistryName}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> update(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @PathParam("connectedRegistryName") String connectedRegistryName,
+ @BodyParam("application/json") ConnectedRegistryUpdateParameters connectedRegistryUpdateParameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry"
+ + "/registries/{registryName}/connectedRegistries/{connectedRegistryName}/deactivate")
+ @ExpectedResponses({200, 202})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> deactivate(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("registryName") String registryName,
+ @PathParam("connectedRegistryName") String connectedRegistryName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry along with {@link
+ * PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String registryName, String filter) {
+ 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ filter,
+ 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()));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry along with {@link
+ * PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(
+ String resourceGroupName, String registryName, String filter, 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ filter,
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String registryName, String filter) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, registryName, filter),
+ nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String registryName) {
+ final String filter = null;
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, registryName, filter),
+ nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(
+ String resourceGroupName, String registryName, String filter, Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, registryName, filter, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName) {
+ final String filter = null;
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, filter));
+ }
+
+ /**
+ * Lists all connected registries for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param filter An OData filter expression that describes a subset of connectedRegistries to return. The parameters
+ * that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and
+ * connectionState. The supported operator is eq.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list connected registries for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(
+ String resourceGroupName, String registryName, String filter, Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, filter, context));
+ }
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry along with {@link Response} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName) {
+ 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .get(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry along with {@link Response} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName, 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .get(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ accept,
+ context);
+ }
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName) {
+ return getWithResponseAsync(resourceGroupName, registryName, connectedRegistryName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ConnectedRegistryInner get(String resourceGroupName, String registryName, String connectedRegistryName) {
+ return getAsync(resourceGroupName, registryName, connectedRegistryName).block();
+ }
+
+ /**
+ * Gets the properties of the connected registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 the connected registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(
+ String resourceGroupName, String registryName, String connectedRegistryName, Context context) {
+ return getWithResponseAsync(resourceGroupName, registryName, connectedRegistryName, context).block();
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createWithResponseAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters) {
+ 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ if (connectedRegistryCreateParameters == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter connectedRegistryCreateParameters is required and cannot be null."));
+ } else {
+ connectedRegistryCreateParameters.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ connectedRegistryCreateParameters,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createWithResponseAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ if (connectedRegistryCreateParameters == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter connectedRegistryCreateParameters is required and cannot be null."));
+ } else {
+ connectedRegistryCreateParameters.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ connectedRegistryCreateParameters,
+ accept,
+ context);
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @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 {@link PollerFlux} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ConnectedRegistryInner> beginCreateAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters) {
+ Mono>> mono =
+ createWithResponseAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters);
+ return this
+ .client
+ .getLroResult(
+ mono,
+ this.client.getHttpPipeline(),
+ ConnectedRegistryInner.class,
+ ConnectedRegistryInner.class,
+ this.client.getContext());
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @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 {@link PollerFlux} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ConnectedRegistryInner> beginCreateAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ createWithResponseAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters, context);
+ return this
+ .client
+ .getLroResult(
+ mono,
+ this.client.getHttpPipeline(),
+ ConnectedRegistryInner.class,
+ ConnectedRegistryInner.class,
+ context);
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @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 {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ConnectedRegistryInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters) {
+ return beginCreateAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @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 {@link SyncPoller} for polling of an object that represents a connected registry for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ConnectedRegistryInner> beginCreate(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context) {
+ return beginCreateAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters) {
+ return beginCreateAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context) {
+ return beginCreateAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ConnectedRegistryInner create(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters) {
+ return createAsync(resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters)
+ .block();
+ }
+
+ /**
+ * Creates a connected registry for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @param connectedRegistryCreateParameters The parameters for creating a connectedRegistry.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ConnectedRegistryInner create(
+ String resourceGroupName,
+ String registryName,
+ String connectedRegistryName,
+ ConnectedRegistryInner connectedRegistryCreateParameters,
+ Context context) {
+ return createAsync(
+ resourceGroupName, registryName, connectedRegistryName, connectedRegistryCreateParameters, context)
+ .block();
+ }
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> deleteWithResponseAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName) {
+ 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> deleteWithResponseAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName, 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 (registryName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter registryName is required and cannot be null."));
+ }
+ if (connectedRegistryName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter connectedRegistryName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getApiVersion(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ registryName,
+ connectedRegistryName,
+ accept,
+ context);
+ }
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginDeleteAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName) {
+ Mono>> mono =
+ deleteWithResponseAsync(resourceGroupName, registryName, connectedRegistryName);
+ return this
+ .client
+ .getLroResult(
+ mono, this.client.getHttpPipeline(), Void.class, Void.class, this.client.getContext());
+ }
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginDeleteAsync(
+ String resourceGroupName, String registryName, String connectedRegistryName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono =
+ deleteWithResponseAsync(resourceGroupName, registryName, connectedRegistryName, context);
+ return this
+ .client
+ .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, context);
+ }
+
+ /**
+ * Deletes a connected registry from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param connectedRegistryName The name of the connected registry.
+ * @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 {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller