From 8cc4919bf812f6489e3ba2b6f8e26396e4c1bcf8 Mon Sep 17 00:00:00 2001 From: Azure SDK for Python bot Date: Fri, 10 Aug 2018 18:04:23 +0000 Subject: [PATCH] Generated from 86b5463c9e7a593a222031b8c652836efb5f159f add option to import images from public registries Allows users to import images from public registries instead of only Azure Container Registries. Only one registry source can be specified. --- .../v2017_10_01/ImportSource.java | 34 ++- .../v2017_10_01/OperationDefinition.java | 10 + ...perationMetricSpecificationDefinition.java | 173 +++++++++++ ...erationServiceSpecificationDefinition.java | 44 +++ .../v2017_10_01/PolicyStatus.java | 41 +++ .../v2017_10_01/QuarantinePolicy.java | 44 +++ .../v2017_10_01/Registries.java | 22 ++ .../v2017_10_01/RegistryPolicies.java | 30 ++ .../v2017_10_01/TrustPolicy.java | 70 +++++ .../v2017_10_01/TrustPolicyType.java | 38 +++ .../v2017_10_01/WebhookAction.java | 3 + .../OperationDefinitionImpl.java | 11 + .../OperationDefinitionInner.java | 55 ++++ .../implementation/RegistriesImpl.java | 25 ++ .../implementation/RegistriesInner.java | 270 ++++++++++++++++++ .../implementation/RegistryPoliciesImpl.java | 38 +++ .../implementation/RegistryPoliciesInner.java | 71 +++++ .../v2018_02_01_preview/ImportSource.java | 34 ++- .../OperationDefinition.java | 10 + ...perationMetricSpecificationDefinition.java | 173 +++++++++++ ...erationServiceSpecificationDefinition.java | 44 +++ .../v2018_02_01_preview/PolicyStatus.java | 41 +++ .../v2018_02_01_preview/QuarantinePolicy.java | 44 +++ .../v2018_02_01_preview/Registries.java | 22 ++ .../v2018_02_01_preview/RegistryPolicies.java | 30 ++ .../v2018_02_01_preview/TrustPolicy.java | 70 +++++ .../v2018_02_01_preview/TrustPolicyType.java | 38 +++ .../v2018_02_01_preview/WebhookAction.java | 3 + .../OperationDefinitionImpl.java | 11 + .../OperationDefinitionInner.java | 55 ++++ .../implementation/RegistriesImpl.java | 25 ++ .../implementation/RegistriesInner.java | 264 +++++++++++++++++ .../implementation/RegistryPoliciesImpl.java | 38 +++ .../implementation/RegistryPoliciesInner.java | 71 +++++ 34 files changed, 1944 insertions(+), 8 deletions(-) create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationMetricSpecificationDefinition.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationServiceSpecificationDefinition.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/PolicyStatus.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/QuarantinePolicy.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/RegistryPolicies.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicy.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicyType.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesImpl.java create mode 100644 containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesInner.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationMetricSpecificationDefinition.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationServiceSpecificationDefinition.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/PolicyStatus.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/QuarantinePolicy.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/RegistryPolicies.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicy.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicyType.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesImpl.java create mode 100644 containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesInner.java diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/ImportSource.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/ImportSource.java index 969a1d6eac83..81b5c0626dc3 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/ImportSource.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/ImportSource.java @@ -15,11 +15,17 @@ */ public class ImportSource { /** - * The resource identifier of the target Azure Container Registry. + * The resource identifier of the source Azure Container Registry. */ - @JsonProperty(value = "resourceId", required = true) + @JsonProperty(value = "resourceId") private String resourceId; + /** + * The address of the source registry. + */ + @JsonProperty(value = "registryUri") + private String registryUri; + /** * Repository name of the source image. * Specify an image by repository ('hello-world'). This will use the @@ -32,7 +38,7 @@ public class ImportSource { private String sourceImage; /** - * Get the resource identifier of the target Azure Container Registry. + * Get the resource identifier of the source Azure Container Registry. * * @return the resourceId value */ @@ -41,7 +47,7 @@ public String resourceId() { } /** - * Set the resource identifier of the target Azure Container Registry. + * Set the resource identifier of the source Azure Container Registry. * * @param resourceId the resourceId value to set * @return the ImportSource object itself. @@ -51,6 +57,26 @@ public ImportSource withResourceId(String resourceId) { return this; } + /** + * Get the address of the source registry. + * + * @return the registryUri value + */ + public String registryUri() { + return this.registryUri; + } + + /** + * Set the address of the source registry. + * + * @param registryUri the registryUri value to set + * @return the ImportSource object itself. + */ + public ImportSource withRegistryUri(String registryUri) { + this.registryUri = registryUri; + return this; + } + /** * Get repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationDefinition.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationDefinition.java index a533dcd1c98b..bc7edef30f4c 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationDefinition.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationDefinition.java @@ -27,4 +27,14 @@ public interface OperationDefinition extends HasInner, */ String name(); + /** + * @return the origin value. + */ + String origin(); + + /** + * @return the serviceSpecification value. + */ + OperationServiceSpecificationDefinition serviceSpecification(); + } diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationMetricSpecificationDefinition.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationMetricSpecificationDefinition.java new file mode 100644 index 000000000000..0cc50d5504f2 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationMetricSpecificationDefinition.java @@ -0,0 +1,173 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * The definition of Azure Monitoring metric. + */ +public class OperationMetricSpecificationDefinition { + /** + * Metric name. + */ + @JsonProperty(value = "name") + private String name; + + /** + * Metric display name. + */ + @JsonProperty(value = "displayName") + private String displayName; + + /** + * Metric description. + */ + @JsonProperty(value = "displayDescription") + private String displayDescription; + + /** + * Metric unit. + */ + @JsonProperty(value = "unit") + private String unit; + + /** + * Metric aggregation type. + */ + @JsonProperty(value = "aggregationType") + private String aggregationType; + + /** + * Internal metric name. + */ + @JsonProperty(value = "internalMetricName") + private String internalMetricName; + + /** + * Get metric name. + * + * @return the name value + */ + public String name() { + return this.name; + } + + /** + * Set metric name. + * + * @param name the name value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withName(String name) { + this.name = name; + return this; + } + + /** + * Get metric display name. + * + * @return the displayName value + */ + public String displayName() { + return this.displayName; + } + + /** + * Set metric display name. + * + * @param displayName the displayName value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withDisplayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** + * Get metric description. + * + * @return the displayDescription value + */ + public String displayDescription() { + return this.displayDescription; + } + + /** + * Set metric description. + * + * @param displayDescription the displayDescription value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withDisplayDescription(String displayDescription) { + this.displayDescription = displayDescription; + return this; + } + + /** + * Get metric unit. + * + * @return the unit value + */ + public String unit() { + return this.unit; + } + + /** + * Set metric unit. + * + * @param unit the unit value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withUnit(String unit) { + this.unit = unit; + return this; + } + + /** + * Get metric aggregation type. + * + * @return the aggregationType value + */ + public String aggregationType() { + return this.aggregationType; + } + + /** + * Set metric aggregation type. + * + * @param aggregationType the aggregationType value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withAggregationType(String aggregationType) { + this.aggregationType = aggregationType; + return this; + } + + /** + * Get internal metric name. + * + * @return the internalMetricName value + */ + public String internalMetricName() { + return this.internalMetricName; + } + + /** + * Set internal metric name. + * + * @param internalMetricName the internalMetricName value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withInternalMetricName(String internalMetricName) { + this.internalMetricName = internalMetricName; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationServiceSpecificationDefinition.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationServiceSpecificationDefinition.java new file mode 100644 index 000000000000..6ddc9d8cc078 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/OperationServiceSpecificationDefinition.java @@ -0,0 +1,44 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import java.util.List; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * The definition of Azure Monitoring metrics list. + */ +public class OperationServiceSpecificationDefinition { + /** + * A list of Azure Monitoring metrics definition. + */ + @JsonProperty(value = "metricSpecifications") + private List metricSpecifications; + + /** + * Get a list of Azure Monitoring metrics definition. + * + * @return the metricSpecifications value + */ + public List metricSpecifications() { + return this.metricSpecifications; + } + + /** + * Set a list of Azure Monitoring metrics definition. + * + * @param metricSpecifications the metricSpecifications value to set + * @return the OperationServiceSpecificationDefinition object itself. + */ + public OperationServiceSpecificationDefinition withMetricSpecifications(List metricSpecifications) { + this.metricSpecifications = metricSpecifications; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/PolicyStatus.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/PolicyStatus.java new file mode 100644 index 000000000000..25e3360d5d78 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/PolicyStatus.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import java.util.Collection; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.microsoft.rest.ExpandableStringEnum; + +/** + * Defines values for PolicyStatus. + */ +public final class PolicyStatus extends ExpandableStringEnum { + /** Static value enabled for PolicyStatus. */ + public static final PolicyStatus ENABLED = fromString("enabled"); + + /** Static value disabled for PolicyStatus. */ + public static final PolicyStatus DISABLED = fromString("disabled"); + + /** + * Creates or finds a PolicyStatus from its string representation. + * @param name a name to look for + * @return the corresponding PolicyStatus + */ + @JsonCreator + public static PolicyStatus fromString(String name) { + return fromString(name, PolicyStatus.class); + } + + /** + * @return known PolicyStatus values + */ + public static Collection values() { + return values(PolicyStatus.class); + } +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/QuarantinePolicy.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/QuarantinePolicy.java new file mode 100644 index 000000000000..bfe734509466 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/QuarantinePolicy.java @@ -0,0 +1,44 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents quarantine policy for a container registry. + */ +public class QuarantinePolicy { + /** + * The value that indicates whether the policy is enabled or not. Possible + * values include: 'enabled', 'disabled'. + */ + @JsonProperty(value = "status") + private PolicyStatus status; + + /** + * Get the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @return the status value + */ + public PolicyStatus status() { + return this.status; + } + + /** + * Set the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @param status the status value to set + * @return the QuarantinePolicy object itself. + */ + public QuarantinePolicy withStatus(PolicyStatus status) { + this.status = status; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/Registries.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/Registries.java index 0ffafb185ef1..24c04a2ad1e0 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/Registries.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/Registries.java @@ -16,6 +16,7 @@ import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup; import com.microsoft.azure.arm.collection.SupportsListing; import rx.Completable; +import com.microsoft.azure.management.containerregistry.v2017_10_01.implementation.RegistryPoliciesInner; import com.microsoft.azure.management.containerregistry.v2017_10_01.implementation.RegistriesInner; import com.microsoft.azure.arm.model.HasInner; @@ -55,6 +56,17 @@ public interface Registries extends SupportsCreating regenerateCredentialAsync(String resourceGroupName, String registryName, PasswordName name); + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters); + /** * Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length. * @@ -74,4 +86,14 @@ public interface Registries extends SupportsCreating listUsagesAsync(String resourceGroupName, String registryName); + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + Observable listPoliciesAsync(String resourceGroupName, String registryName); + } diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/RegistryPolicies.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/RegistryPolicies.java new file mode 100644 index 000000000000..0069dd3317fc --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/RegistryPolicies.java @@ -0,0 +1,30 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import com.microsoft.azure.arm.model.HasInner; +import com.microsoft.azure.arm.resources.models.HasManager; +import com.microsoft.azure.management.containerregistry.v2017_10_01.implementation.ContainerRegistryManager; +import com.microsoft.azure.management.containerregistry.v2017_10_01.implementation.RegistryPoliciesInner; + +/** + * Type representing RegistryPolicies. + */ +public interface RegistryPolicies extends HasInner, HasManager { + /** + * @return the quarantinePolicy value. + */ + QuarantinePolicy quarantinePolicy(); + + /** + * @return the trustPolicy value. + */ + TrustPolicy trustPolicy(); + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicy.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicy.java new file mode 100644 index 000000000000..8b2baefe414f --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicy.java @@ -0,0 +1,70 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents content trust policy for a container registry. + */ +public class TrustPolicy { + /** + * The type of trust policy. Possible values include: 'Notary'. + */ + @JsonProperty(value = "type") + private TrustPolicyType type; + + /** + * The value that indicates whether the policy is enabled or not. Possible + * values include: 'enabled', 'disabled'. + */ + @JsonProperty(value = "status") + private PolicyStatus status; + + /** + * Get the type of trust policy. Possible values include: 'Notary'. + * + * @return the type value + */ + public TrustPolicyType type() { + return this.type; + } + + /** + * Set the type of trust policy. Possible values include: 'Notary'. + * + * @param type the type value to set + * @return the TrustPolicy object itself. + */ + public TrustPolicy withType(TrustPolicyType type) { + this.type = type; + return this; + } + + /** + * Get the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @return the status value + */ + public PolicyStatus status() { + return this.status; + } + + /** + * Set the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @param status the status value to set + * @return the TrustPolicy object itself. + */ + public TrustPolicy withStatus(PolicyStatus status) { + this.status = status; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicyType.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicyType.java new file mode 100644 index 000000000000..e438fe42ea62 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/TrustPolicyType.java @@ -0,0 +1,38 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01; + +import java.util.Collection; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.microsoft.rest.ExpandableStringEnum; + +/** + * Defines values for TrustPolicyType. + */ +public final class TrustPolicyType extends ExpandableStringEnum { + /** Static value Notary for TrustPolicyType. */ + public static final TrustPolicyType NOTARY = fromString("Notary"); + + /** + * Creates or finds a TrustPolicyType from its string representation. + * @param name a name to look for + * @return the corresponding TrustPolicyType + */ + @JsonCreator + public static TrustPolicyType fromString(String name) { + return fromString(name, TrustPolicyType.class); + } + + /** + * @return known TrustPolicyType values + */ + public static Collection values() { + return values(TrustPolicyType.class); + } +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/WebhookAction.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/WebhookAction.java index e134397cd61d..0bb9bed9ebf7 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/WebhookAction.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/WebhookAction.java @@ -22,6 +22,9 @@ public final class WebhookAction extends ExpandableStringEnum { /** Static value delete for WebhookAction. */ public static final WebhookAction DELETE = fromString("delete"); + /** Static value quarantine for WebhookAction. */ + public static final WebhookAction QUARANTINE = fromString("quarantine"); + /** * Creates or finds a WebhookAction from its string representation. * @param name a name to look for diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionImpl.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionImpl.java index 20a9d3108405..9f860bb9b73c 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionImpl.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionImpl.java @@ -11,6 +11,7 @@ import com.microsoft.azure.management.containerregistry.v2017_10_01.OperationDefinition; import com.microsoft.azure.arm.model.implementation.WrapperImpl; import com.microsoft.azure.management.containerregistry.v2017_10_01.OperationDisplayDefinition; +import com.microsoft.azure.management.containerregistry.v2017_10_01.OperationServiceSpecificationDefinition; class OperationDefinitionImpl extends WrapperImpl implements OperationDefinition { private final ContainerRegistryManager manager; @@ -34,4 +35,14 @@ public String name() { return this.inner().name(); } + @Override + public String origin() { + return this.inner().origin(); + } + + @Override + public OperationServiceSpecificationDefinition serviceSpecification() { + return this.inner().serviceSpecification(); + } + } diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionInner.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionInner.java index ef6a4f5f4438..39c8c2ce62c8 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionInner.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/OperationDefinitionInner.java @@ -9,12 +9,21 @@ package com.microsoft.azure.management.containerregistry.v2017_10_01.implementation; import com.microsoft.azure.management.containerregistry.v2017_10_01.OperationDisplayDefinition; +import com.microsoft.azure.management.containerregistry.v2017_10_01.OperationServiceSpecificationDefinition; import com.fasterxml.jackson.annotation.JsonProperty; +import com.microsoft.rest.serializer.JsonFlatten; /** * The definition of a container registry operation. */ +@JsonFlatten public class OperationDefinitionInner { + /** + * The origin information of the container registry operation. + */ + @JsonProperty(value = "origin") + private String origin; + /** * Operation name: {provider}/{resource}/{operation}. */ @@ -27,6 +36,32 @@ public class OperationDefinitionInner { @JsonProperty(value = "display") private OperationDisplayDefinition display; + /** + * The definition of Azure Monitoring service. + */ + @JsonProperty(value = "properties.serviceSpecification") + private OperationServiceSpecificationDefinition serviceSpecification; + + /** + * Get the origin information of the container registry operation. + * + * @return the origin value + */ + public String origin() { + return this.origin; + } + + /** + * Set the origin information of the container registry operation. + * + * @param origin the origin value to set + * @return the OperationDefinitionInner object itself. + */ + public OperationDefinitionInner withOrigin(String origin) { + this.origin = origin; + return this; + } + /** * Get operation name: {provider}/{resource}/{operation}. * @@ -67,4 +102,24 @@ public OperationDefinitionInner withDisplay(OperationDisplayDefinition display) return this; } + /** + * Get the definition of Azure Monitoring service. + * + * @return the serviceSpecification value + */ + public OperationServiceSpecificationDefinition serviceSpecification() { + return this.serviceSpecification; + } + + /** + * Set the definition of Azure Monitoring service. + * + * @param serviceSpecification the serviceSpecification value to set + * @return the OperationDefinitionInner object itself. + */ + public OperationDefinitionInner withServiceSpecification(OperationServiceSpecificationDefinition serviceSpecification) { + this.serviceSpecification = serviceSpecification; + return this; + } + } diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesImpl.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesImpl.java index f9460e58b11f..78f71e93002b 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesImpl.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesImpl.java @@ -23,6 +23,7 @@ import com.microsoft.azure.PagedList; import com.microsoft.azure.Page; import com.microsoft.azure.management.containerregistry.v2017_10_01.RegistryListCredentialsResult; +import com.microsoft.azure.management.containerregistry.v2017_10_01.RegistryPolicies; import com.microsoft.azure.management.containerregistry.v2017_10_01.RegistryNameStatus; import com.microsoft.azure.management.containerregistry.v2017_10_01.ImportImageParameters; import com.microsoft.azure.management.containerregistry.v2017_10_01.PasswordName; @@ -160,6 +161,18 @@ public RegistryListCredentialsResult call(RegistryListCredentialsResultInner inn }); } + @Override + public Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + RegistriesInner client = this.inner(); + return client.updatePoliciesAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters) + .map(new Func1() { + @Override + public RegistryPolicies call(RegistryPoliciesInner inner) { + return new RegistryPoliciesImpl(inner, manager()); + } + }); + } + @Override public Observable checkNameAvailabilityAsync(String name) { RegistriesInner client = this.inner(); @@ -194,4 +207,16 @@ public RegistryUsageListResult call(RegistryUsageListResultInner inner) { }); } + @Override + public Observable listPoliciesAsync(String resourceGroupName, String registryName) { + RegistriesInner client = this.inner(); + return client.listPoliciesAsync(resourceGroupName, registryName) + .map(new Func1() { + @Override + public RegistryPolicies call(RegistryPoliciesInner inner) { + return new RegistryPoliciesImpl(inner, manager()); + } + }); + } + } diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesInner.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesInner.java index 4c8fc54d04cf..e0e7b7a139f2 100644 --- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesInner.java +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistriesInner.java @@ -131,6 +131,18 @@ interface RegistriesService { @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages") Observable> listUsages(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2017_10_01.Registries listPolicies" }) + @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listPolicies") + Observable> listPolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2017_10_01.Registries updatePolicies" }) + @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies") + Observable> updatePolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Body RegistryPoliciesInner registryPoliciesUpdateParameters, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2017_10_01.Registries beginUpdatePolicies" }) + @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies") + Observable> beginUpdatePolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Body RegistryPoliciesInner registryPoliciesUpdateParameters, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2017_10_01.Registries listByResourceGroupNext" }) @GET Observable> listByResourceGroupNext(@Url String nextUrl, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); @@ -1466,6 +1478,264 @@ private ServiceResponse listUsagesDelegate(Respons .build(response); } + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner listPolicies(String resourceGroupName, String registryName) { + return listPoliciesWithServiceResponseAsync(resourceGroupName, registryName).toBlocking().single().body(); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture listPoliciesAsync(String resourceGroupName, String registryName, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(listPoliciesWithServiceResponseAsync(resourceGroupName, registryName), serviceCallback); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable listPoliciesAsync(String resourceGroupName, String registryName) { + return listPoliciesWithServiceResponseAsync(resourceGroupName, registryName).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable> listPoliciesWithServiceResponseAsync(String resourceGroupName, String registryName) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + if (this.client.apiVersion() == null) { + throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null."); + } + return service.listPolicies(this.client.subscriptionId(), resourceGroupName, registryName, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent()) + .flatMap(new Func1, Observable>>() { + @Override + public Observable> call(Response response) { + try { + ServiceResponse clientResponse = listPoliciesDelegate(response); + return Observable.just(clientResponse); + } catch (Throwable t) { + return Observable.error(t); + } + } + }); + } + + private ServiceResponse listPoliciesDelegate(Response response) throws CloudException, IOException, IllegalArgumentException { + return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter()) + .register(200, new TypeToken() { }.getType()) + .registerError(CloudException.class) + .build(response); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner updatePolicies(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).toBlocking().last().body(); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters), serviceCallback); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + public Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + public Observable> updatePoliciesWithServiceResponseAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + if (this.client.apiVersion() == null) { + throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null."); + } + if (registryPoliciesUpdateParameters == null) { + throw new IllegalArgumentException("Parameter registryPoliciesUpdateParameters is required and cannot be null."); + } + Validator.validate(registryPoliciesUpdateParameters); + Observable> observable = service.updatePolicies(this.client.subscriptionId(), resourceGroupName, registryName, this.client.apiVersion(), registryPoliciesUpdateParameters, this.client.acceptLanguage(), this.client.userAgent()); + return client.getAzureClient().getPostOrDeleteResultAsync(observable, new TypeToken() { }.getType()); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner beginUpdatePolicies(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).toBlocking().single().body(); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture beginUpdatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters), serviceCallback); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable beginUpdatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable> beginUpdatePoliciesWithServiceResponseAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + if (this.client.apiVersion() == null) { + throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null."); + } + if (registryPoliciesUpdateParameters == null) { + throw new IllegalArgumentException("Parameter registryPoliciesUpdateParameters is required and cannot be null."); + } + Validator.validate(registryPoliciesUpdateParameters); + return service.beginUpdatePolicies(this.client.subscriptionId(), resourceGroupName, registryName, this.client.apiVersion(), registryPoliciesUpdateParameters, this.client.acceptLanguage(), this.client.userAgent()) + .flatMap(new Func1, Observable>>() { + @Override + public Observable> call(Response response) { + try { + ServiceResponse clientResponse = beginUpdatePoliciesDelegate(response); + return Observable.just(clientResponse); + } catch (Throwable t) { + return Observable.error(t); + } + } + }); + } + + private ServiceResponse beginUpdatePoliciesDelegate(Response response) throws CloudException, IOException, IllegalArgumentException { + return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter()) + .register(200, new TypeToken() { }.getType()) + .register(202, new TypeToken() { }.getType()) + .registerError(CloudException.class) + .build(response); + } + /** * Lists all the container registries under the specified resource group. * diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesImpl.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesImpl.java new file mode 100644 index 000000000000..1a8a285db1d9 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesImpl.java @@ -0,0 +1,38 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01.implementation; + +import com.microsoft.azure.management.containerregistry.v2017_10_01.RegistryPolicies; +import com.microsoft.azure.arm.model.implementation.WrapperImpl; +import com.microsoft.azure.management.containerregistry.v2017_10_01.QuarantinePolicy; +import com.microsoft.azure.management.containerregistry.v2017_10_01.TrustPolicy; + +class RegistryPoliciesImpl extends WrapperImpl implements RegistryPolicies { + private final ContainerRegistryManager manager; + RegistryPoliciesImpl(RegistryPoliciesInner inner, ContainerRegistryManager manager) { + super(inner); + this.manager = manager; + } + + @Override + public ContainerRegistryManager manager() { + return this.manager; + } + + @Override + public QuarantinePolicy quarantinePolicy() { + return this.inner().quarantinePolicy(); + } + + @Override + public TrustPolicy trustPolicy() { + return this.inner().trustPolicy(); + } + +} diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesInner.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesInner.java new file mode 100644 index 000000000000..c32e44f51365 --- /dev/null +++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/RegistryPoliciesInner.java @@ -0,0 +1,71 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2017_10_01.implementation; + +import com.microsoft.azure.management.containerregistry.v2017_10_01.QuarantinePolicy; +import com.microsoft.azure.management.containerregistry.v2017_10_01.TrustPolicy; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents policies for a container registry. + */ +public class RegistryPoliciesInner { + /** + * An object that represents quarantine policy for a container registry. + */ + @JsonProperty(value = "quarantinePolicy") + private QuarantinePolicy quarantinePolicy; + + /** + * An object that represents content trust policy for a container registry. + */ + @JsonProperty(value = "trustPolicy") + private TrustPolicy trustPolicy; + + /** + * Get an object that represents quarantine policy for a container registry. + * + * @return the quarantinePolicy value + */ + public QuarantinePolicy quarantinePolicy() { + return this.quarantinePolicy; + } + + /** + * Set an object that represents quarantine policy for a container registry. + * + * @param quarantinePolicy the quarantinePolicy value to set + * @return the RegistryPoliciesInner object itself. + */ + public RegistryPoliciesInner withQuarantinePolicy(QuarantinePolicy quarantinePolicy) { + this.quarantinePolicy = quarantinePolicy; + return this; + } + + /** + * Get an object that represents content trust policy for a container registry. + * + * @return the trustPolicy value + */ + public TrustPolicy trustPolicy() { + return this.trustPolicy; + } + + /** + * Set an object that represents content trust policy for a container registry. + * + * @param trustPolicy the trustPolicy value to set + * @return the RegistryPoliciesInner object itself. + */ + public RegistryPoliciesInner withTrustPolicy(TrustPolicy trustPolicy) { + this.trustPolicy = trustPolicy; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/ImportSource.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/ImportSource.java index 81a6c6c96101..5376d6b36bc6 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/ImportSource.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/ImportSource.java @@ -15,11 +15,17 @@ */ public class ImportSource { /** - * The resource identifier of the target Azure Container Registry. + * The resource identifier of the source Azure Container Registry. */ - @JsonProperty(value = "resourceId", required = true) + @JsonProperty(value = "resourceId") private String resourceId; + /** + * The address of the source registry. + */ + @JsonProperty(value = "registryUri") + private String registryUri; + /** * Repository name of the source image. * Specify an image by repository ('hello-world'). This will use the @@ -32,7 +38,7 @@ public class ImportSource { private String sourceImage; /** - * Get the resource identifier of the target Azure Container Registry. + * Get the resource identifier of the source Azure Container Registry. * * @return the resourceId value */ @@ -41,7 +47,7 @@ public String resourceId() { } /** - * Set the resource identifier of the target Azure Container Registry. + * Set the resource identifier of the source Azure Container Registry. * * @param resourceId the resourceId value to set * @return the ImportSource object itself. @@ -51,6 +57,26 @@ public ImportSource withResourceId(String resourceId) { return this; } + /** + * Get the address of the source registry. + * + * @return the registryUri value + */ + public String registryUri() { + return this.registryUri; + } + + /** + * Set the address of the source registry. + * + * @param registryUri the registryUri value to set + * @return the ImportSource object itself. + */ + public ImportSource withRegistryUri(String registryUri) { + this.registryUri = registryUri; + return this; + } + /** * Get repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationDefinition.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationDefinition.java index 924e98dc49a1..6757d3604a21 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationDefinition.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationDefinition.java @@ -27,4 +27,14 @@ public interface OperationDefinition extends HasInner, */ String name(); + /** + * @return the origin value. + */ + String origin(); + + /** + * @return the serviceSpecification value. + */ + OperationServiceSpecificationDefinition serviceSpecification(); + } diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationMetricSpecificationDefinition.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationMetricSpecificationDefinition.java new file mode 100644 index 000000000000..1eb322942b67 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationMetricSpecificationDefinition.java @@ -0,0 +1,173 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * The definition of Azure Monitoring metric. + */ +public class OperationMetricSpecificationDefinition { + /** + * Metric name. + */ + @JsonProperty(value = "name") + private String name; + + /** + * Metric display name. + */ + @JsonProperty(value = "displayName") + private String displayName; + + /** + * Metric description. + */ + @JsonProperty(value = "displayDescription") + private String displayDescription; + + /** + * Metric unit. + */ + @JsonProperty(value = "unit") + private String unit; + + /** + * Metric aggregation type. + */ + @JsonProperty(value = "aggregationType") + private String aggregationType; + + /** + * Internal metric name. + */ + @JsonProperty(value = "internalMetricName") + private String internalMetricName; + + /** + * Get metric name. + * + * @return the name value + */ + public String name() { + return this.name; + } + + /** + * Set metric name. + * + * @param name the name value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withName(String name) { + this.name = name; + return this; + } + + /** + * Get metric display name. + * + * @return the displayName value + */ + public String displayName() { + return this.displayName; + } + + /** + * Set metric display name. + * + * @param displayName the displayName value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withDisplayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** + * Get metric description. + * + * @return the displayDescription value + */ + public String displayDescription() { + return this.displayDescription; + } + + /** + * Set metric description. + * + * @param displayDescription the displayDescription value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withDisplayDescription(String displayDescription) { + this.displayDescription = displayDescription; + return this; + } + + /** + * Get metric unit. + * + * @return the unit value + */ + public String unit() { + return this.unit; + } + + /** + * Set metric unit. + * + * @param unit the unit value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withUnit(String unit) { + this.unit = unit; + return this; + } + + /** + * Get metric aggregation type. + * + * @return the aggregationType value + */ + public String aggregationType() { + return this.aggregationType; + } + + /** + * Set metric aggregation type. + * + * @param aggregationType the aggregationType value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withAggregationType(String aggregationType) { + this.aggregationType = aggregationType; + return this; + } + + /** + * Get internal metric name. + * + * @return the internalMetricName value + */ + public String internalMetricName() { + return this.internalMetricName; + } + + /** + * Set internal metric name. + * + * @param internalMetricName the internalMetricName value to set + * @return the OperationMetricSpecificationDefinition object itself. + */ + public OperationMetricSpecificationDefinition withInternalMetricName(String internalMetricName) { + this.internalMetricName = internalMetricName; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationServiceSpecificationDefinition.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationServiceSpecificationDefinition.java new file mode 100644 index 000000000000..6186ca18d284 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/OperationServiceSpecificationDefinition.java @@ -0,0 +1,44 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import java.util.List; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * The definition of Azure Monitoring metrics list. + */ +public class OperationServiceSpecificationDefinition { + /** + * A list of Azure Monitoring metrics definition. + */ + @JsonProperty(value = "metricSpecifications") + private List metricSpecifications; + + /** + * Get a list of Azure Monitoring metrics definition. + * + * @return the metricSpecifications value + */ + public List metricSpecifications() { + return this.metricSpecifications; + } + + /** + * Set a list of Azure Monitoring metrics definition. + * + * @param metricSpecifications the metricSpecifications value to set + * @return the OperationServiceSpecificationDefinition object itself. + */ + public OperationServiceSpecificationDefinition withMetricSpecifications(List metricSpecifications) { + this.metricSpecifications = metricSpecifications; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/PolicyStatus.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/PolicyStatus.java new file mode 100644 index 000000000000..493292134bc6 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/PolicyStatus.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import java.util.Collection; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.microsoft.rest.ExpandableStringEnum; + +/** + * Defines values for PolicyStatus. + */ +public final class PolicyStatus extends ExpandableStringEnum { + /** Static value enabled for PolicyStatus. */ + public static final PolicyStatus ENABLED = fromString("enabled"); + + /** Static value disabled for PolicyStatus. */ + public static final PolicyStatus DISABLED = fromString("disabled"); + + /** + * Creates or finds a PolicyStatus from its string representation. + * @param name a name to look for + * @return the corresponding PolicyStatus + */ + @JsonCreator + public static PolicyStatus fromString(String name) { + return fromString(name, PolicyStatus.class); + } + + /** + * @return known PolicyStatus values + */ + public static Collection values() { + return values(PolicyStatus.class); + } +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/QuarantinePolicy.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/QuarantinePolicy.java new file mode 100644 index 000000000000..18d1adab37a3 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/QuarantinePolicy.java @@ -0,0 +1,44 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents quarantine policy for a container registry. + */ +public class QuarantinePolicy { + /** + * The value that indicates whether the policy is enabled or not. Possible + * values include: 'enabled', 'disabled'. + */ + @JsonProperty(value = "status") + private PolicyStatus status; + + /** + * Get the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @return the status value + */ + public PolicyStatus status() { + return this.status; + } + + /** + * Set the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @param status the status value to set + * @return the QuarantinePolicy object itself. + */ + public QuarantinePolicy withStatus(PolicyStatus status) { + this.status = status; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/Registries.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/Registries.java index 7c080aaf67aa..2120b58934eb 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/Registries.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/Registries.java @@ -16,6 +16,7 @@ import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup; import com.microsoft.azure.arm.collection.SupportsListing; import rx.Completable; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation.RegistryPoliciesInner; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation.RegistriesInner; import com.microsoft.azure.arm.model.HasInner; @@ -55,6 +56,17 @@ public interface Registries extends SupportsCreating regenerateCredentialAsync(String resourceGroupName, String registryName, PasswordName name); + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters); + /** * Creates a new build based on the request parameters and add it to the build queue. * @@ -95,4 +107,14 @@ public interface Registries extends SupportsCreating listUsagesAsync(String resourceGroupName, String registryName); + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + Observable listPoliciesAsync(String resourceGroupName, String registryName); + } diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/RegistryPolicies.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/RegistryPolicies.java new file mode 100644 index 000000000000..b54c017e8e34 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/RegistryPolicies.java @@ -0,0 +1,30 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import com.microsoft.azure.arm.model.HasInner; +import com.microsoft.azure.arm.resources.models.HasManager; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation.ContainerRegistryManager; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation.RegistryPoliciesInner; + +/** + * Type representing RegistryPolicies. + */ +public interface RegistryPolicies extends HasInner, HasManager { + /** + * @return the quarantinePolicy value. + */ + QuarantinePolicy quarantinePolicy(); + + /** + * @return the trustPolicy value. + */ + TrustPolicy trustPolicy(); + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicy.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicy.java new file mode 100644 index 000000000000..2bf1003b5a65 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicy.java @@ -0,0 +1,70 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents content trust policy for a container registry. + */ +public class TrustPolicy { + /** + * The type of trust policy. Possible values include: 'Notary'. + */ + @JsonProperty(value = "type") + private TrustPolicyType type; + + /** + * The value that indicates whether the policy is enabled or not. Possible + * values include: 'enabled', 'disabled'. + */ + @JsonProperty(value = "status") + private PolicyStatus status; + + /** + * Get the type of trust policy. Possible values include: 'Notary'. + * + * @return the type value + */ + public TrustPolicyType type() { + return this.type; + } + + /** + * Set the type of trust policy. Possible values include: 'Notary'. + * + * @param type the type value to set + * @return the TrustPolicy object itself. + */ + public TrustPolicy withType(TrustPolicyType type) { + this.type = type; + return this; + } + + /** + * Get the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @return the status value + */ + public PolicyStatus status() { + return this.status; + } + + /** + * Set the value that indicates whether the policy is enabled or not. Possible values include: 'enabled', 'disabled'. + * + * @param status the status value to set + * @return the TrustPolicy object itself. + */ + public TrustPolicy withStatus(PolicyStatus status) { + this.status = status; + return this; + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicyType.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicyType.java new file mode 100644 index 000000000000..09d656cdad3e --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/TrustPolicyType.java @@ -0,0 +1,38 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview; + +import java.util.Collection; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.microsoft.rest.ExpandableStringEnum; + +/** + * Defines values for TrustPolicyType. + */ +public final class TrustPolicyType extends ExpandableStringEnum { + /** Static value Notary for TrustPolicyType. */ + public static final TrustPolicyType NOTARY = fromString("Notary"); + + /** + * Creates or finds a TrustPolicyType from its string representation. + * @param name a name to look for + * @return the corresponding TrustPolicyType + */ + @JsonCreator + public static TrustPolicyType fromString(String name) { + return fromString(name, TrustPolicyType.class); + } + + /** + * @return known TrustPolicyType values + */ + public static Collection values() { + return values(TrustPolicyType.class); + } +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/WebhookAction.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/WebhookAction.java index 8558cc33ee20..6674ddb71206 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/WebhookAction.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/WebhookAction.java @@ -22,6 +22,9 @@ public final class WebhookAction extends ExpandableStringEnum { /** Static value delete for WebhookAction. */ public static final WebhookAction DELETE = fromString("delete"); + /** Static value quarantine for WebhookAction. */ + public static final WebhookAction QUARANTINE = fromString("quarantine"); + /** * Creates or finds a WebhookAction from its string representation. * @param name a name to look for diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionImpl.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionImpl.java index f4f6cb9479a5..50762899d7a8 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionImpl.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionImpl.java @@ -11,6 +11,7 @@ import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.OperationDefinition; import com.microsoft.azure.arm.model.implementation.WrapperImpl; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.OperationDisplayDefinition; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.OperationServiceSpecificationDefinition; class OperationDefinitionImpl extends WrapperImpl implements OperationDefinition { private final ContainerRegistryManager manager; @@ -34,4 +35,14 @@ public String name() { return this.inner().name(); } + @Override + public String origin() { + return this.inner().origin(); + } + + @Override + public OperationServiceSpecificationDefinition serviceSpecification() { + return this.inner().serviceSpecification(); + } + } diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionInner.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionInner.java index ce4cb9ee0c55..8e0e4ab76731 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionInner.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/OperationDefinitionInner.java @@ -9,12 +9,21 @@ package com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.OperationDisplayDefinition; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.OperationServiceSpecificationDefinition; import com.fasterxml.jackson.annotation.JsonProperty; +import com.microsoft.rest.serializer.JsonFlatten; /** * The definition of a container registry operation. */ +@JsonFlatten public class OperationDefinitionInner { + /** + * The origin information of the container registry operation. + */ + @JsonProperty(value = "origin") + private String origin; + /** * Operation name: {provider}/{resource}/{operation}. */ @@ -27,6 +36,32 @@ public class OperationDefinitionInner { @JsonProperty(value = "display") private OperationDisplayDefinition display; + /** + * The definition of Azure Monitoring service. + */ + @JsonProperty(value = "properties.serviceSpecification") + private OperationServiceSpecificationDefinition serviceSpecification; + + /** + * Get the origin information of the container registry operation. + * + * @return the origin value + */ + public String origin() { + return this.origin; + } + + /** + * Set the origin information of the container registry operation. + * + * @param origin the origin value to set + * @return the OperationDefinitionInner object itself. + */ + public OperationDefinitionInner withOrigin(String origin) { + this.origin = origin; + return this; + } + /** * Get operation name: {provider}/{resource}/{operation}. * @@ -67,4 +102,24 @@ public OperationDefinitionInner withDisplay(OperationDisplayDefinition display) return this; } + /** + * Get the definition of Azure Monitoring service. + * + * @return the serviceSpecification value + */ + public OperationServiceSpecificationDefinition serviceSpecification() { + return this.serviceSpecification; + } + + /** + * Set the definition of Azure Monitoring service. + * + * @param serviceSpecification the serviceSpecification value to set + * @return the OperationDefinitionInner object itself. + */ + public OperationDefinitionInner withServiceSpecification(OperationServiceSpecificationDefinition serviceSpecification) { + this.serviceSpecification = serviceSpecification; + return this; + } + } diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesImpl.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesImpl.java index 01e6d0fda265..36948f18908f 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesImpl.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesImpl.java @@ -23,6 +23,7 @@ import com.microsoft.azure.PagedList; import com.microsoft.azure.Page; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.RegistryListCredentialsResult; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.RegistryPolicies; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.Build; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.SourceUploadDefinition; import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.RegistryNameStatus; @@ -163,6 +164,18 @@ public RegistryListCredentialsResult call(RegistryListCredentialsResultInner inn }); } + @Override + public Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + RegistriesInner client = this.inner(); + return client.updatePoliciesAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters) + .map(new Func1() { + @Override + public RegistryPolicies call(RegistryPoliciesInner inner) { + return new RegistryPoliciesImpl(inner, manager()); + } + }); + } + @Override public Observable queueBuildAsync(String resourceGroupName, String registryName, QueueBuildRequest buildRequest) { RegistriesInner client = this.inner(); @@ -221,4 +234,16 @@ public RegistryUsageListResult call(RegistryUsageListResultInner inner) { }); } + @Override + public Observable listPoliciesAsync(String resourceGroupName, String registryName) { + RegistriesInner client = this.inner(); + return client.listPoliciesAsync(resourceGroupName, registryName) + .map(new Func1() { + @Override + public RegistryPolicies call(RegistryPoliciesInner inner) { + return new RegistryPoliciesImpl(inner, manager()); + } + }); + } + } diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesInner.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesInner.java index bb416086d639..0063ed787eea 100644 --- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesInner.java +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistriesInner.java @@ -132,6 +132,18 @@ interface RegistriesService { @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages") Observable> listUsages(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2018_02_01_preview.Registries listPolicies" }) + @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listPolicies") + Observable> listPolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2018_02_01_preview.Registries updatePolicies" }) + @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies") + Observable> updatePolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Body RegistryPoliciesInner registryPoliciesUpdateParameters, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2018_02_01_preview.Registries beginUpdatePolicies" }) + @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies") + Observable> beginUpdatePolicies(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Body RegistryPoliciesInner registryPoliciesUpdateParameters, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.containerregistry.v2018_02_01_preview.Registries queueBuild" }) @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/queueBuild") Observable> queueBuild(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("registryName") String registryName, @Query("api-version") String apiVersion, @Body QueueBuildRequest buildRequest, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); @@ -1449,6 +1461,258 @@ private ServiceResponse listUsagesDelegate(Respons .build(response); } + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner listPolicies(String resourceGroupName, String registryName) { + return listPoliciesWithServiceResponseAsync(resourceGroupName, registryName).toBlocking().single().body(); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture listPoliciesAsync(String resourceGroupName, String registryName, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(listPoliciesWithServiceResponseAsync(resourceGroupName, registryName), serviceCallback); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable listPoliciesAsync(String resourceGroupName, String registryName) { + return listPoliciesWithServiceResponseAsync(resourceGroupName, registryName).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Lists the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable> listPoliciesWithServiceResponseAsync(String resourceGroupName, String registryName) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + final String apiVersion = "2017-10-01"; + return service.listPolicies(this.client.subscriptionId(), resourceGroupName, registryName, apiVersion, this.client.acceptLanguage(), this.client.userAgent()) + .flatMap(new Func1, Observable>>() { + @Override + public Observable> call(Response response) { + try { + ServiceResponse clientResponse = listPoliciesDelegate(response); + return Observable.just(clientResponse); + } catch (Throwable t) { + return Observable.error(t); + } + } + }); + } + + private ServiceResponse listPoliciesDelegate(Response response) throws CloudException, IOException, IllegalArgumentException { + return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter()) + .register(200, new TypeToken() { }.getType()) + .registerError(CloudException.class) + .build(response); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner updatePolicies(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).toBlocking().last().body(); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters), serviceCallback); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + public Observable updatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return updatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + public Observable> updatePoliciesWithServiceResponseAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + if (registryPoliciesUpdateParameters == null) { + throw new IllegalArgumentException("Parameter registryPoliciesUpdateParameters is required and cannot be null."); + } + Validator.validate(registryPoliciesUpdateParameters); + final String apiVersion = "2017-10-01"; + Observable> observable = service.updatePolicies(this.client.subscriptionId(), resourceGroupName, registryName, apiVersion, registryPoliciesUpdateParameters, this.client.acceptLanguage(), this.client.userAgent()); + return client.getAzureClient().getPostOrDeleteResultAsync(observable, new TypeToken() { }.getType()); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the RegistryPoliciesInner object if successful. + */ + public RegistryPoliciesInner beginUpdatePolicies(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).toBlocking().single().body(); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture beginUpdatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters), serviceCallback); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable beginUpdatePoliciesAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + return beginUpdatePoliciesWithServiceResponseAsync(resourceGroupName, registryName, registryPoliciesUpdateParameters).map(new Func1, RegistryPoliciesInner>() { + @Override + public RegistryPoliciesInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Updates the policies for the specified container registry. + * + * @param resourceGroupName The name of the resource group to which the container registry belongs. + * @param registryName The name of the container registry. + * @param registryPoliciesUpdateParameters The parameters for updating policies of a container registry. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the RegistryPoliciesInner object + */ + public Observable> beginUpdatePoliciesWithServiceResponseAsync(String resourceGroupName, String registryName, RegistryPoliciesInner registryPoliciesUpdateParameters) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (registryName == null) { + throw new IllegalArgumentException("Parameter registryName is required and cannot be null."); + } + if (registryPoliciesUpdateParameters == null) { + throw new IllegalArgumentException("Parameter registryPoliciesUpdateParameters is required and cannot be null."); + } + Validator.validate(registryPoliciesUpdateParameters); + final String apiVersion = "2017-10-01"; + return service.beginUpdatePolicies(this.client.subscriptionId(), resourceGroupName, registryName, apiVersion, registryPoliciesUpdateParameters, this.client.acceptLanguage(), this.client.userAgent()) + .flatMap(new Func1, Observable>>() { + @Override + public Observable> call(Response response) { + try { + ServiceResponse clientResponse = beginUpdatePoliciesDelegate(response); + return Observable.just(clientResponse); + } catch (Throwable t) { + return Observable.error(t); + } + } + }); + } + + private ServiceResponse beginUpdatePoliciesDelegate(Response response) throws CloudException, IOException, IllegalArgumentException { + return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter()) + .register(200, new TypeToken() { }.getType()) + .register(202, new TypeToken() { }.getType()) + .registerError(CloudException.class) + .build(response); + } + /** * Creates a new build based on the request parameters and add it to the build queue. * diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesImpl.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesImpl.java new file mode 100644 index 000000000000..89c300c92ac5 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesImpl.java @@ -0,0 +1,38 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation; + +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.RegistryPolicies; +import com.microsoft.azure.arm.model.implementation.WrapperImpl; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.QuarantinePolicy; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.TrustPolicy; + +class RegistryPoliciesImpl extends WrapperImpl implements RegistryPolicies { + private final ContainerRegistryManager manager; + RegistryPoliciesImpl(RegistryPoliciesInner inner, ContainerRegistryManager manager) { + super(inner); + this.manager = manager; + } + + @Override + public ContainerRegistryManager manager() { + return this.manager; + } + + @Override + public QuarantinePolicy quarantinePolicy() { + return this.inner().quarantinePolicy(); + } + + @Override + public TrustPolicy trustPolicy() { + return this.inner().trustPolicy(); + } + +} diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesInner.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesInner.java new file mode 100644 index 000000000000..7ac5be3d5fb3 --- /dev/null +++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/RegistryPoliciesInner.java @@ -0,0 +1,71 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.containerregistry.v2018_02_01_preview.implementation; + +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.QuarantinePolicy; +import com.microsoft.azure.management.containerregistry.v2018_02_01_preview.TrustPolicy; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * An object that represents policies for a container registry. + */ +public class RegistryPoliciesInner { + /** + * An object that represents quarantine policy for a container registry. + */ + @JsonProperty(value = "quarantinePolicy") + private QuarantinePolicy quarantinePolicy; + + /** + * An object that represents content trust policy for a container registry. + */ + @JsonProperty(value = "trustPolicy") + private TrustPolicy trustPolicy; + + /** + * Get an object that represents quarantine policy for a container registry. + * + * @return the quarantinePolicy value + */ + public QuarantinePolicy quarantinePolicy() { + return this.quarantinePolicy; + } + + /** + * Set an object that represents quarantine policy for a container registry. + * + * @param quarantinePolicy the quarantinePolicy value to set + * @return the RegistryPoliciesInner object itself. + */ + public RegistryPoliciesInner withQuarantinePolicy(QuarantinePolicy quarantinePolicy) { + this.quarantinePolicy = quarantinePolicy; + return this; + } + + /** + * Get an object that represents content trust policy for a container registry. + * + * @return the trustPolicy value + */ + public TrustPolicy trustPolicy() { + return this.trustPolicy; + } + + /** + * Set an object that represents content trust policy for a container registry. + * + * @param trustPolicy the trustPolicy value to set + * @return the RegistryPoliciesInner object itself. + */ + public RegistryPoliciesInner withTrustPolicy(TrustPolicy trustPolicy) { + this.trustPolicy = trustPolicy; + return this; + } + +}