diff --git a/api-specs.json b/api-specs.json
index 66589734bd99..c1ba34bf4835 100644
--- a/api-specs.json
+++ b/api-specs.json
@@ -40,7 +40,7 @@
},
"containerregistry/resource-manager": {
"source": "specification/containerregistry/resource-manager/readme.md",
- "args": "--multiapi --fluent"
+ "args": "--multiapi=true --fluent=true"
},
"dns/resource-manager": {
"source": "specification/dns/resource-manager/readme.md",
diff --git a/containerregistry/resource-manager/v2016_06_27_preview/pom.xml b/containerregistry/resource-manager/v2016_06_27_preview/pom.xml
index 03f8b58e4d2a..ca2b7a844b3d 100644
--- a/containerregistry/resource-manager/v2016_06_27_preview/pom.xml
+++ b/containerregistry/resource-manager/v2016_06_27_preview/pom.xml
@@ -1,133 +1,133 @@
-
-
- 4.0.0
- com.microsoft.azure.containerregistry.v2016_06_27_preview
-
- com.microsoft.azure
- azure-arm-parent
- 0.0.3-beta
- ../../../pom.xml
-
- azure-mgmt-containerregistry
- 1.0.0-beta
- jar
- Microsoft Azure SDK for ContainerRegistry Management
- This package contains Microsoft ContainerRegistry Management SDK.
- https://github.com/Azure/azure-libraries-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
-
- scm:git:https://github.com/Azure/azure-libraries-for-java
- scm:git:git@github.com:Azure/azure-libraries-for-java.git
- HEAD
-
-
- UTF-8
-
-
-
-
- microsoft
- Microsoft
-
-
-
-
- com.microsoft.azure
- azure-client-runtime
-
-
- com.microsoft.azure
- azure-arm-client-runtime
-
-
- junit
- junit
- test
-
-
- com.microsoft.azure
- azure-client-authentication
- test
-
-
- com.microsoft.azure
- azure-mgmt-resources
- test
-
-
- com.microsoft.azure
- azure-arm-client-runtime
- test-jar
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
- true
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.7
- 1.7
-
-
- com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
-
-
- true
- true
-
- true
- true
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.8
-
- *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
-
-
- /**
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for
- * license information.
- */
- ]]>
-
-
-
-
-
-
+
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2016_06_27_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
diff --git a/containerregistry/resource-manager/v2016_06_27_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2016_06_27_preview/implementation/ContainerRegistryManagementClientImpl.java b/containerregistry/resource-manager/v2016_06_27_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2016_06_27_preview/implementation/ContainerRegistryManagementClientImpl.java
index 4016e3d664b8..d8c82ed32d7d 100644
--- a/containerregistry/resource-manager/v2016_06_27_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2016_06_27_preview/implementation/ContainerRegistryManagementClientImpl.java
+++ b/containerregistry/resource-manager/v2016_06_27_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2016_06_27_preview/implementation/ContainerRegistryManagementClientImpl.java
@@ -191,6 +191,6 @@ protected void initialize() {
*/
@Override
public String userAgent() {
- return String.format("%s (%s, %s)", super.userAgent(), "ContainerRegistryManagementClient", "2016-06-27-preview");
+ return String.format("%s (%s, %s, auto-generated)", super.userAgent(), "ContainerRegistryManagementClient", "2016-06-27-preview");
}
}
diff --git a/containerregistry/resource-manager/v2017_03_01/pom.xml b/containerregistry/resource-manager/v2017_03_01/pom.xml
index 76420fe1fdbb..fc6968658af9 100644
--- a/containerregistry/resource-manager/v2017_03_01/pom.xml
+++ b/containerregistry/resource-manager/v2017_03_01/pom.xml
@@ -1,133 +1,133 @@
-
-
- 4.0.0
- com.microsoft.azure.containerregistry.v2017_03_01
-
- com.microsoft.azure
- azure-arm-parent
- 0.0.3-beta
- ../../../pom.xml
-
- azure-mgmt-containerregistry
- 1.0.0-beta
- jar
- Microsoft Azure SDK for ContainerRegistry Management
- This package contains Microsoft ContainerRegistry Management SDK.
- https://github.com/Azure/azure-libraries-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
-
- scm:git:https://github.com/Azure/azure-libraries-for-java
- scm:git:git@github.com:Azure/azure-libraries-for-java.git
- HEAD
-
-
- UTF-8
-
-
-
-
- microsoft
- Microsoft
-
-
-
-
- com.microsoft.azure
- azure-client-runtime
-
-
- com.microsoft.azure
- azure-arm-client-runtime
-
-
- junit
- junit
- test
-
-
- com.microsoft.azure
- azure-client-authentication
- test
-
-
- com.microsoft.azure
- azure-mgmt-resources
- test
-
-
- com.microsoft.azure
- azure-arm-client-runtime
- test-jar
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
- true
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.7
- 1.7
-
-
- com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
-
-
- true
- true
-
- true
- true
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.8
-
- *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
-
-
- /**
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for
- * license information.
- */
- ]]>
-
-
-
-
-
-
+
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2017_03_01
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
diff --git a/containerregistry/resource-manager/v2017_03_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_03_01/implementation/ContainerRegistryManagementClientImpl.java b/containerregistry/resource-manager/v2017_03_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_03_01/implementation/ContainerRegistryManagementClientImpl.java
index 37f722b9b3c3..cf4ac3ac1449 100644
--- a/containerregistry/resource-manager/v2017_03_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_03_01/implementation/ContainerRegistryManagementClientImpl.java
+++ b/containerregistry/resource-manager/v2017_03_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_03_01/implementation/ContainerRegistryManagementClientImpl.java
@@ -205,6 +205,6 @@ protected void initialize() {
*/
@Override
public String userAgent() {
- return String.format("%s (%s, %s)", super.userAgent(), "ContainerRegistryManagementClient", "2017-03-01");
+ return String.format("%s (%s, %s, auto-generated)", super.userAgent(), "ContainerRegistryManagementClient", "2017-03-01");
}
}
diff --git a/containerregistry/resource-manager/v2017_06_01_preview/pom.xml b/containerregistry/resource-manager/v2017_06_01_preview/pom.xml
index c27a121444b3..eb2bdb7a95a7 100644
--- a/containerregistry/resource-manager/v2017_06_01_preview/pom.xml
+++ b/containerregistry/resource-manager/v2017_06_01_preview/pom.xml
@@ -1,133 +1,133 @@
-
-
- 4.0.0
- com.microsoft.azure.containerregistry.v2017_06_01_preview
-
- com.microsoft.azure
- azure-arm-parent
- 0.0.3-beta
- ../../../pom.xml
-
- azure-mgmt-containerregistry
- 1.0.0-beta
- jar
- Microsoft Azure SDK for ContainerRegistry Management
- This package contains Microsoft ContainerRegistry Management SDK.
- https://github.com/Azure/azure-libraries-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
-
- scm:git:https://github.com/Azure/azure-libraries-for-java
- scm:git:git@github.com:Azure/azure-libraries-for-java.git
- HEAD
-
-
- UTF-8
-
-
-
-
- microsoft
- Microsoft
-
-
-
-
- com.microsoft.azure
- azure-client-runtime
-
-
- com.microsoft.azure
- azure-arm-client-runtime
-
-
- junit
- junit
- test
-
-
- com.microsoft.azure
- azure-client-authentication
- test
-
-
- com.microsoft.azure
- azure-mgmt-resources
- test
-
-
- com.microsoft.azure
- azure-arm-client-runtime
- test-jar
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
- true
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.7
- 1.7
-
-
- com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
-
-
- true
- true
-
- true
- true
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.8
-
- *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
-
-
- /**
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for
- * license information.
- */
- ]]>
-
-
-
-
-
-
+
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2017_06_01_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
diff --git a/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ContainerRegistryManagementClientImpl.java b/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ContainerRegistryManagementClientImpl.java
index 43b0b0e1f12a..445e9b382432 100644
--- a/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ContainerRegistryManagementClientImpl.java
+++ b/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ContainerRegistryManagementClientImpl.java
@@ -233,6 +233,6 @@ protected void initialize() {
*/
@Override
public String userAgent() {
- return String.format("%s (%s, %s)", super.userAgent(), "ContainerRegistryManagementClient", "2017-06-01-preview");
+ return String.format("%s (%s, %s, auto-generated)", super.userAgent(), "ContainerRegistryManagementClient", "2017-06-01-preview");
}
}
diff --git a/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ReplicationImpl.java b/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ReplicationImpl.java
index 3d0a0a170ae9..f8396f0165e7 100644
--- a/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ReplicationImpl.java
+++ b/containerregistry/resource-manager/v2017_06_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2017_06_01_preview/implementation/ReplicationImpl.java
@@ -34,7 +34,7 @@ class ReplicationImpl extends CreatableUpdatableImpl
-
- 4.0.0
- com.microsoft.azure.containerregistry.v2017_10_01
-
- com.microsoft.azure
- azure-arm-parent
- 0.0.3-beta
- ../../../pom.xml
-
- azure-mgmt-containerregistry
- 1.0.0-beta
- jar
- Microsoft Azure SDK for ContainerRegistry Management
- This package contains Microsoft ContainerRegistry Management SDK.
- https://github.com/Azure/azure-libraries-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
-
- scm:git:https://github.com/Azure/azure-libraries-for-java
- scm:git:git@github.com:Azure/azure-libraries-for-java.git
- HEAD
-
-
- UTF-8
-
-
-
-
- microsoft
- Microsoft
-
-
-
-
- com.microsoft.azure
- azure-client-runtime
-
-
- com.microsoft.azure
- azure-arm-client-runtime
-
-
- junit
- junit
- test
-
-
- com.microsoft.azure
- azure-client-authentication
- test
-
-
- com.microsoft.azure
- azure-mgmt-resources
- test
-
-
- com.microsoft.azure
- azure-arm-client-runtime
- test-jar
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
- true
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.7
- 1.7
-
-
- com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
-
-
- true
- true
-
- true
- true
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.8
-
- *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
-
-
- /**
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for
- * license information.
- */
- ]]>
-
-
-
-
-
-
+
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2017_10_01
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
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/implementation/ContainerRegistryManagementClientImpl.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ContainerRegistryManagementClientImpl.java
index 00526974221c..d488c1880992 100644
--- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ContainerRegistryManagementClientImpl.java
+++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ContainerRegistryManagementClientImpl.java
@@ -233,6 +233,6 @@ protected void initialize() {
*/
@Override
public String userAgent() {
- return String.format("%s (%s, %s)", super.userAgent(), "ContainerRegistryManagementClient", "2017-10-01");
+ return String.format("%s (%s, %s, auto-generated)", super.userAgent(), "ContainerRegistryManagementClient", "2017-10-01");
}
}
diff --git a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ReplicationImpl.java b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ReplicationImpl.java
index cedf4d7b570e..cc0cf024dbdf 100644
--- a/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ReplicationImpl.java
+++ b/containerregistry/resource-manager/v2017_10_01/src/main/java/com/microsoft/azure/management/containerregistry/v2017_10_01/implementation/ReplicationImpl.java
@@ -34,7 +34,7 @@ class ReplicationImpl extends CreatableUpdatableImpl
-
- 4.0.0
- com.microsoft.azure.containerregistry.v2018_02_01_preview
-
- com.microsoft.azure
- azure-arm-parent
- 0.0.3-beta
- ../../../pom.xml
-
- azure-mgmt-containerregistry
- 1.0.0-beta-1
- jar
- Microsoft Azure SDK for ContainerRegistry Management
- This package contains Microsoft ContainerRegistry Management SDK.
- https://github.com/Azure/azure-libraries-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
-
- scm:git:https://github.com/Azure/azure-libraries-for-java
- scm:git:git@github.com:Azure/azure-libraries-for-java.git
- HEAD
-
-
- UTF-8
-
-
-
-
- microsoft
- Microsoft
-
-
-
-
- com.microsoft.azure
- azure-client-runtime
-
-
- com.microsoft.azure
- azure-arm-client-runtime
-
-
- junit
- junit
- test
-
-
- com.microsoft.azure
- azure-client-authentication
- test
-
-
- com.microsoft.azure
- azure-mgmt-resources
- test
-
-
- com.microsoft.azure
- azure-arm-client-runtime
- test-jar
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
- true
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.7
- 1.7
-
-
- com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
-
-
- true
- true
-
- true
- true
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.8
-
- *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
-
-
- /**
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for
- * license information.
- */
- ]]>
-
-
-
-
-
-
+
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2018_02_01_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
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/implementation/BuildImpl.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildImpl.java
index 5d7e05863a33..1b8c7e7c0286 100644
--- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildImpl.java
+++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildImpl.java
@@ -41,7 +41,7 @@ class BuildImpl extends CreatableUpdatableImpl imp
this.manager = manager;
// Set resource name
this.buildId = inner.name();
- // resource ancestor names
+ // set resource ancestor and positional variables
this.resourceGroupName = IdParsingUtils.getValueFromIdByName(inner.id(), "resourceGroups");
this.registryName = IdParsingUtils.getValueFromIdByName(inner.id(), "registries");
this.buildId = IdParsingUtils.getValueFromIdByName(inner.id(), "builds");
diff --git a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildStepImpl.java b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildStepImpl.java
index 833b7e9febc6..a32552a183e2 100644
--- a/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildStepImpl.java
+++ b/containerregistry/resource-manager/v2018_02_01_preview/src/main/java/com/microsoft/azure/management/containerregistry/v2018_02_01_preview/implementation/BuildStepImpl.java
@@ -41,7 +41,7 @@ class BuildStepImpl extends CreatableUpdatableImpl
+
+ 4.0.0
+ com.microsoft.azure.containerregistry.v2018_09_01
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.3-beta
+ ../../../pom.xml
+
+ azure-mgmt-containerregistry
+ 1.0.0-beta-1
+ jar
+ Microsoft Azure SDK for ContainerRegistry Management
+ This package contains Microsoft ContainerRegistry Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ */
+ ]]>
+
+
+
+
+
+
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Actor.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Actor.java
new file mode 100644
index 000000000000..3b81ffec0021
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Actor.java
@@ -0,0 +1,45 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The agent that initiated the event. For most situations, this could be from
+ * the authorization context of the request.
+ */
+public class Actor {
+ /**
+ * The subject or username associated with the request context that
+ * generated the event.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * Get the subject or username associated with the request context that generated the event.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the subject or username associated with the request context that generated the event.
+ *
+ * @param name the name value to set
+ * @return the Actor object itself.
+ */
+ public Actor withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AgentProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AgentProperties.java
new file mode 100644
index 000000000000..fa862c6f35e2
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AgentProperties.java
@@ -0,0 +1,43 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties that determine the run agent configuration.
+ */
+public class AgentProperties {
+ /**
+ * The CPU configuration in terms of number of cores required for the run.
+ */
+ @JsonProperty(value = "cpu")
+ private Integer cpu;
+
+ /**
+ * Get the CPU configuration in terms of number of cores required for the run.
+ *
+ * @return the cpu value
+ */
+ public Integer cpu() {
+ return this.cpu;
+ }
+
+ /**
+ * Set the CPU configuration in terms of number of cores required for the run.
+ *
+ * @param cpu the cpu value to set
+ * @return the AgentProperties object itself.
+ */
+ public AgentProperties withCpu(Integer cpu) {
+ this.cpu = cpu;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Architecture.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Architecture.java
new file mode 100644
index 000000000000..1e0c6069b9ac
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Architecture.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for Architecture.
+ */
+public final class Architecture extends ExpandableStringEnum {
+ /** Static value amd64 for Architecture. */
+ public static final Architecture AMD64 = fromString("amd64");
+
+ /** Static value x86 for Architecture. */
+ public static final Architecture X86 = fromString("x86");
+
+ /** Static value arm for Architecture. */
+ public static final Architecture ARM = fromString("arm");
+
+ /**
+ * Creates or finds a Architecture from its string representation.
+ * @param name a name to look for
+ * @return the corresponding Architecture
+ */
+ @JsonCreator
+ public static Architecture fromString(String name) {
+ return fromString(name, Architecture.class);
+ }
+
+ /**
+ * @return known Architecture values
+ */
+ public static Collection values() {
+ return values(Architecture.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Argument.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Argument.java
new file mode 100644
index 000000000000..f53f8331c305
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Argument.java
@@ -0,0 +1,96 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of a run argument.
+ */
+public class Argument {
+ /**
+ * The name of the argument.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The value of the argument.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * Flag to indicate whether the argument represents a secret and want to be
+ * removed from build logs.
+ */
+ @JsonProperty(value = "isSecret")
+ private Boolean isSecret;
+
+ /**
+ * Get the name of the argument.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the argument.
+ *
+ * @param name the name value to set
+ * @return the Argument object itself.
+ */
+ public Argument withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the value of the argument.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value of the argument.
+ *
+ * @param value the value value to set
+ * @return the Argument object itself.
+ */
+ public Argument withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get flag to indicate whether the argument represents a secret and want to be removed from build logs.
+ *
+ * @return the isSecret value
+ */
+ public Boolean isSecret() {
+ return this.isSecret;
+ }
+
+ /**
+ * Set flag to indicate whether the argument represents a secret and want to be removed from build logs.
+ *
+ * @param isSecret the isSecret value to set
+ * @return the Argument object itself.
+ */
+ public Argument withIsSecret(Boolean isSecret) {
+ this.isSecret = isSecret;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfo.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfo.java
new file mode 100644
index 000000000000..4f5f64aff63f
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfo.java
@@ -0,0 +1,147 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The authorization properties for accessing the source code repository.
+ */
+public class AuthInfo {
+ /**
+ * The type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ */
+ @JsonProperty(value = "tokenType", required = true)
+ private TokenType tokenType;
+
+ /**
+ * The access token used to access the source control provider.
+ */
+ @JsonProperty(value = "token", required = true)
+ private String token;
+
+ /**
+ * The refresh token used to refresh the access token.
+ */
+ @JsonProperty(value = "refreshToken")
+ private String refreshToken;
+
+ /**
+ * The scope of the access token.
+ */
+ @JsonProperty(value = "scope")
+ private String scope;
+
+ /**
+ * Time in seconds that the token remains valid.
+ */
+ @JsonProperty(value = "expiresIn")
+ private Integer expiresIn;
+
+ /**
+ * Get the type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ *
+ * @return the tokenType value
+ */
+ public TokenType tokenType() {
+ return this.tokenType;
+ }
+
+ /**
+ * Set the type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ *
+ * @param tokenType the tokenType value to set
+ * @return the AuthInfo object itself.
+ */
+ public AuthInfo withTokenType(TokenType tokenType) {
+ this.tokenType = tokenType;
+ return this;
+ }
+
+ /**
+ * Get the access token used to access the source control provider.
+ *
+ * @return the token value
+ */
+ public String token() {
+ return this.token;
+ }
+
+ /**
+ * Set the access token used to access the source control provider.
+ *
+ * @param token the token value to set
+ * @return the AuthInfo object itself.
+ */
+ public AuthInfo withToken(String token) {
+ this.token = token;
+ return this;
+ }
+
+ /**
+ * Get the refresh token used to refresh the access token.
+ *
+ * @return the refreshToken value
+ */
+ public String refreshToken() {
+ return this.refreshToken;
+ }
+
+ /**
+ * Set the refresh token used to refresh the access token.
+ *
+ * @param refreshToken the refreshToken value to set
+ * @return the AuthInfo object itself.
+ */
+ public AuthInfo withRefreshToken(String refreshToken) {
+ this.refreshToken = refreshToken;
+ return this;
+ }
+
+ /**
+ * Get the scope of the access token.
+ *
+ * @return the scope value
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope of the access token.
+ *
+ * @param scope the scope value to set
+ * @return the AuthInfo object itself.
+ */
+ public AuthInfo withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get time in seconds that the token remains valid.
+ *
+ * @return the expiresIn value
+ */
+ public Integer expiresIn() {
+ return this.expiresIn;
+ }
+
+ /**
+ * Set time in seconds that the token remains valid.
+ *
+ * @param expiresIn the expiresIn value to set
+ * @return the AuthInfo object itself.
+ */
+ public AuthInfo withExpiresIn(Integer expiresIn) {
+ this.expiresIn = expiresIn;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfoUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfoUpdateParameters.java
new file mode 100644
index 000000000000..8f6117922500
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/AuthInfoUpdateParameters.java
@@ -0,0 +1,147 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The authorization properties for accessing the source code repository.
+ */
+public class AuthInfoUpdateParameters {
+ /**
+ * The type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ */
+ @JsonProperty(value = "tokenType")
+ private TokenType tokenType;
+
+ /**
+ * The access token used to access the source control provider.
+ */
+ @JsonProperty(value = "token")
+ private String token;
+
+ /**
+ * The refresh token used to refresh the access token.
+ */
+ @JsonProperty(value = "refreshToken")
+ private String refreshToken;
+
+ /**
+ * The scope of the access token.
+ */
+ @JsonProperty(value = "scope")
+ private String scope;
+
+ /**
+ * Time in seconds that the token remains valid.
+ */
+ @JsonProperty(value = "expiresIn")
+ private Integer expiresIn;
+
+ /**
+ * Get the type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ *
+ * @return the tokenType value
+ */
+ public TokenType tokenType() {
+ return this.tokenType;
+ }
+
+ /**
+ * Set the type of Auth token. Possible values include: 'PAT', 'OAuth'.
+ *
+ * @param tokenType the tokenType value to set
+ * @return the AuthInfoUpdateParameters object itself.
+ */
+ public AuthInfoUpdateParameters withTokenType(TokenType tokenType) {
+ this.tokenType = tokenType;
+ return this;
+ }
+
+ /**
+ * Get the access token used to access the source control provider.
+ *
+ * @return the token value
+ */
+ public String token() {
+ return this.token;
+ }
+
+ /**
+ * Set the access token used to access the source control provider.
+ *
+ * @param token the token value to set
+ * @return the AuthInfoUpdateParameters object itself.
+ */
+ public AuthInfoUpdateParameters withToken(String token) {
+ this.token = token;
+ return this;
+ }
+
+ /**
+ * Get the refresh token used to refresh the access token.
+ *
+ * @return the refreshToken value
+ */
+ public String refreshToken() {
+ return this.refreshToken;
+ }
+
+ /**
+ * Set the refresh token used to refresh the access token.
+ *
+ * @param refreshToken the refreshToken value to set
+ * @return the AuthInfoUpdateParameters object itself.
+ */
+ public AuthInfoUpdateParameters withRefreshToken(String refreshToken) {
+ this.refreshToken = refreshToken;
+ return this;
+ }
+
+ /**
+ * Get the scope of the access token.
+ *
+ * @return the scope value
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope of the access token.
+ *
+ * @param scope the scope value to set
+ * @return the AuthInfoUpdateParameters object itself.
+ */
+ public AuthInfoUpdateParameters withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get time in seconds that the token remains valid.
+ *
+ * @return the expiresIn value
+ */
+ public Integer expiresIn() {
+ return this.expiresIn;
+ }
+
+ /**
+ * Set time in seconds that the token remains valid.
+ *
+ * @param expiresIn the expiresIn value to set
+ * @return the AuthInfoUpdateParameters object itself.
+ */
+ public AuthInfoUpdateParameters withExpiresIn(Integer expiresIn) {
+ this.expiresIn = expiresIn;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependency.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependency.java
new file mode 100644
index 000000000000..65decbad93b7
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependency.java
@@ -0,0 +1,148 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties that describe a base image dependency.
+ */
+public class BaseImageDependency {
+ /**
+ * The type of the base image dependency. Possible values include:
+ * 'BuildTime', 'RunTime'.
+ */
+ @JsonProperty(value = "type")
+ private BaseImageDependencyType type;
+
+ /**
+ * The registry login server.
+ */
+ @JsonProperty(value = "registry")
+ private String registry;
+
+ /**
+ * The repository name.
+ */
+ @JsonProperty(value = "repository")
+ private String repository;
+
+ /**
+ * The tag name.
+ */
+ @JsonProperty(value = "tag")
+ private String tag;
+
+ /**
+ * The sha256-based digest of the image manifest.
+ */
+ @JsonProperty(value = "digest")
+ private String digest;
+
+ /**
+ * Get the type of the base image dependency. Possible values include: 'BuildTime', 'RunTime'.
+ *
+ * @return the type value
+ */
+ public BaseImageDependencyType type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type of the base image dependency. Possible values include: 'BuildTime', 'RunTime'.
+ *
+ * @param type the type value to set
+ * @return the BaseImageDependency object itself.
+ */
+ public BaseImageDependency withType(BaseImageDependencyType type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Get the registry login server.
+ *
+ * @return the registry value
+ */
+ public String registry() {
+ return this.registry;
+ }
+
+ /**
+ * Set the registry login server.
+ *
+ * @param registry the registry value to set
+ * @return the BaseImageDependency object itself.
+ */
+ public BaseImageDependency withRegistry(String registry) {
+ this.registry = registry;
+ return this;
+ }
+
+ /**
+ * Get the repository name.
+ *
+ * @return the repository value
+ */
+ public String repository() {
+ return this.repository;
+ }
+
+ /**
+ * Set the repository name.
+ *
+ * @param repository the repository value to set
+ * @return the BaseImageDependency object itself.
+ */
+ public BaseImageDependency withRepository(String repository) {
+ this.repository = repository;
+ return this;
+ }
+
+ /**
+ * Get the tag name.
+ *
+ * @return the tag value
+ */
+ public String tag() {
+ return this.tag;
+ }
+
+ /**
+ * Set the tag name.
+ *
+ * @param tag the tag value to set
+ * @return the BaseImageDependency object itself.
+ */
+ public BaseImageDependency withTag(String tag) {
+ this.tag = tag;
+ return this;
+ }
+
+ /**
+ * Get the sha256-based digest of the image manifest.
+ *
+ * @return the digest value
+ */
+ public String digest() {
+ return this.digest;
+ }
+
+ /**
+ * Set the sha256-based digest of the image manifest.
+ *
+ * @param digest the digest value to set
+ * @return the BaseImageDependency object itself.
+ */
+ public BaseImageDependency withDigest(String digest) {
+ this.digest = digest;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependencyType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependencyType.java
new file mode 100644
index 000000000000..e375d27cdd41
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageDependencyType.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for BaseImageDependencyType.
+ */
+public final class BaseImageDependencyType extends ExpandableStringEnum {
+ /** Static value BuildTime for BaseImageDependencyType. */
+ public static final BaseImageDependencyType BUILD_TIME = fromString("BuildTime");
+
+ /** Static value RunTime for BaseImageDependencyType. */
+ public static final BaseImageDependencyType RUN_TIME = fromString("RunTime");
+
+ /**
+ * Creates or finds a BaseImageDependencyType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding BaseImageDependencyType
+ */
+ @JsonCreator
+ public static BaseImageDependencyType fromString(String name) {
+ return fromString(name, BaseImageDependencyType.class);
+ }
+
+ /**
+ * @return known BaseImageDependencyType values
+ */
+ public static Collection values() {
+ return values(BaseImageDependencyType.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTrigger.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTrigger.java
new file mode 100644
index 000000000000..f5f8223e4779
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTrigger.java
@@ -0,0 +1,97 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The trigger based on base image dependency.
+ */
+public class BaseImageTrigger {
+ /**
+ * The type of the auto trigger for base image dependency updates. Possible
+ * values include: 'All', 'Runtime'.
+ */
+ @JsonProperty(value = "baseImageTriggerType", required = true)
+ private BaseImageTriggerType baseImageTriggerType;
+
+ /**
+ * The current status of trigger. Possible values include: 'Disabled',
+ * 'Enabled'.
+ */
+ @JsonProperty(value = "status")
+ private TriggerStatus status;
+
+ /**
+ * The name of the trigger.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * Get the type of the auto trigger for base image dependency updates. Possible values include: 'All', 'Runtime'.
+ *
+ * @return the baseImageTriggerType value
+ */
+ public BaseImageTriggerType baseImageTriggerType() {
+ return this.baseImageTriggerType;
+ }
+
+ /**
+ * Set the type of the auto trigger for base image dependency updates. Possible values include: 'All', 'Runtime'.
+ *
+ * @param baseImageTriggerType the baseImageTriggerType value to set
+ * @return the BaseImageTrigger object itself.
+ */
+ public BaseImageTrigger withBaseImageTriggerType(BaseImageTriggerType baseImageTriggerType) {
+ this.baseImageTriggerType = baseImageTriggerType;
+ return this;
+ }
+
+ /**
+ * Get the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @return the status value
+ */
+ public TriggerStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @param status the status value to set
+ * @return the BaseImageTrigger object itself.
+ */
+ public BaseImageTrigger withStatus(TriggerStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the name of the trigger.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the trigger.
+ *
+ * @param name the name value to set
+ * @return the BaseImageTrigger object itself.
+ */
+ public BaseImageTrigger withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerType.java
new file mode 100644
index 000000000000..2ccaa4ef55d4
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerType.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for BaseImageTriggerType.
+ */
+public final class BaseImageTriggerType extends ExpandableStringEnum {
+ /** Static value All for BaseImageTriggerType. */
+ public static final BaseImageTriggerType ALL = fromString("All");
+
+ /** Static value Runtime for BaseImageTriggerType. */
+ public static final BaseImageTriggerType RUNTIME = fromString("Runtime");
+
+ /**
+ * Creates or finds a BaseImageTriggerType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding BaseImageTriggerType
+ */
+ @JsonCreator
+ public static BaseImageTriggerType fromString(String name) {
+ return fromString(name, BaseImageTriggerType.class);
+ }
+
+ /**
+ * @return known BaseImageTriggerType values
+ */
+ public static Collection values() {
+ return values(BaseImageTriggerType.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerUpdateParameters.java
new file mode 100644
index 000000000000..0965727b39a7
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/BaseImageTriggerUpdateParameters.java
@@ -0,0 +1,97 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties for updating base image dependency trigger.
+ */
+public class BaseImageTriggerUpdateParameters {
+ /**
+ * The type of the auto trigger for base image dependency updates. Possible
+ * values include: 'All', 'Runtime'.
+ */
+ @JsonProperty(value = "baseImageTriggerType")
+ private BaseImageTriggerType baseImageTriggerType;
+
+ /**
+ * The current status of trigger. Possible values include: 'Disabled',
+ * 'Enabled'.
+ */
+ @JsonProperty(value = "status")
+ private TriggerStatus status;
+
+ /**
+ * The name of the trigger.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * Get the type of the auto trigger for base image dependency updates. Possible values include: 'All', 'Runtime'.
+ *
+ * @return the baseImageTriggerType value
+ */
+ public BaseImageTriggerType baseImageTriggerType() {
+ return this.baseImageTriggerType;
+ }
+
+ /**
+ * Set the type of the auto trigger for base image dependency updates. Possible values include: 'All', 'Runtime'.
+ *
+ * @param baseImageTriggerType the baseImageTriggerType value to set
+ * @return the BaseImageTriggerUpdateParameters object itself.
+ */
+ public BaseImageTriggerUpdateParameters withBaseImageTriggerType(BaseImageTriggerType baseImageTriggerType) {
+ this.baseImageTriggerType = baseImageTriggerType;
+ return this;
+ }
+
+ /**
+ * Get the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @return the status value
+ */
+ public TriggerStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @param status the status value to set
+ * @return the BaseImageTriggerUpdateParameters object itself.
+ */
+ public BaseImageTriggerUpdateParameters withStatus(TriggerStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the name of the trigger.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the trigger.
+ *
+ * @param name the name value to set
+ * @return the BaseImageTriggerUpdateParameters object itself.
+ */
+ public BaseImageTriggerUpdateParameters withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/CallbackConfig.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/CallbackConfig.java
new file mode 100644
index 000000000000..1b083f7ef1e3
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/CallbackConfig.java
@@ -0,0 +1,31 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.CallbackConfigInner;
+import java.util.Map;
+
+/**
+ * Type representing CallbackConfig.
+ */
+public interface CallbackConfig extends HasInner, HasManager {
+ /**
+ * @return the customHeaders value.
+ */
+ Map customHeaders();
+
+ /**
+ * @return the serviceUri value.
+ */
+ String serviceUri();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildRequest.java
new file mode 100644
index 000000000000..5584232f9184
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildRequest.java
@@ -0,0 +1,263 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The parameters for a docker quick build.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("DockerBuildRequest")
+public class DockerBuildRequest extends RunRequest {
+ /**
+ * The fully qualified image names including the repository and tag.
+ */
+ @JsonProperty(value = "imageNames")
+ private List imageNames;
+
+ /**
+ * The value of this property indicates whether the image built should be
+ * pushed to the registry or not.
+ */
+ @JsonProperty(value = "isPushEnabled")
+ private Boolean isPushEnabled;
+
+ /**
+ * The value of this property indicates whether the image cache is enabled
+ * or not.
+ */
+ @JsonProperty(value = "noCache")
+ private Boolean noCache;
+
+ /**
+ * The Docker file path relative to the source location.
+ */
+ @JsonProperty(value = "dockerFilePath", required = true)
+ private String dockerFilePath;
+
+ /**
+ * The collection of override arguments to be used when executing the run.
+ */
+ @JsonProperty(value = "arguments")
+ private List arguments;
+
+ /**
+ * Run timeout in seconds.
+ */
+ @JsonProperty(value = "timeout")
+ private Integer timeout;
+
+ /**
+ * The platform properties against which the run has to happen.
+ */
+ @JsonProperty(value = "platform", required = true)
+ private PlatformProperties platform;
+
+ /**
+ * The machine configuration of the run agent.
+ */
+ @JsonProperty(value = "agentConfiguration")
+ private AgentProperties agentConfiguration;
+
+ /**
+ * The URL(absolute or relative) of the source context. It can be an URL to
+ * a tar or git repoistory.
+ * If it is relative URL, the relative path should be obtained from calling
+ * listBuildSourceUploadUrl API.
+ */
+ @JsonProperty(value = "sourceLocation")
+ private String sourceLocation;
+
+ /**
+ * Get the fully qualified image names including the repository and tag.
+ *
+ * @return the imageNames value
+ */
+ public List imageNames() {
+ return this.imageNames;
+ }
+
+ /**
+ * Set the fully qualified image names including the repository and tag.
+ *
+ * @param imageNames the imageNames value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withImageNames(List imageNames) {
+ this.imageNames = imageNames;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @return the isPushEnabled value
+ */
+ public Boolean isPushEnabled() {
+ return this.isPushEnabled;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @param isPushEnabled the isPushEnabled value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withIsPushEnabled(Boolean isPushEnabled) {
+ this.isPushEnabled = isPushEnabled;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @return the noCache value
+ */
+ public Boolean noCache() {
+ return this.noCache;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @param noCache the noCache value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withNoCache(Boolean noCache) {
+ this.noCache = noCache;
+ return this;
+ }
+
+ /**
+ * Get the Docker file path relative to the source location.
+ *
+ * @return the dockerFilePath value
+ */
+ public String dockerFilePath() {
+ return this.dockerFilePath;
+ }
+
+ /**
+ * Set the Docker file path relative to the source location.
+ *
+ * @param dockerFilePath the dockerFilePath value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withDockerFilePath(String dockerFilePath) {
+ this.dockerFilePath = dockerFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of override arguments to be used when executing the run.
+ *
+ * @return the arguments value
+ */
+ public List arguments() {
+ return this.arguments;
+ }
+
+ /**
+ * Set the collection of override arguments to be used when executing the run.
+ *
+ * @param arguments the arguments value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withArguments(List arguments) {
+ this.arguments = arguments;
+ return this;
+ }
+
+ /**
+ * Get run timeout in seconds.
+ *
+ * @return the timeout value
+ */
+ public Integer timeout() {
+ return this.timeout;
+ }
+
+ /**
+ * Set run timeout in seconds.
+ *
+ * @param timeout the timeout value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withTimeout(Integer timeout) {
+ this.timeout = timeout;
+ return this;
+ }
+
+ /**
+ * Get the platform properties against which the run has to happen.
+ *
+ * @return the platform value
+ */
+ public PlatformProperties platform() {
+ return this.platform;
+ }
+
+ /**
+ * Set the platform properties against which the run has to happen.
+ *
+ * @param platform the platform value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withPlatform(PlatformProperties platform) {
+ this.platform = platform;
+ return this;
+ }
+
+ /**
+ * Get the machine configuration of the run agent.
+ *
+ * @return the agentConfiguration value
+ */
+ public AgentProperties agentConfiguration() {
+ return this.agentConfiguration;
+ }
+
+ /**
+ * Set the machine configuration of the run agent.
+ *
+ * @param agentConfiguration the agentConfiguration value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withAgentConfiguration(AgentProperties agentConfiguration) {
+ this.agentConfiguration = agentConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @return the sourceLocation value
+ */
+ public String sourceLocation() {
+ return this.sourceLocation;
+ }
+
+ /**
+ * Set the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @param sourceLocation the sourceLocation value to set
+ * @return the DockerBuildRequest object itself.
+ */
+ public DockerBuildRequest withSourceLocation(String sourceLocation) {
+ this.sourceLocation = sourceLocation;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStep.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStep.java
new file mode 100644
index 000000000000..07dbfcf21097
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStep.java
@@ -0,0 +1,155 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The Docker build step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("Docker")
+public class DockerBuildStep extends TaskStepProperties {
+ /**
+ * The fully qualified image names including the repository and tag.
+ */
+ @JsonProperty(value = "imageNames")
+ private List imageNames;
+
+ /**
+ * The value of this property indicates whether the image built should be
+ * pushed to the registry or not.
+ */
+ @JsonProperty(value = "isPushEnabled")
+ private Boolean isPushEnabled;
+
+ /**
+ * The value of this property indicates whether the image cache is enabled
+ * or not.
+ */
+ @JsonProperty(value = "noCache")
+ private Boolean noCache;
+
+ /**
+ * The Docker file path relative to the source context.
+ */
+ @JsonProperty(value = "dockerFilePath", required = true)
+ private String dockerFilePath;
+
+ /**
+ * The collection of override arguments to be used when executing this
+ * build step.
+ */
+ @JsonProperty(value = "arguments")
+ private List arguments;
+
+ /**
+ * Get the fully qualified image names including the repository and tag.
+ *
+ * @return the imageNames value
+ */
+ public List imageNames() {
+ return this.imageNames;
+ }
+
+ /**
+ * Set the fully qualified image names including the repository and tag.
+ *
+ * @param imageNames the imageNames value to set
+ * @return the DockerBuildStep object itself.
+ */
+ public DockerBuildStep withImageNames(List imageNames) {
+ this.imageNames = imageNames;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @return the isPushEnabled value
+ */
+ public Boolean isPushEnabled() {
+ return this.isPushEnabled;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @param isPushEnabled the isPushEnabled value to set
+ * @return the DockerBuildStep object itself.
+ */
+ public DockerBuildStep withIsPushEnabled(Boolean isPushEnabled) {
+ this.isPushEnabled = isPushEnabled;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @return the noCache value
+ */
+ public Boolean noCache() {
+ return this.noCache;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @param noCache the noCache value to set
+ * @return the DockerBuildStep object itself.
+ */
+ public DockerBuildStep withNoCache(Boolean noCache) {
+ this.noCache = noCache;
+ return this;
+ }
+
+ /**
+ * Get the Docker file path relative to the source context.
+ *
+ * @return the dockerFilePath value
+ */
+ public String dockerFilePath() {
+ return this.dockerFilePath;
+ }
+
+ /**
+ * Set the Docker file path relative to the source context.
+ *
+ * @param dockerFilePath the dockerFilePath value to set
+ * @return the DockerBuildStep object itself.
+ */
+ public DockerBuildStep withDockerFilePath(String dockerFilePath) {
+ this.dockerFilePath = dockerFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of override arguments to be used when executing this build step.
+ *
+ * @return the arguments value
+ */
+ public List arguments() {
+ return this.arguments;
+ }
+
+ /**
+ * Set the collection of override arguments to be used when executing this build step.
+ *
+ * @param arguments the arguments value to set
+ * @return the DockerBuildStep object itself.
+ */
+ public DockerBuildStep withArguments(List arguments) {
+ this.arguments = arguments;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStepUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStepUpdateParameters.java
new file mode 100644
index 000000000000..57a180720f00
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/DockerBuildStepUpdateParameters.java
@@ -0,0 +1,155 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The properties for updating a docker build step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("Docker")
+public class DockerBuildStepUpdateParameters extends TaskStepUpdateParameters {
+ /**
+ * The fully qualified image names including the repository and tag.
+ */
+ @JsonProperty(value = "imageNames")
+ private List imageNames;
+
+ /**
+ * The value of this property indicates whether the image built should be
+ * pushed to the registry or not.
+ */
+ @JsonProperty(value = "isPushEnabled")
+ private Boolean isPushEnabled;
+
+ /**
+ * The value of this property indicates whether the image cache is enabled
+ * or not.
+ */
+ @JsonProperty(value = "noCache")
+ private Boolean noCache;
+
+ /**
+ * The Docker file path relative to the source context.
+ */
+ @JsonProperty(value = "dockerFilePath")
+ private String dockerFilePath;
+
+ /**
+ * The collection of override arguments to be used when executing this
+ * build step.
+ */
+ @JsonProperty(value = "arguments")
+ private List arguments;
+
+ /**
+ * Get the fully qualified image names including the repository and tag.
+ *
+ * @return the imageNames value
+ */
+ public List imageNames() {
+ return this.imageNames;
+ }
+
+ /**
+ * Set the fully qualified image names including the repository and tag.
+ *
+ * @param imageNames the imageNames value to set
+ * @return the DockerBuildStepUpdateParameters object itself.
+ */
+ public DockerBuildStepUpdateParameters withImageNames(List imageNames) {
+ this.imageNames = imageNames;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @return the isPushEnabled value
+ */
+ public Boolean isPushEnabled() {
+ return this.isPushEnabled;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image built should be pushed to the registry or not.
+ *
+ * @param isPushEnabled the isPushEnabled value to set
+ * @return the DockerBuildStepUpdateParameters object itself.
+ */
+ public DockerBuildStepUpdateParameters withIsPushEnabled(Boolean isPushEnabled) {
+ this.isPushEnabled = isPushEnabled;
+ return this;
+ }
+
+ /**
+ * Get the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @return the noCache value
+ */
+ public Boolean noCache() {
+ return this.noCache;
+ }
+
+ /**
+ * Set the value of this property indicates whether the image cache is enabled or not.
+ *
+ * @param noCache the noCache value to set
+ * @return the DockerBuildStepUpdateParameters object itself.
+ */
+ public DockerBuildStepUpdateParameters withNoCache(Boolean noCache) {
+ this.noCache = noCache;
+ return this;
+ }
+
+ /**
+ * Get the Docker file path relative to the source context.
+ *
+ * @return the dockerFilePath value
+ */
+ public String dockerFilePath() {
+ return this.dockerFilePath;
+ }
+
+ /**
+ * Set the Docker file path relative to the source context.
+ *
+ * @param dockerFilePath the dockerFilePath value to set
+ * @return the DockerBuildStepUpdateParameters object itself.
+ */
+ public DockerBuildStepUpdateParameters withDockerFilePath(String dockerFilePath) {
+ this.dockerFilePath = dockerFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of override arguments to be used when executing this build step.
+ *
+ * @return the arguments value
+ */
+ public List arguments() {
+ return this.arguments;
+ }
+
+ /**
+ * Set the collection of override arguments to be used when executing this build step.
+ *
+ * @param arguments the arguments value to set
+ * @return the DockerBuildStepUpdateParameters object itself.
+ */
+ public DockerBuildStepUpdateParameters withArguments(List arguments) {
+ this.arguments = arguments;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskRunRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskRunRequest.java
new file mode 100644
index 000000000000..1539de33bbef
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskRunRequest.java
@@ -0,0 +1,210 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The parameters for a quick task run request.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("EncodedTaskRunRequest")
+public class EncodedTaskRunRequest extends RunRequest {
+ /**
+ * Base64 encoded value of the template/definition file content.
+ */
+ @JsonProperty(value = "encodedTaskContent", required = true)
+ private String encodedTaskContent;
+
+ /**
+ * Base64 encoded value of the parameters/values file content.
+ */
+ @JsonProperty(value = "encodedValuesContent")
+ private String encodedValuesContent;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Run timeout in seconds.
+ */
+ @JsonProperty(value = "timeout")
+ private Integer timeout;
+
+ /**
+ * The platform properties against which the run has to happen.
+ */
+ @JsonProperty(value = "platform", required = true)
+ private PlatformProperties platform;
+
+ /**
+ * The machine configuration of the run agent.
+ */
+ @JsonProperty(value = "agentConfiguration")
+ private AgentProperties agentConfiguration;
+
+ /**
+ * The URL(absolute or relative) of the source context. It can be an URL to
+ * a tar or git repoistory.
+ * If it is relative URL, the relative path should be obtained from calling
+ * listBuildSourceUploadUrl API.
+ */
+ @JsonProperty(value = "sourceLocation")
+ private String sourceLocation;
+
+ /**
+ * Get base64 encoded value of the template/definition file content.
+ *
+ * @return the encodedTaskContent value
+ */
+ public String encodedTaskContent() {
+ return this.encodedTaskContent;
+ }
+
+ /**
+ * Set base64 encoded value of the template/definition file content.
+ *
+ * @param encodedTaskContent the encodedTaskContent value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withEncodedTaskContent(String encodedTaskContent) {
+ this.encodedTaskContent = encodedTaskContent;
+ return this;
+ }
+
+ /**
+ * Get base64 encoded value of the parameters/values file content.
+ *
+ * @return the encodedValuesContent value
+ */
+ public String encodedValuesContent() {
+ return this.encodedValuesContent;
+ }
+
+ /**
+ * Set base64 encoded value of the parameters/values file content.
+ *
+ * @param encodedValuesContent the encodedValuesContent value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withEncodedValuesContent(String encodedValuesContent) {
+ this.encodedValuesContent = encodedValuesContent;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+ /**
+ * Get run timeout in seconds.
+ *
+ * @return the timeout value
+ */
+ public Integer timeout() {
+ return this.timeout;
+ }
+
+ /**
+ * Set run timeout in seconds.
+ *
+ * @param timeout the timeout value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withTimeout(Integer timeout) {
+ this.timeout = timeout;
+ return this;
+ }
+
+ /**
+ * Get the platform properties against which the run has to happen.
+ *
+ * @return the platform value
+ */
+ public PlatformProperties platform() {
+ return this.platform;
+ }
+
+ /**
+ * Set the platform properties against which the run has to happen.
+ *
+ * @param platform the platform value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withPlatform(PlatformProperties platform) {
+ this.platform = platform;
+ return this;
+ }
+
+ /**
+ * Get the machine configuration of the run agent.
+ *
+ * @return the agentConfiguration value
+ */
+ public AgentProperties agentConfiguration() {
+ return this.agentConfiguration;
+ }
+
+ /**
+ * Set the machine configuration of the run agent.
+ *
+ * @param agentConfiguration the agentConfiguration value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withAgentConfiguration(AgentProperties agentConfiguration) {
+ this.agentConfiguration = agentConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @return the sourceLocation value
+ */
+ public String sourceLocation() {
+ return this.sourceLocation;
+ }
+
+ /**
+ * Set the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @param sourceLocation the sourceLocation value to set
+ * @return the EncodedTaskRunRequest object itself.
+ */
+ public EncodedTaskRunRequest withSourceLocation(String sourceLocation) {
+ this.sourceLocation = sourceLocation;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStep.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStep.java
new file mode 100644
index 000000000000..85115af6fe6b
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStep.java
@@ -0,0 +1,101 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The properties of a encoded task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("EncodedTask")
+public class EncodedTaskStep extends TaskStepProperties {
+ /**
+ * Base64 encoded value of the template/definition file content.
+ */
+ @JsonProperty(value = "encodedTaskContent", required = true)
+ private String encodedTaskContent;
+
+ /**
+ * Base64 encoded value of the parameters/values file content.
+ */
+ @JsonProperty(value = "encodedValuesContent")
+ private String encodedValuesContent;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Get base64 encoded value of the template/definition file content.
+ *
+ * @return the encodedTaskContent value
+ */
+ public String encodedTaskContent() {
+ return this.encodedTaskContent;
+ }
+
+ /**
+ * Set base64 encoded value of the template/definition file content.
+ *
+ * @param encodedTaskContent the encodedTaskContent value to set
+ * @return the EncodedTaskStep object itself.
+ */
+ public EncodedTaskStep withEncodedTaskContent(String encodedTaskContent) {
+ this.encodedTaskContent = encodedTaskContent;
+ return this;
+ }
+
+ /**
+ * Get base64 encoded value of the parameters/values file content.
+ *
+ * @return the encodedValuesContent value
+ */
+ public String encodedValuesContent() {
+ return this.encodedValuesContent;
+ }
+
+ /**
+ * Set base64 encoded value of the parameters/values file content.
+ *
+ * @param encodedValuesContent the encodedValuesContent value to set
+ * @return the EncodedTaskStep object itself.
+ */
+ public EncodedTaskStep withEncodedValuesContent(String encodedValuesContent) {
+ this.encodedValuesContent = encodedValuesContent;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the EncodedTaskStep object itself.
+ */
+ public EncodedTaskStep withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStepUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStepUpdateParameters.java
new file mode 100644
index 000000000000..38c7d05e9343
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EncodedTaskStepUpdateParameters.java
@@ -0,0 +1,101 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The properties for updating encoded task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("EncodedTask")
+public class EncodedTaskStepUpdateParameters extends TaskStepUpdateParameters {
+ /**
+ * Base64 encoded value of the template/definition file content.
+ */
+ @JsonProperty(value = "encodedTaskContent")
+ private String encodedTaskContent;
+
+ /**
+ * Base64 encoded value of the parameters/values file content.
+ */
+ @JsonProperty(value = "encodedValuesContent")
+ private String encodedValuesContent;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Get base64 encoded value of the template/definition file content.
+ *
+ * @return the encodedTaskContent value
+ */
+ public String encodedTaskContent() {
+ return this.encodedTaskContent;
+ }
+
+ /**
+ * Set base64 encoded value of the template/definition file content.
+ *
+ * @param encodedTaskContent the encodedTaskContent value to set
+ * @return the EncodedTaskStepUpdateParameters object itself.
+ */
+ public EncodedTaskStepUpdateParameters withEncodedTaskContent(String encodedTaskContent) {
+ this.encodedTaskContent = encodedTaskContent;
+ return this;
+ }
+
+ /**
+ * Get base64 encoded value of the parameters/values file content.
+ *
+ * @return the encodedValuesContent value
+ */
+ public String encodedValuesContent() {
+ return this.encodedValuesContent;
+ }
+
+ /**
+ * Set base64 encoded value of the parameters/values file content.
+ *
+ * @param encodedValuesContent the encodedValuesContent value to set
+ * @return the EncodedTaskStepUpdateParameters object itself.
+ */
+ public EncodedTaskStepUpdateParameters withEncodedValuesContent(String encodedValuesContent) {
+ this.encodedValuesContent = encodedValuesContent;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the EncodedTaskStepUpdateParameters object itself.
+ */
+ public EncodedTaskStepUpdateParameters withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Event.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Event.java
new file mode 100644
index 000000000000..9296514c0a4c
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Event.java
@@ -0,0 +1,35 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.EventInner;
+
+/**
+ * Type representing Event.
+ */
+public interface Event extends HasInner, HasManager {
+ /**
+ * @return the eventRequestMessage value.
+ */
+ EventRequestMessage eventRequestMessage();
+
+ /**
+ * @return the eventResponseMessage value.
+ */
+ EventResponseMessage eventResponseMessage();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventContent.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventContent.java
new file mode 100644
index 000000000000..08510c62e403
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventContent.java
@@ -0,0 +1,202 @@
+/**
+ * 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_09_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The content of the event request message.
+ */
+public class EventContent {
+ /**
+ * The event ID.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * The time at which the event occurred.
+ */
+ @JsonProperty(value = "timestamp")
+ private DateTime timestamp;
+
+ /**
+ * The action that encompasses the provided event.
+ */
+ @JsonProperty(value = "action")
+ private String action;
+
+ /**
+ * The target of the event.
+ */
+ @JsonProperty(value = "target")
+ private Target target;
+
+ /**
+ * The request that generated the event.
+ */
+ @JsonProperty(value = "request")
+ private Request request;
+
+ /**
+ * The agent that initiated the event. For most situations, this could be
+ * from the authorization context of the request.
+ */
+ @JsonProperty(value = "actor")
+ private Actor actor;
+
+ /**
+ * The registry node that generated the event. Put differently, while the
+ * actor initiates the event, the source generates it.
+ */
+ @JsonProperty(value = "source")
+ private Source source;
+
+ /**
+ * Get the event ID.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the event ID.
+ *
+ * @param id the id value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the time at which the event occurred.
+ *
+ * @return the timestamp value
+ */
+ public DateTime timestamp() {
+ return this.timestamp;
+ }
+
+ /**
+ * Set the time at which the event occurred.
+ *
+ * @param timestamp the timestamp value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withTimestamp(DateTime timestamp) {
+ this.timestamp = timestamp;
+ return this;
+ }
+
+ /**
+ * Get the action that encompasses the provided event.
+ *
+ * @return the action value
+ */
+ public String action() {
+ return this.action;
+ }
+
+ /**
+ * Set the action that encompasses the provided event.
+ *
+ * @param action the action value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withAction(String action) {
+ this.action = action;
+ return this;
+ }
+
+ /**
+ * Get the target of the event.
+ *
+ * @return the target value
+ */
+ public Target target() {
+ return this.target;
+ }
+
+ /**
+ * Set the target of the event.
+ *
+ * @param target the target value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withTarget(Target target) {
+ this.target = target;
+ return this;
+ }
+
+ /**
+ * Get the request that generated the event.
+ *
+ * @return the request value
+ */
+ public Request request() {
+ return this.request;
+ }
+
+ /**
+ * Set the request that generated the event.
+ *
+ * @param request the request value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withRequest(Request request) {
+ this.request = request;
+ return this;
+ }
+
+ /**
+ * Get the agent that initiated the event. For most situations, this could be from the authorization context of the request.
+ *
+ * @return the actor value
+ */
+ public Actor actor() {
+ return this.actor;
+ }
+
+ /**
+ * Set the agent that initiated the event. For most situations, this could be from the authorization context of the request.
+ *
+ * @param actor the actor value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withActor(Actor actor) {
+ this.actor = actor;
+ return this;
+ }
+
+ /**
+ * Get the registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.
+ *
+ * @return the source value
+ */
+ public Source source() {
+ return this.source;
+ }
+
+ /**
+ * Set the registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.
+ *
+ * @param source the source value to set
+ * @return the EventContent object itself.
+ */
+ public EventContent withSource(Source source) {
+ this.source = source;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventInfo.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventInfo.java
new file mode 100644
index 000000000000..beff2bbb3953
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventInfo.java
@@ -0,0 +1,25 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.EventInfoInner;
+
+/**
+ * Type representing EventInfo.
+ */
+public interface EventInfo extends HasInner, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventRequestMessage.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventRequestMessage.java
new file mode 100644
index 000000000000..ab66ff8a41ad
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventRequestMessage.java
@@ -0,0 +1,148 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The event request message sent to the service URI.
+ */
+public class EventRequestMessage {
+ /**
+ * The content of the event request message.
+ */
+ @JsonProperty(value = "content")
+ private EventContent content;
+
+ /**
+ * The headers of the event request message.
+ */
+ @JsonProperty(value = "headers")
+ private Map headers;
+
+ /**
+ * The HTTP method used to send the event request message.
+ */
+ @JsonProperty(value = "method")
+ private String method;
+
+ /**
+ * The URI used to send the event request message.
+ */
+ @JsonProperty(value = "requestUri")
+ private String requestUri;
+
+ /**
+ * The HTTP message version.
+ */
+ @JsonProperty(value = "version")
+ private String version;
+
+ /**
+ * Get the content of the event request message.
+ *
+ * @return the content value
+ */
+ public EventContent content() {
+ return this.content;
+ }
+
+ /**
+ * Set the content of the event request message.
+ *
+ * @param content the content value to set
+ * @return the EventRequestMessage object itself.
+ */
+ public EventRequestMessage withContent(EventContent content) {
+ this.content = content;
+ return this;
+ }
+
+ /**
+ * Get the headers of the event request message.
+ *
+ * @return the headers value
+ */
+ public Map headers() {
+ return this.headers;
+ }
+
+ /**
+ * Set the headers of the event request message.
+ *
+ * @param headers the headers value to set
+ * @return the EventRequestMessage object itself.
+ */
+ public EventRequestMessage withHeaders(Map headers) {
+ this.headers = headers;
+ return this;
+ }
+
+ /**
+ * Get the HTTP method used to send the event request message.
+ *
+ * @return the method value
+ */
+ public String method() {
+ return this.method;
+ }
+
+ /**
+ * Set the HTTP method used to send the event request message.
+ *
+ * @param method the method value to set
+ * @return the EventRequestMessage object itself.
+ */
+ public EventRequestMessage withMethod(String method) {
+ this.method = method;
+ return this;
+ }
+
+ /**
+ * Get the URI used to send the event request message.
+ *
+ * @return the requestUri value
+ */
+ public String requestUri() {
+ return this.requestUri;
+ }
+
+ /**
+ * Set the URI used to send the event request message.
+ *
+ * @param requestUri the requestUri value to set
+ * @return the EventRequestMessage object itself.
+ */
+ public EventRequestMessage withRequestUri(String requestUri) {
+ this.requestUri = requestUri;
+ return this;
+ }
+
+ /**
+ * Get the HTTP message version.
+ *
+ * @return the version value
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Set the HTTP message version.
+ *
+ * @param version the version value to set
+ * @return the EventRequestMessage object itself.
+ */
+ public EventRequestMessage withVersion(String version) {
+ this.version = version;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventResponseMessage.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventResponseMessage.java
new file mode 100644
index 000000000000..3ecb0922d352
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/EventResponseMessage.java
@@ -0,0 +1,148 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The event response message received from the service URI.
+ */
+public class EventResponseMessage {
+ /**
+ * The content of the event response message.
+ */
+ @JsonProperty(value = "content")
+ private String content;
+
+ /**
+ * The headers of the event response message.
+ */
+ @JsonProperty(value = "headers")
+ private Map headers;
+
+ /**
+ * The reason phrase of the event response message.
+ */
+ @JsonProperty(value = "reasonPhrase")
+ private String reasonPhrase;
+
+ /**
+ * The status code of the event response message.
+ */
+ @JsonProperty(value = "statusCode")
+ private String statusCode;
+
+ /**
+ * The HTTP message version.
+ */
+ @JsonProperty(value = "version")
+ private String version;
+
+ /**
+ * Get the content of the event response message.
+ *
+ * @return the content value
+ */
+ public String content() {
+ return this.content;
+ }
+
+ /**
+ * Set the content of the event response message.
+ *
+ * @param content the content value to set
+ * @return the EventResponseMessage object itself.
+ */
+ public EventResponseMessage withContent(String content) {
+ this.content = content;
+ return this;
+ }
+
+ /**
+ * Get the headers of the event response message.
+ *
+ * @return the headers value
+ */
+ public Map headers() {
+ return this.headers;
+ }
+
+ /**
+ * Set the headers of the event response message.
+ *
+ * @param headers the headers value to set
+ * @return the EventResponseMessage object itself.
+ */
+ public EventResponseMessage withHeaders(Map headers) {
+ this.headers = headers;
+ return this;
+ }
+
+ /**
+ * Get the reason phrase of the event response message.
+ *
+ * @return the reasonPhrase value
+ */
+ public String reasonPhrase() {
+ return this.reasonPhrase;
+ }
+
+ /**
+ * Set the reason phrase of the event response message.
+ *
+ * @param reasonPhrase the reasonPhrase value to set
+ * @return the EventResponseMessage object itself.
+ */
+ public EventResponseMessage withReasonPhrase(String reasonPhrase) {
+ this.reasonPhrase = reasonPhrase;
+ return this;
+ }
+
+ /**
+ * Get the status code of the event response message.
+ *
+ * @return the statusCode value
+ */
+ public String statusCode() {
+ return this.statusCode;
+ }
+
+ /**
+ * Set the status code of the event response message.
+ *
+ * @param statusCode the statusCode value to set
+ * @return the EventResponseMessage object itself.
+ */
+ public EventResponseMessage withStatusCode(String statusCode) {
+ this.statusCode = statusCode;
+ return this;
+ }
+
+ /**
+ * Get the HTTP message version.
+ *
+ * @return the version value
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Set the HTTP message version.
+ *
+ * @param version the version value to set
+ * @return the EventResponseMessage object itself.
+ */
+ public EventResponseMessage withVersion(String version) {
+ this.version = version;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskRunRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskRunRequest.java
new file mode 100644
index 000000000000..31b0901a695b
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskRunRequest.java
@@ -0,0 +1,210 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The request parameters for a scheduling run against a task file.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("FileTaskRunRequest")
+public class FileTaskRunRequest extends RunRequest {
+ /**
+ * The template/definition file path relative to the source.
+ */
+ @JsonProperty(value = "taskFilePath", required = true)
+ private String taskFilePath;
+
+ /**
+ * The values/parameters file path relative to the source.
+ */
+ @JsonProperty(value = "valuesFilePath")
+ private String valuesFilePath;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Run timeout in seconds.
+ */
+ @JsonProperty(value = "timeout")
+ private Integer timeout;
+
+ /**
+ * The platform properties against which the run has to happen.
+ */
+ @JsonProperty(value = "platform", required = true)
+ private PlatformProperties platform;
+
+ /**
+ * The machine configuration of the run agent.
+ */
+ @JsonProperty(value = "agentConfiguration")
+ private AgentProperties agentConfiguration;
+
+ /**
+ * The URL(absolute or relative) of the source context. It can be an URL to
+ * a tar or git repoistory.
+ * If it is relative URL, the relative path should be obtained from calling
+ * listBuildSourceUploadUrl API.
+ */
+ @JsonProperty(value = "sourceLocation")
+ private String sourceLocation;
+
+ /**
+ * Get the template/definition file path relative to the source.
+ *
+ * @return the taskFilePath value
+ */
+ public String taskFilePath() {
+ return this.taskFilePath;
+ }
+
+ /**
+ * Set the template/definition file path relative to the source.
+ *
+ * @param taskFilePath the taskFilePath value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withTaskFilePath(String taskFilePath) {
+ this.taskFilePath = taskFilePath;
+ return this;
+ }
+
+ /**
+ * Get the values/parameters file path relative to the source.
+ *
+ * @return the valuesFilePath value
+ */
+ public String valuesFilePath() {
+ return this.valuesFilePath;
+ }
+
+ /**
+ * Set the values/parameters file path relative to the source.
+ *
+ * @param valuesFilePath the valuesFilePath value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withValuesFilePath(String valuesFilePath) {
+ this.valuesFilePath = valuesFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+ /**
+ * Get run timeout in seconds.
+ *
+ * @return the timeout value
+ */
+ public Integer timeout() {
+ return this.timeout;
+ }
+
+ /**
+ * Set run timeout in seconds.
+ *
+ * @param timeout the timeout value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withTimeout(Integer timeout) {
+ this.timeout = timeout;
+ return this;
+ }
+
+ /**
+ * Get the platform properties against which the run has to happen.
+ *
+ * @return the platform value
+ */
+ public PlatformProperties platform() {
+ return this.platform;
+ }
+
+ /**
+ * Set the platform properties against which the run has to happen.
+ *
+ * @param platform the platform value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withPlatform(PlatformProperties platform) {
+ this.platform = platform;
+ return this;
+ }
+
+ /**
+ * Get the machine configuration of the run agent.
+ *
+ * @return the agentConfiguration value
+ */
+ public AgentProperties agentConfiguration() {
+ return this.agentConfiguration;
+ }
+
+ /**
+ * Set the machine configuration of the run agent.
+ *
+ * @param agentConfiguration the agentConfiguration value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withAgentConfiguration(AgentProperties agentConfiguration) {
+ this.agentConfiguration = agentConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @return the sourceLocation value
+ */
+ public String sourceLocation() {
+ return this.sourceLocation;
+ }
+
+ /**
+ * Set the URL(absolute or relative) of the source context. It can be an URL to a tar or git repoistory.
+ If it is relative URL, the relative path should be obtained from calling listBuildSourceUploadUrl API.
+ *
+ * @param sourceLocation the sourceLocation value to set
+ * @return the FileTaskRunRequest object itself.
+ */
+ public FileTaskRunRequest withSourceLocation(String sourceLocation) {
+ this.sourceLocation = sourceLocation;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStep.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStep.java
new file mode 100644
index 000000000000..c716727a587f
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStep.java
@@ -0,0 +1,101 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The properties of a task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("FileTask")
+public class FileTaskStep extends TaskStepProperties {
+ /**
+ * The task template/definition file path relative to the source context.
+ */
+ @JsonProperty(value = "taskFilePath", required = true)
+ private String taskFilePath;
+
+ /**
+ * The task values/parameters file path relative to the source context.
+ */
+ @JsonProperty(value = "valuesFilePath")
+ private String valuesFilePath;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Get the task template/definition file path relative to the source context.
+ *
+ * @return the taskFilePath value
+ */
+ public String taskFilePath() {
+ return this.taskFilePath;
+ }
+
+ /**
+ * Set the task template/definition file path relative to the source context.
+ *
+ * @param taskFilePath the taskFilePath value to set
+ * @return the FileTaskStep object itself.
+ */
+ public FileTaskStep withTaskFilePath(String taskFilePath) {
+ this.taskFilePath = taskFilePath;
+ return this;
+ }
+
+ /**
+ * Get the task values/parameters file path relative to the source context.
+ *
+ * @return the valuesFilePath value
+ */
+ public String valuesFilePath() {
+ return this.valuesFilePath;
+ }
+
+ /**
+ * Set the task values/parameters file path relative to the source context.
+ *
+ * @param valuesFilePath the valuesFilePath value to set
+ * @return the FileTaskStep object itself.
+ */
+ public FileTaskStep withValuesFilePath(String valuesFilePath) {
+ this.valuesFilePath = valuesFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the FileTaskStep object itself.
+ */
+ public FileTaskStep withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStepUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStepUpdateParameters.java
new file mode 100644
index 000000000000..9cf1c75b4651
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/FileTaskStepUpdateParameters.java
@@ -0,0 +1,101 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The properties of updating a task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("FileTask")
+public class FileTaskStepUpdateParameters extends TaskStepUpdateParameters {
+ /**
+ * The task template/definition file path relative to the source context.
+ */
+ @JsonProperty(value = "taskFilePath")
+ private String taskFilePath;
+
+ /**
+ * The values/parameters file path relative to the source context.
+ */
+ @JsonProperty(value = "valuesFilePath")
+ private String valuesFilePath;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Get the task template/definition file path relative to the source context.
+ *
+ * @return the taskFilePath value
+ */
+ public String taskFilePath() {
+ return this.taskFilePath;
+ }
+
+ /**
+ * Set the task template/definition file path relative to the source context.
+ *
+ * @param taskFilePath the taskFilePath value to set
+ * @return the FileTaskStepUpdateParameters object itself.
+ */
+ public FileTaskStepUpdateParameters withTaskFilePath(String taskFilePath) {
+ this.taskFilePath = taskFilePath;
+ return this;
+ }
+
+ /**
+ * Get the values/parameters file path relative to the source context.
+ *
+ * @return the valuesFilePath value
+ */
+ public String valuesFilePath() {
+ return this.valuesFilePath;
+ }
+
+ /**
+ * Set the values/parameters file path relative to the source context.
+ *
+ * @param valuesFilePath the valuesFilePath value to set
+ * @return the FileTaskStepUpdateParameters object itself.
+ */
+ public FileTaskStepUpdateParameters withValuesFilePath(String valuesFilePath) {
+ this.valuesFilePath = valuesFilePath;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the FileTaskStepUpdateParameters object itself.
+ */
+ public FileTaskStepUpdateParameters withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageDescriptor.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageDescriptor.java
new file mode 100644
index 000000000000..3d59bc45e4b3
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageDescriptor.java
@@ -0,0 +1,121 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties for a registry image.
+ */
+public class ImageDescriptor {
+ /**
+ * The registry login server.
+ */
+ @JsonProperty(value = "registry")
+ private String registry;
+
+ /**
+ * The repository name.
+ */
+ @JsonProperty(value = "repository")
+ private String repository;
+
+ /**
+ * The tag name.
+ */
+ @JsonProperty(value = "tag")
+ private String tag;
+
+ /**
+ * The sha256-based digest of the image manifest.
+ */
+ @JsonProperty(value = "digest")
+ private String digest;
+
+ /**
+ * Get the registry login server.
+ *
+ * @return the registry value
+ */
+ public String registry() {
+ return this.registry;
+ }
+
+ /**
+ * Set the registry login server.
+ *
+ * @param registry the registry value to set
+ * @return the ImageDescriptor object itself.
+ */
+ public ImageDescriptor withRegistry(String registry) {
+ this.registry = registry;
+ return this;
+ }
+
+ /**
+ * Get the repository name.
+ *
+ * @return the repository value
+ */
+ public String repository() {
+ return this.repository;
+ }
+
+ /**
+ * Set the repository name.
+ *
+ * @param repository the repository value to set
+ * @return the ImageDescriptor object itself.
+ */
+ public ImageDescriptor withRepository(String repository) {
+ this.repository = repository;
+ return this;
+ }
+
+ /**
+ * Get the tag name.
+ *
+ * @return the tag value
+ */
+ public String tag() {
+ return this.tag;
+ }
+
+ /**
+ * Set the tag name.
+ *
+ * @param tag the tag value to set
+ * @return the ImageDescriptor object itself.
+ */
+ public ImageDescriptor withTag(String tag) {
+ this.tag = tag;
+ return this;
+ }
+
+ /**
+ * Get the sha256-based digest of the image manifest.
+ *
+ * @return the digest value
+ */
+ public String digest() {
+ return this.digest;
+ }
+
+ /**
+ * Set the sha256-based digest of the image manifest.
+ *
+ * @param digest the digest value to set
+ * @return the ImageDescriptor object itself.
+ */
+ public ImageDescriptor withDigest(String digest) {
+ this.digest = digest;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageUpdateTrigger.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageUpdateTrigger.java
new file mode 100644
index 000000000000..5b51b1c0e102
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImageUpdateTrigger.java
@@ -0,0 +1,97 @@
+/**
+ * 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_09_01;
+
+import org.joda.time.DateTime;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The image update trigger that caused a build.
+ */
+public class ImageUpdateTrigger {
+ /**
+ * The unique ID of the trigger.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * The timestamp when the image update happened.
+ */
+ @JsonProperty(value = "timestamp")
+ private DateTime timestamp;
+
+ /**
+ * The list of image updates that caused the build.
+ */
+ @JsonProperty(value = "images")
+ private List images;
+
+ /**
+ * Get the unique ID of the trigger.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the unique ID of the trigger.
+ *
+ * @param id the id value to set
+ * @return the ImageUpdateTrigger object itself.
+ */
+ public ImageUpdateTrigger withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the timestamp when the image update happened.
+ *
+ * @return the timestamp value
+ */
+ public DateTime timestamp() {
+ return this.timestamp;
+ }
+
+ /**
+ * Set the timestamp when the image update happened.
+ *
+ * @param timestamp the timestamp value to set
+ * @return the ImageUpdateTrigger object itself.
+ */
+ public ImageUpdateTrigger withTimestamp(DateTime timestamp) {
+ this.timestamp = timestamp;
+ return this;
+ }
+
+ /**
+ * Get the list of image updates that caused the build.
+ *
+ * @return the images value
+ */
+ public List images() {
+ return this.images;
+ }
+
+ /**
+ * Set the list of image updates that caused the build.
+ *
+ * @param images the images value to set
+ * @return the ImageUpdateTrigger object itself.
+ */
+ public ImageUpdateTrigger withImages(List images) {
+ this.images = images;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportImageParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportImageParameters.java
new file mode 100644
index 000000000000..68d3003c4824
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportImageParameters.java
@@ -0,0 +1,126 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The ImportImageParameters model.
+ */
+public class ImportImageParameters {
+ /**
+ * The source of the image.
+ */
+ @JsonProperty(value = "source", required = true)
+ private ImportSource source;
+
+ /**
+ * List of strings of the form repo[:tag]. When tag is omitted the source
+ * will be used (or 'latest' if source tag is also omitted).
+ */
+ @JsonProperty(value = "targetTags")
+ private List targetTags;
+
+ /**
+ * List of strings of repository names to do a manifest only copy. No tag
+ * will be created.
+ */
+ @JsonProperty(value = "untaggedTargetRepositories")
+ private List untaggedTargetRepositories;
+
+ /**
+ * When Force, any existing target tags will be overwritten. When NoForce,
+ * any existing target tags will fail the operation before any copying
+ * begins. Possible values include: 'NoForce', 'Force'.
+ */
+ @JsonProperty(value = "mode")
+ private ImportMode mode;
+
+ /**
+ * Get the source of the image.
+ *
+ * @return the source value
+ */
+ public ImportSource source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source of the image.
+ *
+ * @param source the source value to set
+ * @return the ImportImageParameters object itself.
+ */
+ public ImportImageParameters withSource(ImportSource source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get list of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).
+ *
+ * @return the targetTags value
+ */
+ public List targetTags() {
+ return this.targetTags;
+ }
+
+ /**
+ * Set list of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).
+ *
+ * @param targetTags the targetTags value to set
+ * @return the ImportImageParameters object itself.
+ */
+ public ImportImageParameters withTargetTags(List targetTags) {
+ this.targetTags = targetTags;
+ return this;
+ }
+
+ /**
+ * Get list of strings of repository names to do a manifest only copy. No tag will be created.
+ *
+ * @return the untaggedTargetRepositories value
+ */
+ public List untaggedTargetRepositories() {
+ return this.untaggedTargetRepositories;
+ }
+
+ /**
+ * Set list of strings of repository names to do a manifest only copy. No tag will be created.
+ *
+ * @param untaggedTargetRepositories the untaggedTargetRepositories value to set
+ * @return the ImportImageParameters object itself.
+ */
+ public ImportImageParameters withUntaggedTargetRepositories(List untaggedTargetRepositories) {
+ this.untaggedTargetRepositories = untaggedTargetRepositories;
+ return this;
+ }
+
+ /**
+ * Get when Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins. Possible values include: 'NoForce', 'Force'.
+ *
+ * @return the mode value
+ */
+ public ImportMode mode() {
+ return this.mode;
+ }
+
+ /**
+ * Set when Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins. Possible values include: 'NoForce', 'Force'.
+ *
+ * @param mode the mode value to set
+ * @return the ImportImageParameters object itself.
+ */
+ public ImportImageParameters withMode(ImportMode mode) {
+ this.mode = mode;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportMode.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportMode.java
new file mode 100644
index 000000000000..a8d50071b6d6
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportMode.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ImportMode.
+ */
+public final class ImportMode extends ExpandableStringEnum {
+ /** Static value NoForce for ImportMode. */
+ public static final ImportMode NO_FORCE = fromString("NoForce");
+
+ /** Static value Force for ImportMode. */
+ public static final ImportMode FORCE = fromString("Force");
+
+ /**
+ * Creates or finds a ImportMode from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ImportMode
+ */
+ @JsonCreator
+ public static ImportMode fromString(String name) {
+ return fromString(name, ImportMode.class);
+ }
+
+ /**
+ * @return known ImportMode values
+ */
+ public static Collection values() {
+ return values(ImportMode.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportSource.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportSource.java
new file mode 100644
index 000000000000..ad69fe0e1df0
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ImportSource.java
@@ -0,0 +1,106 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The ImportSource model.
+ */
+public class ImportSource {
+ /**
+ * The resource identifier of the source Azure Container Registry.
+ */
+ @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
+ * 'latest' tag.
+ * Specify an image by tag ('hello-world:latest').
+ * Specify an image by sha256-based manifest digest
+ * ('hello-world@sha256:abc123').
+ */
+ @JsonProperty(value = "sourceImage", required = true)
+ private String sourceImage;
+
+ /**
+ * Get the resource identifier of the source Azure Container Registry.
+ *
+ * @return the resourceId value
+ */
+ public String resourceId() {
+ return this.resourceId;
+ }
+
+ /**
+ * Set the resource identifier of the source Azure Container Registry.
+ *
+ * @param resourceId the resourceId value to set
+ * @return the ImportSource object itself.
+ */
+ public ImportSource withResourceId(String resourceId) {
+ this.resourceId = 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.
+ Specify an image by tag ('hello-world:latest').
+ Specify an image by sha256-based manifest digest ('hello-world@sha256:abc123').
+ *
+ * @return the sourceImage value
+ */
+ public String sourceImage() {
+ return this.sourceImage;
+ }
+
+ /**
+ * Set repository name of the source image.
+ Specify an image by repository ('hello-world'). This will use the 'latest' tag.
+ Specify an image by tag ('hello-world:latest').
+ Specify an image by sha256-based manifest digest ('hello-world@sha256:abc123').
+ *
+ * @param sourceImage the sourceImage value to set
+ * @return the ImportSource object itself.
+ */
+ public ImportSource withSourceImage(String sourceImage) {
+ this.sourceImage = sourceImage;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OS.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OS.java
new file mode 100644
index 000000000000..a6a3d1d9b35e
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OS.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for OS.
+ */
+public final class OS extends ExpandableStringEnum {
+ /** Static value Windows for OS. */
+ public static final OS WINDOWS = fromString("Windows");
+
+ /** Static value Linux for OS. */
+ public static final OS LINUX = fromString("Linux");
+
+ /**
+ * Creates or finds a OS from its string representation.
+ * @param name a name to look for
+ * @return the corresponding OS
+ */
+ @JsonCreator
+ public static OS fromString(String name) {
+ return fromString(name, OS.class);
+ }
+
+ /**
+ * @return known OS values
+ */
+ public static Collection values() {
+ return values(OS.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDefinition.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDefinition.java
new file mode 100644
index 000000000000..5e12ec56c1cc
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDefinition.java
@@ -0,0 +1,40 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.OperationDefinitionInner;
+
+/**
+ * Type representing OperationDefinition.
+ */
+public interface OperationDefinition extends HasInner, HasManager {
+ /**
+ * @return the display value.
+ */
+ OperationDisplayDefinition display();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the origin value.
+ */
+ String origin();
+
+ /**
+ * @return the serviceSpecification value.
+ */
+ OperationServiceSpecificationDefinition serviceSpecification();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDisplayDefinition.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDisplayDefinition.java
new file mode 100644
index 000000000000..fd45da7cdd2c
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationDisplayDefinition.java
@@ -0,0 +1,121 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The display information for a container registry operation.
+ */
+public class OperationDisplayDefinition {
+ /**
+ * The resource provider name: Microsoft.ContainerRegistry.
+ */
+ @JsonProperty(value = "provider")
+ private String provider;
+
+ /**
+ * The resource on which the operation is performed.
+ */
+ @JsonProperty(value = "resource")
+ private String resource;
+
+ /**
+ * The operation that users can perform.
+ */
+ @JsonProperty(value = "operation")
+ private String operation;
+
+ /**
+ * The description for the operation.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * Get the resource provider name: Microsoft.ContainerRegistry.
+ *
+ * @return the provider value
+ */
+ public String provider() {
+ return this.provider;
+ }
+
+ /**
+ * Set the resource provider name: Microsoft.ContainerRegistry.
+ *
+ * @param provider the provider value to set
+ * @return the OperationDisplayDefinition object itself.
+ */
+ public OperationDisplayDefinition withProvider(String provider) {
+ this.provider = provider;
+ return this;
+ }
+
+ /**
+ * Get the resource on which the operation is performed.
+ *
+ * @return the resource value
+ */
+ public String resource() {
+ return this.resource;
+ }
+
+ /**
+ * Set the resource on which the operation is performed.
+ *
+ * @param resource the resource value to set
+ * @return the OperationDisplayDefinition object itself.
+ */
+ public OperationDisplayDefinition withResource(String resource) {
+ this.resource = resource;
+ return this;
+ }
+
+ /**
+ * Get the operation that users can perform.
+ *
+ * @return the operation value
+ */
+ public String operation() {
+ return this.operation;
+ }
+
+ /**
+ * Set the operation that users can perform.
+ *
+ * @param operation the operation value to set
+ * @return the OperationDisplayDefinition object itself.
+ */
+ public OperationDisplayDefinition withOperation(String operation) {
+ this.operation = operation;
+ return this;
+ }
+
+ /**
+ * Get the description for the operation.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description for the operation.
+ *
+ * @param description the description value to set
+ * @return the OperationDisplayDefinition object itself.
+ */
+ public OperationDisplayDefinition withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationMetricSpecificationDefinition.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationMetricSpecificationDefinition.java
new file mode 100644
index 000000000000..fc3477615832
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationServiceSpecificationDefinition.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/OperationServiceSpecificationDefinition.java
new file mode 100644
index 000000000000..f9d5bccc7e2b
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Operations.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Operations.java
new file mode 100644
index 000000000000..67fc42513672
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Operations.java
@@ -0,0 +1,27 @@
+/**
+ * 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_09_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.OperationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Operations.
+ */
+public interface Operations extends HasInner {
+ /**
+ * Lists all of the available Azure Container Registry REST API operations.
+ *
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PasswordName.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PasswordName.java
new file mode 100644
index 000000000000..bf868b2c1089
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PasswordName.java
@@ -0,0 +1,53 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for PasswordName.
+ */
+public enum PasswordName {
+ /** Enum value password. */
+ PASSWORD("password"),
+
+ /** Enum value password2. */
+ PASSWORD2("password2");
+
+ /** The actual serialized value for a PasswordName instance. */
+ private String value;
+
+ PasswordName(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a PasswordName instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed PasswordName object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static PasswordName fromString(String value) {
+ PasswordName[] items = PasswordName.values();
+ for (PasswordName item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformProperties.java
new file mode 100644
index 000000000000..ebc01bdcbfb5
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformProperties.java
@@ -0,0 +1,96 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The platform properties against which the run has to happen.
+ */
+public class PlatformProperties {
+ /**
+ * The operating system type required for the run. Possible values include:
+ * 'Windows', 'Linux'.
+ */
+ @JsonProperty(value = "os", required = true)
+ private OS os;
+
+ /**
+ * The OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ */
+ @JsonProperty(value = "architecture")
+ private Architecture architecture;
+
+ /**
+ * Variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ */
+ @JsonProperty(value = "variant")
+ private Variant variant;
+
+ /**
+ * Get the operating system type required for the run. Possible values include: 'Windows', 'Linux'.
+ *
+ * @return the os value
+ */
+ public OS os() {
+ return this.os;
+ }
+
+ /**
+ * Set the operating system type required for the run. Possible values include: 'Windows', 'Linux'.
+ *
+ * @param os the os value to set
+ * @return the PlatformProperties object itself.
+ */
+ public PlatformProperties withOs(OS os) {
+ this.os = os;
+ return this;
+ }
+
+ /**
+ * Get the OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ *
+ * @return the architecture value
+ */
+ public Architecture architecture() {
+ return this.architecture;
+ }
+
+ /**
+ * Set the OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ *
+ * @param architecture the architecture value to set
+ * @return the PlatformProperties object itself.
+ */
+ public PlatformProperties withArchitecture(Architecture architecture) {
+ this.architecture = architecture;
+ return this;
+ }
+
+ /**
+ * Get variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ *
+ * @return the variant value
+ */
+ public Variant variant() {
+ return this.variant;
+ }
+
+ /**
+ * Set variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ *
+ * @param variant the variant value to set
+ * @return the PlatformProperties object itself.
+ */
+ public PlatformProperties withVariant(Variant variant) {
+ this.variant = variant;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformUpdateParameters.java
new file mode 100644
index 000000000000..fc1a23e1c22d
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PlatformUpdateParameters.java
@@ -0,0 +1,96 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties for updating the platform configuration.
+ */
+public class PlatformUpdateParameters {
+ /**
+ * The operating system type required for the run. Possible values include:
+ * 'Windows', 'Linux'.
+ */
+ @JsonProperty(value = "os")
+ private OS os;
+
+ /**
+ * The OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ */
+ @JsonProperty(value = "architecture")
+ private Architecture architecture;
+
+ /**
+ * Variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ */
+ @JsonProperty(value = "variant")
+ private Variant variant;
+
+ /**
+ * Get the operating system type required for the run. Possible values include: 'Windows', 'Linux'.
+ *
+ * @return the os value
+ */
+ public OS os() {
+ return this.os;
+ }
+
+ /**
+ * Set the operating system type required for the run. Possible values include: 'Windows', 'Linux'.
+ *
+ * @param os the os value to set
+ * @return the PlatformUpdateParameters object itself.
+ */
+ public PlatformUpdateParameters withOs(OS os) {
+ this.os = os;
+ return this;
+ }
+
+ /**
+ * Get the OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ *
+ * @return the architecture value
+ */
+ public Architecture architecture() {
+ return this.architecture;
+ }
+
+ /**
+ * Set the OS architecture. Possible values include: 'amd64', 'x86', 'arm'.
+ *
+ * @param architecture the architecture value to set
+ * @return the PlatformUpdateParameters object itself.
+ */
+ public PlatformUpdateParameters withArchitecture(Architecture architecture) {
+ this.architecture = architecture;
+ return this;
+ }
+
+ /**
+ * Get variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ *
+ * @return the variant value
+ */
+ public Variant variant() {
+ return this.variant;
+ }
+
+ /**
+ * Set variant of the CPU. Possible values include: 'v6', 'v7', 'v8'.
+ *
+ * @param variant the variant value to set
+ * @return the PlatformUpdateParameters object itself.
+ */
+ public PlatformUpdateParameters withVariant(Variant variant) {
+ this.variant = variant;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PolicyStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/PolicyStatus.java
new file mode 100644
index 000000000000..21a975b6c183
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ProvisioningState.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ProvisioningState.java
new file mode 100644
index 000000000000..ce6c6ccc9920
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ProvisioningState.java
@@ -0,0 +1,53 @@
+/**
+ * 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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ProvisioningState.
+ */
+public final class ProvisioningState extends ExpandableStringEnum {
+ /** Static value Creating for ProvisioningState. */
+ public static final ProvisioningState CREATING = fromString("Creating");
+
+ /** Static value Updating for ProvisioningState. */
+ public static final ProvisioningState UPDATING = fromString("Updating");
+
+ /** Static value Deleting for ProvisioningState. */
+ public static final ProvisioningState DELETING = fromString("Deleting");
+
+ /** Static value Succeeded for ProvisioningState. */
+ public static final ProvisioningState SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Failed for ProvisioningState. */
+ public static final ProvisioningState FAILED = fromString("Failed");
+
+ /** Static value Canceled for ProvisioningState. */
+ public static final ProvisioningState CANCELED = fromString("Canceled");
+
+ /**
+ * Creates or finds a ProvisioningState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ProvisioningState
+ */
+ @JsonCreator
+ public static ProvisioningState fromString(String name) {
+ return fromString(name, ProvisioningState.class);
+ }
+
+ /**
+ * @return known ProvisioningState values
+ */
+ public static Collection values() {
+ return values(ProvisioningState.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/QuarantinePolicy.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/QuarantinePolicy.java
new file mode 100644
index 000000000000..af682ca1e901
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegenerateCredentialParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegenerateCredentialParameters.java
new file mode 100644
index 000000000000..c505c0eadb39
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegenerateCredentialParameters.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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The parameters used to regenerate the login credential.
+ */
+public class RegenerateCredentialParameters {
+ /**
+ * Specifies name of the password which should be regenerated -- password
+ * or password2. Possible values include: 'password', 'password2'.
+ */
+ @JsonProperty(value = "name", required = true)
+ private PasswordName name;
+
+ /**
+ * Get specifies name of the password which should be regenerated -- password or password2. Possible values include: 'password', 'password2'.
+ *
+ * @return the name value
+ */
+ public PasswordName name() {
+ return this.name;
+ }
+
+ /**
+ * Set specifies name of the password which should be regenerated -- password or password2. Possible values include: 'password', 'password2'.
+ *
+ * @param name the name value to set
+ * @return the RegenerateCredentialParameters object itself.
+ */
+ public RegenerateCredentialParameters withName(PasswordName name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registries.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registries.java
new file mode 100644
index 000000000000..bce3095e9088
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registries.java
@@ -0,0 +1,120 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+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_09_01.implementation.RegistryPoliciesInner;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RegistriesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Registries.
+ */
+public interface Registries extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Copies an image to this container registry from the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param parameters The parameters specifying the image to copy and the source container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable importImageAsync(String resourceGroupName, String registryName, ImportImageParameters parameters);
+
+ /**
+ * Lists the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listCredentialsAsync(String resourceGroupName, String registryName);
+
+ /**
+ * Regenerates one of the login credentials for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param name Specifies name of the password which should be regenerated -- password or password2. Possible values include: 'password', 'password2'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable 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);
+
+ /**
+ * Schedules a new run based on the request parameters and add it to the run queue.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param runRequest The parameters of a run that needs to scheduled.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable scheduleRunAsync(String resourceGroupName, String registryName, RunRequest runRequest);
+
+ /**
+ * Get the upload location for the user to be able to upload the source.
+ *
+ * @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 getBuildSourceUploadUrlAsync(String resourceGroupName, String registryName);
+
+ /**
+ * Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.
+ *
+ * @param name The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable checkNameAvailabilityAsync(String name);
+
+ /**
+ * Gets the quota usages for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable 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_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registry.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registry.java
new file mode 100644
index 000000000000..b0e249cf5ddf
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Registry.java
@@ -0,0 +1,176 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import org.joda.time.DateTime;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RegistryInner;
+
+/**
+ * Type representing Registry.
+ */
+public interface Registry extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the adminUserEnabled value.
+ */
+ Boolean adminUserEnabled();
+
+ /**
+ * @return the creationDate value.
+ */
+ DateTime creationDate();
+
+ /**
+ * @return the loginServer value.
+ */
+ String loginServer();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ProvisioningState provisioningState();
+
+ /**
+ * @return the sku value.
+ */
+ Sku sku();
+
+ /**
+ * @return the status value.
+ */
+ Status status();
+
+ /**
+ * @return the storageAccount value.
+ */
+ StorageAccountProperties storageAccount();
+
+ /**
+ * The entirety of the Registry definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithSku, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Registry definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Registry definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the Registry definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the registry definition allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The SKU of the container registry
+ * @return the next definition stage
+*/
+ WithCreate withSku(Sku sku);
+ }
+
+ /**
+ * The stage of the registry definition allowing to specify AdminUserEnabled.
+ */
+ interface WithAdminUserEnabled {
+ /**
+ * Specifies adminUserEnabled.
+ * @param adminUserEnabled The value that indicates whether the admin user is enabled
+ * @return the next definition stage
+ */
+ WithCreate withAdminUserEnabled(Boolean adminUserEnabled);
+ }
+
+ /**
+ * The stage of the registry definition allowing to specify StorageAccount.
+ */
+ interface WithStorageAccount {
+ /**
+ * Specifies storageAccount.
+ * @param storageAccount The properties of the storage account for the container registry. Only applicable to Classic SKU
+ * @return the next definition stage
+ */
+ WithCreate withStorageAccount(StorageAccountProperties storageAccount);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, Resource.DefinitionWithTags, DefinitionStages.WithAdminUserEnabled, DefinitionStages.WithStorageAccount {
+ }
+ }
+ /**
+ * The template for a Registry update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithAdminUserEnabled, UpdateStages.WithSku, UpdateStages.WithStorageAccount {
+ }
+
+ /**
+ * Grouping of Registry update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the registry update allowing to specify AdminUserEnabled.
+ */
+ interface WithAdminUserEnabled {
+ /**
+ * Specifies adminUserEnabled.
+ * @param adminUserEnabled The value that indicates whether the admin user is enabled
+ * @return the next update stage
+ */
+ Update withAdminUserEnabled(Boolean adminUserEnabled);
+ }
+
+ /**
+ * The stage of the registry update allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The SKU of the container registry
+ * @return the next update stage
+ */
+ Update withSku(Sku sku);
+ }
+
+ /**
+ * The stage of the registry update allowing to specify StorageAccount.
+ */
+ interface WithStorageAccount {
+ /**
+ * Specifies storageAccount.
+ * @param storageAccount The parameters of a storage account for the container registry. Only applicable to Classic SKU. If specified, the storage account must be in the same physical location as the container registry
+ * @return the next update stage
+ */
+ Update withStorageAccount(StorageAccountProperties storageAccount);
+ }
+
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryListCredentialsResult.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryListCredentialsResult.java
new file mode 100644
index 000000000000..2c6929b692c0
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryListCredentialsResult.java
@@ -0,0 +1,31 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RegistryListCredentialsResultInner;
+import java.util.List;
+
+/**
+ * Type representing RegistryListCredentialsResult.
+ */
+public interface RegistryListCredentialsResult extends HasInner, HasManager {
+ /**
+ * @return the passwords value.
+ */
+ List passwords();
+
+ /**
+ * @return the username value.
+ */
+ String username();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameCheckRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameCheckRequest.java
new file mode 100644
index 000000000000..66e17d764fc2
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameCheckRequest.java
@@ -0,0 +1,78 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A request to check whether a container registry name is available.
+ */
+public class RegistryNameCheckRequest {
+ /**
+ * The name of the container registry.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The resource type of the container registry. This field must be set to
+ * 'Microsoft.ContainerRegistry/registries'.
+ */
+ @JsonProperty(value = "type", required = true)
+ private String type;
+
+ /**
+ * Creates an instance of RegistryNameCheckRequest class.
+ * @param name the name of the container registry.
+ */
+ public RegistryNameCheckRequest() {
+ type = "Microsoft.ContainerRegistry/registries";
+ }
+
+ /**
+ * Get the name of the container registry.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the container registry.
+ *
+ * @param name the name value to set
+ * @return the RegistryNameCheckRequest object itself.
+ */
+ public RegistryNameCheckRequest withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the resource type of the container registry. This field must be set to 'Microsoft.ContainerRegistry/registries'.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the resource type of the container registry. This field must be set to 'Microsoft.ContainerRegistry/registries'.
+ *
+ * @param type the type value to set
+ * @return the RegistryNameCheckRequest object itself.
+ */
+ public RegistryNameCheckRequest withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameStatus.java
new file mode 100644
index 000000000000..1c87e867af45
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryNameStatus.java
@@ -0,0 +1,35 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RegistryNameStatusInner;
+
+/**
+ * Type representing RegistryNameStatus.
+ */
+public interface RegistryNameStatus extends HasInner, HasManager {
+ /**
+ * @return the message value.
+ */
+ String message();
+
+ /**
+ * @return the nameAvailable value.
+ */
+ Boolean nameAvailable();
+
+ /**
+ * @return the reason value.
+ */
+ String reason();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryPassword.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryPassword.java
new file mode 100644
index 000000000000..fae02b02e1eb
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryPassword.java
@@ -0,0 +1,69 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The login password for the container registry.
+ */
+public class RegistryPassword {
+ /**
+ * The password name. Possible values include: 'password', 'password2'.
+ */
+ @JsonProperty(value = "name")
+ private PasswordName name;
+
+ /**
+ * The password value.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get the password name. Possible values include: 'password', 'password2'.
+ *
+ * @return the name value
+ */
+ public PasswordName name() {
+ return this.name;
+ }
+
+ /**
+ * Set the password name. Possible values include: 'password', 'password2'.
+ *
+ * @param name the name value to set
+ * @return the RegistryPassword object itself.
+ */
+ public RegistryPassword withName(PasswordName name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the password value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the password value.
+ *
+ * @param value the value value to set
+ * @return the RegistryPassword object itself.
+ */
+ public RegistryPassword withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryPolicies.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryPolicies.java
new file mode 100644
index 000000000000..758f635c5a79
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUpdateParameters.java
new file mode 100644
index 000000000000..97ddffade247
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUpdateParameters.java
@@ -0,0 +1,126 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The parameters for updating a container registry.
+ */
+@JsonFlatten
+public class RegistryUpdateParameters {
+ /**
+ * The tags for the container registry.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * The SKU of the container registry.
+ */
+ @JsonProperty(value = "sku")
+ private Sku sku;
+
+ /**
+ * The value that indicates whether the admin user is enabled.
+ */
+ @JsonProperty(value = "properties.adminUserEnabled")
+ private Boolean adminUserEnabled;
+
+ /**
+ * The parameters of a storage account for the container registry. Only
+ * applicable to Classic SKU. If specified, the storage account must be in
+ * the same physical location as the container registry.
+ */
+ @JsonProperty(value = "properties.storageAccount")
+ private StorageAccountProperties storageAccount;
+
+ /**
+ * Get the tags for the container registry.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the tags for the container registry.
+ *
+ * @param tags the tags value to set
+ * @return the RegistryUpdateParameters object itself.
+ */
+ public RegistryUpdateParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ /**
+ * Get the SKU of the container registry.
+ *
+ * @return the sku value
+ */
+ public Sku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the SKU of the container registry.
+ *
+ * @param sku the sku value to set
+ * @return the RegistryUpdateParameters object itself.
+ */
+ public RegistryUpdateParameters withSku(Sku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the value that indicates whether the admin user is enabled.
+ *
+ * @return the adminUserEnabled value
+ */
+ public Boolean adminUserEnabled() {
+ return this.adminUserEnabled;
+ }
+
+ /**
+ * Set the value that indicates whether the admin user is enabled.
+ *
+ * @param adminUserEnabled the adminUserEnabled value to set
+ * @return the RegistryUpdateParameters object itself.
+ */
+ public RegistryUpdateParameters withAdminUserEnabled(Boolean adminUserEnabled) {
+ this.adminUserEnabled = adminUserEnabled;
+ return this;
+ }
+
+ /**
+ * Get the parameters of a storage account for the container registry. Only applicable to Classic SKU. If specified, the storage account must be in the same physical location as the container registry.
+ *
+ * @return the storageAccount value
+ */
+ public StorageAccountProperties storageAccount() {
+ return this.storageAccount;
+ }
+
+ /**
+ * Set the parameters of a storage account for the container registry. Only applicable to Classic SKU. If specified, the storage account must be in the same physical location as the container registry.
+ *
+ * @param storageAccount the storageAccount value to set
+ * @return the RegistryUpdateParameters object itself.
+ */
+ public RegistryUpdateParameters withStorageAccount(StorageAccountProperties storageAccount) {
+ this.storageAccount = storageAccount;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsage.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsage.java
new file mode 100644
index 000000000000..8260846cd130
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsage.java
@@ -0,0 +1,121 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The quota usage for a container registry.
+ */
+public class RegistryUsage {
+ /**
+ * The name of the usage.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The limit of the usage.
+ */
+ @JsonProperty(value = "limit")
+ private Long limit;
+
+ /**
+ * The current value of the usage.
+ */
+ @JsonProperty(value = "currentValue")
+ private Long currentValue;
+
+ /**
+ * The unit of measurement. Possible values include: 'Count', 'Bytes'.
+ */
+ @JsonProperty(value = "unit")
+ private RegistryUsageUnit unit;
+
+ /**
+ * Get the name of the usage.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the usage.
+ *
+ * @param name the name value to set
+ * @return the RegistryUsage object itself.
+ */
+ public RegistryUsage withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the limit of the usage.
+ *
+ * @return the limit value
+ */
+ public Long limit() {
+ return this.limit;
+ }
+
+ /**
+ * Set the limit of the usage.
+ *
+ * @param limit the limit value to set
+ * @return the RegistryUsage object itself.
+ */
+ public RegistryUsage withLimit(Long limit) {
+ this.limit = limit;
+ return this;
+ }
+
+ /**
+ * Get the current value of the usage.
+ *
+ * @return the currentValue value
+ */
+ public Long currentValue() {
+ return this.currentValue;
+ }
+
+ /**
+ * Set the current value of the usage.
+ *
+ * @param currentValue the currentValue value to set
+ * @return the RegistryUsage object itself.
+ */
+ public RegistryUsage withCurrentValue(Long currentValue) {
+ this.currentValue = currentValue;
+ return this;
+ }
+
+ /**
+ * Get the unit of measurement. Possible values include: 'Count', 'Bytes'.
+ *
+ * @return the unit value
+ */
+ public RegistryUsageUnit unit() {
+ return this.unit;
+ }
+
+ /**
+ * Set the unit of measurement. Possible values include: 'Count', 'Bytes'.
+ *
+ * @param unit the unit value to set
+ * @return the RegistryUsage object itself.
+ */
+ public RegistryUsage withUnit(RegistryUsageUnit unit) {
+ this.unit = unit;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageListResult.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageListResult.java
new file mode 100644
index 000000000000..d31494b80898
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageListResult.java
@@ -0,0 +1,26 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RegistryUsageListResultInner;
+import java.util.List;
+
+/**
+ * Type representing RegistryUsageListResult.
+ */
+public interface RegistryUsageListResult extends HasInner, HasManager {
+ /**
+ * @return the value value.
+ */
+ List value();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageUnit.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageUnit.java
new file mode 100644
index 000000000000..793e31f78848
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RegistryUsageUnit.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for RegistryUsageUnit.
+ */
+public final class RegistryUsageUnit extends ExpandableStringEnum {
+ /** Static value Count for RegistryUsageUnit. */
+ public static final RegistryUsageUnit COUNT = fromString("Count");
+
+ /** Static value Bytes for RegistryUsageUnit. */
+ public static final RegistryUsageUnit BYTES = fromString("Bytes");
+
+ /**
+ * Creates or finds a RegistryUsageUnit from its string representation.
+ * @param name a name to look for
+ * @return the corresponding RegistryUsageUnit
+ */
+ @JsonCreator
+ public static RegistryUsageUnit fromString(String name) {
+ return fromString(name, RegistryUsageUnit.class);
+ }
+
+ /**
+ * @return known RegistryUsageUnit values
+ */
+ public static Collection values() {
+ return values(RegistryUsageUnit.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replication.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replication.java
new file mode 100644
index 000000000000..e54c48342e33
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replication.java
@@ -0,0 +1,145 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ReplicationInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import java.util.Map;
+
+/**
+ * Type representing Replication.
+ */
+public interface Replication extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ProvisioningState provisioningState();
+
+ /**
+ * @return the status value.
+ */
+ Status status();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Replication definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithRegistry, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Replication definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Replication definition.
+ */
+ interface Blank extends WithRegistry {
+ }
+
+ /**
+ * The stage of the replication definition allowing to specify Registry.
+ */
+ interface WithRegistry {
+ /**
+ * Specifies resourceGroupName, registryName.
+ * @param resourceGroupName The name of the resource group to which the container registry belongs
+ * @param registryName The name of the container registry
+ * @return the next definition stage
+ */
+ WithLocation withExistingRegistry(String resourceGroupName, String registryName);
+ }
+
+ /**
+ * The stage of the replication definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The location of the resource. This cannot be changed after the resource is created
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the replication definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags of the resource
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a Replication update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of Replication update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the replication update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags of the resource
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ReplicationUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ReplicationUpdateParameters.java
new file mode 100644
index 000000000000..81baa39b55ec
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/ReplicationUpdateParameters.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_09_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The parameters for updating a replication.
+ */
+public class ReplicationUpdateParameters {
+ /**
+ * The tags for the replication.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get the tags for the replication.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the tags for the replication.
+ *
+ * @param tags the tags value to set
+ * @return the ReplicationUpdateParameters object itself.
+ */
+ public ReplicationUpdateParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replications.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replications.java
new file mode 100644
index 000000000000..491ed19880a0
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Replications.java
@@ -0,0 +1,53 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ReplicationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Replications.
+ */
+public interface Replications extends SupportsCreating, HasInner {
+ /**
+ * Gets the properties of the specified replication.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String registryName, String replicationName);
+
+ /**
+ * Lists all the replications for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String registryName);
+
+ /**
+ * Deletes a replication from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param replicationName The name of the replication.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String registryName, String replicationName);
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Request.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Request.java
new file mode 100644
index 000000000000..bf3346acc91f
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Request.java
@@ -0,0 +1,150 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The request that generated the event.
+ */
+public class Request {
+ /**
+ * The ID of the request that initiated the event.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * The IP or hostname and possibly port of the client connection that
+ * initiated the event. This is the RemoteAddr from the standard http
+ * request.
+ */
+ @JsonProperty(value = "addr")
+ private String addr;
+
+ /**
+ * The externally accessible hostname of the registry instance, as
+ * specified by the http host header on incoming requests.
+ */
+ @JsonProperty(value = "host")
+ private String host;
+
+ /**
+ * The request method that generated the event.
+ */
+ @JsonProperty(value = "method")
+ private String method;
+
+ /**
+ * The user agent header of the request.
+ */
+ @JsonProperty(value = "useragent")
+ private String useragent;
+
+ /**
+ * Get the ID of the request that initiated the event.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the ID of the request that initiated the event.
+ *
+ * @param id the id value to set
+ * @return the Request object itself.
+ */
+ public Request withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request.
+ *
+ * @return the addr value
+ */
+ public String addr() {
+ return this.addr;
+ }
+
+ /**
+ * Set the IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request.
+ *
+ * @param addr the addr value to set
+ * @return the Request object itself.
+ */
+ public Request withAddr(String addr) {
+ this.addr = addr;
+ return this;
+ }
+
+ /**
+ * Get the externally accessible hostname of the registry instance, as specified by the http host header on incoming requests.
+ *
+ * @return the host value
+ */
+ public String host() {
+ return this.host;
+ }
+
+ /**
+ * Set the externally accessible hostname of the registry instance, as specified by the http host header on incoming requests.
+ *
+ * @param host the host value to set
+ * @return the Request object itself.
+ */
+ public Request withHost(String host) {
+ this.host = host;
+ return this;
+ }
+
+ /**
+ * Get the request method that generated the event.
+ *
+ * @return the method value
+ */
+ public String method() {
+ return this.method;
+ }
+
+ /**
+ * Set the request method that generated the event.
+ *
+ * @param method the method value to set
+ * @return the Request object itself.
+ */
+ public Request withMethod(String method) {
+ this.method = method;
+ return this;
+ }
+
+ /**
+ * Get the user agent header of the request.
+ *
+ * @return the useragent value
+ */
+ public String useragent() {
+ return this.useragent;
+ }
+
+ /**
+ * Set the user agent header of the request.
+ *
+ * @param useragent the useragent value to set
+ * @return the Request object itself.
+ */
+ public Request withUseragent(String useragent) {
+ this.useragent = useragent;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Run.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Run.java
new file mode 100644
index 000000000000..636c2fa24826
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Run.java
@@ -0,0 +1,139 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RunInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import org.joda.time.DateTime;
+import java.util.List;
+
+/**
+ * Type representing Run.
+ */
+public interface Run extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the agentConfiguration value.
+ */
+ AgentProperties agentConfiguration();
+
+ /**
+ * @return the createTime value.
+ */
+ DateTime createTime();
+
+ /**
+ * @return the finishTime value.
+ */
+ DateTime finishTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the imageUpdateTrigger value.
+ */
+ ImageUpdateTrigger imageUpdateTrigger();
+
+ /**
+ * @return the isArchiveEnabled value.
+ */
+ Boolean isArchiveEnabled();
+
+ /**
+ * @return the lastUpdatedTime value.
+ */
+ DateTime lastUpdatedTime();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputImages value.
+ */
+ List outputImages();
+
+ /**
+ * @return the platform value.
+ */
+ PlatformProperties platform();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ProvisioningState provisioningState();
+
+ /**
+ * @return the runId value.
+ */
+ String runId();
+
+ /**
+ * @return the runType value.
+ */
+ RunType runType();
+
+ /**
+ * @return the sourceTrigger value.
+ */
+ SourceTriggerDescriptor sourceTrigger();
+
+ /**
+ * @return the startTime value.
+ */
+ DateTime startTime();
+
+ /**
+ * @return the status value.
+ */
+ RunStatus status();
+
+ /**
+ * @return the task value.
+ */
+ String task();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The template for a Run update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithIsArchiveEnabled {
+ }
+
+ /**
+ * Grouping of Run update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the run update allowing to specify IsArchiveEnabled.
+ */
+ interface WithIsArchiveEnabled {
+ /**
+ * Specifies isArchiveEnabled.
+ * @param isArchiveEnabled The value that indicates whether archiving is enabled or not
+ * @return the next update stage
+ */
+ Update withIsArchiveEnabled(Boolean isArchiveEnabled);
+ }
+
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunFilter.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunFilter.java
new file mode 100644
index 000000000000..78fa73ce0790
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunFilter.java
@@ -0,0 +1,233 @@
+/**
+ * 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_09_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties that are enabled for Odata querying on runs.
+ */
+public class RunFilter {
+ /**
+ * The unique identifier for the run.
+ */
+ @JsonProperty(value = "runId")
+ private String runId;
+
+ /**
+ * The type of run. Possible values include: 'QuickBuild', 'QuickRun',
+ * 'AutoBuild', 'AutoRun'.
+ */
+ @JsonProperty(value = "runType")
+ private RunType runType;
+
+ /**
+ * The current status of the run. Possible values include: 'Queued',
+ * 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', 'Error',
+ * 'Timeout'.
+ */
+ @JsonProperty(value = "status")
+ private RunStatus status;
+
+ /**
+ * The create time for a run.
+ */
+ @JsonProperty(value = "createTime")
+ private DateTime createTime;
+
+ /**
+ * The time the run finished.
+ */
+ @JsonProperty(value = "finishTime")
+ private DateTime finishTime;
+
+ /**
+ * The list of comma-separated image manifests that were generated from the
+ * run. This is applicable if the run is of
+ * build type.
+ */
+ @JsonProperty(value = "outputImageManifests")
+ private String outputImageManifests;
+
+ /**
+ * The value that indicates whether archiving is enabled or not.
+ */
+ @JsonProperty(value = "isArchiveEnabled")
+ private Boolean isArchiveEnabled;
+
+ /**
+ * The name of the task that the run corresponds to.
+ */
+ @JsonProperty(value = "taskName")
+ private String taskName;
+
+ /**
+ * Get the unique identifier for the run.
+ *
+ * @return the runId value
+ */
+ public String runId() {
+ return this.runId;
+ }
+
+ /**
+ * Set the unique identifier for the run.
+ *
+ * @param runId the runId value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withRunId(String runId) {
+ this.runId = runId;
+ return this;
+ }
+
+ /**
+ * Get the type of run. Possible values include: 'QuickBuild', 'QuickRun', 'AutoBuild', 'AutoRun'.
+ *
+ * @return the runType value
+ */
+ public RunType runType() {
+ return this.runType;
+ }
+
+ /**
+ * Set the type of run. Possible values include: 'QuickBuild', 'QuickRun', 'AutoBuild', 'AutoRun'.
+ *
+ * @param runType the runType value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withRunType(RunType runType) {
+ this.runType = runType;
+ return this;
+ }
+
+ /**
+ * Get the current status of the run. Possible values include: 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', 'Error', 'Timeout'.
+ *
+ * @return the status value
+ */
+ public RunStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of the run. Possible values include: 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', 'Error', 'Timeout'.
+ *
+ * @param status the status value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withStatus(RunStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the create time for a run.
+ *
+ * @return the createTime value
+ */
+ public DateTime createTime() {
+ return this.createTime;
+ }
+
+ /**
+ * Set the create time for a run.
+ *
+ * @param createTime the createTime value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withCreateTime(DateTime createTime) {
+ this.createTime = createTime;
+ return this;
+ }
+
+ /**
+ * Get the time the run finished.
+ *
+ * @return the finishTime value
+ */
+ public DateTime finishTime() {
+ return this.finishTime;
+ }
+
+ /**
+ * Set the time the run finished.
+ *
+ * @param finishTime the finishTime value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withFinishTime(DateTime finishTime) {
+ this.finishTime = finishTime;
+ return this;
+ }
+
+ /**
+ * Get the list of comma-separated image manifests that were generated from the run. This is applicable if the run is of
+ build type.
+ *
+ * @return the outputImageManifests value
+ */
+ public String outputImageManifests() {
+ return this.outputImageManifests;
+ }
+
+ /**
+ * Set the list of comma-separated image manifests that were generated from the run. This is applicable if the run is of
+ build type.
+ *
+ * @param outputImageManifests the outputImageManifests value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withOutputImageManifests(String outputImageManifests) {
+ this.outputImageManifests = outputImageManifests;
+ return this;
+ }
+
+ /**
+ * Get the value that indicates whether archiving is enabled or not.
+ *
+ * @return the isArchiveEnabled value
+ */
+ public Boolean isArchiveEnabled() {
+ return this.isArchiveEnabled;
+ }
+
+ /**
+ * Set the value that indicates whether archiving is enabled or not.
+ *
+ * @param isArchiveEnabled the isArchiveEnabled value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withIsArchiveEnabled(Boolean isArchiveEnabled) {
+ this.isArchiveEnabled = isArchiveEnabled;
+ return this;
+ }
+
+ /**
+ * Get the name of the task that the run corresponds to.
+ *
+ * @return the taskName value
+ */
+ public String taskName() {
+ return this.taskName;
+ }
+
+ /**
+ * Set the name of the task that the run corresponds to.
+ *
+ * @param taskName the taskName value to set
+ * @return the RunFilter object itself.
+ */
+ public RunFilter withTaskName(String taskName) {
+ this.taskName = taskName;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunGetLogResult.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunGetLogResult.java
new file mode 100644
index 000000000000..ab99ac273964
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunGetLogResult.java
@@ -0,0 +1,25 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RunGetLogResultInner;
+
+/**
+ * Type representing RunGetLogResult.
+ */
+public interface RunGetLogResult extends HasInner, HasManager {
+ /**
+ * @return the logLink value.
+ */
+ String logLink();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunRequest.java
new file mode 100644
index 000000000000..fda7672c5183
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunRequest.java
@@ -0,0 +1,55 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * The request parameters for scheduling a run.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("RunRequest")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "DockerBuildRequest", value = DockerBuildRequest.class),
+ @JsonSubTypes.Type(name = "FileTaskRunRequest", value = FileTaskRunRequest.class),
+ @JsonSubTypes.Type(name = "TaskRunRequest", value = TaskRunRequest.class),
+ @JsonSubTypes.Type(name = "EncodedTaskRunRequest", value = EncodedTaskRunRequest.class)
+})
+public class RunRequest {
+ /**
+ * The value that indicates whether archiving is enabled for the run or
+ * not.
+ */
+ @JsonProperty(value = "isArchiveEnabled")
+ private Boolean isArchiveEnabled;
+
+ /**
+ * Get the value that indicates whether archiving is enabled for the run or not.
+ *
+ * @return the isArchiveEnabled value
+ */
+ public Boolean isArchiveEnabled() {
+ return this.isArchiveEnabled;
+ }
+
+ /**
+ * Set the value that indicates whether archiving is enabled for the run or not.
+ *
+ * @param isArchiveEnabled the isArchiveEnabled value to set
+ * @return the RunRequest object itself.
+ */
+ public RunRequest withIsArchiveEnabled(Boolean isArchiveEnabled) {
+ this.isArchiveEnabled = isArchiveEnabled;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunStatus.java
new file mode 100644
index 000000000000..f17dea830399
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunStatus.java
@@ -0,0 +1,59 @@
+/**
+ * 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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for RunStatus.
+ */
+public final class RunStatus extends ExpandableStringEnum {
+ /** Static value Queued for RunStatus. */
+ public static final RunStatus QUEUED = fromString("Queued");
+
+ /** Static value Started for RunStatus. */
+ public static final RunStatus STARTED = fromString("Started");
+
+ /** Static value Running for RunStatus. */
+ public static final RunStatus RUNNING = fromString("Running");
+
+ /** Static value Succeeded for RunStatus. */
+ public static final RunStatus SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Failed for RunStatus. */
+ public static final RunStatus FAILED = fromString("Failed");
+
+ /** Static value Canceled for RunStatus. */
+ public static final RunStatus CANCELED = fromString("Canceled");
+
+ /** Static value Error for RunStatus. */
+ public static final RunStatus ERROR = fromString("Error");
+
+ /** Static value Timeout for RunStatus. */
+ public static final RunStatus TIMEOUT = fromString("Timeout");
+
+ /**
+ * Creates or finds a RunStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding RunStatus
+ */
+ @JsonCreator
+ public static RunStatus fromString(String name) {
+ return fromString(name, RunStatus.class);
+ }
+
+ /**
+ * @return known RunStatus values
+ */
+ public static Collection values() {
+ return values(RunStatus.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunType.java
new file mode 100644
index 000000000000..192672c3d387
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunType.java
@@ -0,0 +1,47 @@
+/**
+ * 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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for RunType.
+ */
+public final class RunType extends ExpandableStringEnum {
+ /** Static value QuickBuild for RunType. */
+ public static final RunType QUICK_BUILD = fromString("QuickBuild");
+
+ /** Static value QuickRun for RunType. */
+ public static final RunType QUICK_RUN = fromString("QuickRun");
+
+ /** Static value AutoBuild for RunType. */
+ public static final RunType AUTO_BUILD = fromString("AutoBuild");
+
+ /** Static value AutoRun for RunType. */
+ public static final RunType AUTO_RUN = fromString("AutoRun");
+
+ /**
+ * Creates or finds a RunType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding RunType
+ */
+ @JsonCreator
+ public static RunType fromString(String name) {
+ return fromString(name, RunType.class);
+ }
+
+ /**
+ * @return known RunType values
+ */
+ public static Collection values() {
+ return values(RunType.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunUpdateParameters.java
new file mode 100644
index 000000000000..22c5c3883a31
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/RunUpdateParameters.java
@@ -0,0 +1,43 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The set of run properties that can be updated.
+ */
+public class RunUpdateParameters {
+ /**
+ * The value that indicates whether archiving is enabled or not.
+ */
+ @JsonProperty(value = "isArchiveEnabled")
+ private Boolean isArchiveEnabled;
+
+ /**
+ * Get the value that indicates whether archiving is enabled or not.
+ *
+ * @return the isArchiveEnabled value
+ */
+ public Boolean isArchiveEnabled() {
+ return this.isArchiveEnabled;
+ }
+
+ /**
+ * Set the value that indicates whether archiving is enabled or not.
+ *
+ * @param isArchiveEnabled the isArchiveEnabled value to set
+ * @return the RunUpdateParameters object itself.
+ */
+ public RunUpdateParameters withIsArchiveEnabled(Boolean isArchiveEnabled) {
+ this.isArchiveEnabled = isArchiveEnabled;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Runs.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Runs.java
new file mode 100644
index 000000000000..d692c1477159
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Runs.java
@@ -0,0 +1,63 @@
+/**
+ * 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_09_01;
+
+import rx.Observable;
+import rx.Completable;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.RunsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Runs.
+ */
+public interface Runs extends HasInner {
+ /**
+ * Gets a link to download the run logs.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param runId The run ID.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getLogSasUrlAsync(String resourceGroupName, String registryName, String runId);
+
+ /**
+ * Cancel an existing run.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param runId The run ID.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable cancelAsync(String resourceGroupName, String registryName, String runId);
+
+ /**
+ * Gets the detailed information for a given run.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param runId The run ID.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String registryName, String runId);
+
+ /**
+ * Gets all the runs for a 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 listAsync(final String resourceGroupName, final String registryName);
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SetValue.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SetValue.java
new file mode 100644
index 000000000000..f66e885e381d
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SetValue.java
@@ -0,0 +1,95 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of a overridable value that can be passed to a task template.
+ */
+public class SetValue {
+ /**
+ * The name of the overridable value.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The overridable value.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * Flag to indicate whether the value represents a secret or not.
+ */
+ @JsonProperty(value = "isSecret")
+ private Boolean isSecret;
+
+ /**
+ * Get the name of the overridable value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the overridable value.
+ *
+ * @param name the name value to set
+ * @return the SetValue object itself.
+ */
+ public SetValue withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the overridable value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the overridable value.
+ *
+ * @param value the value value to set
+ * @return the SetValue object itself.
+ */
+ public SetValue withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get flag to indicate whether the value represents a secret or not.
+ *
+ * @return the isSecret value
+ */
+ public Boolean isSecret() {
+ return this.isSecret;
+ }
+
+ /**
+ * Set flag to indicate whether the value represents a secret or not.
+ *
+ * @param isSecret the isSecret value to set
+ * @return the SetValue object itself.
+ */
+ public SetValue withIsSecret(Boolean isSecret) {
+ this.isSecret = isSecret;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Sku.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Sku.java
new file mode 100644
index 000000000000..de532203dc0c
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Sku.java
@@ -0,0 +1,60 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The SKU of a container registry.
+ */
+public class Sku {
+ /**
+ * The SKU name of the container registry. Required for registry creation.
+ * Possible values include: 'Classic', 'Basic', 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "name", required = true)
+ private SkuName name;
+
+ /**
+ * The SKU tier based on the SKU name. Possible values include: 'Classic',
+ * 'Basic', 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "tier", access = JsonProperty.Access.WRITE_ONLY)
+ private SkuTier tier;
+
+ /**
+ * Get the SKU name of the container registry. Required for registry creation. Possible values include: 'Classic', 'Basic', 'Standard', 'Premium'.
+ *
+ * @return the name value
+ */
+ public SkuName name() {
+ return this.name;
+ }
+
+ /**
+ * Set the SKU name of the container registry. Required for registry creation. Possible values include: 'Classic', 'Basic', 'Standard', 'Premium'.
+ *
+ * @param name the name value to set
+ * @return the Sku object itself.
+ */
+ public Sku withName(SkuName name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the SKU tier based on the SKU name. Possible values include: 'Classic', 'Basic', 'Standard', 'Premium'.
+ *
+ * @return the tier value
+ */
+ public SkuTier tier() {
+ return this.tier;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuName.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuName.java
new file mode 100644
index 000000000000..be86bbab23ae
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuName.java
@@ -0,0 +1,47 @@
+/**
+ * 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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SkuName.
+ */
+public final class SkuName extends ExpandableStringEnum {
+ /** Static value Classic for SkuName. */
+ public static final SkuName CLASSIC = fromString("Classic");
+
+ /** Static value Basic for SkuName. */
+ public static final SkuName BASIC = fromString("Basic");
+
+ /** Static value Standard for SkuName. */
+ public static final SkuName STANDARD = fromString("Standard");
+
+ /** Static value Premium for SkuName. */
+ public static final SkuName PREMIUM = fromString("Premium");
+
+ /**
+ * Creates or finds a SkuName from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SkuName
+ */
+ @JsonCreator
+ public static SkuName fromString(String name) {
+ return fromString(name, SkuName.class);
+ }
+
+ /**
+ * @return known SkuName values
+ */
+ public static Collection values() {
+ return values(SkuName.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuTier.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuTier.java
new file mode 100644
index 000000000000..66ed20f73f50
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SkuTier.java
@@ -0,0 +1,47 @@
+/**
+ * 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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SkuTier.
+ */
+public final class SkuTier extends ExpandableStringEnum {
+ /** Static value Classic for SkuTier. */
+ public static final SkuTier CLASSIC = fromString("Classic");
+
+ /** Static value Basic for SkuTier. */
+ public static final SkuTier BASIC = fromString("Basic");
+
+ /** Static value Standard for SkuTier. */
+ public static final SkuTier STANDARD = fromString("Standard");
+
+ /** Static value Premium for SkuTier. */
+ public static final SkuTier PREMIUM = fromString("Premium");
+
+ /**
+ * Creates or finds a SkuTier from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SkuTier
+ */
+ @JsonCreator
+ public static SkuTier fromString(String name) {
+ return fromString(name, SkuTier.class);
+ }
+
+ /**
+ * @return known SkuTier values
+ */
+ public static Collection values() {
+ return values(SkuTier.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Source.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Source.java
new file mode 100644
index 000000000000..4532d4e8db1a
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Source.java
@@ -0,0 +1,72 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The registry node that generated the event. Put differently, while the actor
+ * initiates the event, the source generates it.
+ */
+public class Source {
+ /**
+ * The IP or hostname and the port of the registry node that generated the
+ * event. Generally, this will be resolved by os.Hostname() along with the
+ * running port.
+ */
+ @JsonProperty(value = "addr")
+ private String addr;
+
+ /**
+ * The running instance of an application. Changes after each restart.
+ */
+ @JsonProperty(value = "instanceID")
+ private String instanceID;
+
+ /**
+ * Get the IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port.
+ *
+ * @return the addr value
+ */
+ public String addr() {
+ return this.addr;
+ }
+
+ /**
+ * Set the IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port.
+ *
+ * @param addr the addr value to set
+ * @return the Source object itself.
+ */
+ public Source withAddr(String addr) {
+ this.addr = addr;
+ return this;
+ }
+
+ /**
+ * Get the running instance of an application. Changes after each restart.
+ *
+ * @return the instanceID value
+ */
+ public String instanceID() {
+ return this.instanceID;
+ }
+
+ /**
+ * Set the running instance of an application. Changes after each restart.
+ *
+ * @param instanceID the instanceID value to set
+ * @return the Source object itself.
+ */
+ public Source withInstanceID(String instanceID) {
+ this.instanceID = instanceID;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceControlType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceControlType.java
new file mode 100644
index 000000000000..e3d0c93b7a15
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceControlType.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SourceControlType.
+ */
+public final class SourceControlType extends ExpandableStringEnum {
+ /** Static value Github for SourceControlType. */
+ public static final SourceControlType GITHUB = fromString("Github");
+
+ /** Static value VisualStudioTeamService for SourceControlType. */
+ public static final SourceControlType VISUAL_STUDIO_TEAM_SERVICE = fromString("VisualStudioTeamService");
+
+ /**
+ * Creates or finds a SourceControlType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SourceControlType
+ */
+ @JsonCreator
+ public static SourceControlType fromString(String name) {
+ return fromString(name, SourceControlType.class);
+ }
+
+ /**
+ * @return known SourceControlType values
+ */
+ public static Collection values() {
+ return values(SourceControlType.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceProperties.java
new file mode 100644
index 000000000000..61ad3f497b13
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceProperties.java
@@ -0,0 +1,126 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of the source code repository.
+ */
+public class SourceProperties {
+ /**
+ * The type of source control service. Possible values include: 'Github',
+ * 'VisualStudioTeamService'.
+ */
+ @JsonProperty(value = "sourceControlType", required = true)
+ private SourceControlType sourceControlType;
+
+ /**
+ * The full URL to the source code respository.
+ */
+ @JsonProperty(value = "repositoryUrl", required = true)
+ private String repositoryUrl;
+
+ /**
+ * The branch name of the source code.
+ */
+ @JsonProperty(value = "branch")
+ private String branch;
+
+ /**
+ * The authorization properties for accessing the source code repository
+ * and to set up
+ * webhooks for notifications.
+ */
+ @JsonProperty(value = "sourceControlAuthProperties")
+ private AuthInfo sourceControlAuthProperties;
+
+ /**
+ * Get the type of source control service. Possible values include: 'Github', 'VisualStudioTeamService'.
+ *
+ * @return the sourceControlType value
+ */
+ public SourceControlType sourceControlType() {
+ return this.sourceControlType;
+ }
+
+ /**
+ * Set the type of source control service. Possible values include: 'Github', 'VisualStudioTeamService'.
+ *
+ * @param sourceControlType the sourceControlType value to set
+ * @return the SourceProperties object itself.
+ */
+ public SourceProperties withSourceControlType(SourceControlType sourceControlType) {
+ this.sourceControlType = sourceControlType;
+ return this;
+ }
+
+ /**
+ * Get the full URL to the source code respository.
+ *
+ * @return the repositoryUrl value
+ */
+ public String repositoryUrl() {
+ return this.repositoryUrl;
+ }
+
+ /**
+ * Set the full URL to the source code respository.
+ *
+ * @param repositoryUrl the repositoryUrl value to set
+ * @return the SourceProperties object itself.
+ */
+ public SourceProperties withRepositoryUrl(String repositoryUrl) {
+ this.repositoryUrl = repositoryUrl;
+ return this;
+ }
+
+ /**
+ * Get the branch name of the source code.
+ *
+ * @return the branch value
+ */
+ public String branch() {
+ return this.branch;
+ }
+
+ /**
+ * Set the branch name of the source code.
+ *
+ * @param branch the branch value to set
+ * @return the SourceProperties object itself.
+ */
+ public SourceProperties withBranch(String branch) {
+ this.branch = branch;
+ return this;
+ }
+
+ /**
+ * Get the authorization properties for accessing the source code repository and to set up
+ webhooks for notifications.
+ *
+ * @return the sourceControlAuthProperties value
+ */
+ public AuthInfo sourceControlAuthProperties() {
+ return this.sourceControlAuthProperties;
+ }
+
+ /**
+ * Set the authorization properties for accessing the source code repository and to set up
+ webhooks for notifications.
+ *
+ * @param sourceControlAuthProperties the sourceControlAuthProperties value to set
+ * @return the SourceProperties object itself.
+ */
+ public SourceProperties withSourceControlAuthProperties(AuthInfo sourceControlAuthProperties) {
+ this.sourceControlAuthProperties = sourceControlAuthProperties;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTrigger.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTrigger.java
new file mode 100644
index 000000000000..aa3a5abd0f27
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTrigger.java
@@ -0,0 +1,123 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of a source based trigger.
+ */
+public class SourceTrigger {
+ /**
+ * The properties that describes the source(code) for the task.
+ */
+ @JsonProperty(value = "sourceRepository", required = true)
+ private SourceProperties sourceRepository;
+
+ /**
+ * The source event corresponding to the trigger.
+ */
+ @JsonProperty(value = "sourceTriggerEvents", required = true)
+ private List sourceTriggerEvents;
+
+ /**
+ * The current status of trigger. Possible values include: 'Disabled',
+ * 'Enabled'.
+ */
+ @JsonProperty(value = "status")
+ private TriggerStatus status;
+
+ /**
+ * The name of the trigger.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * Get the properties that describes the source(code) for the task.
+ *
+ * @return the sourceRepository value
+ */
+ public SourceProperties sourceRepository() {
+ return this.sourceRepository;
+ }
+
+ /**
+ * Set the properties that describes the source(code) for the task.
+ *
+ * @param sourceRepository the sourceRepository value to set
+ * @return the SourceTrigger object itself.
+ */
+ public SourceTrigger withSourceRepository(SourceProperties sourceRepository) {
+ this.sourceRepository = sourceRepository;
+ return this;
+ }
+
+ /**
+ * Get the source event corresponding to the trigger.
+ *
+ * @return the sourceTriggerEvents value
+ */
+ public List sourceTriggerEvents() {
+ return this.sourceTriggerEvents;
+ }
+
+ /**
+ * Set the source event corresponding to the trigger.
+ *
+ * @param sourceTriggerEvents the sourceTriggerEvents value to set
+ * @return the SourceTrigger object itself.
+ */
+ public SourceTrigger withSourceTriggerEvents(List sourceTriggerEvents) {
+ this.sourceTriggerEvents = sourceTriggerEvents;
+ return this;
+ }
+
+ /**
+ * Get the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @return the status value
+ */
+ public TriggerStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @param status the status value to set
+ * @return the SourceTrigger object itself.
+ */
+ public SourceTrigger withStatus(TriggerStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the name of the trigger.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the trigger.
+ *
+ * @param name the name value to set
+ * @return the SourceTrigger object itself.
+ */
+ public SourceTrigger withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerDescriptor.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerDescriptor.java
new file mode 100644
index 000000000000..0f7236dc165b
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerDescriptor.java
@@ -0,0 +1,199 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The source trigger that caused a run.
+ */
+public class SourceTriggerDescriptor {
+ /**
+ * The unique ID of the trigger.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * The event type of the trigger.
+ */
+ @JsonProperty(value = "eventType")
+ private String eventType;
+
+ /**
+ * The unique ID that identifies a commit.
+ */
+ @JsonProperty(value = "commitId")
+ private String commitId;
+
+ /**
+ * The unique ID that identifies pull request.
+ */
+ @JsonProperty(value = "pullRequestId")
+ private String pullRequestId;
+
+ /**
+ * The repository URL.
+ */
+ @JsonProperty(value = "repositoryUrl")
+ private String repositoryUrl;
+
+ /**
+ * The branch name in the repository.
+ */
+ @JsonProperty(value = "branchName")
+ private String branchName;
+
+ /**
+ * The source control provider type.
+ */
+ @JsonProperty(value = "providerType")
+ private String providerType;
+
+ /**
+ * Get the unique ID of the trigger.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the unique ID of the trigger.
+ *
+ * @param id the id value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the event type of the trigger.
+ *
+ * @return the eventType value
+ */
+ public String eventType() {
+ return this.eventType;
+ }
+
+ /**
+ * Set the event type of the trigger.
+ *
+ * @param eventType the eventType value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withEventType(String eventType) {
+ this.eventType = eventType;
+ return this;
+ }
+
+ /**
+ * Get the unique ID that identifies a commit.
+ *
+ * @return the commitId value
+ */
+ public String commitId() {
+ return this.commitId;
+ }
+
+ /**
+ * Set the unique ID that identifies a commit.
+ *
+ * @param commitId the commitId value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withCommitId(String commitId) {
+ this.commitId = commitId;
+ return this;
+ }
+
+ /**
+ * Get the unique ID that identifies pull request.
+ *
+ * @return the pullRequestId value
+ */
+ public String pullRequestId() {
+ return this.pullRequestId;
+ }
+
+ /**
+ * Set the unique ID that identifies pull request.
+ *
+ * @param pullRequestId the pullRequestId value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withPullRequestId(String pullRequestId) {
+ this.pullRequestId = pullRequestId;
+ return this;
+ }
+
+ /**
+ * Get the repository URL.
+ *
+ * @return the repositoryUrl value
+ */
+ public String repositoryUrl() {
+ return this.repositoryUrl;
+ }
+
+ /**
+ * Set the repository URL.
+ *
+ * @param repositoryUrl the repositoryUrl value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withRepositoryUrl(String repositoryUrl) {
+ this.repositoryUrl = repositoryUrl;
+ return this;
+ }
+
+ /**
+ * Get the branch name in the repository.
+ *
+ * @return the branchName value
+ */
+ public String branchName() {
+ return this.branchName;
+ }
+
+ /**
+ * Set the branch name in the repository.
+ *
+ * @param branchName the branchName value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withBranchName(String branchName) {
+ this.branchName = branchName;
+ return this;
+ }
+
+ /**
+ * Get the source control provider type.
+ *
+ * @return the providerType value
+ */
+ public String providerType() {
+ return this.providerType;
+ }
+
+ /**
+ * Set the source control provider type.
+ *
+ * @param providerType the providerType value to set
+ * @return the SourceTriggerDescriptor object itself.
+ */
+ public SourceTriggerDescriptor withProviderType(String providerType) {
+ this.providerType = providerType;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerEvent.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerEvent.java
new file mode 100644
index 000000000000..79192c898820
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerEvent.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SourceTriggerEvent.
+ */
+public final class SourceTriggerEvent extends ExpandableStringEnum {
+ /** Static value commit for SourceTriggerEvent. */
+ public static final SourceTriggerEvent COMMIT = fromString("commit");
+
+ /** Static value pullrequest for SourceTriggerEvent. */
+ public static final SourceTriggerEvent PULLREQUEST = fromString("pullrequest");
+
+ /**
+ * Creates or finds a SourceTriggerEvent from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SourceTriggerEvent
+ */
+ @JsonCreator
+ public static SourceTriggerEvent fromString(String name) {
+ return fromString(name, SourceTriggerEvent.class);
+ }
+
+ /**
+ * @return known SourceTriggerEvent values
+ */
+ public static Collection values() {
+ return values(SourceTriggerEvent.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerUpdateParameters.java
new file mode 100644
index 000000000000..d6c64cb117fd
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceTriggerUpdateParameters.java
@@ -0,0 +1,123 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties for updating a source based trigger.
+ */
+public class SourceTriggerUpdateParameters {
+ /**
+ * The properties that describes the source(code) for the task.
+ */
+ @JsonProperty(value = "sourceRepository")
+ private SourceUpdateParameters sourceRepository;
+
+ /**
+ * The source event corresponding to the trigger.
+ */
+ @JsonProperty(value = "sourceTriggerEvents")
+ private List sourceTriggerEvents;
+
+ /**
+ * The current status of trigger. Possible values include: 'Disabled',
+ * 'Enabled'.
+ */
+ @JsonProperty(value = "status")
+ private TriggerStatus status;
+
+ /**
+ * The name of the trigger.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * Get the properties that describes the source(code) for the task.
+ *
+ * @return the sourceRepository value
+ */
+ public SourceUpdateParameters sourceRepository() {
+ return this.sourceRepository;
+ }
+
+ /**
+ * Set the properties that describes the source(code) for the task.
+ *
+ * @param sourceRepository the sourceRepository value to set
+ * @return the SourceTriggerUpdateParameters object itself.
+ */
+ public SourceTriggerUpdateParameters withSourceRepository(SourceUpdateParameters sourceRepository) {
+ this.sourceRepository = sourceRepository;
+ return this;
+ }
+
+ /**
+ * Get the source event corresponding to the trigger.
+ *
+ * @return the sourceTriggerEvents value
+ */
+ public List sourceTriggerEvents() {
+ return this.sourceTriggerEvents;
+ }
+
+ /**
+ * Set the source event corresponding to the trigger.
+ *
+ * @param sourceTriggerEvents the sourceTriggerEvents value to set
+ * @return the SourceTriggerUpdateParameters object itself.
+ */
+ public SourceTriggerUpdateParameters withSourceTriggerEvents(List sourceTriggerEvents) {
+ this.sourceTriggerEvents = sourceTriggerEvents;
+ return this;
+ }
+
+ /**
+ * Get the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @return the status value
+ */
+ public TriggerStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of trigger. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @param status the status value to set
+ * @return the SourceTriggerUpdateParameters object itself.
+ */
+ public SourceTriggerUpdateParameters withStatus(TriggerStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the name of the trigger.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the trigger.
+ *
+ * @param name the name value to set
+ * @return the SourceTriggerUpdateParameters object itself.
+ */
+ public SourceTriggerUpdateParameters withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUpdateParameters.java
new file mode 100644
index 000000000000..73ac21a69f93
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUpdateParameters.java
@@ -0,0 +1,126 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties for updating the source code repository.
+ */
+public class SourceUpdateParameters {
+ /**
+ * The type of source control service. Possible values include: 'Github',
+ * 'VisualStudioTeamService'.
+ */
+ @JsonProperty(value = "sourceControlType")
+ private SourceControlType sourceControlType;
+
+ /**
+ * The full URL to the source code respository.
+ */
+ @JsonProperty(value = "repositoryUrl")
+ private String repositoryUrl;
+
+ /**
+ * The branch name of the source code.
+ */
+ @JsonProperty(value = "branch")
+ private String branch;
+
+ /**
+ * The authorization properties for accessing the source code repository
+ * and to set up
+ * webhooks for notifications.
+ */
+ @JsonProperty(value = "sourceControlAuthProperties")
+ private AuthInfoUpdateParameters sourceControlAuthProperties;
+
+ /**
+ * Get the type of source control service. Possible values include: 'Github', 'VisualStudioTeamService'.
+ *
+ * @return the sourceControlType value
+ */
+ public SourceControlType sourceControlType() {
+ return this.sourceControlType;
+ }
+
+ /**
+ * Set the type of source control service. Possible values include: 'Github', 'VisualStudioTeamService'.
+ *
+ * @param sourceControlType the sourceControlType value to set
+ * @return the SourceUpdateParameters object itself.
+ */
+ public SourceUpdateParameters withSourceControlType(SourceControlType sourceControlType) {
+ this.sourceControlType = sourceControlType;
+ return this;
+ }
+
+ /**
+ * Get the full URL to the source code respository.
+ *
+ * @return the repositoryUrl value
+ */
+ public String repositoryUrl() {
+ return this.repositoryUrl;
+ }
+
+ /**
+ * Set the full URL to the source code respository.
+ *
+ * @param repositoryUrl the repositoryUrl value to set
+ * @return the SourceUpdateParameters object itself.
+ */
+ public SourceUpdateParameters withRepositoryUrl(String repositoryUrl) {
+ this.repositoryUrl = repositoryUrl;
+ return this;
+ }
+
+ /**
+ * Get the branch name of the source code.
+ *
+ * @return the branch value
+ */
+ public String branch() {
+ return this.branch;
+ }
+
+ /**
+ * Set the branch name of the source code.
+ *
+ * @param branch the branch value to set
+ * @return the SourceUpdateParameters object itself.
+ */
+ public SourceUpdateParameters withBranch(String branch) {
+ this.branch = branch;
+ return this;
+ }
+
+ /**
+ * Get the authorization properties for accessing the source code repository and to set up
+ webhooks for notifications.
+ *
+ * @return the sourceControlAuthProperties value
+ */
+ public AuthInfoUpdateParameters sourceControlAuthProperties() {
+ return this.sourceControlAuthProperties;
+ }
+
+ /**
+ * Set the authorization properties for accessing the source code repository and to set up
+ webhooks for notifications.
+ *
+ * @param sourceControlAuthProperties the sourceControlAuthProperties value to set
+ * @return the SourceUpdateParameters object itself.
+ */
+ public SourceUpdateParameters withSourceControlAuthProperties(AuthInfoUpdateParameters sourceControlAuthProperties) {
+ this.sourceControlAuthProperties = sourceControlAuthProperties;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUploadDefinition.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUploadDefinition.java
new file mode 100644
index 000000000000..558c40389275
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/SourceUploadDefinition.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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.SourceUploadDefinitionInner;
+
+/**
+ * Type representing SourceUploadDefinition.
+ */
+public interface SourceUploadDefinition extends HasInner, HasManager {
+ /**
+ * @return the relativePath value.
+ */
+ String relativePath();
+
+ /**
+ * @return the uploadUrl value.
+ */
+ String uploadUrl();
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Status.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Status.java
new file mode 100644
index 000000000000..bca112bc4fdc
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Status.java
@@ -0,0 +1,64 @@
+/**
+ * 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_09_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The status of an Azure resource at the time the operation was called.
+ */
+public class Status {
+ /**
+ * The short label for the status.
+ */
+ @JsonProperty(value = "displayStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayStatus;
+
+ /**
+ * The detailed message for the status, including alerts and error
+ * messages.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /**
+ * The timestamp when the status was changed to the current value.
+ */
+ @JsonProperty(value = "timestamp", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime timestamp;
+
+ /**
+ * Get the short label for the status.
+ *
+ * @return the displayStatus value
+ */
+ public String displayStatus() {
+ return this.displayStatus;
+ }
+
+ /**
+ * Get the detailed message for the status, including alerts and error messages.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Get the timestamp when the status was changed to the current value.
+ *
+ * @return the timestamp value
+ */
+ public DateTime timestamp() {
+ return this.timestamp;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/StorageAccountProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/StorageAccountProperties.java
new file mode 100644
index 000000000000..5e95a23979fc
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/StorageAccountProperties.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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of a storage account for a container registry. Only
+ * applicable to Classic SKU.
+ */
+public class StorageAccountProperties {
+ /**
+ * The resource ID of the storage account.
+ */
+ @JsonProperty(value = "id", required = true)
+ private String id;
+
+ /**
+ * Get the resource ID of the storage account.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the resource ID of the storage account.
+ *
+ * @param id the id value to set
+ * @return the StorageAccountProperties object itself.
+ */
+ public StorageAccountProperties withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Target.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Target.java
new file mode 100644
index 000000000000..2a66dc67ccaa
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Target.java
@@ -0,0 +1,200 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The target of the event.
+ */
+public class Target {
+ /**
+ * The MIME type of the referenced object.
+ */
+ @JsonProperty(value = "mediaType")
+ private String mediaType;
+
+ /**
+ * The number of bytes of the content. Same as Length field.
+ */
+ @JsonProperty(value = "size")
+ private Long size;
+
+ /**
+ * The digest of the content, as defined by the Registry V2 HTTP API
+ * Specification.
+ */
+ @JsonProperty(value = "digest")
+ private String digest;
+
+ /**
+ * The number of bytes of the content. Same as Size field.
+ */
+ @JsonProperty(value = "length")
+ private Long length;
+
+ /**
+ * The repository name.
+ */
+ @JsonProperty(value = "repository")
+ private String repository;
+
+ /**
+ * The direct URL to the content.
+ */
+ @JsonProperty(value = "url")
+ private String url;
+
+ /**
+ * The tag name.
+ */
+ @JsonProperty(value = "tag")
+ private String tag;
+
+ /**
+ * Get the MIME type of the referenced object.
+ *
+ * @return the mediaType value
+ */
+ public String mediaType() {
+ return this.mediaType;
+ }
+
+ /**
+ * Set the MIME type of the referenced object.
+ *
+ * @param mediaType the mediaType value to set
+ * @return the Target object itself.
+ */
+ public Target withMediaType(String mediaType) {
+ this.mediaType = mediaType;
+ return this;
+ }
+
+ /**
+ * Get the number of bytes of the content. Same as Length field.
+ *
+ * @return the size value
+ */
+ public Long size() {
+ return this.size;
+ }
+
+ /**
+ * Set the number of bytes of the content. Same as Length field.
+ *
+ * @param size the size value to set
+ * @return the Target object itself.
+ */
+ public Target withSize(Long size) {
+ this.size = size;
+ return this;
+ }
+
+ /**
+ * Get the digest of the content, as defined by the Registry V2 HTTP API Specification.
+ *
+ * @return the digest value
+ */
+ public String digest() {
+ return this.digest;
+ }
+
+ /**
+ * Set the digest of the content, as defined by the Registry V2 HTTP API Specification.
+ *
+ * @param digest the digest value to set
+ * @return the Target object itself.
+ */
+ public Target withDigest(String digest) {
+ this.digest = digest;
+ return this;
+ }
+
+ /**
+ * Get the number of bytes of the content. Same as Size field.
+ *
+ * @return the length value
+ */
+ public Long length() {
+ return this.length;
+ }
+
+ /**
+ * Set the number of bytes of the content. Same as Size field.
+ *
+ * @param length the length value to set
+ * @return the Target object itself.
+ */
+ public Target withLength(Long length) {
+ this.length = length;
+ return this;
+ }
+
+ /**
+ * Get the repository name.
+ *
+ * @return the repository value
+ */
+ public String repository() {
+ return this.repository;
+ }
+
+ /**
+ * Set the repository name.
+ *
+ * @param repository the repository value to set
+ * @return the Target object itself.
+ */
+ public Target withRepository(String repository) {
+ this.repository = repository;
+ return this;
+ }
+
+ /**
+ * Get the direct URL to the content.
+ *
+ * @return the url value
+ */
+ public String url() {
+ return this.url;
+ }
+
+ /**
+ * Set the direct URL to the content.
+ *
+ * @param url the url value to set
+ * @return the Target object itself.
+ */
+ public Target withUrl(String url) {
+ this.url = url;
+ return this;
+ }
+
+ /**
+ * Get the tag name.
+ *
+ * @return the tag value
+ */
+ public String tag() {
+ return this.tag;
+ }
+
+ /**
+ * Set the tag name.
+ *
+ * @param tag the tag value to set
+ * @return the Target object itself.
+ */
+ public Target withTag(String tag) {
+ this.tag = tag;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Task.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Task.java
new file mode 100644
index 000000000000..eba8d044c158
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Task.java
@@ -0,0 +1,320 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.TaskInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import java.util.Map;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing Task.
+ */
+public interface Task extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the agentConfiguration value.
+ */
+ AgentProperties agentConfiguration();
+
+ /**
+ * @return the creationDate value.
+ */
+ DateTime creationDate();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the platform value.
+ */
+ PlatformProperties platform();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ProvisioningState provisioningState();
+
+ /**
+ * @return the status value.
+ */
+ TaskStatus status();
+
+ /**
+ * @return the step value.
+ */
+ TaskStepProperties step();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the timeout value.
+ */
+ Integer timeout();
+
+ /**
+ * @return the trigger value.
+ */
+ TriggerProperties trigger();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Task definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithRegistry, DefinitionStages.WithLocation, DefinitionStages.WithPlatform, DefinitionStages.WithStep, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Task definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Task definition.
+ */
+ interface Blank extends WithRegistry {
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Registry.
+ */
+ interface WithRegistry {
+ /**
+ * Specifies resourceGroupName, registryName.
+ * @param resourceGroupName The name of the resource group to which the container registry belongs
+ * @param registryName The name of the container registry
+ * @return the next definition stage
+ */
+ WithLocation withExistingRegistry(String resourceGroupName, String registryName);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The location of the resource. This cannot be changed after the resource is created
+ * @return the next definition stage
+ */
+ WithPlatform withLocation(String location);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Platform.
+ */
+ interface WithPlatform {
+ /**
+ * Specifies platform.
+ * @param platform The platform properties against which the run has to happen
+ * @return the next definition stage
+ */
+ WithStep withPlatform(PlatformProperties platform);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Step.
+ */
+ interface WithStep {
+ /**
+ * Specifies step.
+ * @param step The properties of a task step
+ * @return the next definition stage
+ */
+ WithCreate withStep(TaskStepProperties step);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify AgentConfiguration.
+ */
+ interface WithAgentConfiguration {
+ /**
+ * Specifies agentConfiguration.
+ * @param agentConfiguration The machine configuration of the run agent
+ * @return the next definition stage
+ */
+ WithCreate withAgentConfiguration(AgentProperties agentConfiguration);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Status.
+ */
+ interface WithStatus {
+ /**
+ * Specifies status.
+ * @param status The current status of task. Possible values include: 'Disabled', 'Enabled'
+ * @return the next definition stage
+ */
+ WithCreate withStatus(TaskStatus status);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags of the resource
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Timeout.
+ */
+ interface WithTimeout {
+ /**
+ * Specifies timeout.
+ * @param timeout Run timeout in seconds
+ * @return the next definition stage
+ */
+ WithCreate withTimeout(Integer timeout);
+ }
+
+ /**
+ * The stage of the task definition allowing to specify Trigger.
+ */
+ interface WithTrigger {
+ /**
+ * Specifies trigger.
+ * @param trigger The properties that describe all triggers for the task
+ * @return the next definition stage
+ */
+ WithCreate withTrigger(TriggerProperties trigger);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAgentConfiguration, DefinitionStages.WithStatus, DefinitionStages.WithTags, DefinitionStages.WithTimeout, DefinitionStages.WithTrigger {
+ }
+ }
+ /**
+ * The template for a Task update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAgentConfiguration, UpdateStages.WithPlatform, UpdateStages.WithStatus, UpdateStages.WithStep, UpdateStages.WithTags, UpdateStages.WithTimeout, UpdateStages.WithTrigger {
+ }
+
+ /**
+ * Grouping of Task update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the task update allowing to specify AgentConfiguration.
+ */
+ interface WithAgentConfiguration {
+ /**
+ * Specifies agentConfiguration.
+ * @param agentConfiguration The machine configuration of the run agent
+ * @return the next update stage
+ */
+ Update withAgentConfiguration(AgentProperties agentConfiguration);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Platform.
+ */
+ interface WithPlatform {
+ /**
+ * Specifies platform.
+ * @param platform The platform properties against which the run has to happen
+ * @return the next update stage
+ */
+ Update withPlatform(PlatformUpdateParameters platform);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Status.
+ */
+ interface WithStatus {
+ /**
+ * Specifies status.
+ * @param status The current status of task. Possible values include: 'Disabled', 'Enabled'
+ * @return the next update stage
+ */
+ Update withStatus(TaskStatus status);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Step.
+ */
+ interface WithStep {
+ /**
+ * Specifies step.
+ * @param step The properties for updating a task step
+ * @return the next update stage
+ */
+ Update withStep(TaskStepUpdateParameters step);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The ARM resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Timeout.
+ */
+ interface WithTimeout {
+ /**
+ * Specifies timeout.
+ * @param timeout Run timeout in seconds
+ * @return the next update stage
+ */
+ Update withTimeout(Integer timeout);
+ }
+
+ /**
+ * The stage of the task update allowing to specify Trigger.
+ */
+ interface WithTrigger {
+ /**
+ * Specifies trigger.
+ * @param trigger The properties for updating trigger properties
+ * @return the next update stage
+ */
+ Update withTrigger(TriggerUpdateParameters trigger);
+ }
+
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskRunRequest.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskRunRequest.java
new file mode 100644
index 000000000000..04a71888ef0d
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskRunRequest.java
@@ -0,0 +1,75 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * The parameters for a task run request.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("TaskRunRequest")
+public class TaskRunRequest extends RunRequest {
+ /**
+ * The name of task against which run has to be queued.
+ */
+ @JsonProperty(value = "taskName", required = true)
+ private String taskName;
+
+ /**
+ * The collection of overridable values that can be passed when running a
+ * task.
+ */
+ @JsonProperty(value = "values")
+ private List values;
+
+ /**
+ * Get the name of task against which run has to be queued.
+ *
+ * @return the taskName value
+ */
+ public String taskName() {
+ return this.taskName;
+ }
+
+ /**
+ * Set the name of task against which run has to be queued.
+ *
+ * @param taskName the taskName value to set
+ * @return the TaskRunRequest object itself.
+ */
+ public TaskRunRequest withTaskName(String taskName) {
+ this.taskName = taskName;
+ return this;
+ }
+
+ /**
+ * Get the collection of overridable values that can be passed when running a task.
+ *
+ * @return the values value
+ */
+ public List values() {
+ return this.values;
+ }
+
+ /**
+ * Set the collection of overridable values that can be passed when running a task.
+ *
+ * @param values the values value to set
+ * @return the TaskRunRequest object itself.
+ */
+ public TaskRunRequest withValues(List values) {
+ this.values = values;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStatus.java
new file mode 100644
index 000000000000..6a88e6f0b489
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStatus.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for TaskStatus.
+ */
+public final class TaskStatus extends ExpandableStringEnum {
+ /** Static value Disabled for TaskStatus. */
+ public static final TaskStatus DISABLED = fromString("Disabled");
+
+ /** Static value Enabled for TaskStatus. */
+ public static final TaskStatus ENABLED = fromString("Enabled");
+
+ /**
+ * Creates or finds a TaskStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding TaskStatus
+ */
+ @JsonCreator
+ public static TaskStatus fromString(String name) {
+ return fromString(name, TaskStatus.class);
+ }
+
+ /**
+ * @return known TaskStatus values
+ */
+ public static Collection values() {
+ return values(TaskStatus.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepProperties.java
new file mode 100644
index 000000000000..15b19a914c8e
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepProperties.java
@@ -0,0 +1,69 @@
+/**
+ * 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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base properties for any task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("TaskStepProperties")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "Docker", value = DockerBuildStep.class),
+ @JsonSubTypes.Type(name = "FileTask", value = FileTaskStep.class),
+ @JsonSubTypes.Type(name = "EncodedTask", value = EncodedTaskStep.class)
+})
+public class TaskStepProperties {
+ /**
+ * List of base image dependencies for a step.
+ */
+ @JsonProperty(value = "baseImageDependencies", access = JsonProperty.Access.WRITE_ONLY)
+ private List baseImageDependencies;
+
+ /**
+ * The URL(absolute or relative) of the source context for the task step.
+ */
+ @JsonProperty(value = "contextPath")
+ private String contextPath;
+
+ /**
+ * Get list of base image dependencies for a step.
+ *
+ * @return the baseImageDependencies value
+ */
+ public List baseImageDependencies() {
+ return this.baseImageDependencies;
+ }
+
+ /**
+ * Get the URL(absolute or relative) of the source context for the task step.
+ *
+ * @return the contextPath value
+ */
+ public String contextPath() {
+ return this.contextPath;
+ }
+
+ /**
+ * Set the URL(absolute or relative) of the source context for the task step.
+ *
+ * @param contextPath the contextPath value to set
+ * @return the TaskStepProperties object itself.
+ */
+ public TaskStepProperties withContextPath(String contextPath) {
+ this.contextPath = contextPath;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepUpdateParameters.java
new file mode 100644
index 000000000000..f07e7ee9a569
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskStepUpdateParameters.java
@@ -0,0 +1,53 @@
+/**
+ * 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_09_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Base properties for updating any task step.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
+@JsonTypeName("TaskStepUpdateParameters")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "Docker", value = DockerBuildStepUpdateParameters.class),
+ @JsonSubTypes.Type(name = "FileTask", value = FileTaskStepUpdateParameters.class),
+ @JsonSubTypes.Type(name = "EncodedTask", value = EncodedTaskStepUpdateParameters.class)
+})
+public class TaskStepUpdateParameters {
+ /**
+ * The URL(absolute or relative) of the source context for the task step.
+ */
+ @JsonProperty(value = "contextPath")
+ private String contextPath;
+
+ /**
+ * Get the URL(absolute or relative) of the source context for the task step.
+ *
+ * @return the contextPath value
+ */
+ public String contextPath() {
+ return this.contextPath;
+ }
+
+ /**
+ * Set the URL(absolute or relative) of the source context for the task step.
+ *
+ * @param contextPath the contextPath value to set
+ * @return the TaskStepUpdateParameters object itself.
+ */
+ public TaskStepUpdateParameters withContextPath(String contextPath) {
+ this.contextPath = contextPath;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskUpdateParameters.java
new file mode 100644
index 000000000000..1a0a16915365
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TaskUpdateParameters.java
@@ -0,0 +1,203 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The parameters for updating a task.
+ */
+@JsonFlatten
+public class TaskUpdateParameters {
+ /**
+ * The current status of task. Possible values include: 'Disabled',
+ * 'Enabled'.
+ */
+ @JsonProperty(value = "properties.status")
+ private TaskStatus status;
+
+ /**
+ * The platform properties against which the run has to happen.
+ */
+ @JsonProperty(value = "properties.platform")
+ private PlatformUpdateParameters platform;
+
+ /**
+ * The machine configuration of the run agent.
+ */
+ @JsonProperty(value = "properties.agentConfiguration")
+ private AgentProperties agentConfiguration;
+
+ /**
+ * Run timeout in seconds.
+ */
+ @JsonProperty(value = "properties.timeout")
+ private Integer timeout;
+
+ /**
+ * The properties for updating a task step.
+ */
+ @JsonProperty(value = "properties.step")
+ private TaskStepUpdateParameters step;
+
+ /**
+ * The properties for updating trigger properties.
+ */
+ @JsonProperty(value = "properties.trigger")
+ private TriggerUpdateParameters trigger;
+
+ /**
+ * The ARM resource tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get the current status of task. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @return the status value
+ */
+ public TaskStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the current status of task. Possible values include: 'Disabled', 'Enabled'.
+ *
+ * @param status the status value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withStatus(TaskStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the platform properties against which the run has to happen.
+ *
+ * @return the platform value
+ */
+ public PlatformUpdateParameters platform() {
+ return this.platform;
+ }
+
+ /**
+ * Set the platform properties against which the run has to happen.
+ *
+ * @param platform the platform value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withPlatform(PlatformUpdateParameters platform) {
+ this.platform = platform;
+ return this;
+ }
+
+ /**
+ * Get the machine configuration of the run agent.
+ *
+ * @return the agentConfiguration value
+ */
+ public AgentProperties agentConfiguration() {
+ return this.agentConfiguration;
+ }
+
+ /**
+ * Set the machine configuration of the run agent.
+ *
+ * @param agentConfiguration the agentConfiguration value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withAgentConfiguration(AgentProperties agentConfiguration) {
+ this.agentConfiguration = agentConfiguration;
+ return this;
+ }
+
+ /**
+ * Get run timeout in seconds.
+ *
+ * @return the timeout value
+ */
+ public Integer timeout() {
+ return this.timeout;
+ }
+
+ /**
+ * Set run timeout in seconds.
+ *
+ * @param timeout the timeout value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withTimeout(Integer timeout) {
+ this.timeout = timeout;
+ return this;
+ }
+
+ /**
+ * Get the properties for updating a task step.
+ *
+ * @return the step value
+ */
+ public TaskStepUpdateParameters step() {
+ return this.step;
+ }
+
+ /**
+ * Set the properties for updating a task step.
+ *
+ * @param step the step value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withStep(TaskStepUpdateParameters step) {
+ this.step = step;
+ return this;
+ }
+
+ /**
+ * Get the properties for updating trigger properties.
+ *
+ * @return the trigger value
+ */
+ public TriggerUpdateParameters trigger() {
+ return this.trigger;
+ }
+
+ /**
+ * Set the properties for updating trigger properties.
+ *
+ * @param trigger the trigger value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withTrigger(TriggerUpdateParameters trigger) {
+ this.trigger = trigger;
+ return this;
+ }
+
+ /**
+ * Get the ARM resource tags.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the ARM resource tags.
+ *
+ * @param tags the tags value to set
+ * @return the TaskUpdateParameters object itself.
+ */
+ public TaskUpdateParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Tasks.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Tasks.java
new file mode 100644
index 000000000000..ac9fa8342753
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Tasks.java
@@ -0,0 +1,64 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.TasksInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Tasks.
+ */
+public interface Tasks extends SupportsCreating, HasInner {
+ /**
+ * Returns a task with extended information that includes all secrets.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param taskName The name of the container registry task.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getDetailsAsync(String resourceGroupName, String registryName, String taskName);
+
+ /**
+ * Get the properties of a specified task.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param taskName The name of the container registry task.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String registryName, String taskName);
+
+ /**
+ * Lists all the tasks for a specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String registryName);
+
+ /**
+ * Deletes a specified task.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param taskName The name of the container registry task.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String registryName, String taskName);
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TokenType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TokenType.java
new file mode 100644
index 000000000000..1dd27163f26c
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TokenType.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for TokenType.
+ */
+public final class TokenType extends ExpandableStringEnum {
+ /** Static value PAT for TokenType. */
+ public static final TokenType PAT = fromString("PAT");
+
+ /** Static value OAuth for TokenType. */
+ public static final TokenType OAUTH = fromString("OAuth");
+
+ /**
+ * Creates or finds a TokenType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding TokenType
+ */
+ @JsonCreator
+ public static TokenType fromString(String name) {
+ return fromString(name, TokenType.class);
+ }
+
+ /**
+ * @return known TokenType values
+ */
+ public static Collection values() {
+ return values(TokenType.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerProperties.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerProperties.java
new file mode 100644
index 000000000000..3a2eff3043d6
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerProperties.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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of a trigger.
+ */
+public class TriggerProperties {
+ /**
+ * The collection of triggers based on source code repository.
+ */
+ @JsonProperty(value = "sourceTriggers")
+ private List sourceTriggers;
+
+ /**
+ * The trigger based on base image dependencies.
+ */
+ @JsonProperty(value = "baseImageTrigger")
+ private BaseImageTrigger baseImageTrigger;
+
+ /**
+ * Get the collection of triggers based on source code repository.
+ *
+ * @return the sourceTriggers value
+ */
+ public List sourceTriggers() {
+ return this.sourceTriggers;
+ }
+
+ /**
+ * Set the collection of triggers based on source code repository.
+ *
+ * @param sourceTriggers the sourceTriggers value to set
+ * @return the TriggerProperties object itself.
+ */
+ public TriggerProperties withSourceTriggers(List sourceTriggers) {
+ this.sourceTriggers = sourceTriggers;
+ return this;
+ }
+
+ /**
+ * Get the trigger based on base image dependencies.
+ *
+ * @return the baseImageTrigger value
+ */
+ public BaseImageTrigger baseImageTrigger() {
+ return this.baseImageTrigger;
+ }
+
+ /**
+ * Set the trigger based on base image dependencies.
+ *
+ * @param baseImageTrigger the baseImageTrigger value to set
+ * @return the TriggerProperties object itself.
+ */
+ public TriggerProperties withBaseImageTrigger(BaseImageTrigger baseImageTrigger) {
+ this.baseImageTrigger = baseImageTrigger;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerStatus.java
new file mode 100644
index 000000000000..4d58f970a5d2
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerStatus.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for TriggerStatus.
+ */
+public final class TriggerStatus extends ExpandableStringEnum {
+ /** Static value Disabled for TriggerStatus. */
+ public static final TriggerStatus DISABLED = fromString("Disabled");
+
+ /** Static value Enabled for TriggerStatus. */
+ public static final TriggerStatus ENABLED = fromString("Enabled");
+
+ /**
+ * Creates or finds a TriggerStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding TriggerStatus
+ */
+ @JsonCreator
+ public static TriggerStatus fromString(String name) {
+ return fromString(name, TriggerStatus.class);
+ }
+
+ /**
+ * @return known TriggerStatus values
+ */
+ public static Collection values() {
+ return values(TriggerStatus.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerUpdateParameters.java
new file mode 100644
index 000000000000..611d7f8f2626
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TriggerUpdateParameters.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_09_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties for updating triggers.
+ */
+public class TriggerUpdateParameters {
+ /**
+ * The collection of triggers based on source code repository.
+ */
+ @JsonProperty(value = "sourceTriggers")
+ private List sourceTriggers;
+
+ /**
+ * The trigger based on base image dependencies.
+ */
+ @JsonProperty(value = "baseImageTrigger")
+ private BaseImageTriggerUpdateParameters baseImageTrigger;
+
+ /**
+ * Get the collection of triggers based on source code repository.
+ *
+ * @return the sourceTriggers value
+ */
+ public List sourceTriggers() {
+ return this.sourceTriggers;
+ }
+
+ /**
+ * Set the collection of triggers based on source code repository.
+ *
+ * @param sourceTriggers the sourceTriggers value to set
+ * @return the TriggerUpdateParameters object itself.
+ */
+ public TriggerUpdateParameters withSourceTriggers(List sourceTriggers) {
+ this.sourceTriggers = sourceTriggers;
+ return this;
+ }
+
+ /**
+ * Get the trigger based on base image dependencies.
+ *
+ * @return the baseImageTrigger value
+ */
+ public BaseImageTriggerUpdateParameters baseImageTrigger() {
+ return this.baseImageTrigger;
+ }
+
+ /**
+ * Set the trigger based on base image dependencies.
+ *
+ * @param baseImageTrigger the baseImageTrigger value to set
+ * @return the TriggerUpdateParameters object itself.
+ */
+ public TriggerUpdateParameters withBaseImageTrigger(BaseImageTriggerUpdateParameters baseImageTrigger) {
+ this.baseImageTrigger = baseImageTrigger;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TrustPolicy.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TrustPolicy.java
new file mode 100644
index 000000000000..09603327d1e0
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TrustPolicyType.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/TrustPolicyType.java
new file mode 100644
index 000000000000..6ed2c989834f
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_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.v2018_09_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/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Variant.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Variant.java
new file mode 100644
index 000000000000..174e161c51db
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Variant.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for Variant.
+ */
+public final class Variant extends ExpandableStringEnum {
+ /** Static value v6 for Variant. */
+ public static final Variant V6 = fromString("v6");
+
+ /** Static value v7 for Variant. */
+ public static final Variant V7 = fromString("v7");
+
+ /** Static value v8 for Variant. */
+ public static final Variant V8 = fromString("v8");
+
+ /**
+ * Creates or finds a Variant from its string representation.
+ * @param name a name to look for
+ * @return the corresponding Variant
+ */
+ @JsonCreator
+ public static Variant fromString(String name) {
+ return fromString(name, Variant.class);
+ }
+
+ /**
+ * @return known Variant values
+ */
+ public static Collection values() {
+ return values(Variant.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhook.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhook.java
new file mode 100644
index 000000000000..1fdbc44c4536
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhook.java
@@ -0,0 +1,276 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.WebhookInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.ContainerRegistryManager;
+import java.util.Map;
+import java.util.List;
+
+/**
+ * Type representing Webhook.
+ */
+public interface Webhook extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the actions value.
+ */
+ List actions();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ProvisioningState provisioningState();
+
+ /**
+ * @return the scope value.
+ */
+ String scope();
+
+ /**
+ * @return the status value.
+ */
+ WebhookStatus status();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Webhook definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithRegistry, DefinitionStages.WithActions, DefinitionStages.WithLocation, DefinitionStages.WithServiceUri, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Webhook definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Webhook definition.
+ */
+ interface Blank extends WithRegistry {
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Registry.
+ */
+ interface WithRegistry {
+ /**
+ * Specifies resourceGroupName, registryName.
+ * @param resourceGroupName The name of the resource group to which the container registry belongs
+ * @param registryName The name of the container registry
+ * @return the next definition stage
+ */
+ WithActions withExistingRegistry(String resourceGroupName, String registryName);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Actions.
+ */
+ interface WithActions {
+ /**
+ * Specifies actions.
+ * @param actions The list of actions that trigger the webhook to post notifications
+ * @return the next definition stage
+ */
+ WithLocation withActions(List actions);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location The location of the webhook. This cannot be changed after the resource is created
+ * @return the next definition stage
+ */
+ WithServiceUri withLocation(String location);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify ServiceUri.
+ */
+ interface WithServiceUri {
+ /**
+ * Specifies serviceUri.
+ * @param serviceUri The service URI for the webhook to post notifications
+ * @return the next definition stage
+ */
+ WithCreate withServiceUri(String serviceUri);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify CustomHeaders.
+ */
+ interface WithCustomHeaders {
+ /**
+ * Specifies customHeaders.
+ * @param customHeaders Custom headers that will be added to the webhook notifications
+ * @return the next definition stage
+ */
+ WithCreate withCustomHeaders(Map customHeaders);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Scope.
+ */
+ interface WithScope {
+ /**
+ * Specifies scope.
+ * @param scope The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events
+ * @return the next definition stage
+ */
+ WithCreate withScope(String scope);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Status.
+ */
+ interface WithStatus {
+ /**
+ * Specifies status.
+ * @param status The status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'
+ * @return the next definition stage
+ */
+ WithCreate withStatus(WebhookStatus status);
+ }
+
+ /**
+ * The stage of the webhook definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags for the webhook
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithCustomHeaders, DefinitionStages.WithScope, DefinitionStages.WithStatus, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a Webhook update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithActions, UpdateStages.WithCustomHeaders, UpdateStages.WithScope, UpdateStages.WithServiceUri, UpdateStages.WithStatus, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of Webhook update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the webhook update allowing to specify Actions.
+ */
+ interface WithActions {
+ /**
+ * Specifies actions.
+ * @param actions The list of actions that trigger the webhook to post notifications
+ * @return the next update stage
+ */
+ Update withActions(List actions);
+ }
+
+ /**
+ * The stage of the webhook update allowing to specify CustomHeaders.
+ */
+ interface WithCustomHeaders {
+ /**
+ * Specifies customHeaders.
+ * @param customHeaders Custom headers that will be added to the webhook notifications
+ * @return the next update stage
+ */
+ Update withCustomHeaders(Map customHeaders);
+ }
+
+ /**
+ * The stage of the webhook update allowing to specify Scope.
+ */
+ interface WithScope {
+ /**
+ * Specifies scope.
+ * @param scope The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events
+ * @return the next update stage
+ */
+ Update withScope(String scope);
+ }
+
+ /**
+ * The stage of the webhook update allowing to specify ServiceUri.
+ */
+ interface WithServiceUri {
+ /**
+ * Specifies serviceUri.
+ * @param serviceUri The service URI for the webhook to post notifications
+ * @return the next update stage
+ */
+ Update withServiceUri(String serviceUri);
+ }
+
+ /**
+ * The stage of the webhook update allowing to specify Status.
+ */
+ interface WithStatus {
+ /**
+ * Specifies status.
+ * @param status The status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'
+ * @return the next update stage
+ */
+ Update withStatus(WebhookStatus status);
+ }
+
+ /**
+ * The stage of the webhook update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags for the webhook
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookAction.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookAction.java
new file mode 100644
index 000000000000..75da739a7b57
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookAction.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for WebhookAction.
+ */
+public final class WebhookAction extends ExpandableStringEnum {
+ /** Static value push for WebhookAction. */
+ public static final WebhookAction PUSH = fromString("push");
+
+ /** 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
+ * @return the corresponding WebhookAction
+ */
+ @JsonCreator
+ public static WebhookAction fromString(String name) {
+ return fromString(name, WebhookAction.class);
+ }
+
+ /**
+ * @return known WebhookAction values
+ */
+ public static Collection values() {
+ return values(WebhookAction.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookCreateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookCreateParameters.java
new file mode 100644
index 000000000000..e903312f2b21
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookCreateParameters.java
@@ -0,0 +1,208 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The parameters for creating a webhook.
+ */
+@JsonFlatten
+public class WebhookCreateParameters {
+ /**
+ * The tags for the webhook.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * The location of the webhook. This cannot be changed after the resource
+ * is created.
+ */
+ @JsonProperty(value = "location", required = true)
+ private String location;
+
+ /**
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "properties.serviceUri", required = true)
+ private String serviceUri;
+
+ /**
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "properties.customHeaders")
+ private Map customHeaders;
+
+ /**
+ * The status of the webhook at the time the operation was called. Possible
+ * values include: 'enabled', 'disabled'.
+ */
+ @JsonProperty(value = "properties.status")
+ private WebhookStatus status;
+
+ /**
+ * The scope of repositories where the event can be triggered. For example,
+ * 'foo:*' means events for all tags under repository 'foo'. 'foo:bar'
+ * means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'.
+ * Empty means all events.
+ */
+ @JsonProperty(value = "properties.scope")
+ private String scope;
+
+ /**
+ * The list of actions that trigger the webhook to post notifications.
+ */
+ @JsonProperty(value = "properties.actions", required = true)
+ private List actions;
+
+ /**
+ * Get the tags for the webhook.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the tags for the webhook.
+ *
+ * @param tags the tags value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ /**
+ * Get the location of the webhook. This cannot be changed after the resource is created.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location of the webhook. This cannot be changed after the resource is created.
+ *
+ * @param location the location value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value
+ */
+ public Map customHeaders() {
+ return this.customHeaders;
+ }
+
+ /**
+ * Set custom headers that will be added to the webhook notifications.
+ *
+ * @param customHeaders the customHeaders value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withCustomHeaders(Map customHeaders) {
+ this.customHeaders = customHeaders;
+ return this;
+ }
+
+ /**
+ * Get the status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'.
+ *
+ * @return the status value
+ */
+ public WebhookStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'.
+ *
+ * @param status the status value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withStatus(WebhookStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set
+ * @return the WebhookCreateParameters object itself.
+ */
+ public WebhookCreateParameters withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookStatus.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookStatus.java
new file mode 100644
index 000000000000..b4b9a7ed62c4
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookStatus.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_09_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for WebhookStatus.
+ */
+public final class WebhookStatus extends ExpandableStringEnum {
+ /** Static value enabled for WebhookStatus. */
+ public static final WebhookStatus ENABLED = fromString("enabled");
+
+ /** Static value disabled for WebhookStatus. */
+ public static final WebhookStatus DISABLED = fromString("disabled");
+
+ /**
+ * Creates or finds a WebhookStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding WebhookStatus
+ */
+ @JsonCreator
+ public static WebhookStatus fromString(String name) {
+ return fromString(name, WebhookStatus.class);
+ }
+
+ /**
+ * @return known WebhookStatus values
+ */
+ public static Collection values() {
+ return values(WebhookStatus.class);
+ }
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookUpdateParameters.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookUpdateParameters.java
new file mode 100644
index 000000000000..8aacc7644760
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/WebhookUpdateParameters.java
@@ -0,0 +1,181 @@
+/**
+ * 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_09_01;
+
+import java.util.Map;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The parameters for updating a webhook.
+ */
+@JsonFlatten
+public class WebhookUpdateParameters {
+ /**
+ * The tags for the webhook.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "properties.serviceUri")
+ private String serviceUri;
+
+ /**
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "properties.customHeaders")
+ private Map customHeaders;
+
+ /**
+ * The status of the webhook at the time the operation was called. Possible
+ * values include: 'enabled', 'disabled'.
+ */
+ @JsonProperty(value = "properties.status")
+ private WebhookStatus status;
+
+ /**
+ * The scope of repositories where the event can be triggered. For example,
+ * 'foo:*' means events for all tags under repository 'foo'. 'foo:bar'
+ * means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'.
+ * Empty means all events.
+ */
+ @JsonProperty(value = "properties.scope")
+ private String scope;
+
+ /**
+ * The list of actions that trigger the webhook to post notifications.
+ */
+ @JsonProperty(value = "properties.actions")
+ private List actions;
+
+ /**
+ * Get the tags for the webhook.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the tags for the webhook.
+ *
+ * @param tags the tags value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ /**
+ * Get the service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value
+ */
+ public Map customHeaders() {
+ return this.customHeaders;
+ }
+
+ /**
+ * Set custom headers that will be added to the webhook notifications.
+ *
+ * @param customHeaders the customHeaders value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withCustomHeaders(Map customHeaders) {
+ this.customHeaders = customHeaders;
+ return this;
+ }
+
+ /**
+ * Get the status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'.
+ *
+ * @return the status value
+ */
+ public WebhookStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status of the webhook at the time the operation was called. Possible values include: 'enabled', 'disabled'.
+ *
+ * @param status the status value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withStatus(WebhookStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.
+ *
+ * @return the scope value
+ */
+ public String scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.
+ *
+ * @param scope the scope value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withScope(String scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the list of actions that trigger the webhook to post notifications.
+ *
+ * @return the actions value
+ */
+ public List actions() {
+ return this.actions;
+ }
+
+ /**
+ * Set the list of actions that trigger the webhook to post notifications.
+ *
+ * @param actions the actions value to set
+ * @return the WebhookUpdateParameters object itself.
+ */
+ public WebhookUpdateParameters withActions(List actions) {
+ this.actions = actions;
+ return this;
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhooks.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhooks.java
new file mode 100644
index 000000000000..e83e73763387
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/Webhooks.java
@@ -0,0 +1,86 @@
+/**
+ * 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_09_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.containerregistry.v2018_09_01.implementation.WebhooksInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Webhooks.
+ */
+public interface Webhooks extends SupportsCreating, HasInner {
+ /**
+ * Triggers a ping event to be sent to the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable pingAsync(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Gets the configuration of service URI and custom headers for the webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getCallbackConfigAsync(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Lists recent events for the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listEventsAsync(final String resourceGroupName, final String registryName, final String webhookName);
+
+ /**
+ * Gets the properties of the specified webhook.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String registryName, String webhookName);
+
+ /**
+ * Lists all the webhooks for the specified container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String registryName);
+
+ /**
+ * Deletes a webhook from a container registry.
+ *
+ * @param resourceGroupName The name of the resource group to which the container registry belongs.
+ * @param registryName The name of the container registry.
+ * @param webhookName The name of the webhook.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String registryName, String webhookName);
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigImpl.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigImpl.java
new file mode 100644
index 000000000000..24198fa345f0
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigImpl.java
@@ -0,0 +1,37 @@
+/**
+ * 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_09_01.implementation;
+
+import com.microsoft.azure.management.containerregistry.v2018_09_01.CallbackConfig;
+import com.microsoft.azure.arm.model.implementation.WrapperImpl;
+import java.util.Map;
+
+class CallbackConfigImpl extends WrapperImpl implements CallbackConfig {
+ private final ContainerRegistryManager manager;
+ CallbackConfigImpl(CallbackConfigInner inner, ContainerRegistryManager manager) {
+ super(inner);
+ this.manager = manager;
+ }
+
+ @Override
+ public ContainerRegistryManager manager() {
+ return this.manager;
+ }
+
+ @Override
+ public Map customHeaders() {
+ return this.inner().customHeaders();
+ }
+
+ @Override
+ public String serviceUri() {
+ return this.inner().serviceUri();
+ }
+
+}
diff --git a/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigInner.java b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigInner.java
new file mode 100644
index 000000000000..d8014bf92600
--- /dev/null
+++ b/containerregistry/resource-manager/v2018_09_01/src/main/java/com/microsoft/azure/management/containerregistry/v2018_09_01/implementation/CallbackConfigInner.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_09_01.implementation;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The configuration of service URI and custom headers for the webhook.
+ */
+public class CallbackConfigInner {
+ /**
+ * The service URI for the webhook to post notifications.
+ */
+ @JsonProperty(value = "serviceUri", required = true)
+ private String serviceUri;
+
+ /**
+ * Custom headers that will be added to the webhook notifications.
+ */
+ @JsonProperty(value = "customHeaders")
+ private Map customHeaders;
+
+ /**
+ * Get the service URI for the webhook to post notifications.
+ *
+ * @return the serviceUri value
+ */
+ public String serviceUri() {
+ return this.serviceUri;
+ }
+
+ /**
+ * Set the service URI for the webhook to post notifications.
+ *
+ * @param serviceUri the serviceUri value to set
+ * @return the CallbackConfigInner object itself.
+ */
+ public CallbackConfigInner withServiceUri(String serviceUri) {
+ this.serviceUri = serviceUri;
+ return this;
+ }
+
+ /**
+ * Get custom headers that will be added to the webhook notifications.
+ *
+ * @return the customHeaders value
+ */
+ public Map