diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/CHANGELOG.md b/sdk/containerregistry/azure-resourcemanager-containerregistry/CHANGELOG.md
index a6d409e6de3b..7264018923ef 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/CHANGELOG.md
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/CHANGELOG.md
@@ -1,14 +1,88 @@
# Release History
-## 2.56.0-beta.1 (Unreleased)
+## 2.56.0-beta.1 (2026-03-20)
### Features Added
-### Breaking Changes
+* `models.PipelineTriggerDescriptor` was added
-### Bugs Fixed
+* `models.ArchiveUpdateParameters` was added
-### Other Changes
+* `models.ProgressProperties` was added
+
+* `models.PipelineOptions` was added
+
+* `models.PipelineSourceTriggerDescriptor` was added
+
+* `models.PipelineRunTargetProperties` was added
+
+* `models.ArchivePackageSourceProperties` was added
+
+* `models.MetadataSearch` was added
+
+* `models.RegistrySyncResult` was added
+
+* `models.ExportPipelineTargetProperties` was added
+
+* `models.ImportPipelineSourceProperties` was added
+
+* `models.SyncState` was added
+
+* `models.SoftDeletePolicy` was added
+
+* `models.AutoGeneratedDomainNameLabelScope` was added
+
+* `models.PipelineRunRequest` was added
+
+* `models.PipelineSourceType` was added
+
+* `models.RegionalEndpoints` was added
+
+* `models.PackageSourceType` was added
+
+* `models.PipelineRunSourceProperties` was added
+
+* `models.PipelineRunSourceType` was added
+
+* `models.SyncTrigger` was added
+
+* `models.EndpointProtocol` was added
+
+* `models.PipelineRunResponse` was added
+
+* `models.PipelineSourceTriggerProperties` was added
+
+* `models.PipelineTriggerProperties` was added
+
+* `models.StorageAccessMode` was added
+
+* `models.PipelineRunTargetType` was added
+
+#### `models.CacheRuleUpdateParameters` was modified
+
+* `withIdentity(models.IdentityProperties)` was added
+* `identity()` was added
+
+#### `models.Policies` was modified
+
+* `softDeletePolicy()` was added
+* `withSoftDeletePolicy(models.SoftDeletePolicy)` was added
+
+#### `models.RegistryUpdateParameters` was modified
+
+* `regionalEndpoints()` was added
+* `withEndpointProtocol(models.EndpointProtocol)` was added
+* `withMetadataSearch(models.MetadataSearch)` was added
+* `metadataSearch()` was added
+* `endpointProtocol()` was added
+* `withRegionalEndpoints(models.RegionalEndpoints)` was added
+
+#### `models.RegistryNameCheckRequest` was modified
+
+* `withResourceGroupName(java.lang.String)` was added
+* `withAutoGeneratedDomainNameLabelScope(models.AutoGeneratedDomainNameLabelScope)` was added
+* `autoGeneratedDomainNameLabelScope()` was added
+* `resourceGroupName()` was added
## 2.55.0 (2026-03-17)
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/README.md b/sdk/containerregistry/azure-resourcemanager-containerregistry/README.md
index 059df1bcdc75..986cf88fa165 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/README.md
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/README.md
@@ -18,7 +18,7 @@ For documentation on how to use this package, please see [Azure Management Libra
com.azure.resourcemanager
azure-resourcemanager-containerregistry
- 2.55.0
+ 2.56.0-beta.1
```
[//]: # ({x-version-update-end})
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchiveVersionsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchiveVersionsClient.java
new file mode 100644
index 000000000000..6585f20912e4
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchiveVersionsClient.java
@@ -0,0 +1,391 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+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.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.models.ArchiveVersionInner;
+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 ArchiveVersionsClient.
+ */
+public interface ArchiveVersionsClient {
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName);
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName, Context context);
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveVersionInner get(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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 an object that represents an export pipeline for a container registry along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, ArchiveVersionInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ArchiveVersionInner> beginCreate(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ArchiveVersionInner> beginCreate(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName, Context context);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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 an object that represents an export pipeline for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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 an object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveVersionInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName);
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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 an object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveVersionInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName, Context context);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName, Context context);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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 {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName);
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName, Context context);
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux listAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName);
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ String archiveName);
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchivesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchivesClient.java
new file mode 100644
index 000000000000..4e141a9726d8
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ArchivesClient.java
@@ -0,0 +1,436 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+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.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.models.ArchiveInner;
+import com.azure.resourcemanager.containerregistry.models.ArchiveUpdateParameters;
+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 ArchivesClient.
+ */
+public interface ArchivesClient {
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName);
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String registryName, String packageType, String archiveName);
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context);
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveInner get(String resourceGroupName, String registryName, String packageType, String archiveName);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, ArchiveInner> beginCreateAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ArchiveInner> beginCreate(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ArchiveInner> beginCreate(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters, Context context);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveInner archiveCreateParameters);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveInner archiveCreateParameters);
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveInner archiveCreateParameters, Context context);
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> updateWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveUpdateParameters archiveUpdateParameters);
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono updateAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveUpdateParameters archiveUpdateParameters);
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateWithResponse(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveUpdateParameters archiveUpdateParameters, Context context);
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ArchiveInner update(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveUpdateParameters archiveUpdateParameters);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String packageType,
+ String archiveName);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive 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 {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String registryName, String packageType, String archiveName);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String packageType, String archiveName);
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String registryName, String packageType, String archiveName, Context context);
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archives for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux listAsync(String resourceGroupName, String registryName, String packageType);
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archives for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, String packageType);
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archives for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ Context context);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ConnectedRegistriesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ConnectedRegistriesClient.java
index 23716a280cca..10efe114dfa1 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ConnectedRegistriesClient.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ConnectedRegistriesClient.java
@@ -592,4 +592,66 @@ SyncPoller, Void> beginDeactivate(String resourceGroupName, Str
*/
@ServiceMethod(returns = ReturnType.SINGLE)
void deactivate(String resourceGroupName, String registryName, String connectedRegistryName, Context context);
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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)
+ Mono> resyncWithResponseAsync(String resourceGroupName, String registryName,
+ String connectedRegistryName);
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono resyncAsync(String resourceGroupName, String registryName,
+ String connectedRegistryName);
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response resyncWithResponse(String resourceGroupName, String registryName,
+ String connectedRegistryName, Context context);
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectedRegistryInner resync(String resourceGroupName, String registryName, String connectedRegistryName);
}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ContainerRegistryManagementClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ContainerRegistryManagementClient.java
index d4400f824714..c60109a196b2 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ContainerRegistryManagementClient.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ContainerRegistryManagementClient.java
@@ -60,6 +60,20 @@ public interface ContainerRegistryManagementClient {
*/
RegistriesClient getRegistries();
+ /**
+ * Gets the ArchivesClient object to access its operations.
+ *
+ * @return the ArchivesClient object.
+ */
+ ArchivesClient getArchives();
+
+ /**
+ * Gets the ArchiveVersionsClient object to access its operations.
+ *
+ * @return the ArchiveVersionsClient object.
+ */
+ ArchiveVersionsClient getArchiveVersions();
+
/**
* Gets the CacheRulesClient object to access its operations.
*
@@ -109,6 +123,27 @@ public interface ContainerRegistryManagementClient {
*/
TokensClient getTokens();
+ /**
+ * Gets the ExportPipelinesClient object to access its operations.
+ *
+ * @return the ExportPipelinesClient object.
+ */
+ ExportPipelinesClient getExportPipelines();
+
+ /**
+ * Gets the ImportPipelinesClient object to access its operations.
+ *
+ * @return the ImportPipelinesClient object.
+ */
+ ImportPipelinesClient getImportPipelines();
+
+ /**
+ * Gets the PipelineRunsClient object to access its operations.
+ *
+ * @return the PipelineRunsClient object.
+ */
+ PipelineRunsClient getPipelineRuns();
+
/**
* Gets the WebhooksClient object to access its operations.
*
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ExportPipelinesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ExportPipelinesClient.java
new file mode 100644
index 000000000000..faf105caf59e
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ExportPipelinesClient.java
@@ -0,0 +1,349 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+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.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.models.ExportPipelineInner;
+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 ExportPipelinesClient.
+ */
+public interface ExportPipelinesClient {
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName);
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String registryName, String exportPipelineName);
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createWithResponseAsync(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. The name is case insensitive.
+ * @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 PollerFlux} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, ExportPipelineInner> beginCreateAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String exportPipelineName);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String registryName, String exportPipelineName);
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux listAsync(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ImportPipelinesClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ImportPipelinesClient.java
new file mode 100644
index 000000000000..fb896c7da8c3
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/ImportPipelinesClient.java
@@ -0,0 +1,349 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+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.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.models.ImportPipelineInner;
+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 ImportPipelinesClient.
+ */
+public interface ImportPipelinesClient {
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String importPipelineName);
+
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String registryName, String importPipelineName);
+
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Gets the properties of the import pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Creates an import pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createWithResponseAsync(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. The name is case insensitive.
+ * @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 PollerFlux} for polling of an object that represents an import pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, ImportPipelineInner> beginCreateAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String importPipelineName);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String importPipelineName);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String registryName, String importPipelineName);
+
+ /**
+ * Deletes an import pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+
+ /**
+ * Lists all import pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux listAsync(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all import pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/PipelineRunsClient.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/PipelineRunsClient.java
new file mode 100644
index 000000000000..3b698fd0fae9
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/PipelineRunsClient.java
@@ -0,0 +1,345 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+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.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.models.PipelineRunInner;
+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 PipelineRunsClient.
+ */
+public interface PipelineRunsClient {
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String pipelineRunName);
+
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String registryName, String pipelineRunName);
+
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Gets the detailed information for a given pipeline run.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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);
+
+ /**
+ * Creates a pipeline run for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createWithResponseAsync(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. The name is case insensitive.
+ * @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 PollerFlux} for polling of an object that represents a pipeline run for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, PipelineRunInner> beginCreateAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createAsync(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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String pipelineRunName);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String pipelineRunName);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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 A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String registryName, String pipelineRunName);
+
+ /**
+ * Deletes a pipeline run from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+
+ /**
+ * Lists all the pipeline runs for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux listAsync(String resourceGroupName, String registryName);
+
+ /**
+ * Lists all the pipeline runs for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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. The name is case insensitive.
+ * @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);
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveInner.java
new file mode 100644
index 000000000000..dc85d24a6805
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveInner.java
@@ -0,0 +1,243 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ArchivePackageSourceProperties;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * An object that represents a archive for a container registry.
+ */
+@Fluent
+public final class ArchiveInner extends ProxyResource {
+ /*
+ * The properties of the archive.
+ */
+ private ArchiveProperties innerProperties;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of ArchiveInner class.
+ */
+ public ArchiveInner() {
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the archive.
+ *
+ * @return the innerProperties value.
+ */
+ private ArchiveProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Get the packageSource property: The package source of the archive.
+ *
+ * @return the packageSource value.
+ */
+ public ArchivePackageSourceProperties packageSource() {
+ return this.innerProperties() == null ? null : this.innerProperties().packageSource();
+ }
+
+ /**
+ * Set the packageSource property: The package source of the archive.
+ *
+ * @param packageSource the packageSource value to set.
+ * @return the ArchiveInner object itself.
+ */
+ public ArchiveInner withPackageSource(ArchivePackageSourceProperties packageSource) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ArchiveProperties();
+ }
+ this.innerProperties().withPackageSource(packageSource);
+ return this;
+ }
+
+ /**
+ * Get the publishedVersion property: The published version of the archive.
+ *
+ * @return the publishedVersion value.
+ */
+ public String publishedVersion() {
+ return this.innerProperties() == null ? null : this.innerProperties().publishedVersion();
+ }
+
+ /**
+ * Set the publishedVersion property: The published version of the archive.
+ *
+ * @param publishedVersion the publishedVersion value to set.
+ * @return the ArchiveInner object itself.
+ */
+ public ArchiveInner withPublishedVersion(String publishedVersion) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ArchiveProperties();
+ }
+ this.innerProperties().withPublishedVersion(publishedVersion);
+ return this;
+ }
+
+ /**
+ * Get the repositoryEndpointPrefix property: The repositoryEndpointPrefix property.
+ *
+ * @return the repositoryEndpointPrefix value.
+ */
+ public String repositoryEndpointPrefix() {
+ return this.innerProperties() == null ? null : this.innerProperties().repositoryEndpointPrefix();
+ }
+
+ /**
+ * Set the repositoryEndpointPrefix property: The repositoryEndpointPrefix property.
+ *
+ * @param repositoryEndpointPrefix the repositoryEndpointPrefix value to set.
+ * @return the ArchiveInner object itself.
+ */
+ public ArchiveInner withRepositoryEndpointPrefix(String repositoryEndpointPrefix) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ArchiveProperties();
+ }
+ this.innerProperties().withRepositoryEndpointPrefix(repositoryEndpointPrefix);
+ return this;
+ }
+
+ /**
+ * Get the repositoryEndpoint property: The repositoryEndpoint property.
+ *
+ * @return the repositoryEndpoint value.
+ */
+ public String repositoryEndpoint() {
+ return this.innerProperties() == null ? null : this.innerProperties().repositoryEndpoint();
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the archive 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();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("properties", this.innerProperties);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ArchiveInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ArchiveInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ArchiveInner.
+ */
+ public static ArchiveInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ArchiveInner deserializedArchiveInner = new ArchiveInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedArchiveInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedArchiveInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedArchiveInner.type = reader.getString();
+ } else if ("properties".equals(fieldName)) {
+ deserializedArchiveInner.innerProperties = ArchiveProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedArchiveInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedArchiveInner;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveProperties.java
new file mode 100644
index 000000000000..7b627391776a
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveProperties.java
@@ -0,0 +1,186 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ArchivePackageSourceProperties;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * The properties of a archive.
+ */
+@Fluent
+public final class ArchiveProperties implements JsonSerializable {
+ /*
+ * The package source of the archive.
+ */
+ private ArchivePackageSourceProperties packageSource;
+
+ /*
+ * The published version of the archive.
+ */
+ private String publishedVersion;
+
+ /*
+ * The repositoryEndpointPrefix property.
+ */
+ private String repositoryEndpointPrefix;
+
+ /*
+ * The repositoryEndpoint property.
+ */
+ private String repositoryEndpoint;
+
+ /*
+ * The provisioning state of the archive at the time the operation was called.
+ */
+ private ProvisioningState provisioningState;
+
+ /**
+ * Creates an instance of ArchiveProperties class.
+ */
+ public ArchiveProperties() {
+ }
+
+ /**
+ * Get the packageSource property: The package source of the archive.
+ *
+ * @return the packageSource value.
+ */
+ public ArchivePackageSourceProperties packageSource() {
+ return this.packageSource;
+ }
+
+ /**
+ * Set the packageSource property: The package source of the archive.
+ *
+ * @param packageSource the packageSource value to set.
+ * @return the ArchiveProperties object itself.
+ */
+ public ArchiveProperties withPackageSource(ArchivePackageSourceProperties packageSource) {
+ this.packageSource = packageSource;
+ return this;
+ }
+
+ /**
+ * Get the publishedVersion property: The published version of the archive.
+ *
+ * @return the publishedVersion value.
+ */
+ public String publishedVersion() {
+ return this.publishedVersion;
+ }
+
+ /**
+ * Set the publishedVersion property: The published version of the archive.
+ *
+ * @param publishedVersion the publishedVersion value to set.
+ * @return the ArchiveProperties object itself.
+ */
+ public ArchiveProperties withPublishedVersion(String publishedVersion) {
+ this.publishedVersion = publishedVersion;
+ return this;
+ }
+
+ /**
+ * Get the repositoryEndpointPrefix property: The repositoryEndpointPrefix property.
+ *
+ * @return the repositoryEndpointPrefix value.
+ */
+ public String repositoryEndpointPrefix() {
+ return this.repositoryEndpointPrefix;
+ }
+
+ /**
+ * Set the repositoryEndpointPrefix property: The repositoryEndpointPrefix property.
+ *
+ * @param repositoryEndpointPrefix the repositoryEndpointPrefix value to set.
+ * @return the ArchiveProperties object itself.
+ */
+ public ArchiveProperties withRepositoryEndpointPrefix(String repositoryEndpointPrefix) {
+ this.repositoryEndpointPrefix = repositoryEndpointPrefix;
+ return this;
+ }
+
+ /**
+ * Get the repositoryEndpoint property: The repositoryEndpoint property.
+ *
+ * @return the repositoryEndpoint value.
+ */
+ public String repositoryEndpoint() {
+ return this.repositoryEndpoint;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the archive 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 (packageSource() != null) {
+ packageSource().validate();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("packageSource", this.packageSource);
+ jsonWriter.writeStringField("publishedVersion", this.publishedVersion);
+ jsonWriter.writeStringField("repositoryEndpointPrefix", this.repositoryEndpointPrefix);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ArchiveProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ArchiveProperties if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ArchiveProperties.
+ */
+ public static ArchiveProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ArchiveProperties deserializedArchiveProperties = new ArchiveProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("packageSource".equals(fieldName)) {
+ deserializedArchiveProperties.packageSource = ArchivePackageSourceProperties.fromJson(reader);
+ } else if ("publishedVersion".equals(fieldName)) {
+ deserializedArchiveProperties.publishedVersion = reader.getString();
+ } else if ("repositoryEndpointPrefix".equals(fieldName)) {
+ deserializedArchiveProperties.repositoryEndpointPrefix = reader.getString();
+ } else if ("repositoryEndpoint".equals(fieldName)) {
+ deserializedArchiveProperties.repositoryEndpoint = reader.getString();
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedArchiveProperties.provisioningState = ProvisioningState.fromString(reader.getString());
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedArchiveProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveUpdateProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveUpdateProperties.java
new file mode 100644
index 000000000000..9ef2f8085500
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveUpdateProperties.java
@@ -0,0 +1,93 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import java.io.IOException;
+
+/**
+ * The properties of a archive.
+ */
+@Fluent
+public final class ArchiveUpdateProperties implements JsonSerializable {
+ /*
+ * The published version of the archive.
+ */
+ private String publishedVersion;
+
+ /**
+ * Creates an instance of ArchiveUpdateProperties class.
+ */
+ public ArchiveUpdateProperties() {
+ }
+
+ /**
+ * Get the publishedVersion property: The published version of the archive.
+ *
+ * @return the publishedVersion value.
+ */
+ public String publishedVersion() {
+ return this.publishedVersion;
+ }
+
+ /**
+ * Set the publishedVersion property: The published version of the archive.
+ *
+ * @param publishedVersion the publishedVersion value to set.
+ * @return the ArchiveUpdateProperties object itself.
+ */
+ public ArchiveUpdateProperties withPublishedVersion(String publishedVersion) {
+ this.publishedVersion = publishedVersion;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("publishedVersion", this.publishedVersion);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ArchiveUpdateProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ArchiveUpdateProperties if the JsonReader was pointing to an instance of it, or null if it
+ * was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ArchiveUpdateProperties.
+ */
+ public static ArchiveUpdateProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ArchiveUpdateProperties deserializedArchiveUpdateProperties = new ArchiveUpdateProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("publishedVersion".equals(fieldName)) {
+ deserializedArchiveUpdateProperties.publishedVersion = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedArchiveUpdateProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionInner.java
new file mode 100644
index 000000000000..7553ba676b03
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionInner.java
@@ -0,0 +1,174 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * An object that represents an export pipeline for a container registry.
+ */
+@Immutable
+public final class ArchiveVersionInner extends ProxyResource {
+ /*
+ * The properties of the archive.
+ */
+ private ArchiveVersionProperties innerProperties;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of ArchiveVersionInner class.
+ */
+ private ArchiveVersionInner() {
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the archive.
+ *
+ * @return the innerProperties value.
+ */
+ private ArchiveVersionProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the archive at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the archiveVersionErrorMessage property: The detailed error message for the archive version in the case of
+ * failure.
+ *
+ * @return the archiveVersionErrorMessage value.
+ */
+ public String archiveVersionErrorMessage() {
+ return this.innerProperties() == null ? null : this.innerProperties().archiveVersionErrorMessage();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("properties", this.innerProperties);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ArchiveVersionInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ArchiveVersionInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ArchiveVersionInner.
+ */
+ public static ArchiveVersionInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ArchiveVersionInner deserializedArchiveVersionInner = new ArchiveVersionInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedArchiveVersionInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedArchiveVersionInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedArchiveVersionInner.type = reader.getString();
+ } else if ("properties".equals(fieldName)) {
+ deserializedArchiveVersionInner.innerProperties = ArchiveVersionProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedArchiveVersionInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedArchiveVersionInner;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionProperties.java
new file mode 100644
index 000000000000..58a1f858a3f2
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ArchiveVersionProperties.java
@@ -0,0 +1,101 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * The properties of an archive version.
+ */
+@Immutable
+public final class ArchiveVersionProperties implements JsonSerializable {
+ /*
+ * The provisioning state of the archive at the time the operation was called.
+ */
+ private ProvisioningState provisioningState;
+
+ /*
+ * The detailed error message for the archive version in the case of failure.
+ */
+ private String archiveVersionErrorMessage;
+
+ /**
+ * Creates an instance of ArchiveVersionProperties class.
+ */
+ private ArchiveVersionProperties() {
+ }
+
+ /**
+ * Get the provisioningState property: The provisioning state of the archive at the time the operation was called.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the archiveVersionErrorMessage property: The detailed error message for the archive version in the case of
+ * failure.
+ *
+ * @return the archiveVersionErrorMessage value.
+ */
+ public String archiveVersionErrorMessage() {
+ return this.archiveVersionErrorMessage;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("archiveVersionErrorMessage", this.archiveVersionErrorMessage);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ArchiveVersionProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ArchiveVersionProperties if the JsonReader was pointing to an instance of it, or null if
+ * it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ArchiveVersionProperties.
+ */
+ public static ArchiveVersionProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ArchiveVersionProperties deserializedArchiveVersionProperties = new ArchiveVersionProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("provisioningState".equals(fieldName)) {
+ deserializedArchiveVersionProperties.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else if ("archiveVersionErrorMessage".equals(fieldName)) {
+ deserializedArchiveVersionProperties.archiveVersionErrorMessage = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedArchiveVersionProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/CacheRuleInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/CacheRuleInner.java
index 00e073f9b9d2..f033b28eaeef 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/CacheRuleInner.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/CacheRuleInner.java
@@ -10,6 +10,7 @@
import com.azure.json.JsonReader;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.IdentityProperties;
import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
import java.io.IOException;
import java.time.OffsetDateTime;
@@ -24,6 +25,11 @@ public final class CacheRuleInner extends ProxyResource {
*/
private CacheRuleProperties innerProperties;
+ /*
+ * The identity of the cache rule.
+ */
+ private IdentityProperties identity;
+
/*
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*/
@@ -59,6 +65,26 @@ private CacheRuleProperties innerProperties() {
return this.innerProperties;
}
+ /**
+ * Get the identity property: The identity of the cache rule.
+ *
+ * @return the identity value.
+ */
+ public IdentityProperties identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The identity of the cache rule.
+ *
+ * @param identity the identity value to set.
+ * @return the CacheRuleInner object itself.
+ */
+ public CacheRuleInner withIdentity(IdentityProperties identity) {
+ this.identity = identity;
+ return this;
+ }
+
/**
* Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
@@ -198,6 +224,9 @@ public void validate() {
if (innerProperties() != null) {
innerProperties().validate();
}
+ if (identity() != null) {
+ identity().validate();
+ }
}
/**
@@ -207,6 +236,7 @@ public void validate() {
public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeStartObject();
jsonWriter.writeJsonField("properties", this.innerProperties);
+ jsonWriter.writeJsonField("identity", this.identity);
return jsonWriter.writeEndObject();
}
@@ -234,6 +264,8 @@ public static CacheRuleInner fromJson(JsonReader jsonReader) throws IOException
deserializedCacheRuleInner.type = reader.getString();
} else if ("properties".equals(fieldName)) {
deserializedCacheRuleInner.innerProperties = CacheRuleProperties.fromJson(reader);
+ } else if ("identity".equals(fieldName)) {
+ deserializedCacheRuleInner.identity = IdentityProperties.fromJson(reader);
} else if ("systemData".equals(fieldName)) {
deserializedCacheRuleInner.systemData = SystemData.fromJson(reader);
} else {
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryInner.java
index fa2a7e921c8d..0ccfb474ac14 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryInner.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryInner.java
@@ -18,6 +18,7 @@
import com.azure.resourcemanager.containerregistry.models.LoginServerProperties;
import com.azure.resourcemanager.containerregistry.models.ParentProperties;
import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.models.RegistrySyncResult;
import com.azure.resourcemanager.containerregistry.models.StatusDetailProperties;
import java.io.IOException;
import java.time.OffsetDateTime;
@@ -328,6 +329,29 @@ public ConnectedRegistryInner withGarbageCollection(GarbageCollectionProperties
return this;
}
+ /**
+ * Get the registrySyncResult property: The result of the connected registry's most recent sync with its parent.
+ *
+ * @return the registrySyncResult value.
+ */
+ public RegistrySyncResult registrySyncResult() {
+ return this.innerProperties() == null ? null : this.innerProperties().registrySyncResult();
+ }
+
+ /**
+ * Set the registrySyncResult property: The result of the connected registry's most recent sync with its parent.
+ *
+ * @param registrySyncResult the registrySyncResult value to set.
+ * @return the ConnectedRegistryInner object itself.
+ */
+ public ConnectedRegistryInner withRegistrySyncResult(RegistrySyncResult registrySyncResult) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ConnectedRegistryProperties();
+ }
+ this.innerProperties().withRegistrySyncResult(registrySyncResult);
+ return this;
+ }
+
/**
* Validates the instance.
*
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryProperties.java
index c4718f0d605f..96667f2d029d 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryProperties.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ConnectedRegistryProperties.java
@@ -19,6 +19,7 @@
import com.azure.resourcemanager.containerregistry.models.LoginServerProperties;
import com.azure.resourcemanager.containerregistry.models.ParentProperties;
import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import com.azure.resourcemanager.containerregistry.models.RegistrySyncResult;
import com.azure.resourcemanager.containerregistry.models.StatusDetailProperties;
import java.io.IOException;
import java.time.OffsetDateTime;
@@ -94,6 +95,11 @@ public final class ConnectedRegistryProperties implements JsonSerializable writer.writeString(element));
jsonWriter.writeJsonField("garbageCollection", this.garbageCollection);
+ jsonWriter.writeJsonField("registrySyncResult", this.registrySyncResult);
return jsonWriter.writeEndObject();
}
@@ -405,6 +435,8 @@ public static ConnectedRegistryProperties fromJson(JsonReader jsonReader) throws
} else if ("garbageCollection".equals(fieldName)) {
deserializedConnectedRegistryProperties.garbageCollection
= GarbageCollectionProperties.fromJson(reader);
+ } else if ("registrySyncResult".equals(fieldName)) {
+ deserializedConnectedRegistryProperties.registrySyncResult = RegistrySyncResult.fromJson(reader);
} else {
reader.skipChildren();
}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineInner.java
new file mode 100644
index 000000000000..74da1e0452e2
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineInner.java
@@ -0,0 +1,273 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ExportPipelineTargetProperties;
+import com.azure.resourcemanager.containerregistry.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * An object that represents an export pipeline for a container registry.
+ */
+@Fluent
+public final class ExportPipelineInner extends ProxyResource {
+ /*
+ * The properties of the export pipeline.
+ */
+ private ExportPipelineProperties innerProperties;
+
+ /*
+ * The location of the export pipeline.
+ */
+ private String location;
+
+ /*
+ * The identity of the export pipeline.
+ */
+ private IdentityProperties identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of ExportPipelineInner class.
+ */
+ public ExportPipelineInner() {
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the export pipeline.
+ *
+ * @return the innerProperties value.
+ */
+ private ExportPipelineProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * 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 systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * 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 (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("properties", this.innerProperties);
+ jsonWriter.writeStringField("location", this.location);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ExportPipelineInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ExportPipelineInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ExportPipelineInner.
+ */
+ public static ExportPipelineInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ExportPipelineInner deserializedExportPipelineInner = new ExportPipelineInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedExportPipelineInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedExportPipelineInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedExportPipelineInner.type = reader.getString();
+ } else if ("properties".equals(fieldName)) {
+ deserializedExportPipelineInner.innerProperties = ExportPipelineProperties.fromJson(reader);
+ } else if ("location".equals(fieldName)) {
+ deserializedExportPipelineInner.location = reader.getString();
+ } else if ("identity".equals(fieldName)) {
+ deserializedExportPipelineInner.identity = IdentityProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedExportPipelineInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedExportPipelineInner;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineProperties.java
new file mode 100644
index 000000000000..06fe5add4d7a
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ExportPipelineProperties.java
@@ -0,0 +1,156 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ExportPipelineTargetProperties;
+import com.azure.resourcemanager.containerregistry.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * The properties of an export pipeline.
+ */
+@Fluent
+public final class ExportPipelineProperties implements JsonSerializable {
+ /*
+ * The target properties of the export pipeline.
+ */
+ private ExportPipelineTargetProperties target;
+
+ /*
+ * The list of all options configured for the pipeline.
+ */
+ private List options;
+
+ /*
+ * The provisioning state of the pipeline at the time the operation was called.
+ */
+ private ProvisioningState provisioningState;
+
+ /**
+ * Creates an instance of ExportPipelineProperties class.
+ */
+ public ExportPipelineProperties() {
+ }
+
+ /**
+ * 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.atError()
+ .log(
+ new IllegalArgumentException("Missing required property target in model ExportPipelineProperties"));
+ } else {
+ target().validate();
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(ExportPipelineProperties.class);
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("target", this.target);
+ jsonWriter.writeArrayField("options", this.options,
+ (writer, element) -> writer.writeString(element == null ? null : element.toString()));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ExportPipelineProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ExportPipelineProperties if the JsonReader was pointing to an instance of it, or null if
+ * it was pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ExportPipelineProperties.
+ */
+ public static ExportPipelineProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ExportPipelineProperties deserializedExportPipelineProperties = new ExportPipelineProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("target".equals(fieldName)) {
+ deserializedExportPipelineProperties.target = ExportPipelineTargetProperties.fromJson(reader);
+ } else if ("options".equals(fieldName)) {
+ List options
+ = reader.readArray(reader1 -> PipelineOptions.fromString(reader1.getString()));
+ deserializedExportPipelineProperties.options = options;
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedExportPipelineProperties.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedExportPipelineProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineInner.java
new file mode 100644
index 000000000000..dc32e768a484
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineInner.java
@@ -0,0 +1,297 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.models.ImportPipelineSourceProperties;
+import com.azure.resourcemanager.containerregistry.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.models.PipelineTriggerProperties;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * An object that represents an import pipeline for a container registry.
+ */
+@Fluent
+public final class ImportPipelineInner extends ProxyResource {
+ /*
+ * The properties of the import pipeline.
+ */
+ private ImportPipelineProperties innerProperties;
+
+ /*
+ * The location of the import pipeline.
+ */
+ private String location;
+
+ /*
+ * The identity of the import pipeline.
+ */
+ private IdentityProperties identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of ImportPipelineInner class.
+ */
+ public ImportPipelineInner() {
+ }
+
+ /**
+ * Get the innerProperties property: The properties of the import pipeline.
+ *
+ * @return the innerProperties value.
+ */
+ private ImportPipelineProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * 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 systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * 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 (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ if (identity() != null) {
+ identity().validate();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("properties", this.innerProperties);
+ jsonWriter.writeStringField("location", this.location);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ImportPipelineInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ImportPipelineInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ImportPipelineInner.
+ */
+ public static ImportPipelineInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ImportPipelineInner deserializedImportPipelineInner = new ImportPipelineInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedImportPipelineInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedImportPipelineInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedImportPipelineInner.type = reader.getString();
+ } else if ("properties".equals(fieldName)) {
+ deserializedImportPipelineInner.innerProperties = ImportPipelineProperties.fromJson(reader);
+ } else if ("location".equals(fieldName)) {
+ deserializedImportPipelineInner.location = reader.getString();
+ } else if ("identity".equals(fieldName)) {
+ deserializedImportPipelineInner.identity = IdentityProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedImportPipelineInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedImportPipelineInner;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineProperties.java
new file mode 100644
index 000000000000..bd7c9a210bdc
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/ImportPipelineProperties.java
@@ -0,0 +1,188 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.ImportPipelineSourceProperties;
+import com.azure.resourcemanager.containerregistry.models.PipelineOptions;
+import com.azure.resourcemanager.containerregistry.models.PipelineTriggerProperties;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * The properties of an import pipeline.
+ */
+@Fluent
+public final class ImportPipelineProperties implements JsonSerializable {
+ /*
+ * The source properties of the import pipeline.
+ */
+ private ImportPipelineSourceProperties source;
+
+ /*
+ * The properties that describe the trigger of the import pipeline.
+ */
+ private PipelineTriggerProperties trigger;
+
+ /*
+ * The list of all options configured for the pipeline.
+ */
+ private List options;
+
+ /*
+ * The provisioning state of the pipeline at the time the operation was called.
+ */
+ private ProvisioningState provisioningState;
+
+ /**
+ * Creates an instance of ImportPipelineProperties class.
+ */
+ public ImportPipelineProperties() {
+ }
+
+ /**
+ * 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.atError()
+ .log(
+ 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);
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("source", this.source);
+ jsonWriter.writeJsonField("trigger", this.trigger);
+ jsonWriter.writeArrayField("options", this.options,
+ (writer, element) -> writer.writeString(element == null ? null : element.toString()));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ImportPipelineProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ImportPipelineProperties if the JsonReader was pointing to an instance of it, or null if
+ * it was pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ImportPipelineProperties.
+ */
+ public static ImportPipelineProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ImportPipelineProperties deserializedImportPipelineProperties = new ImportPipelineProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("source".equals(fieldName)) {
+ deserializedImportPipelineProperties.source = ImportPipelineSourceProperties.fromJson(reader);
+ } else if ("trigger".equals(fieldName)) {
+ deserializedImportPipelineProperties.trigger = PipelineTriggerProperties.fromJson(reader);
+ } else if ("options".equals(fieldName)) {
+ List options
+ = reader.readArray(reader1 -> PipelineOptions.fromString(reader1.getString()));
+ deserializedImportPipelineProperties.options = options;
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedImportPipelineProperties.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedImportPipelineProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunInner.java
new file mode 100644
index 000000000000..5ab247e9a916
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunInner.java
@@ -0,0 +1,223 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.PipelineRunRequest;
+import com.azure.resourcemanager.containerregistry.models.PipelineRunResponse;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * An object that represents a pipeline run for a container registry.
+ */
+@Fluent
+public final class PipelineRunInner extends ProxyResource {
+ /*
+ * The properties of a pipeline run.
+ */
+ private PipelineRunProperties innerProperties;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of PipelineRunInner class.
+ */
+ public PipelineRunInner() {
+ }
+
+ /**
+ * Get the innerProperties property: The properties of a pipeline run.
+ *
+ * @return the innerProperties value.
+ */
+ private PipelineRunProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * 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();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("properties", this.innerProperties);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of PipelineRunInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of PipelineRunInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the PipelineRunInner.
+ */
+ public static PipelineRunInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ PipelineRunInner deserializedPipelineRunInner = new PipelineRunInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedPipelineRunInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedPipelineRunInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedPipelineRunInner.type = reader.getString();
+ } else if ("properties".equals(fieldName)) {
+ deserializedPipelineRunInner.innerProperties = PipelineRunProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedPipelineRunInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedPipelineRunInner;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunProperties.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunProperties.java
new file mode 100644
index 000000000000..b16941a032bc
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/PipelineRunProperties.java
@@ -0,0 +1,165 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.PipelineRunRequest;
+import com.azure.resourcemanager.containerregistry.models.PipelineRunResponse;
+import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
+import java.io.IOException;
+
+/**
+ * The properties of a pipeline run.
+ */
+@Fluent
+public final class PipelineRunProperties implements JsonSerializable {
+ /*
+ * The provisioning state of a pipeline run.
+ */
+ private ProvisioningState provisioningState;
+
+ /*
+ * The request parameters for a pipeline run.
+ */
+ private PipelineRunRequest request;
+
+ /*
+ * The response of a pipeline run.
+ */
+ private PipelineRunResponse response;
+
+ /*
+ * How the pipeline run should be forced to recreate even if the pipeline run configuration has not changed.
+ */
+ private String forceUpdateTag;
+
+ /**
+ * Creates an instance of PipelineRunProperties class.
+ */
+ public PipelineRunProperties() {
+ }
+
+ /**
+ * 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();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("request", this.request);
+ jsonWriter.writeStringField("forceUpdateTag", this.forceUpdateTag);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of PipelineRunProperties from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of PipelineRunProperties if the JsonReader was pointing to an instance of it, or null if it
+ * was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the PipelineRunProperties.
+ */
+ public static PipelineRunProperties fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ PipelineRunProperties deserializedPipelineRunProperties = new PipelineRunProperties();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("provisioningState".equals(fieldName)) {
+ deserializedPipelineRunProperties.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else if ("request".equals(fieldName)) {
+ deserializedPipelineRunProperties.request = PipelineRunRequest.fromJson(reader);
+ } else if ("response".equals(fieldName)) {
+ deserializedPipelineRunProperties.response = PipelineRunResponse.fromJson(reader);
+ } else if ("forceUpdateTag".equals(fieldName)) {
+ deserializedPipelineRunProperties.forceUpdateTag = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedPipelineRunProperties;
+ });
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryInner.java
index 2d1c6a4fb2df..81410e07720e 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryInner.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryInner.java
@@ -11,13 +11,17 @@
import com.azure.json.JsonReader;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.containerregistry.models.AutoGeneratedDomainNameLabelScope;
import com.azure.resourcemanager.containerregistry.models.EncryptionProperty;
+import com.azure.resourcemanager.containerregistry.models.EndpointProtocol;
import com.azure.resourcemanager.containerregistry.models.IdentityProperties;
+import com.azure.resourcemanager.containerregistry.models.MetadataSearch;
import com.azure.resourcemanager.containerregistry.models.NetworkRuleBypassOptions;
import com.azure.resourcemanager.containerregistry.models.NetworkRuleSet;
import com.azure.resourcemanager.containerregistry.models.Policies;
import com.azure.resourcemanager.containerregistry.models.ProvisioningState;
import com.azure.resourcemanager.containerregistry.models.PublicNetworkAccess;
+import com.azure.resourcemanager.containerregistry.models.RegionalEndpoints;
import com.azure.resourcemanager.containerregistry.models.RoleAssignmentMode;
import com.azure.resourcemanager.containerregistry.models.Sku;
import com.azure.resourcemanager.containerregistry.models.Status;
@@ -340,6 +344,64 @@ public List dataEndpointHostNames() {
return this.innerProperties() == null ? null : this.innerProperties().dataEndpointHostNames();
}
+ /**
+ * Get the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @return the regionalEndpoints value.
+ */
+ public RegionalEndpoints regionalEndpoints() {
+ return this.innerProperties() == null ? null : this.innerProperties().regionalEndpoints();
+ }
+
+ /**
+ * Set the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @param regionalEndpoints the regionalEndpoints value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withRegionalEndpoints(RegionalEndpoints regionalEndpoints) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withRegionalEndpoints(regionalEndpoints);
+ return this;
+ }
+
+ /**
+ * Get the regionalEndpointHostNames property: List of host names that will serve registry when RegionalEndpoints is
+ * enabled.
+ *
+ * @return the regionalEndpointHostNames value.
+ */
+ public List regionalEndpointHostNames() {
+ return this.innerProperties() == null ? null : this.innerProperties().regionalEndpointHostNames();
+ }
+
+ /**
+ * Get the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @return the endpointProtocol value.
+ */
+ public EndpointProtocol endpointProtocol() {
+ return this.innerProperties() == null ? null : this.innerProperties().endpointProtocol();
+ }
+
+ /**
+ * Set the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @param endpointProtocol the endpointProtocol value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withEndpointProtocol(EndpointProtocol endpointProtocol) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withEndpointProtocol(endpointProtocol);
+ return this;
+ }
+
/**
* Get the privateEndpointConnections property: List of private endpoint connections for a container registry.
*
@@ -468,6 +530,53 @@ public RegistryInner withAnonymousPullEnabled(Boolean anonymousPullEnabled) {
return this;
}
+ /**
+ * Get the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @return the metadataSearch value.
+ */
+ public MetadataSearch metadataSearch() {
+ return this.innerProperties() == null ? null : this.innerProperties().metadataSearch();
+ }
+
+ /**
+ * Set the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @param metadataSearch the metadataSearch value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner withMetadataSearch(MetadataSearch metadataSearch) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withMetadataSearch(metadataSearch);
+ return this;
+ }
+
+ /**
+ * Get the autoGeneratedDomainNameLabelScope property: Determines the domain name label reuse scope.
+ *
+ * @return the autoGeneratedDomainNameLabelScope value.
+ */
+ public AutoGeneratedDomainNameLabelScope autoGeneratedDomainNameLabelScope() {
+ return this.innerProperties() == null ? null : this.innerProperties().autoGeneratedDomainNameLabelScope();
+ }
+
+ /**
+ * Set the autoGeneratedDomainNameLabelScope property: Determines the domain name label reuse scope.
+ *
+ * @param autoGeneratedDomainNameLabelScope the autoGeneratedDomainNameLabelScope value to set.
+ * @return the RegistryInner object itself.
+ */
+ public RegistryInner
+ withAutoGeneratedDomainNameLabelScope(AutoGeneratedDomainNameLabelScope autoGeneratedDomainNameLabelScope) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new RegistryProperties();
+ }
+ this.innerProperties().withAutoGeneratedDomainNameLabelScope(autoGeneratedDomainNameLabelScope);
+ return this;
+ }
+
/**
* Get the roleAssignmentMode property: Determines registry role assignment mode.
*
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryNameStatusInner.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryNameStatusInner.java
index bba22fd5ce7f..0665828111e9 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryNameStatusInner.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryNameStatusInner.java
@@ -16,6 +16,11 @@
*/
@Immutable
public final class RegistryNameStatusInner implements JsonSerializable {
+ /*
+ * The complete login server name with domain name label (DNL) hash, if available
+ */
+ private String availableLoginServerName;
+
/*
* The value that indicates whether the name is available.
*/
@@ -37,6 +42,16 @@ public final class RegistryNameStatusInner implements JsonSerializable dataEndpointHostNames;
+ /*
+ * Enable per-region endpoints for accessing registry.
+ */
+ private RegionalEndpoints regionalEndpoints;
+
+ /*
+ * List of host names that will serve registry when RegionalEndpoints is enabled.
+ */
+ private List regionalEndpointHostNames;
+
+ /*
+ * The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4 and IPv6).
+ */
+ private EndpointProtocol endpointProtocol;
+
/*
* List of private endpoint connections for a container registry.
*/
@@ -108,6 +127,16 @@ public final class RegistryProperties implements JsonSerializable dataEndpointHostNames() {
return this.dataEndpointHostNames;
}
+ /**
+ * Get the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @return the regionalEndpoints value.
+ */
+ public RegionalEndpoints regionalEndpoints() {
+ return this.regionalEndpoints;
+ }
+
+ /**
+ * Set the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @param regionalEndpoints the regionalEndpoints value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withRegionalEndpoints(RegionalEndpoints regionalEndpoints) {
+ this.regionalEndpoints = regionalEndpoints;
+ return this;
+ }
+
+ /**
+ * Get the regionalEndpointHostNames property: List of host names that will serve registry when RegionalEndpoints is
+ * enabled.
+ *
+ * @return the regionalEndpointHostNames value.
+ */
+ public List regionalEndpointHostNames() {
+ return this.regionalEndpointHostNames;
+ }
+
+ /**
+ * Get the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @return the endpointProtocol value.
+ */
+ public EndpointProtocol endpointProtocol() {
+ return this.endpointProtocol;
+ }
+
+ /**
+ * Set the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @param endpointProtocol the endpointProtocol value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withEndpointProtocol(EndpointProtocol endpointProtocol) {
+ this.endpointProtocol = endpointProtocol;
+ return this;
+ }
+
/**
* Get the privateEndpointConnections property: List of private endpoint connections for a container registry.
*
@@ -378,6 +459,47 @@ public RegistryProperties withAnonymousPullEnabled(Boolean anonymousPullEnabled)
return this;
}
+ /**
+ * Get the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @return the metadataSearch value.
+ */
+ public MetadataSearch metadataSearch() {
+ return this.metadataSearch;
+ }
+
+ /**
+ * Set the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @param metadataSearch the metadataSearch value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties withMetadataSearch(MetadataSearch metadataSearch) {
+ this.metadataSearch = metadataSearch;
+ return this;
+ }
+
+ /**
+ * Get the autoGeneratedDomainNameLabelScope property: Determines the domain name label reuse scope.
+ *
+ * @return the autoGeneratedDomainNameLabelScope value.
+ */
+ public AutoGeneratedDomainNameLabelScope autoGeneratedDomainNameLabelScope() {
+ return this.autoGeneratedDomainNameLabelScope;
+ }
+
+ /**
+ * Set the autoGeneratedDomainNameLabelScope property: Determines the domain name label reuse scope.
+ *
+ * @param autoGeneratedDomainNameLabelScope the autoGeneratedDomainNameLabelScope value to set.
+ * @return the RegistryProperties object itself.
+ */
+ public RegistryProperties
+ withAutoGeneratedDomainNameLabelScope(AutoGeneratedDomainNameLabelScope autoGeneratedDomainNameLabelScope) {
+ this.autoGeneratedDomainNameLabelScope = autoGeneratedDomainNameLabelScope;
+ return this;
+ }
+
/**
* Get the roleAssignmentMode property: Determines registry role assignment mode.
*
@@ -432,6 +554,10 @@ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeJsonField("policies", this.policies);
jsonWriter.writeJsonField("encryption", this.encryption);
jsonWriter.writeBooleanField("dataEndpointEnabled", this.dataEndpointEnabled);
+ jsonWriter.writeStringField("regionalEndpoints",
+ this.regionalEndpoints == null ? null : this.regionalEndpoints.toString());
+ jsonWriter.writeStringField("endpointProtocol",
+ this.endpointProtocol == null ? null : this.endpointProtocol.toString());
jsonWriter.writeStringField("publicNetworkAccess",
this.publicNetworkAccess == null ? null : this.publicNetworkAccess.toString());
jsonWriter.writeStringField("networkRuleBypassOptions",
@@ -440,6 +566,10 @@ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeStringField("zoneRedundancy",
this.zoneRedundancy == null ? null : this.zoneRedundancy.toString());
jsonWriter.writeBooleanField("anonymousPullEnabled", this.anonymousPullEnabled);
+ jsonWriter.writeStringField("metadataSearch",
+ this.metadataSearch == null ? null : this.metadataSearch.toString());
+ jsonWriter.writeStringField("autoGeneratedDomainNameLabelScope",
+ this.autoGeneratedDomainNameLabelScope == null ? null : this.autoGeneratedDomainNameLabelScope.toString());
jsonWriter.writeStringField("roleAssignmentMode",
this.roleAssignmentMode == null ? null : this.roleAssignmentMode.toString());
return jsonWriter.writeEndObject();
@@ -482,6 +612,13 @@ public static RegistryProperties fromJson(JsonReader jsonReader) throws IOExcept
} else if ("dataEndpointHostNames".equals(fieldName)) {
List dataEndpointHostNames = reader.readArray(reader1 -> reader1.getString());
deserializedRegistryProperties.dataEndpointHostNames = dataEndpointHostNames;
+ } else if ("regionalEndpoints".equals(fieldName)) {
+ deserializedRegistryProperties.regionalEndpoints = RegionalEndpoints.fromString(reader.getString());
+ } else if ("regionalEndpointHostNames".equals(fieldName)) {
+ List regionalEndpointHostNames = reader.readArray(reader1 -> reader1.getString());
+ deserializedRegistryProperties.regionalEndpointHostNames = regionalEndpointHostNames;
+ } else if ("endpointProtocol".equals(fieldName)) {
+ deserializedRegistryProperties.endpointProtocol = EndpointProtocol.fromString(reader.getString());
} else if ("privateEndpointConnections".equals(fieldName)) {
List privateEndpointConnections
= reader.readArray(reader1 -> PrivateEndpointConnectionInner.fromJson(reader1));
@@ -499,6 +636,11 @@ public static RegistryProperties fromJson(JsonReader jsonReader) throws IOExcept
deserializedRegistryProperties.zoneRedundancy = ZoneRedundancy.fromString(reader.getString());
} else if ("anonymousPullEnabled".equals(fieldName)) {
deserializedRegistryProperties.anonymousPullEnabled = reader.getNullable(JsonReader::getBoolean);
+ } else if ("metadataSearch".equals(fieldName)) {
+ deserializedRegistryProperties.metadataSearch = MetadataSearch.fromString(reader.getString());
+ } else if ("autoGeneratedDomainNameLabelScope".equals(fieldName)) {
+ deserializedRegistryProperties.autoGeneratedDomainNameLabelScope
+ = AutoGeneratedDomainNameLabelScope.fromString(reader.getString());
} else if ("roleAssignmentMode".equals(fieldName)) {
deserializedRegistryProperties.roleAssignmentMode
= RoleAssignmentMode.fromString(reader.getString());
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryPropertiesUpdateParameters.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryPropertiesUpdateParameters.java
index dde7457eaf1f..d1c88bc2c348 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryPropertiesUpdateParameters.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/fluent/models/RegistryPropertiesUpdateParameters.java
@@ -10,10 +10,13 @@
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
import com.azure.resourcemanager.containerregistry.models.EncryptionProperty;
+import com.azure.resourcemanager.containerregistry.models.EndpointProtocol;
+import com.azure.resourcemanager.containerregistry.models.MetadataSearch;
import com.azure.resourcemanager.containerregistry.models.NetworkRuleBypassOptions;
import com.azure.resourcemanager.containerregistry.models.NetworkRuleSet;
import com.azure.resourcemanager.containerregistry.models.Policies;
import com.azure.resourcemanager.containerregistry.models.PublicNetworkAccess;
+import com.azure.resourcemanager.containerregistry.models.RegionalEndpoints;
import com.azure.resourcemanager.containerregistry.models.RoleAssignmentMode;
import java.io.IOException;
@@ -47,6 +50,16 @@ public final class RegistryPropertiesUpdateParameters implements JsonSerializabl
*/
private Boolean dataEndpointEnabled;
+ /*
+ * Enable per-region endpoints for accessing registry.
+ */
+ private RegionalEndpoints regionalEndpoints;
+
+ /*
+ * The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4 and IPv6).
+ */
+ private EndpointProtocol endpointProtocol;
+
/*
* Whether or not public network access is allowed for the container registry.
*/
@@ -67,6 +80,11 @@ public final class RegistryPropertiesUpdateParameters implements JsonSerializabl
*/
private Boolean anonymousPullEnabled;
+ /*
+ * Determines whether registry artifacts are indexed for metadata search.
+ */
+ private MetadataSearch metadataSearch;
+
/*
* Determines registry role assignment mode.
*/
@@ -178,6 +196,48 @@ public RegistryPropertiesUpdateParameters withDataEndpointEnabled(Boolean dataEn
return this;
}
+ /**
+ * Get the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @return the regionalEndpoints value.
+ */
+ public RegionalEndpoints regionalEndpoints() {
+ return this.regionalEndpoints;
+ }
+
+ /**
+ * Set the regionalEndpoints property: Enable per-region endpoints for accessing registry.
+ *
+ * @param regionalEndpoints the regionalEndpoints value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withRegionalEndpoints(RegionalEndpoints regionalEndpoints) {
+ this.regionalEndpoints = regionalEndpoints;
+ return this;
+ }
+
+ /**
+ * Get the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @return the endpointProtocol value.
+ */
+ public EndpointProtocol endpointProtocol() {
+ return this.endpointProtocol;
+ }
+
+ /**
+ * Set the endpointProtocol property: The connectivity protocol for the registry, such as IPv4 or dual stack (IPv4
+ * and IPv6).
+ *
+ * @param endpointProtocol the endpointProtocol value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withEndpointProtocol(EndpointProtocol endpointProtocol) {
+ this.endpointProtocol = endpointProtocol;
+ return this;
+ }
+
/**
* Get the publicNetworkAccess property: Whether or not public network access is allowed for the container registry.
*
@@ -264,6 +324,26 @@ public RegistryPropertiesUpdateParameters withAnonymousPullEnabled(Boolean anony
return this;
}
+ /**
+ * Get the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @return the metadataSearch value.
+ */
+ public MetadataSearch metadataSearch() {
+ return this.metadataSearch;
+ }
+
+ /**
+ * Set the metadataSearch property: Determines whether registry artifacts are indexed for metadata search.
+ *
+ * @param metadataSearch the metadataSearch value to set.
+ * @return the RegistryPropertiesUpdateParameters object itself.
+ */
+ public RegistryPropertiesUpdateParameters withMetadataSearch(MetadataSearch metadataSearch) {
+ this.metadataSearch = metadataSearch;
+ return this;
+ }
+
/**
* Get the roleAssignmentMode property: Determines registry role assignment mode.
*
@@ -312,12 +392,18 @@ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeJsonField("policies", this.policies);
jsonWriter.writeJsonField("encryption", this.encryption);
jsonWriter.writeBooleanField("dataEndpointEnabled", this.dataEndpointEnabled);
+ jsonWriter.writeStringField("regionalEndpoints",
+ this.regionalEndpoints == null ? null : this.regionalEndpoints.toString());
+ jsonWriter.writeStringField("endpointProtocol",
+ this.endpointProtocol == null ? null : this.endpointProtocol.toString());
jsonWriter.writeStringField("publicNetworkAccess",
this.publicNetworkAccess == null ? null : this.publicNetworkAccess.toString());
jsonWriter.writeStringField("networkRuleBypassOptions",
this.networkRuleBypassOptions == null ? null : this.networkRuleBypassOptions.toString());
jsonWriter.writeBooleanField("networkRuleBypassAllowedForTasks", this.networkRuleBypassAllowedForTasks);
jsonWriter.writeBooleanField("anonymousPullEnabled", this.anonymousPullEnabled);
+ jsonWriter.writeStringField("metadataSearch",
+ this.metadataSearch == null ? null : this.metadataSearch.toString());
jsonWriter.writeStringField("roleAssignmentMode",
this.roleAssignmentMode == null ? null : this.roleAssignmentMode.toString());
return jsonWriter.writeEndObject();
@@ -351,6 +437,12 @@ public static RegistryPropertiesUpdateParameters fromJson(JsonReader jsonReader)
} else if ("dataEndpointEnabled".equals(fieldName)) {
deserializedRegistryPropertiesUpdateParameters.dataEndpointEnabled
= reader.getNullable(JsonReader::getBoolean);
+ } else if ("regionalEndpoints".equals(fieldName)) {
+ deserializedRegistryPropertiesUpdateParameters.regionalEndpoints
+ = RegionalEndpoints.fromString(reader.getString());
+ } else if ("endpointProtocol".equals(fieldName)) {
+ deserializedRegistryPropertiesUpdateParameters.endpointProtocol
+ = EndpointProtocol.fromString(reader.getString());
} else if ("publicNetworkAccess".equals(fieldName)) {
deserializedRegistryPropertiesUpdateParameters.publicNetworkAccess
= PublicNetworkAccess.fromString(reader.getString());
@@ -363,6 +455,9 @@ public static RegistryPropertiesUpdateParameters fromJson(JsonReader jsonReader)
} else if ("anonymousPullEnabled".equals(fieldName)) {
deserializedRegistryPropertiesUpdateParameters.anonymousPullEnabled
= reader.getNullable(JsonReader::getBoolean);
+ } else if ("metadataSearch".equals(fieldName)) {
+ deserializedRegistryPropertiesUpdateParameters.metadataSearch
+ = MetadataSearch.fromString(reader.getString());
} else if ("roleAssignmentMode".equals(fieldName)) {
deserializedRegistryPropertiesUpdateParameters.roleAssignmentMode
= RoleAssignmentMode.fromString(reader.getString());
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchiveVersionsClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchiveVersionsClientImpl.java
new file mode 100644
index 000000000000..164d9e7bc83b
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchiveVersionsClientImpl.java
@@ -0,0 +1,1047 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.implementation;
+
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.ArchiveVersionsClient;
+import com.azure.resourcemanager.containerregistry.fluent.models.ArchiveVersionInner;
+import com.azure.resourcemanager.containerregistry.implementation.models.ArchiveVersionListResult;
+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 ArchiveVersionsClient.
+ */
+public final class ArchiveVersionsClientImpl implements ArchiveVersionsClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final ArchiveVersionsService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final ContainerRegistryManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ArchiveVersionsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ArchiveVersionsClientImpl(ContainerRegistryManagementClientImpl client) {
+ this.service
+ = RestProxy.create(ArchiveVersionsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ContainerRegistryManagementClientArchiveVersions to be used by the
+ * proxy service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "ContainerRegistryManagementClientArchiveVersions")
+ public interface ArchiveVersionsService {
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions/{archiveVersionName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @PathParam("archiveVersionName") String archiveVersionName, @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions/{archiveVersionName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> create(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @PathParam("archiveVersionName") String archiveVersionName, @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions/{archiveVersionName}")
+ @ExpectedResponses({ 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @PathParam("archiveVersionName") String archiveVersionName, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @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("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+ }
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName 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, packageType, archiveName,
+ archiveVersionName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version along with {@link Response} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName 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, packageType, archiveName, archiveVersionName, accept, context);
+ }
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName) {
+ return getWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName, Context context) {
+ return getWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName,
+ context).block();
+ }
+
+ /**
+ * Gets the properties of the archive version.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive version.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveVersionInner get(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName) {
+ return getWithResponse(resourceGroupName, registryName, packageType, archiveName, archiveVersionName,
+ Context.NONE).getValue();
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline for a container registry along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.create(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, packageType, archiveName,
+ archiveVersionName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline 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 packageType, String archiveName, String archiveVersionName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.create(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, packageType, archiveName, archiveVersionName, accept, context);
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, ArchiveVersionInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName) {
+ Mono>> mono
+ = createWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ArchiveVersionInner.class, ArchiveVersionInner.class, this.client.getContext());
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ArchiveVersionInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono = createWithResponseAsync(resourceGroupName, registryName, packageType,
+ archiveName, archiveVersionName, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ArchiveVersionInner.class, ArchiveVersionInner.class, context);
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ArchiveVersionInner> beginCreate(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName) {
+ return this.beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of an object that represents an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ArchiveVersionInner> beginCreate(String resourceGroupName,
+ String registryName, String packageType, String archiveName, String archiveVersionName, Context context) {
+ return this
+ .beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName) {
+ return beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName, Context context) {
+ return beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveVersionInner create(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName) {
+ return createAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName).block();
+ }
+
+ /**
+ * Creates a archive version for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an object that represents an export pipeline for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveVersionInner create(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName, Context context) {
+ return createAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context)
+ .block();
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName is required and cannot be null."));
+ }
+ return FluxUtil
+ .withContext(context -> service.delete(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, packageType, archiveName,
+ archiveVersionName, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveVersionName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter archiveVersionName is required and cannot be null."));
+ }
+ context = this.client.mergeContext(context);
+ return service.delete(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context);
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName) {
+ Mono>> mono
+ = deleteWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ this.client.getContext());
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono = deleteWithResponseAsync(resourceGroupName, registryName, packageType,
+ archiveName, archiveVersionName, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ context);
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginDelete(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName) {
+ return this.beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName)
+ .getSyncPoller();
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginDelete(String resourceGroupName, String registryName,
+ String packageType, String archiveName, String archiveVersionName, Context context) {
+ return this
+ .beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteAsync(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName) {
+ return beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, String archiveVersionName, Context context) {
+ return beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName) {
+ deleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName).block();
+ }
+
+ /**
+ * Deletes a archive version from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveVersionName The name of the archive version resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String packageType, String archiveName,
+ String archiveVersionName, Context context) {
+ deleteAsync(resourceGroupName, registryName, packageType, archiveName, archiveVersionName, context).block();
+ }
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions 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 packageType, String archiveName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName 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, packageType, archiveName, 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 archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions 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 packageType, String archiveName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName 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, packageType, archiveName, accept, context)
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ res.getValue().value(), res.getValue().nextLink(), null));
+ }
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux listAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName) {
+ return new PagedFlux<>(() -> listSinglePageAsync(resourceGroupName, registryName, packageType, archiveName),
+ nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(resourceGroupName, registryName, packageType, archiveName, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ String archiveName) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, packageType, archiveName));
+ }
+
+ /**
+ * Lists all archive versions for the specified container registry, repository type and archive name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the result of a request to list archive versions for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, packageType, archiveName, context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items.
+ * @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 archive versions for a container registry along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(res -> new PagedResponseBase<>(res.getRequest(),
+ res.getStatusCode(), res.getHeaders(), res.getValue().value(), res.getValue().nextLink(), null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items.
+ * @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 archive versions for a container registry along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.listNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ res.getValue().value(), res.getValue().nextLink(), null));
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchivesClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchivesClientImpl.java
new file mode 100644
index 000000000000..fe2a24c28539
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ArchivesClientImpl.java
@@ -0,0 +1,1168 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.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.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.fluent.ArchivesClient;
+import com.azure.resourcemanager.containerregistry.fluent.models.ArchiveInner;
+import com.azure.resourcemanager.containerregistry.implementation.models.ArchiveListResult;
+import com.azure.resourcemanager.containerregistry.models.ArchiveUpdateParameters;
+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 ArchivesClient.
+ */
+public final class ArchivesClientImpl implements ArchivesClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final ArchivesService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final ContainerRegistryManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ArchivesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ArchivesClientImpl(ContainerRegistryManagementClientImpl client) {
+ this.service = RestProxy.create(ArchivesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ContainerRegistryManagementClientArchives to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "ContainerRegistryManagementClientArchives")
+ public interface ArchivesService {
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> create(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @HeaderParam("Content-Type") String contentType, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") ArchiveInner archiveCreateParameters, Context context);
+
+ @Patch("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> update(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ @HeaderParam("Content-Type") String contentType, @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") ArchiveUpdateParameters archiveUpdateParameters, Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}")
+ @ExpectedResponses({ 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @PathParam("archiveName") String archiveName,
+ Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("packageType") String packageType, @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("endpoint") String endpoint, @HeaderParam("Accept") String accept, Context context);
+ }
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName 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, packageType, archiveName, accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName 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, packageType, archiveName, accept, context);
+ }
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName) {
+ return getWithResponseAsync(resourceGroupName, registryName, packageType, archiveName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getWithResponse(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context) {
+ return getWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, context).block();
+ }
+
+ /**
+ * Gets the properties of the archive.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the properties of the archive.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveInner get(String resourceGroupName, String registryName, String packageType, String archiveName) {
+ return getWithResponse(resourceGroupName, registryName, packageType, archiveName, Context.NONE).getValue();
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveCreateParameters == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter archiveCreateParameters is required and cannot be null."));
+ } else {
+ archiveCreateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.create(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, packageType, archiveName, contentType,
+ accept, archiveCreateParameters, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive 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 packageType, String archiveName, ArchiveInner archiveCreateParameters, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveCreateParameters == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter archiveCreateParameters is required and cannot be null."));
+ } else {
+ archiveCreateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.create(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, packageType, archiveName, contentType, accept, archiveCreateParameters,
+ context);
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, ArchiveInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String packageType, String archiveName, ArchiveInner archiveCreateParameters) {
+ Mono>> mono = createWithResponseAsync(resourceGroupName, registryName, packageType,
+ archiveName, archiveCreateParameters);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ArchiveInner.class, ArchiveInner.class, this.client.getContext());
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ArchiveInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String packageType, String archiveName, ArchiveInner archiveCreateParameters,
+ Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono = createWithResponseAsync(resourceGroupName, registryName, packageType,
+ archiveName, archiveCreateParameters, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ArchiveInner.class, ArchiveInner.class, context);
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ArchiveInner> beginCreate(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters) {
+ return this.beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ArchiveInner> beginCreate(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveInner archiveCreateParameters, Context context) {
+ return this
+ .beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters,
+ context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveInner archiveCreateParameters) {
+ return beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveInner archiveCreateParameters, Context context) {
+ return beginCreateAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters,
+ context).last().flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveInner archiveCreateParameters) {
+ return createAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters).block();
+ }
+
+ /**
+ * Creates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveCreateParameters The parameters for creating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveInner create(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveInner archiveCreateParameters, Context context) {
+ return createAsync(resourceGroupName, registryName, packageType, archiveName, archiveCreateParameters, context)
+ .block();
+ }
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @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 archive for a container registry along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> updateWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveUpdateParameters archiveUpdateParameters) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveUpdateParameters == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter archiveUpdateParameters is required and cannot be null."));
+ } else {
+ archiveUpdateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.update(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, packageType, archiveName, contentType,
+ accept, archiveUpdateParameters, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @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 archive for a container registry along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> updateWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, ArchiveUpdateParameters archiveUpdateParameters, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ if (archiveUpdateParameters == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter archiveUpdateParameters is required and cannot be null."));
+ } else {
+ archiveUpdateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.update(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, packageType, archiveName, contentType, accept, archiveUpdateParameters,
+ context);
+ }
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @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 archive for a container registry on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono updateAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveUpdateParameters archiveUpdateParameters) {
+ return updateWithResponseAsync(resourceGroupName, registryName, packageType, archiveName,
+ archiveUpdateParameters).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @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 archive for a container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response updateWithResponse(String resourceGroupName, String registryName, String packageType,
+ String archiveName, ArchiveUpdateParameters archiveUpdateParameters, Context context) {
+ return updateWithResponseAsync(resourceGroupName, registryName, packageType, archiveName,
+ archiveUpdateParameters, context).block();
+ }
+
+ /**
+ * Updates a archive for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param archiveUpdateParameters The parameters for updating a archive.
+ * @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 archive for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ArchiveInner update(String resourceGroupName, String registryName, String packageType, String archiveName,
+ ArchiveUpdateParameters archiveUpdateParameters) {
+ return updateWithResponse(resourceGroupName, registryName, packageType, archiveName, archiveUpdateParameters,
+ Context.NONE).getValue();
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ return FluxUtil
+ .withContext(context -> service.delete(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, packageType, archiveName, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType is required and cannot be null."));
+ }
+ if (archiveName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter archiveName is required and cannot be null."));
+ }
+ context = this.client.mergeContext(context);
+ return service.delete(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, packageType, archiveName, context);
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName) {
+ Mono>> mono
+ = deleteWithResponseAsync(resourceGroupName, registryName, packageType, archiveName);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ this.client.getContext());
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String packageType, String archiveName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono
+ = deleteWithResponseAsync(resourceGroupName, registryName, packageType, archiveName, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ context);
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginDelete(String resourceGroupName, String registryName,
+ String packageType, String archiveName) {
+ return this.beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName).getSyncPoller();
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginDelete(String resourceGroupName, String registryName,
+ String packageType, String archiveName, Context context) {
+ return this.beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName) {
+ return beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String registryName, String packageType,
+ String archiveName, Context context) {
+ return beginDeleteAsync(resourceGroupName, registryName, packageType, archiveName, context).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String packageType, String archiveName) {
+ deleteAsync(resourceGroupName, registryName, packageType, archiveName).block();
+ }
+
+ /**
+ * Deletes a archive from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @param archiveName The name of the archive resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String packageType, String archiveName,
+ Context context) {
+ deleteAsync(resourceGroupName, registryName, packageType, archiveName, context).block();
+ }
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives 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 packageType) {
+ 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType 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, packageType, 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 archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives 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 packageType, 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 (packageType == null) {
+ return Mono.error(new IllegalArgumentException("Parameter packageType 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, packageType, accept, context)
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ res.getValue().value(), res.getValue().nextLink(), null));
+ }
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux listAsync(String resourceGroupName, String registryName, String packageType) {
+ return new PagedFlux<>(() -> listSinglePageAsync(resourceGroupName, registryName, packageType),
+ nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String registryName, String packageType,
+ Context context) {
+ return new PagedFlux<>(() -> listSinglePageAsync(resourceGroupName, registryName, packageType, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName, String packageType) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, packageType));
+ }
+
+ /**
+ * Lists all archives for the specified container registry and package type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param registryName The name of the container registry.
+ * @param packageType The package type.
+ * @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 archives for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName, String packageType,
+ Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, packageType, context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items.
+ * @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 archives for a container registry along with {@link PagedResponse} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(),
+ res.getHeaders(), res.getValue().value(), res.getValue().nextLink(), null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items.
+ * @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 archives for a container registry along with {@link PagedResponse} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.listNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ res.getValue().value(), res.getValue().nextLink(), null));
+ }
+}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ConnectedRegistriesClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ConnectedRegistriesClientImpl.java
index da81a9709fc6..beab3b44ee70 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ConnectedRegistriesClientImpl.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ConnectedRegistriesClientImpl.java
@@ -131,6 +131,16 @@ Mono>> deactivate(@HostParam("endpoint") String endpoi
@PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
@PathParam("connectedRegistryName") String connectedRegistryName, Context context);
+ @Headers({ "Content-Type: application/json" })
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/connectedRegistries/{connectedRegistryName}/resync")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> resync(@HostParam("endpoint") 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 })
@@ -1451,6 +1461,140 @@ public void deactivate(String resourceGroupName, String registryName, String con
deactivateAsync(resourceGroupName, registryName, connectedRegistryName, context).block();
}
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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)
+ public Mono> resyncWithResponseAsync(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.resync(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, connectedRegistryName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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> resyncWithResponseAsync(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.resync(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, connectedRegistryName, accept, context);
+ }
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono resyncAsync(String resourceGroupName, String registryName,
+ String connectedRegistryName) {
+ return resyncWithResponseAsync(resourceGroupName, registryName, connectedRegistryName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response resyncWithResponse(String resourceGroupName, String registryName,
+ String connectedRegistryName, Context context) {
+ return resyncWithResponseAsync(resourceGroupName, registryName, connectedRegistryName, context).block();
+ }
+
+ /**
+ * Resync the connected registry instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 an object that represents a connected registry for a container registry.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ConnectedRegistryInner resync(String resourceGroupName, String registryName, String connectedRegistryName) {
+ return resyncWithResponse(resourceGroupName, registryName, connectedRegistryName, Context.NONE).getValue();
+ }
+
/**
* Get the next page of items.
*
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ContainerRegistryManagementClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ContainerRegistryManagementClientImpl.java
index f31e7349364e..fbd220cfad32 100644
--- a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ContainerRegistryManagementClientImpl.java
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ContainerRegistryManagementClientImpl.java
@@ -8,11 +8,16 @@
import com.azure.core.http.HttpPipeline;
import com.azure.core.management.AzureEnvironment;
import com.azure.core.util.serializer.SerializerAdapter;
+import com.azure.resourcemanager.containerregistry.fluent.ArchiveVersionsClient;
+import com.azure.resourcemanager.containerregistry.fluent.ArchivesClient;
import com.azure.resourcemanager.containerregistry.fluent.CacheRulesClient;
import com.azure.resourcemanager.containerregistry.fluent.ConnectedRegistriesClient;
import com.azure.resourcemanager.containerregistry.fluent.ContainerRegistryManagementClient;
import com.azure.resourcemanager.containerregistry.fluent.CredentialSetsClient;
+import com.azure.resourcemanager.containerregistry.fluent.ExportPipelinesClient;
+import com.azure.resourcemanager.containerregistry.fluent.ImportPipelinesClient;
import com.azure.resourcemanager.containerregistry.fluent.OperationsClient;
+import com.azure.resourcemanager.containerregistry.fluent.PipelineRunsClient;
import com.azure.resourcemanager.containerregistry.fluent.PrivateEndpointConnectionsClient;
import com.azure.resourcemanager.containerregistry.fluent.RegistriesClient;
import com.azure.resourcemanager.containerregistry.fluent.ReplicationsClient;
@@ -140,6 +145,34 @@ public RegistriesClient getRegistries() {
return this.registries;
}
+ /**
+ * The ArchivesClient object to access its operations.
+ */
+ private final ArchivesClient archives;
+
+ /**
+ * Gets the ArchivesClient object to access its operations.
+ *
+ * @return the ArchivesClient object.
+ */
+ public ArchivesClient getArchives() {
+ return this.archives;
+ }
+
+ /**
+ * The ArchiveVersionsClient object to access its operations.
+ */
+ private final ArchiveVersionsClient archiveVersions;
+
+ /**
+ * Gets the ArchiveVersionsClient object to access its operations.
+ *
+ * @return the ArchiveVersionsClient object.
+ */
+ public ArchiveVersionsClient getArchiveVersions() {
+ return this.archiveVersions;
+ }
+
/**
* The CacheRulesClient object to access its operations.
*/
@@ -238,6 +271,48 @@ public TokensClient getTokens() {
return this.tokens;
}
+ /**
+ * The ExportPipelinesClient object to access its operations.
+ */
+ private final ExportPipelinesClient exportPipelines;
+
+ /**
+ * Gets the ExportPipelinesClient object to access its operations.
+ *
+ * @return the ExportPipelinesClient object.
+ */
+ public ExportPipelinesClient getExportPipelines() {
+ return this.exportPipelines;
+ }
+
+ /**
+ * The ImportPipelinesClient object to access its operations.
+ */
+ private final ImportPipelinesClient importPipelines;
+
+ /**
+ * Gets the ImportPipelinesClient object to access its operations.
+ *
+ * @return the ImportPipelinesClient object.
+ */
+ public ImportPipelinesClient getImportPipelines() {
+ return this.importPipelines;
+ }
+
+ /**
+ * The PipelineRunsClient object to access its operations.
+ */
+ private final PipelineRunsClient pipelineRuns;
+
+ /**
+ * Gets the PipelineRunsClient object to access its operations.
+ *
+ * @return the PipelineRunsClient object.
+ */
+ public PipelineRunsClient getPipelineRuns() {
+ return this.pipelineRuns;
+ }
+
/**
* The WebhooksClient object to access its operations.
*/
@@ -270,9 +345,11 @@ public WebhooksClient getWebhooks() {
this.defaultPollInterval = defaultPollInterval;
this.endpoint = endpoint;
this.subscriptionId = subscriptionId;
- this.apiVersion = "2025-11-01";
+ this.apiVersion = "2026-01-01-preview";
this.operations = new OperationsClientImpl(this);
this.registries = new RegistriesClientImpl(this);
+ this.archives = new ArchivesClientImpl(this);
+ this.archiveVersions = new ArchiveVersionsClientImpl(this);
this.cacheRules = new CacheRulesClientImpl(this);
this.credentialSets = new CredentialSetsClientImpl(this);
this.connectedRegistries = new ConnectedRegistriesClientImpl(this);
@@ -280,6 +357,9 @@ public WebhooksClient getWebhooks() {
this.replications = new ReplicationsClientImpl(this);
this.scopeMaps = new ScopeMapsClientImpl(this);
this.tokens = new TokensClientImpl(this);
+ this.exportPipelines = new ExportPipelinesClientImpl(this);
+ this.importPipelines = new ImportPipelinesClientImpl(this);
+ this.pipelineRuns = new PipelineRunsClientImpl(this);
this.webhooks = new WebhooksClientImpl(this);
}
}
diff --git a/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ExportPipelinesClientImpl.java b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ExportPipelinesClientImpl.java
new file mode 100644
index 000000000000..256b30fe3193
--- /dev/null
+++ b/sdk/containerregistry/azure-resourcemanager-containerregistry/src/main/java/com/azure/resourcemanager/containerregistry/implementation/ExportPipelinesClientImpl.java
@@ -0,0 +1,945 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.containerregistry.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.containerregistry.fluent.ExportPipelinesClient;
+import com.azure.resourcemanager.containerregistry.fluent.models.ExportPipelineInner;
+import com.azure.resourcemanager.containerregistry.implementation.models.ExportPipelineListResult;
+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 ExportPipelinesClient.
+ */
+public final class ExportPipelinesClientImpl implements ExportPipelinesClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final ExportPipelinesService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final ContainerRegistryManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ExportPipelinesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ExportPipelinesClientImpl(ContainerRegistryManagementClientImpl client) {
+ this.service
+ = RestProxy.create(ExportPipelinesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ContainerRegistryManagementClientExportPipelines to be used by the
+ * proxy service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "ContainerRegistryManagementClientExportPipelines")
+ public interface ExportPipelinesService {
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines/{exportPipelineName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("exportPipelineName") String exportPipelineName, @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines/{exportPipelineName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> create(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("exportPipelineName") String exportPipelineName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") ExportPipelineInner exportPipelineCreateParameters, Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines/{exportPipelineName}")
+ @ExpectedResponses({ 200, 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @PathParam("exportPipelineName") String exportPipelineName, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("registryName") String registryName,
+ @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("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+ }
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName) {
+ 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName 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, exportPipelineName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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} on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName, 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName 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, exportPipelineName, accept, context);
+ }
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getAsync(String resourceGroupName, String registryName,
+ String exportPipelineName) {
+ return getWithResponseAsync(resourceGroupName, registryName, exportPipelineName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public Response getWithResponse(String resourceGroupName, String registryName,
+ String exportPipelineName, Context context) {
+ return getWithResponseAsync(resourceGroupName, registryName, exportPipelineName, context).block();
+ }
+
+ /**
+ * Gets the properties of the export pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public ExportPipelineInner get(String resourceGroupName, String registryName, String exportPipelineName) {
+ return getWithResponse(resourceGroupName, registryName, exportPipelineName, Context.NONE).getValue();
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters) {
+ 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName is required and cannot be null."));
+ }
+ if (exportPipelineCreateParameters == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter exportPipelineCreateParameters is required and cannot be null."));
+ } else {
+ exportPipelineCreateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.create(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, exportPipelineName, contentType,
+ accept, exportPipelineCreateParameters, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters, 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName is required and cannot be null."));
+ }
+ if (exportPipelineCreateParameters == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter exportPipelineCreateParameters is required and cannot be null."));
+ } else {
+ exportPipelineCreateParameters.validate();
+ }
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.create(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, exportPipelineName, contentType, accept, exportPipelineCreateParameters,
+ context);
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, ExportPipelineInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters) {
+ Mono>> mono = createWithResponseAsync(resourceGroupName, registryName,
+ exportPipelineName, exportPipelineCreateParameters);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ExportPipelineInner.class, ExportPipelineInner.class, this.client.getContext());
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 an export pipeline for a container
+ * registry.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ExportPipelineInner> beginCreateAsync(String resourceGroupName,
+ String registryName, String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters,
+ Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono = createWithResponseAsync(resourceGroupName, registryName,
+ exportPipelineName, exportPipelineCreateParameters, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ExportPipelineInner.class, ExportPipelineInner.class, context);
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public SyncPoller, ExportPipelineInner> beginCreate(String resourceGroupName,
+ String registryName, String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters) {
+ return this
+ .beginCreateAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public SyncPoller, ExportPipelineInner> beginCreate(String resourceGroupName,
+ String registryName, String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters,
+ Context context) {
+ return this
+ .beginCreateAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters,
+ context)
+ .getSyncPoller();
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono createAsync(String resourceGroupName, String registryName,
+ String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters) {
+ return beginCreateAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters)
+ .last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(String resourceGroupName, String registryName,
+ String exportPipelineName, ExportPipelineInner exportPipelineCreateParameters, Context context) {
+ return beginCreateAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters,
+ context).last().flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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)
+ public ExportPipelineInner create(String resourceGroupName, String registryName, String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters) {
+ return createAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters).block();
+ }
+
+ /**
+ * Creates an export pipeline for a container registry with the specified parameters.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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)
+ public ExportPipelineInner create(String resourceGroupName, String registryName, String exportPipelineName,
+ ExportPipelineInner exportPipelineCreateParameters, Context context) {
+ return createAsync(resourceGroupName, registryName, exportPipelineName, exportPipelineCreateParameters, context)
+ .block();
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public Mono>> deleteWithResponseAsync(String resourceGroupName, String registryName,
+ String exportPipelineName) {
+ 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName is required and cannot be null."));
+ }
+ return FluxUtil
+ .withContext(context -> service.delete(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, registryName, exportPipelineName, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 exportPipelineName, 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 (exportPipelineName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter exportPipelineName is required and cannot be null."));
+ }
+ context = this.client.mergeContext(context);
+ return service.delete(this.client.getEndpoint(), this.client.getApiVersion(), this.client.getSubscriptionId(),
+ resourceGroupName, registryName, exportPipelineName, context);
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String registryName,
+ String exportPipelineName) {
+ Mono>> mono
+ = deleteWithResponseAsync(resourceGroupName, registryName, exportPipelineName);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ this.client.getContext());
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 exportPipelineName, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono
+ = deleteWithResponseAsync(resourceGroupName, registryName, exportPipelineName, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ context);
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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, Void> beginDelete(String resourceGroupName, String registryName,
+ String exportPipelineName) {
+ return this.beginDeleteAsync(resourceGroupName, registryName, exportPipelineName).getSyncPoller();
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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, Void> beginDelete(String resourceGroupName, String registryName,
+ String exportPipelineName, Context context) {
+ return this.beginDeleteAsync(resourceGroupName, registryName, exportPipelineName, context).getSyncPoller();
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono deleteAsync(String resourceGroupName, String registryName, String exportPipelineName) {
+ return beginDeleteAsync(resourceGroupName, registryName, exportPipelineName).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 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 {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String registryName, String exportPipelineName,
+ Context context) {
+ return beginDeleteAsync(resourceGroupName, registryName, exportPipelineName, context).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String exportPipelineName) {
+ deleteAsync(resourceGroupName, registryName, exportPipelineName).block();
+ }
+
+ /**
+ * Deletes an export pipeline from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String registryName, String exportPipelineName, Context context) {
+ deleteAsync(resourceGroupName, registryName, exportPipelineName, context).block();
+ }
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 export pipelines 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) {
+ 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, 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 export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(String resourceGroupName, String registryName,
+ 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, accept, context)
+ .map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(), res.getHeaders(),
+ res.getValue().value(), res.getValue().nextLink(), null));
+ }
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 export pipelines for a container registry as paginated response with
+ * {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux listAsync(String resourceGroupName, String registryName) {
+ return new PagedFlux<>(() -> listSinglePageAsync(resourceGroupName, registryName),
+ nextLink -> listNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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 PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(String resourceGroupName, String registryName, Context context) {
+ return new PagedFlux<>(() -> listSinglePageAsync(resourceGroupName, registryName, context),
+ nextLink -> listNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 export pipelines for a container registry as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(String resourceGroupName, String registryName) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName));
+ }
+
+ /**
+ * Lists all export pipelines for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 ManagementException 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)
+ public PagedIterable list(String resourceGroupName, String registryName, Context context) {
+ return new PagedIterable<>(listAsync(resourceGroupName, registryName, context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items.
+ * @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 export pipelines for a container registry along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listNextSinglePageAsync(String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil.withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+ .