diff --git a/README.md b/README.md
index fa6c59c49e8..222a109c231 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
# Azure Management Libraries for Java
-This README is based on the released stable version (1.9.0). If you are looking for other releases, see [More Information](#more-information).
+This README is based on the released stable version (1.10.0). If you are looking for other releases, see [More Information](#more-information).
The Azure Management Libraries for Java is a higher-level, object-oriented API for *managing* Azure resources, that is optimized for ease of use, succinctness and consistency.
@@ -24,7 +24,7 @@ If you are looking for Java client libraries for *consuming* (rather than *manag
* [More information](#more-information)
## Feature Availability and Road Map
-:triangular_flag_on_post: *as of Version 1.9.0*
+:triangular_flag_on_post: *as of Version 1.10.0*
@@ -603,13 +603,13 @@ SqlDatabase database = sqlServer.databases().define("myNewDatabase")
### Latest stable release
-If you are using released builds from 1.6.0, add the following to your POM file:
+If you are using released builds from 1.10.0, add the following to your POM file:
```xml
com.microsoft.azure
azure
- 1.9.0
+ 1.10.0
```
@@ -636,7 +636,7 @@ If you are using snapshots builds for this repo, add the following repository an
com.microsoft.azure
azure
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
com.microsoft.azure
@@ -663,7 +663,7 @@ If you are using snapshots builds for this repo, add the following repository an
## Upgrading from older versions
-If you are migrating your code from 1.8.x to 1.9.0, you can use these release notes for [preparing your code for 1.9.0 from 1.8.x](./notes/prepare-for-1.9.0.md).
+If you are migrating your code from 1.9.x to 1.10.0, you can use these release notes for [preparing your code for 1.10.0 from 1.9.x](./notes/prepare-for-1.10.0.md).
In general, Azure Libraries for Java follow [semantic versioning](http://semver.org/), so user code should continue working in a compatible fashion between minor versions of the same major version release train, with the following caveats:
@@ -697,6 +697,7 @@ If you would like to become an active contributor to this project please follow
| Version | SHA1 | Remarks |
|-------------------|-------------------------------------------------------------------------------------------|-------------------------------------------------------|
+| 1.10.0 | [1.10.0](https://github.com/Azure/azure-libraries-for-java/tree/v1.10.0) | Tagged release for 1.10.0 version of Azure management libraries |
| 1.9.0 | [1.9.0](https://github.com/Azure/azure-libraries-for-java/tree/v1.9.0) | Tagged release for 1.9.0 version of Azure management libraries |
| 1.8.0 | [1.8.0](https://github.com/Azure/azure-libraries-for-java/tree/v1.980) | Tagged release for 1.8.0 version of Azure management libraries |
| 1.7.0 | [1.7.0](https://github.com/Azure/azure-libraries-for-java/tree/v1.7.0) | Tagged release for 1.7.0 version of Azure management libraries |
diff --git a/api-specs.json b/api-specs.json
index e1196cabe18..c979fddb6b4 100644
--- a/api-specs.json
+++ b/api-specs.json
@@ -39,7 +39,7 @@
"dir": "azure-mgmt-batch",
"source": "specification/batch/resource-manager/readme.md",
"package": "com.microsoft.azure.management.batch",
- "args": "--payload-flattening-threshold=1 --tag=package-2017-05"
+ "args": "--payload-flattening-threshold=1 --tag=package-2017-09"
},
"batchai": {
"dir": "azure-mgmt-batchai",
diff --git a/azure-mgmt-apimanagement/pom.xml b/azure-mgmt-apimanagement/pom.xml
index 75c3d97a447..97a895b7f5d 100644
--- a/azure-mgmt-apimanagement/pom.xml
+++ b/azure-mgmt-apimanagement/pom.xml
@@ -10,11 +10,11 @@
com.microsoft.azure
azure-parent
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
../pom.xml
azure-mgmt-apimanagement
- 1.9.1-beta-SNAPSHOT
+ 1.10.1-beta-SNAPSHOT
jar
Microsoft Azure SDK for ApiManagement Management
This package contains Microsoft ApiManagement Management SDK.
@@ -49,7 +49,7 @@
com.microsoft.azure
azure-mgmt-resources
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
junit
diff --git a/azure-mgmt-appservice/pom.xml b/azure-mgmt-appservice/pom.xml
index f7ae369a37d..4988973ee82 100644
--- a/azure-mgmt-appservice/pom.xml
+++ b/azure-mgmt-appservice/pom.xml
@@ -8,7 +8,7 @@
com.microsoft.azure
azure-parent
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
../pom.xml
@@ -53,17 +53,17 @@
com.microsoft.azure
azure-mgmt-resources
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
com.microsoft.azure
azure-mgmt-storage
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
com.microsoft.azure
azure-mgmt-keyvault
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
com.microsoft.azure
@@ -88,7 +88,7 @@
com.microsoft.azure
azure-mgmt-resources
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
test-jar
test
diff --git a/azure-mgmt-appservice/src/test/resources/session-records/canDeployMultipleWars.json b/azure-mgmt-appservice/src/test/resources/session-records/canDeployMultipleWars.json
index b9d23c97b13..95dd95d596a 100644
--- a/azure-mgmt-appservice/src/test/resources/session-records/canDeployMultipleWars.json
+++ b/azure-mgmt-appservice/src/test/resources/session-records/canDeployMultipleWars.json
@@ -1,13 +1,13 @@
{
"networkCallRecords" : [ {
"Method" : "PUT",
- "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/javacsmrgbd1015327?api-version=2017-05-10",
+ "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/javacsmrg73151034d?api-version=2017-05-10",
"Headers" : {
- "User-Agent" : "Azure-SDK-For-Java/null OS:Mac OS X/10.13.3 MacAddressHash:91ab651db171c40f859f028801f17575977b65d638af835eaa3e55b24000638b Java:1.8.0_77 (ResourceManagementClient, 2017-05-10)",
+ "User-Agent" : "Azure-SDK-For-Java/null OS:Windows 10/10.0 MacAddressHash:f82fa839f6b46fd84edc56e01cf7c8c6d4faaa2190534aff5c1d17095f0a3c13 Java:9.0.4 (ResourceManagementClient, 2017-05-10)",
"Content-Type" : "application/json; charset=utf-8"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:09:55 GMT",
+ "date" : "Mon, 07 May 2018 20:19:26 GMT",
"content-length" : "189",
"expires" : "-1",
"x-ms-ratelimit-remaining-subscription-writes" : "1199",
@@ -15,25 +15,25 @@
"StatusCode" : "201",
"pragma" : "no-cache",
"strict-transport-security" : "max-age=31536000; includeSubDomains",
- "x-ms-correlation-request-id" : "267613fe-8fc9-4734-b8af-d4ba79cc38b8",
+ "x-ms-correlation-request-id" : "dcf7f80a-1d2f-4b9f-b64e-cb1e55c4ada7",
"x-content-type-options" : "nosniff",
- "x-ms-routing-request-id" : "WESTUS2:20180406T050956Z:267613fe-8fc9-4734-b8af-d4ba79cc38b8",
+ "x-ms-routing-request-id" : "WESTUS2:20180507T201927Z:dcf7f80a-1d2f-4b9f-b64e-cb1e55c4ada7",
"content-type" : "application/json; charset=utf-8",
"cache-control" : "no-cache",
- "x-ms-request-id" : "267613fe-8fc9-4734-b8af-d4ba79cc38b8",
- "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327\",\"name\":\"javacsmrgbd1015327\",\"location\":\"westus\",\"properties\":{\"provisioningState\":\"Succeeded\"}}"
+ "x-ms-request-id" : "dcf7f80a-1d2f-4b9f-b64e-cb1e55c4ada7",
+ "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d\",\"name\":\"javacsmrg73151034d\",\"location\":\"westus\",\"properties\":{\"provisioningState\":\"Succeeded\"}}"
}
}, {
"Method" : "PUT",
- "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/serverfarms/java-webapp-34833cplanfa7791608?api-version=2016-09-01",
+ "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/serverfarms/java-webapp-824261plan73b213748?api-version=2016-09-01",
"Headers" : {
- "User-Agent" : "Azure-SDK-For-Java/null OS:Mac OS X/10.13.3 MacAddressHash:91ab651db171c40f859f028801f17575977b65d638af835eaa3e55b24000638b Java:1.8.0_77 (WebSiteManagementClient)",
+ "User-Agent" : "Azure-SDK-For-Java/null OS:Windows 10/10.0 MacAddressHash:f82fa839f6b46fd84edc56e01cf7c8c6d4faaa2190534aff5c1d17095f0a3c13 Java:9.0.4 (WebSiteManagementClient)",
"Content-Type" : "application/json; charset=utf-8"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:10:05 GMT",
+ "date" : "Mon, 07 May 2018 20:19:36 GMT",
"server" : "Microsoft-IIS/10.0",
- "content-length" : "1240",
+ "content-length" : "1279",
"expires" : "-1",
"transfer-encoding" : "chunked",
"vary" : "Accept-Encoding",
@@ -43,26 +43,26 @@
"StatusCode" : "200",
"pragma" : "no-cache",
"strict-transport-security" : "max-age=31536000; includeSubDomains",
- "x-ms-correlation-request-id" : "c448c1a8-5559-468c-8707-343ba0e146dd",
+ "x-ms-correlation-request-id" : "7af8ec44-7f2d-4312-97c1-25fd95efe8f9",
"x-content-type-options" : "nosniff",
- "x-ms-routing-request-id" : "WESTUS2:20180406T051005Z:c448c1a8-5559-468c-8707-343ba0e146dd",
+ "x-ms-routing-request-id" : "WESTUS2:20180507T201936Z:7af8ec44-7f2d-4312-97c1-25fd95efe8f9",
"x-powered-by" : "ASP.NET",
"content-type" : "application/json",
"cache-control" : "no-cache",
- "x-ms-request-id" : "a090f120-546a-4503-9fef-16446f873c66",
- "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/serverfarms/java-webapp-34833cplanfa7791608\",\"name\":\"java-webapp-34833cplanfa7791608\",\"type\":\"Microsoft.Web/serverfarms\",\"kind\":\"app\",\"location\":\"West US\",\"tags\":{},\"properties\":{\"serverFarmId\":0,\"name\":\"java-webapp-34833cplanfa7791608\",\"workerSize\":\"Default\",\"workerSizeId\":0,\"workerTierName\":null,\"numberOfWorkers\":1,\"currentWorkerSize\":\"Default\",\"currentWorkerSizeId\":0,\"currentNumberOfWorkers\":1,\"status\":\"Ready\",\"webSpace\":\"javacsmrgbd1015327-WestUSwebspace\",\"subscription\":\"00000000-0000-0000-0000-000000000000\",\"adminSiteName\":null,\"hostingEnvironment\":null,\"hostingEnvironmentProfile\":null,\"maximumNumberOfWorkers\":10,\"planName\":\"VirtualDedicatedPlan\",\"adminRuntimeSiteName\":null,\"computeMode\":\"Shared\",\"siteMode\":null,\"geoRegion\":\"West US\",\"perSiteScaling\":false,\"numberOfSites\":0,\"hostingEnvironmentId\":null,\"isSpot\":false,\"spotExpirationTime\":null,\"tags\":{},\"kind\":\"app\",\"resourceGroup\":\"javacsmrgbd1015327\",\"reserved\":false,\"mdmId\":\"waws-prod-bay-091_9534\",\"targetWorkerCount\":0,\"targetWorkerSizeId\":0,\"provisioningState\":\"Succeeded\"},\"sku\":{\"name\":\"S1\",\"tier\":\"Standard\",\"size\":\"S1\",\"family\":\"S\",\"capacity\":1}}"
+ "x-ms-request-id" : "28c729fe-e4d1-4b2e-b2ce-cf395dba4e58",
+ "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/serverfarms/java-webapp-824261plan73b213748\",\"name\":\"java-webapp-824261plan73b213748\",\"type\":\"Microsoft.Web/serverfarms\",\"kind\":\"app\",\"location\":\"West US\",\"tags\":{},\"properties\":{\"serverFarmId\":6140,\"name\":\"java-webapp-824261plan73b213748\",\"workerSize\":\"Default\",\"workerSizeId\":0,\"workerTierName\":null,\"numberOfWorkers\":1,\"currentWorkerSize\":\"Default\",\"currentWorkerSizeId\":0,\"currentNumberOfWorkers\":1,\"status\":\"Ready\",\"webSpace\":\"javacsmrg73151034d-WestUSwebspace\",\"subscription\":\"00000000-0000-0000-0000-000000000000\",\"adminSiteName\":null,\"hostingEnvironment\":null,\"hostingEnvironmentProfile\":null,\"maximumNumberOfWorkers\":10,\"planName\":\"VirtualDedicatedPlan\",\"adminRuntimeSiteName\":null,\"computeMode\":\"Dedicated\",\"siteMode\":null,\"geoRegion\":\"West US\",\"perSiteScaling\":false,\"numberOfSites\":0,\"hostingEnvironmentId\":null,\"isSpot\":false,\"spotExpirationTime\":null,\"tags\":{},\"kind\":\"app\",\"resourceGroup\":\"javacsmrg73151034d\",\"reserved\":false,\"isXenon\":false,\"mdmId\":\"waws-prod-bay-095_6140\",\"targetWorkerCount\":0,\"targetWorkerSizeId\":0,\"provisioningState\":\"Succeeded\",\"webSiteId\":null},\"sku\":{\"name\":\"S1\",\"tier\":\"Standard\",\"size\":\"S1\",\"family\":\"S\",\"capacity\":1}}"
}
}, {
"Method" : "PUT",
- "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/sites/java-webapp-34833c?api-version=2016-08-01",
+ "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/sites/java-webapp-824261?api-version=2016-08-01",
"Headers" : {
- "User-Agent" : "Azure-SDK-For-Java/null OS:Mac OS X/10.13.3 MacAddressHash:91ab651db171c40f859f028801f17575977b65d638af835eaa3e55b24000638b Java:1.8.0_77 (WebSiteManagementClient)",
+ "User-Agent" : "Azure-SDK-For-Java/null OS:Windows 10/10.0 MacAddressHash:f82fa839f6b46fd84edc56e01cf7c8c6d4faaa2190534aff5c1d17095f0a3c13 Java:9.0.4 (WebSiteManagementClient)",
"Content-Type" : "application/json; charset=utf-8"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:10:23 GMT",
+ "date" : "Mon, 07 May 2018 20:19:43 GMT",
"server" : "Microsoft-IIS/10.0",
- "content-length" : "2838",
+ "content-length" : "2855",
"expires" : "-1",
"transfer-encoding" : "chunked",
"vary" : "Accept-Encoding",
@@ -72,27 +72,27 @@
"StatusCode" : "200",
"pragma" : "no-cache",
"strict-transport-security" : "max-age=31536000; includeSubDomains",
- "x-ms-correlation-request-id" : "884c2c11-d43e-4431-b53c-3a810cfd01ac",
+ "x-ms-correlation-request-id" : "8c09b33e-169c-40f0-8675-720efd279de4",
"x-content-type-options" : "nosniff",
- "x-ms-routing-request-id" : "WESTUS2:20180406T051024Z:884c2c11-d43e-4431-b53c-3a810cfd01ac",
+ "x-ms-routing-request-id" : "WESTUS2:20180507T201943Z:8c09b33e-169c-40f0-8675-720efd279de4",
"x-powered-by" : "ASP.NET",
"content-type" : "application/json",
- "etag" : "\"1D3CD65882414D5\"",
+ "etag" : "\"1D3E640B9D3BD75\"",
"cache-control" : "no-cache",
- "x-ms-request-id" : "a97720ab-9490-4a72-8115-57f7d2276d69",
- "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/sites/java-webapp-34833c\",\"name\":\"java-webapp-34833c\",\"type\":\"Microsoft.Web/sites\",\"kind\":\"app\",\"location\":\"westus\",\"tags\":{},\"properties\":{\"name\":\"java-webapp-34833c\",\"state\":\"Running\",\"hostNames\":[\"java-webapp-34833c.azurewebsites.net\"],\"webSpace\":\"javacsmrgbd1015327-WestUSwebspace\",\"selfLink\":\"https://waws-prod-bay-091.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/javacsmrgbd1015327-WestUSwebspace/sites/java-webapp-34833c\",\"repositorySiteName\":\"java-webapp-34833c\",\"owner\":null,\"usageState\":\"Normal\",\"enabled\":true,\"adminEnabled\":true,\"enabledHostNames\":[\"java-webapp-34833c.azurewebsites.net\",\"java-webapp-34833c.scm.azurewebsites.net\"],\"siteProperties\":{\"metadata\":null,\"properties\":[{\"name\":\"LinuxFxVersion\",\"value\":\"\"}],\"appSettings\":null},\"availabilityState\":\"Normal\",\"sslCertificates\":null,\"csrs\":[],\"cers\":null,\"siteMode\":null,\"hostNameSslStates\":[{\"name\":\"java-webapp-34833c.azurewebsites.net\",\"sslState\":\"Disabled\",\"ipBasedSslResult\":null,\"virtualIP\":null,\"thumbprint\":null,\"toUpdate\":null,\"toUpdateIpBasedSsl\":null,\"ipBasedSslState\":\"NotConfigured\",\"hostType\":\"Standard\"},{\"name\":\"java-webapp-34833c.scm.azurewebsites.net\",\"sslState\":\"Disabled\",\"ipBasedSslResult\":null,\"virtualIP\":null,\"thumbprint\":null,\"toUpdate\":null,\"toUpdateIpBasedSsl\":null,\"ipBasedSslState\":\"NotConfigured\",\"hostType\":\"Repository\"}],\"computeMode\":null,\"serverFarm\":null,\"serverFarmId\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/serverfarms/java-webapp-34833cplanfa7791608\",\"reserved\":false,\"lastModifiedTimeUtc\":\"2018-04-06T05:10:07.85\",\"storageRecoveryDefaultState\":\"Running\",\"contentAvailabilityState\":\"Normal\",\"runtimeAvailabilityState\":\"Normal\",\"siteConfig\":null,\"deploymentId\":\"java-webapp-34833c\",\"trafficManagerHostNames\":null,\"sku\":\"Standard\",\"scmSiteAlsoStopped\":false,\"targetSwapSlot\":null,\"hostingEnvironment\":null,\"hostingEnvironmentProfile\":null,\"clientAffinityEnabled\":true,\"clientCertEnabled\":false,\"hostNamesDisabled\":false,\"domainVerificationIdentifiers\":null,\"kind\":\"app\",\"outboundIpAddresses\":\"104.42.128.171,104.42.131.62,104.42.134.143,104.42.130.245,104.42.133.164\",\"possibleOutboundIpAddresses\":\"104.42.128.171,104.42.131.62,104.42.134.143,104.42.130.245,104.42.133.164,104.42.129.68,104.42.130.49\",\"containerSize\":0,\"dailyMemoryTimeQuota\":0,\"suspendedTill\":null,\"siteDisabledReason\":0,\"functionExecutionUnitsCache\":null,\"maxNumberOfWorkers\":null,\"homeStamp\":\"waws-prod-bay-091\",\"cloningInfo\":null,\"snapshotInfo\":null,\"hostingEnvironmentId\":null,\"tags\":{},\"resourceGroup\":\"javacsmrgbd1015327\",\"defaultHostName\":\"java-webapp-34833c.azurewebsites.net\",\"slotSwapStatus\":null,\"httpsOnly\":false}}"
+ "x-ms-request-id" : "f592c9b7-1f95-49cf-b4a7-99cd441a0bbc",
+ "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/sites/java-webapp-824261\",\"name\":\"java-webapp-824261\",\"type\":\"Microsoft.Web/sites\",\"kind\":\"app\",\"location\":\"westus\",\"tags\":{},\"properties\":{\"name\":\"java-webapp-824261\",\"state\":\"Running\",\"hostNames\":[\"java-webapp-824261.azurewebsites.net\"],\"webSpace\":\"javacsmrg73151034d-WestUSwebspace\",\"selfLink\":\"https://waws-prod-bay-095.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/javacsmrg73151034d-WestUSwebspace/sites/java-webapp-824261\",\"repositorySiteName\":\"java-webapp-824261\",\"owner\":null,\"usageState\":\"Normal\",\"enabled\":true,\"adminEnabled\":true,\"enabledHostNames\":[\"java-webapp-824261.azurewebsites.net\",\"java-webapp-824261.scm.azurewebsites.net\"],\"siteProperties\":{\"metadata\":null,\"properties\":[{\"name\":\"LinuxFxVersion\",\"value\":\"\"},{\"name\":\"WindowsFxVersion\",\"value\":null}],\"appSettings\":null},\"availabilityState\":\"Normal\",\"sslCertificates\":null,\"csrs\":[],\"cers\":null,\"siteMode\":null,\"hostNameSslStates\":[{\"name\":\"java-webapp-824261.azurewebsites.net\",\"sslState\":\"Disabled\",\"ipBasedSslResult\":null,\"virtualIP\":null,\"thumbprint\":null,\"toUpdate\":null,\"toUpdateIpBasedSsl\":null,\"ipBasedSslState\":\"NotConfigured\",\"hostType\":\"Standard\"},{\"name\":\"java-webapp-824261.scm.azurewebsites.net\",\"sslState\":\"Disabled\",\"ipBasedSslResult\":null,\"virtualIP\":null,\"thumbprint\":null,\"toUpdate\":null,\"toUpdateIpBasedSsl\":null,\"ipBasedSslState\":\"NotConfigured\",\"hostType\":\"Repository\"}],\"computeMode\":null,\"serverFarm\":null,\"serverFarmId\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/serverfarms/java-webapp-824261plan73b213748\",\"reserved\":false,\"isXenon\":false,\"lastModifiedTimeUtc\":\"2018-05-07T20:19:38.76\",\"storageRecoveryDefaultState\":\"Running\",\"contentAvailabilityState\":\"Normal\",\"runtimeAvailabilityState\":\"Normal\",\"siteConfig\":null,\"deploymentId\":\"java-webapp-824261\",\"trafficManagerHostNames\":null,\"sku\":\"Standard\",\"scmSiteAlsoStopped\":false,\"targetSwapSlot\":null,\"hostingEnvironment\":null,\"hostingEnvironmentProfile\":null,\"clientAffinityEnabled\":true,\"clientCertEnabled\":false,\"hostNamesDisabled\":false,\"domainVerificationIdentifiers\":null,\"kind\":\"app\",\"outboundIpAddresses\":\"13.93.158.16,52.160.98.75,13.64.78.195,13.64.73.242,13.64.72.148\",\"possibleOutboundIpAddresses\":\"13.93.158.16,52.160.98.75,13.64.78.195,13.64.73.242,13.64.72.148,13.64.75.221,13.64.78.152\",\"containerSize\":0,\"dailyMemoryTimeQuota\":0,\"suspendedTill\":null,\"siteDisabledReason\":0,\"functionExecutionUnitsCache\":null,\"maxNumberOfWorkers\":null,\"homeStamp\":\"waws-prod-bay-095\",\"cloningInfo\":null,\"hostingEnvironmentId\":null,\"tags\":{},\"resourceGroup\":\"javacsmrg73151034d\",\"defaultHostName\":\"java-webapp-824261.azurewebsites.net\",\"slotSwapStatus\":null,\"httpsOnly\":false}}"
}
}, {
"Method" : "PUT",
- "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/sites/java-webapp-34833c/config/web?api-version=2016-08-01",
+ "Uri" : "http://localhost:1234/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/sites/java-webapp-824261/config/web?api-version=2016-08-01",
"Headers" : {
- "User-Agent" : "Azure-SDK-For-Java/null OS:Mac OS X/10.13.3 MacAddressHash:91ab651db171c40f859f028801f17575977b65d638af835eaa3e55b24000638b Java:1.8.0_77 (WebSiteManagementClient)",
+ "User-Agent" : "Azure-SDK-For-Java/null OS:Windows 10/10.0 MacAddressHash:f82fa839f6b46fd84edc56e01cf7c8c6d4faaa2190534aff5c1d17095f0a3c13 Java:9.0.4 (WebSiteManagementClient)",
"Content-Type" : "application/json; charset=utf-8"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:10:25 GMT",
+ "date" : "Mon, 07 May 2018 20:19:44 GMT",
"server" : "Microsoft-IIS/10.0",
- "content-length" : "2404",
+ "content-length" : "2486",
"expires" : "-1",
"transfer-encoding" : "chunked",
"vary" : "Accept-Encoding",
@@ -102,46 +102,46 @@
"StatusCode" : "200",
"pragma" : "no-cache",
"strict-transport-security" : "max-age=31536000; includeSubDomains",
- "x-ms-correlation-request-id" : "6ccadac7-bdb8-4433-bbaa-8a3a7808f75d",
+ "x-ms-correlation-request-id" : "8ba70306-c7f5-4206-925e-7f6d1bbdaa7b",
"x-content-type-options" : "nosniff",
- "x-ms-routing-request-id" : "WESTUS2:20180406T051026Z:6ccadac7-bdb8-4433-bbaa-8a3a7808f75d",
+ "x-ms-routing-request-id" : "WESTUS2:20180507T201945Z:8ba70306-c7f5-4206-925e-7f6d1bbdaa7b",
"x-powered-by" : "ASP.NET",
"content-type" : "application/json",
- "etag" : "\"1D3CD6592A32775\"",
+ "etag" : "\"1D3E640BCF9E9AB\"",
"cache-control" : "no-cache",
- "x-ms-request-id" : "448e3007-9215-4a4d-961b-5e55d15f53f3",
- "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrgbd1015327/providers/Microsoft.Web/sites/java-webapp-34833c\",\"name\":\"java-webapp-34833c\",\"type\":\"Microsoft.Web/sites\",\"location\":\"West US\",\"tags\":{},\"properties\":{\"numberOfWorkers\":1,\"defaultDocuments\":[\"Default.htm\",\"Default.html\",\"Default.asp\",\"index.htm\",\"index.html\",\"iisstart.htm\",\"default.aspx\",\"index.php\",\"hostingstart.html\"],\"netFrameworkVersion\":\"v4.0\",\"phpVersion\":\"5.6\",\"pythonVersion\":\"\",\"nodeVersion\":\"\",\"linuxFxVersion\":\"\",\"requestTracingEnabled\":false,\"remoteDebuggingEnabled\":false,\"remoteDebuggingVersion\":null,\"httpLoggingEnabled\":false,\"logsDirectorySizeLimit\":35,\"detailedErrorLoggingEnabled\":false,\"publishingUsername\":\"$java-webapp-34833c\",\"publishingPassword\":null,\"appSettings\":null,\"metadata\":null,\"connectionStrings\":null,\"machineKey\":null,\"handlerMappings\":null,\"documentRoot\":null,\"scmType\":\"None\",\"use32BitWorkerProcess\":true,\"webSocketsEnabled\":false,\"alwaysOn\":false,\"javaVersion\":\"1.8\",\"javaContainer\":\"TOMCAT\",\"javaContainerVersion\":\"9.0\",\"appCommandLine\":\"\",\"managedPipelineMode\":\"Integrated\",\"virtualApplications\":[{\"virtualPath\":\"/\",\"physicalPath\":\"site\\\\wwwroot\",\"preloadEnabled\":false,\"virtualDirectories\":null}],\"winAuthAdminState\":0,\"winAuthTenantState\":0,\"customAppPoolIdentityAdminState\":false,\"customAppPoolIdentityTenantState\":false,\"runtimeADUser\":null,\"runtimeADUserPassword\":null,\"loadBalancing\":\"LeastRequests\",\"routingRules\":[],\"experiments\":{\"rampUpRules\":[]},\"limits\":null,\"autoHealEnabled\":false,\"autoHealRules\":null,\"tracingOptions\":null,\"vnetName\":\"\",\"siteAuthEnabled\":false,\"siteAuthSettings\":{\"enabled\":null,\"unauthenticatedClientAction\":null,\"tokenStoreEnabled\":null,\"allowedExternalRedirectUrls\":null,\"defaultProvider\":null,\"clientId\":null,\"clientSecret\":null,\"issuer\":null,\"allowedAudiences\":null,\"additionalLoginParams\":null,\"isAadAutoProvisioned\":false,\"googleClientId\":null,\"googleClientSecret\":null,\"googleOAuthScopes\":null,\"facebookAppId\":null,\"facebookAppSecret\":null,\"facebookOAuthScopes\":null,\"twitterConsumerKey\":null,\"twitterConsumerSecret\":null,\"microsoftAccountClientId\":null,\"microsoftAccountClientSecret\":null,\"microsoftAccountOAuthScopes\":null},\"cors\":null,\"push\":null,\"apiDefinition\":null,\"autoSwapSlotName\":null,\"localMySqlEnabled\":false,\"managedServiceIdentityId\":null,\"ipSecurityRestrictions\":null,\"http20Enabled\":false,\"minTlsVersion\":\"1.0\"}}"
+ "x-ms-request-id" : "c9f41939-fdb2-4245-99c1-daa4a31f8e75",
+ "Body" : "{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/javacsmrg73151034d/providers/Microsoft.Web/sites/java-webapp-824261\",\"name\":\"java-webapp-824261\",\"type\":\"Microsoft.Web/sites\",\"location\":\"West US\",\"tags\":{},\"properties\":{\"numberOfWorkers\":1,\"defaultDocuments\":[\"Default.htm\",\"Default.html\",\"Default.asp\",\"index.htm\",\"index.html\",\"iisstart.htm\",\"default.aspx\",\"index.php\",\"hostingstart.html\"],\"netFrameworkVersion\":\"v4.0\",\"phpVersion\":\"5.6\",\"pythonVersion\":\"\",\"nodeVersion\":\"\",\"linuxFxVersion\":\"\",\"windowsFxVersion\":null,\"requestTracingEnabled\":false,\"remoteDebuggingEnabled\":false,\"remoteDebuggingVersion\":null,\"httpLoggingEnabled\":false,\"logsDirectorySizeLimit\":35,\"detailedErrorLoggingEnabled\":false,\"publishingUsername\":\"$java-webapp-824261\",\"publishingPassword\":null,\"appSettings\":null,\"metadata\":null,\"connectionStrings\":null,\"machineKey\":null,\"handlerMappings\":null,\"documentRoot\":null,\"scmType\":\"None\",\"use32BitWorkerProcess\":true,\"webSocketsEnabled\":false,\"alwaysOn\":false,\"javaVersion\":\"1.8\",\"javaContainer\":\"TOMCAT\",\"javaContainerVersion\":\"9.0\",\"appCommandLine\":\"\",\"managedPipelineMode\":\"Integrated\",\"virtualApplications\":[{\"virtualPath\":\"/\",\"physicalPath\":\"site\\\\wwwroot\",\"preloadEnabled\":false,\"virtualDirectories\":null}],\"winAuthAdminState\":0,\"winAuthTenantState\":0,\"customAppPoolIdentityAdminState\":false,\"customAppPoolIdentityTenantState\":false,\"runtimeADUser\":null,\"runtimeADUserPassword\":null,\"loadBalancing\":\"LeastRequests\",\"routingRules\":[],\"experiments\":{\"rampUpRules\":[]},\"limits\":null,\"autoHealEnabled\":false,\"autoHealRules\":null,\"tracingOptions\":null,\"vnetName\":\"\",\"siteAuthEnabled\":false,\"siteAuthSettings\":{\"enabled\":null,\"unauthenticatedClientAction\":null,\"tokenStoreEnabled\":null,\"allowedExternalRedirectUrls\":null,\"defaultProvider\":null,\"clientId\":null,\"clientSecret\":null,\"issuer\":null,\"allowedAudiences\":null,\"additionalLoginParams\":null,\"isAadAutoProvisioned\":false,\"googleClientId\":null,\"googleClientSecret\":null,\"googleOAuthScopes\":null,\"facebookAppId\":null,\"facebookAppSecret\":null,\"facebookOAuthScopes\":null,\"twitterConsumerKey\":null,\"twitterConsumerSecret\":null,\"microsoftAccountClientId\":null,\"microsoftAccountClientSecret\":null,\"microsoftAccountOAuthScopes\":null},\"cors\":null,\"push\":null,\"apiDefinition\":null,\"autoSwapSlotName\":null,\"localMySqlEnabled\":false,\"managedServiceIdentityId\":null,\"xManagedServiceIdentityId\":null,\"ipSecurityRestrictions\":null,\"http20Enabled\":false,\"minTlsVersion\":\"1.0\",\"ftpsState\":\"AllAllowed\"}}"
}
}, {
"Method" : "POST",
- "Uri" : "https://java-webapp-34833c.scm.azurewebsites.net/api/wardeploy",
+ "Uri" : "https://java-webapp-824261.scm.azurewebsites.net/api/wardeploy",
"Headers" : {
"User-Agent" : "AutoRest-Java",
"Content-Type" : "application/octet-stream"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:10:48 GMT",
+ "date" : "Mon, 07 May 2018 20:20:12 GMT",
"content-length" : "0",
"server" : "Microsoft-IIS/10.0",
- "set-cookie" : "ARRAffinity=7f74b113b9ae575a087ae1fa07a63858e6e34f27224b7aa1a957b06074e65ffd;Path=/;HttpOnly;Domain=java-webapp-34833c.scm.azurewebsites.net",
+ "set-cookie" : "ARRAffinity=fed7a63b07416b13be6f051e30f0e4e7f8de07ec30fb790da69e59e9610bc2ea;Path=/;HttpOnly;Domain=java-webapp-824261.scm.azurewebsites.net",
"expires" : "-1",
"x-aspnet-version" : "4.0.30319",
"x-powered-by" : "ASP.NET",
"retry-after" : "0",
"cache-control" : "no-cache",
"StatusCode" : "200",
- "x-ms-request-id" : "65d878c3-1ff5-40b2-aa55-de61d6a7e997",
+ "x-ms-request-id" : "557e7c4a-26b5-49b0-a241-64253aefccef",
"pragma" : "no-cache"
}
}, {
"Method" : "POST",
- "Uri" : "https://java-webapp-34833c.scm.azurewebsites.net/api/wardeploy?name=app2",
+ "Uri" : "https://java-webapp-824261.scm.azurewebsites.net/api/wardeploy?name=app2",
"Headers" : {
"User-Agent" : "AutoRest-Java",
"Content-Type" : "application/octet-stream"
},
"Response" : {
- "date" : "Fri, 06 Apr 2018 05:10:51 GMT",
+ "date" : "Mon, 07 May 2018 20:20:14 GMT",
"content-length" : "0",
"server" : "Microsoft-IIS/10.0",
"expires" : "-1",
@@ -150,9 +150,9 @@
"retry-after" : "0",
"cache-control" : "no-cache",
"StatusCode" : "200",
- "x-ms-request-id" : "c925b552-dec0-4295-846d-cb7ea06885b0",
+ "x-ms-request-id" : "31f43ed3-0eec-4502-98bd-0f8a61f9a049",
"pragma" : "no-cache"
}
} ],
- "variables" : [ "java-webapp-34833c", "javacsmrgbd1015327", "f1451e49-4cd5-4c3b-94b8-b6ca8bcea764", "0e19750a-d53e-4dfe-8691-df405c735340", "java-webapp-34833cplanfa7791608", "64b88616-185a-4881-9eab-81c7be383030", "f4f02290-bdcd-4bbc-aa15-8c2222d84543", "5941b295-b17f-418a-ab8b-967b2d556be8", "57bca6b8-eff2-4763-aad1-e874e32f1265", "9585a78e-b4ba-4e37-b614-a429fc5448e2", "c197b5b9-6833-41a6-bfc9-6a285a2b07dd", "7f263cc0-f82a-4e07-a56f-a81b970dfd73" ]
+ "variables" : [ "java-webapp-824261", "javacsmrg73151034d", "2099647c-38ed-40c9-bc1f-434710713ead", "a03ac926-e639-417a-88e8-8621914c3cba", "java-webapp-824261plan73b213748", "feb2b111-c90b-41e5-a7d6-6440ed8c5e34", "b71559cb-bb3c-43ef-b910-942ca1cbe4d7", "8a27a771-1c2d-44a7-a33d-694b598dfd52", "f3982b9b-72d8-4712-b995-c618a5d96a8c", "67383655-0e81-465f-a2af-f53adc86c525", "8cc1b727-c025-4d13-ba20-40339d896eb4", "080ec13f-e9a5-4ec5-9da5-8d244ab15481" ]
}
\ No newline at end of file
diff --git a/azure-mgmt-batch/pom.xml b/azure-mgmt-batch/pom.xml
index 78246a5d190..3b7d507db8d 100644
--- a/azure-mgmt-batch/pom.xml
+++ b/azure-mgmt-batch/pom.xml
@@ -8,7 +8,7 @@
com.microsoft.azure
azure-parent
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
../pom.xml
@@ -53,7 +53,7 @@
com.microsoft.azure
azure-mgmt-resources
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
junit
@@ -68,12 +68,12 @@
com.microsoft.azure
azure-mgmt-storage
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
com.microsoft.azure
azure-mgmt-resources
- 1.9.1-SNAPSHOT
+ 1.10.1-SNAPSHOT
test-jar
test
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AllocationState.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AllocationState.java
new file mode 100644
index 00000000000..e3128ec9ea5
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AllocationState.java
@@ -0,0 +1,56 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for AllocationState.
+ */
+public enum AllocationState {
+ /** Enum value Steady. */
+ STEADY("Steady"),
+
+ /** Enum value Resizing. */
+ RESIZING("Resizing"),
+
+ /** Enum value Stopping. */
+ STOPPING("Stopping");
+
+ /** The actual serialized value for a AllocationState instance. */
+ private String value;
+
+ AllocationState(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a AllocationState instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed AllocationState object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static AllocationState fromString(String value) {
+ AllocationState[] items = AllocationState.values();
+ for (AllocationState item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationCreateParametersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationCreateParameters.java
similarity index 77%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationCreateParametersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationCreateParameters.java
index 27700140860..2ad073df370 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationCreateParametersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationCreateParameters.java
@@ -6,14 +6,14 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Parameters for adding an Application.
*/
-public class ApplicationCreateParametersInner {
+public class ApplicationCreateParameters {
/**
* A value indicating whether packages within the application may be
* overwritten using the same version string.
@@ -40,9 +40,9 @@ public Boolean allowUpdates() {
* Set the allowUpdates value.
*
* @param allowUpdates the allowUpdates value to set
- * @return the ApplicationCreateParametersInner object itself.
+ * @return the ApplicationCreateParameters object itself.
*/
- public ApplicationCreateParametersInner withAllowUpdates(Boolean allowUpdates) {
+ public ApplicationCreateParameters withAllowUpdates(Boolean allowUpdates) {
this.allowUpdates = allowUpdates;
return this;
}
@@ -60,9 +60,9 @@ public String displayName() {
* Set the displayName value.
*
* @param displayName the displayName value to set
- * @return the ApplicationCreateParametersInner object itself.
+ * @return the ApplicationCreateParameters object itself.
*/
- public ApplicationCreateParametersInner withDisplayName(String displayName) {
+ public ApplicationCreateParameters withDisplayName(String displayName) {
this.displayName = displayName;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationPackageReference.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationPackageReference.java
new file mode 100644
index 00000000000..50d269906c2
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationPackageReference.java
@@ -0,0 +1,76 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Link to an application package inside the batch account.
+ */
+public class ApplicationPackageReference {
+ /**
+ * The ID of the application package to install. This must be inside the
+ * same batch account as the pool. This can either be a reference to a
+ * specific version or the default version if one exists.
+ */
+ @JsonProperty(value = "id", required = true)
+ private String id;
+
+ /**
+ * The version of the application to deploy. If omitted, the default
+ * version is deployed.
+ * If this is omitted, and no default version is specified for this
+ * application, the request fails with the error code
+ * InvalidApplicationPackageReferences. If you are calling the REST API
+ * directly, the HTTP status code is 409.
+ */
+ @JsonProperty(value = "version")
+ private String version;
+
+ /**
+ * Get the id value.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id value.
+ *
+ * @param id the id value to set
+ * @return the ApplicationPackageReference object itself.
+ */
+ public ApplicationPackageReference withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the version value.
+ *
+ * @return the version value
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Set the version value.
+ *
+ * @param version the version value to set
+ * @return the ApplicationPackageReference object itself.
+ */
+ public ApplicationPackageReference withVersion(String version) {
+ this.version = version;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationUpdateParametersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationUpdateParameters.java
similarity index 77%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationUpdateParametersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationUpdateParameters.java
index ef2e86bbd2e..9695e21a1b1 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationUpdateParametersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ApplicationUpdateParameters.java
@@ -6,14 +6,14 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Parameters for an update application request.
*/
-public class ApplicationUpdateParametersInner {
+public class ApplicationUpdateParameters {
/**
* A value indicating whether packages within the application may be
* overwritten using the same version string.
@@ -47,9 +47,9 @@ public Boolean allowUpdates() {
* Set the allowUpdates value.
*
* @param allowUpdates the allowUpdates value to set
- * @return the ApplicationUpdateParametersInner object itself.
+ * @return the ApplicationUpdateParameters object itself.
*/
- public ApplicationUpdateParametersInner withAllowUpdates(Boolean allowUpdates) {
+ public ApplicationUpdateParameters withAllowUpdates(Boolean allowUpdates) {
this.allowUpdates = allowUpdates;
return this;
}
@@ -67,9 +67,9 @@ public String defaultVersion() {
* Set the defaultVersion value.
*
* @param defaultVersion the defaultVersion value to set
- * @return the ApplicationUpdateParametersInner object itself.
+ * @return the ApplicationUpdateParameters object itself.
*/
- public ApplicationUpdateParametersInner withDefaultVersion(String defaultVersion) {
+ public ApplicationUpdateParameters withDefaultVersion(String defaultVersion) {
this.defaultVersion = defaultVersion;
return this;
}
@@ -87,9 +87,9 @@ public String displayName() {
* Set the displayName value.
*
* @param displayName the displayName value to set
- * @return the ApplicationUpdateParametersInner object itself.
+ * @return the ApplicationUpdateParameters object itself.
*/
- public ApplicationUpdateParametersInner withDisplayName(String displayName) {
+ public ApplicationUpdateParameters withDisplayName(String displayName) {
this.displayName = displayName;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRun.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRun.java
new file mode 100644
index 00000000000..ffe91faff39
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRun.java
@@ -0,0 +1,100 @@
+/**
+ * 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.batch;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The results and errors from an execution of a pool autoscale formula.
+ */
+public class AutoScaleRun {
+ /**
+ * The time at which the autoscale formula was last evaluated.
+ */
+ @JsonProperty(value = "evaluationTime", required = true)
+ private DateTime evaluationTime;
+
+ /**
+ * The final values of all variables used in the evaluation of the
+ * autoscale formula.
+ * Each variable value is returned in the form $variable=value, and
+ * variables are separated by semicolons.
+ */
+ @JsonProperty(value = "results")
+ private String results;
+
+ /**
+ * Details of the error encountered evaluating the autoscale formula on the
+ * pool, if the evaluation was unsuccessful.
+ */
+ @JsonProperty(value = "error")
+ private AutoScaleRunError error;
+
+ /**
+ * Get the evaluationTime value.
+ *
+ * @return the evaluationTime value
+ */
+ public DateTime evaluationTime() {
+ return this.evaluationTime;
+ }
+
+ /**
+ * Set the evaluationTime value.
+ *
+ * @param evaluationTime the evaluationTime value to set
+ * @return the AutoScaleRun object itself.
+ */
+ public AutoScaleRun withEvaluationTime(DateTime evaluationTime) {
+ this.evaluationTime = evaluationTime;
+ return this;
+ }
+
+ /**
+ * Get the results value.
+ *
+ * @return the results value
+ */
+ public String results() {
+ return this.results;
+ }
+
+ /**
+ * Set the results value.
+ *
+ * @param results the results value to set
+ * @return the AutoScaleRun object itself.
+ */
+ public AutoScaleRun withResults(String results) {
+ this.results = results;
+ return this;
+ }
+
+ /**
+ * Get the error value.
+ *
+ * @return the error value
+ */
+ public AutoScaleRunError error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error value.
+ *
+ * @param error the error value to set
+ * @return the AutoScaleRun object itself.
+ */
+ public AutoScaleRun withError(AutoScaleRunError error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRunError.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRunError.java
new file mode 100644
index 00000000000..a0e83a0147e
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleRunError.java
@@ -0,0 +1,98 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An error that occurred when autoscaling a pool.
+ */
+public class AutoScaleRunError {
+ /**
+ * An identifier for the error. Codes are invariant and are intended to be
+ * consumed programmatically.
+ */
+ @JsonProperty(value = "code", required = true)
+ private String code;
+
+ /**
+ * A message describing the error, intended to be suitable for display in a
+ * user interface.
+ */
+ @JsonProperty(value = "message", required = true)
+ private String message;
+
+ /**
+ * Additional details about the error.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * Get the code value.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set the code value.
+ *
+ * @param code the code value to set
+ * @return the AutoScaleRunError object itself.
+ */
+ public AutoScaleRunError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get the message value.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the message value.
+ *
+ * @param message the message value to set
+ * @return the AutoScaleRunError object itself.
+ */
+ public AutoScaleRunError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the details value.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the details value.
+ *
+ * @param details the details value to set
+ * @return the AutoScaleRunError object itself.
+ */
+ public AutoScaleRunError withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleSettings.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleSettings.java
new file mode 100644
index 00000000000..e4869fe4134
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoScaleSettings.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.batch;
+
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * AutoScale settings for the pool.
+ */
+public class AutoScaleSettings {
+ /**
+ * A formula for the desired number of compute nodes in the pool.
+ */
+ @JsonProperty(value = "formula", required = true)
+ private String formula;
+
+ /**
+ * The time interval at which to automatically adjust the pool size
+ * according to the autoscale formula.
+ * If omitted, the default value is 15 minutes (PT15M).
+ */
+ @JsonProperty(value = "evaluationInterval")
+ private Period evaluationInterval;
+
+ /**
+ * Get the formula value.
+ *
+ * @return the formula value
+ */
+ public String formula() {
+ return this.formula;
+ }
+
+ /**
+ * Set the formula value.
+ *
+ * @param formula the formula value to set
+ * @return the AutoScaleSettings object itself.
+ */
+ public AutoScaleSettings withFormula(String formula) {
+ this.formula = formula;
+ return this;
+ }
+
+ /**
+ * Get the evaluationInterval value.
+ *
+ * @return the evaluationInterval value
+ */
+ public Period evaluationInterval() {
+ return this.evaluationInterval;
+ }
+
+ /**
+ * Set the evaluationInterval value.
+ *
+ * @param evaluationInterval the evaluationInterval value to set
+ * @return the AutoScaleSettings object itself.
+ */
+ public AutoScaleSettings withEvaluationInterval(Period evaluationInterval) {
+ this.evaluationInterval = evaluationInterval;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserScope.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserScope.java
new file mode 100644
index 00000000000..54b62a93e32
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserScope.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for AutoUserScope.
+ */
+public enum AutoUserScope {
+ /** Enum value Task. */
+ TASK("Task"),
+
+ /** Enum value Pool. */
+ POOL("Pool");
+
+ /** The actual serialized value for a AutoUserScope instance. */
+ private String value;
+
+ AutoUserScope(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a AutoUserScope instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed AutoUserScope object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static AutoUserScope fromString(String value) {
+ AutoUserScope[] items = AutoUserScope.values();
+ for (AutoUserScope item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserSpecification.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserSpecification.java
new file mode 100644
index 00000000000..e928fe98649
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/AutoUserSpecification.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Specifies the parameters for the auto user that runs a task on the Batch
+ * service.
+ */
+public class AutoUserSpecification {
+ /**
+ * The scope for the auto user.
+ * pool - specifies that the task runs as the common auto user account
+ * which is created on every node in a pool. task - specifies that the
+ * service should create a new user for the task. The default value is
+ * task. Possible values include: 'Task', 'Pool'.
+ */
+ @JsonProperty(value = "scope")
+ private AutoUserScope scope;
+
+ /**
+ * The elevation level of the auto user.
+ * nonAdmin - The auto user is a standard user without elevated access.
+ * admin - The auto user is a user with elevated access and operates with
+ * full Administrator permissions. The default value is nonAdmin. Possible
+ * values include: 'NonAdmin', 'Admin'.
+ */
+ @JsonProperty(value = "elevationLevel")
+ private ElevationLevel elevationLevel;
+
+ /**
+ * Get the scope value.
+ *
+ * @return the scope value
+ */
+ public AutoUserScope scope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the scope value.
+ *
+ * @param scope the scope value to set
+ * @return the AutoUserSpecification object itself.
+ */
+ public AutoUserSpecification withScope(AutoUserScope scope) {
+ this.scope = scope;
+ return this;
+ }
+
+ /**
+ * Get the elevationLevel value.
+ *
+ * @return the elevationLevel value
+ */
+ public ElevationLevel elevationLevel() {
+ return this.elevationLevel;
+ }
+
+ /**
+ * Set the elevationLevel value.
+ *
+ * @param elevationLevel the elevationLevel value to set
+ * @return the AutoUserSpecification object itself.
+ */
+ public AutoUserSpecification withElevationLevel(ElevationLevel elevationLevel) {
+ this.elevationLevel = elevationLevel;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateHeadersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateHeaders.java
similarity index 78%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateHeadersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateHeaders.java
index 1e8ed9f6b20..f0c897ecbfb 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateHeadersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateHeaders.java
@@ -6,14 +6,14 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Defines headers for Create operation.
*/
-public class BatchAccountCreateHeadersInner {
+public class BatchAccountCreateHeaders {
/**
* The URL of the resource used to check the status of the asynchronous
* operation.
@@ -41,9 +41,9 @@ public String location() {
* Set the location value.
*
* @param location the location value to set
- * @return the BatchAccountCreateHeadersInner object itself.
+ * @return the BatchAccountCreateHeaders object itself.
*/
- public BatchAccountCreateHeadersInner withLocation(String location) {
+ public BatchAccountCreateHeaders withLocation(String location) {
this.location = location;
return this;
}
@@ -61,9 +61,9 @@ public Integer retryAfter() {
* Set the retryAfter value.
*
* @param retryAfter the retryAfter value to set
- * @return the BatchAccountCreateHeadersInner object itself.
+ * @return the BatchAccountCreateHeaders object itself.
*/
- public BatchAccountCreateHeadersInner withRetryAfter(Integer retryAfter) {
+ public BatchAccountCreateHeaders withRetryAfter(Integer retryAfter) {
this.retryAfter = retryAfter;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateParametersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateParameters.java
similarity index 75%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateParametersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateParameters.java
index de1c9075149..c5600785d98 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountCreateParametersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountCreateParameters.java
@@ -6,12 +6,9 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import java.util.Map;
-import com.microsoft.azure.management.batch.AutoStorageBaseProperties;
-import com.microsoft.azure.management.batch.PoolAllocationMode;
-import com.microsoft.azure.management.batch.KeyVaultReference;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
@@ -19,7 +16,7 @@
* Parameters supplied to the Create operation.
*/
@JsonFlatten
-public class BatchAccountCreateParametersInner {
+public class BatchAccountCreateParameters {
/**
* The region in which to create the account.
*/
@@ -69,9 +66,9 @@ public String location() {
* Set the location value.
*
* @param location the location value to set
- * @return the BatchAccountCreateParametersInner object itself.
+ * @return the BatchAccountCreateParameters object itself.
*/
- public BatchAccountCreateParametersInner withLocation(String location) {
+ public BatchAccountCreateParameters withLocation(String location) {
this.location = location;
return this;
}
@@ -89,9 +86,9 @@ public Map tags() {
* Set the tags value.
*
* @param tags the tags value to set
- * @return the BatchAccountCreateParametersInner object itself.
+ * @return the BatchAccountCreateParameters object itself.
*/
- public BatchAccountCreateParametersInner withTags(Map tags) {
+ public BatchAccountCreateParameters withTags(Map tags) {
this.tags = tags;
return this;
}
@@ -109,9 +106,9 @@ public AutoStorageBaseProperties autoStorage() {
* Set the autoStorage value.
*
* @param autoStorage the autoStorage value to set
- * @return the BatchAccountCreateParametersInner object itself.
+ * @return the BatchAccountCreateParameters object itself.
*/
- public BatchAccountCreateParametersInner withAutoStorage(AutoStorageBaseProperties autoStorage) {
+ public BatchAccountCreateParameters withAutoStorage(AutoStorageBaseProperties autoStorage) {
this.autoStorage = autoStorage;
return this;
}
@@ -129,9 +126,9 @@ public PoolAllocationMode poolAllocationMode() {
* Set the poolAllocationMode value.
*
* @param poolAllocationMode the poolAllocationMode value to set
- * @return the BatchAccountCreateParametersInner object itself.
+ * @return the BatchAccountCreateParameters object itself.
*/
- public BatchAccountCreateParametersInner withPoolAllocationMode(PoolAllocationMode poolAllocationMode) {
+ public BatchAccountCreateParameters withPoolAllocationMode(PoolAllocationMode poolAllocationMode) {
this.poolAllocationMode = poolAllocationMode;
return this;
}
@@ -149,9 +146,9 @@ public KeyVaultReference keyVaultReference() {
* Set the keyVaultReference value.
*
* @param keyVaultReference the keyVaultReference value to set
- * @return the BatchAccountCreateParametersInner object itself.
+ * @return the BatchAccountCreateParameters object itself.
*/
- public BatchAccountCreateParametersInner withKeyVaultReference(KeyVaultReference keyVaultReference) {
+ public BatchAccountCreateParameters withKeyVaultReference(KeyVaultReference keyVaultReference) {
this.keyVaultReference = keyVaultReference;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountDeleteHeadersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountDeleteHeaders.java
similarity index 78%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountDeleteHeadersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountDeleteHeaders.java
index 47c3c9b68cc..163347f0d63 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountDeleteHeadersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountDeleteHeaders.java
@@ -6,14 +6,14 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Defines headers for Delete operation.
*/
-public class BatchAccountDeleteHeadersInner {
+public class BatchAccountDeleteHeaders {
/**
* The URL of the resource used to check the status of the asynchronous
* operation.
@@ -41,9 +41,9 @@ public String location() {
* Set the location value.
*
* @param location the location value to set
- * @return the BatchAccountDeleteHeadersInner object itself.
+ * @return the BatchAccountDeleteHeaders object itself.
*/
- public BatchAccountDeleteHeadersInner withLocation(String location) {
+ public BatchAccountDeleteHeaders withLocation(String location) {
this.location = location;
return this;
}
@@ -61,9 +61,9 @@ public Integer retryAfter() {
* Set the retryAfter value.
*
* @param retryAfter the retryAfter value to set
- * @return the BatchAccountDeleteHeadersInner object itself.
+ * @return the BatchAccountDeleteHeaders object itself.
*/
- public BatchAccountDeleteHeadersInner withRetryAfter(Integer retryAfter) {
+ public BatchAccountDeleteHeaders withRetryAfter(Integer retryAfter) {
this.retryAfter = retryAfter;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountUpdateParametersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountUpdateParameters.java
similarity index 74%
rename from azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountUpdateParametersInner.java
rename to azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountUpdateParameters.java
index 80835c7364e..3d33f512655 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountUpdateParametersInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/BatchAccountUpdateParameters.java
@@ -6,10 +6,9 @@
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
-package com.microsoft.azure.management.batch.implementation;
+package com.microsoft.azure.management.batch;
import java.util.Map;
-import com.microsoft.azure.management.batch.AutoStorageBaseProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
@@ -17,7 +16,7 @@
* Parameters for updating an Azure Batch account.
*/
@JsonFlatten
-public class BatchAccountUpdateParametersInner {
+public class BatchAccountUpdateParameters {
/**
* The user-specified tags associated with the account.
*/
@@ -43,9 +42,9 @@ public Map tags() {
* Set the tags value.
*
* @param tags the tags value to set
- * @return the BatchAccountUpdateParametersInner object itself.
+ * @return the BatchAccountUpdateParameters object itself.
*/
- public BatchAccountUpdateParametersInner withTags(Map tags) {
+ public BatchAccountUpdateParameters withTags(Map tags) {
this.tags = tags;
return this;
}
@@ -63,9 +62,9 @@ public AutoStorageBaseProperties autoStorage() {
* Set the autoStorage value.
*
* @param autoStorage the autoStorage value to set
- * @return the BatchAccountUpdateParametersInner object itself.
+ * @return the BatchAccountUpdateParameters object itself.
*/
- public BatchAccountUpdateParametersInner withAutoStorage(AutoStorageBaseProperties autoStorage) {
+ public BatchAccountUpdateParameters withAutoStorage(AutoStorageBaseProperties autoStorage) {
this.autoStorage = autoStorage;
return this;
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CachingType.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CachingType.java
new file mode 100644
index 00000000000..936e3042a70
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CachingType.java
@@ -0,0 +1,56 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for CachingType.
+ */
+public enum CachingType {
+ /** Enum value None. */
+ NONE("None"),
+
+ /** Enum value ReadOnly. */
+ READ_ONLY("ReadOnly"),
+
+ /** Enum value ReadWrite. */
+ READ_WRITE("ReadWrite");
+
+ /** The actual serialized value for a CachingType instance. */
+ private String value;
+
+ CachingType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a CachingType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed CachingType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static CachingType fromString(String value) {
+ CachingType[] items = CachingType.values();
+ for (CachingType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateBaseProperties.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateBaseProperties.java
new file mode 100644
index 00000000000..634a3a2bab5
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateBaseProperties.java
@@ -0,0 +1,99 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The CertificateBaseProperties model.
+ */
+public class CertificateBaseProperties {
+ /**
+ * The algorithm of the certificate thumbprint.
+ * This must match the first portion of the certificate name. Currently
+ * required to be 'SHA1'.
+ */
+ @JsonProperty(value = "thumbprintAlgorithm")
+ private String thumbprintAlgorithm;
+
+ /**
+ * The thumbprint of the certificate.
+ * This must match the thumbprint from the name.
+ */
+ @JsonProperty(value = "thumbprint")
+ private String thumbprint;
+
+ /**
+ * The format of the certificate - either Pfx or Cer. If omitted, the
+ * default is Pfx. Possible values include: 'Pfx', 'Cer'.
+ */
+ @JsonProperty(value = "format")
+ private CertificateFormat format;
+
+ /**
+ * Get the thumbprintAlgorithm value.
+ *
+ * @return the thumbprintAlgorithm value
+ */
+ public String thumbprintAlgorithm() {
+ return this.thumbprintAlgorithm;
+ }
+
+ /**
+ * Set the thumbprintAlgorithm value.
+ *
+ * @param thumbprintAlgorithm the thumbprintAlgorithm value to set
+ * @return the CertificateBaseProperties object itself.
+ */
+ public CertificateBaseProperties withThumbprintAlgorithm(String thumbprintAlgorithm) {
+ this.thumbprintAlgorithm = thumbprintAlgorithm;
+ return this;
+ }
+
+ /**
+ * Get the thumbprint value.
+ *
+ * @return the thumbprint value
+ */
+ public String thumbprint() {
+ return this.thumbprint;
+ }
+
+ /**
+ * Set the thumbprint value.
+ *
+ * @param thumbprint the thumbprint value to set
+ * @return the CertificateBaseProperties object itself.
+ */
+ public CertificateBaseProperties withThumbprint(String thumbprint) {
+ this.thumbprint = thumbprint;
+ return this;
+ }
+
+ /**
+ * Get the format value.
+ *
+ * @return the format value
+ */
+ public CertificateFormat format() {
+ return this.format;
+ }
+
+ /**
+ * Set the format value.
+ *
+ * @param format the format value to set
+ * @return the CertificateBaseProperties object itself.
+ */
+ public CertificateBaseProperties withFormat(CertificateFormat format) {
+ this.format = format;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCancelDeletionHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCancelDeletionHeaders.java
new file mode 100644
index 00000000000..b0533c4875e
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCancelDeletionHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for CancelDeletion operation.
+ */
+public class CertificateCancelDeletionHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the CertificateCancelDeletionHeaders object itself.
+ */
+ public CertificateCancelDeletionHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCreateHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCreateHeaders.java
new file mode 100644
index 00000000000..1f9908e9042
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateCreateHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Create operation.
+ */
+public class CertificateCreateHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the CertificateCreateHeaders object itself.
+ */
+ public CertificateCreateHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateDeleteHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateDeleteHeaders.java
new file mode 100644
index 00000000000..331fbf2ff0c
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateDeleteHeaders.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Delete operation.
+ */
+public class CertificateDeleteHeaders {
+ /**
+ * The URL of the resource used to check the status of the asynchronous
+ * operation.
+ */
+ @JsonProperty(value = "Location")
+ private String location;
+
+ /**
+ * Suggested delay to check the status of the asynchronous operation. The
+ * value is an integer that represents the seconds.
+ */
+ @JsonProperty(value = "Retry-After")
+ private Integer retryAfter;
+
+ /**
+ * Get the location value.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location value.
+ *
+ * @param location the location value to set
+ * @return the CertificateDeleteHeaders object itself.
+ */
+ public CertificateDeleteHeaders withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the retryAfter value.
+ *
+ * @return the retryAfter value
+ */
+ public Integer retryAfter() {
+ return this.retryAfter;
+ }
+
+ /**
+ * Set the retryAfter value.
+ *
+ * @param retryAfter the retryAfter value to set
+ * @return the CertificateDeleteHeaders object itself.
+ */
+ public CertificateDeleteHeaders withRetryAfter(Integer retryAfter) {
+ this.retryAfter = retryAfter;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateFormat.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateFormat.java
new file mode 100644
index 00000000000..e710e8ae191
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateFormat.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for CertificateFormat.
+ */
+public enum CertificateFormat {
+ /** Enum value Pfx. */
+ PFX("Pfx"),
+
+ /** Enum value Cer. */
+ CER("Cer");
+
+ /** The actual serialized value for a CertificateFormat instance. */
+ private String value;
+
+ CertificateFormat(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a CertificateFormat instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed CertificateFormat object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static CertificateFormat fromString(String value) {
+ CertificateFormat[] items = CertificateFormat.values();
+ for (CertificateFormat item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateGetHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateGetHeaders.java
new file mode 100644
index 00000000000..802f9a38cf0
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateGetHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Get operation.
+ */
+public class CertificateGetHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the CertificateGetHeaders object itself.
+ */
+ public CertificateGetHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateProvisioningState.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateProvisioningState.java
new file mode 100644
index 00000000000..ad61e39a01c
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateProvisioningState.java
@@ -0,0 +1,56 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for CertificateProvisioningState.
+ */
+public enum CertificateProvisioningState {
+ /** Enum value Succeeded. */
+ SUCCEEDED("Succeeded"),
+
+ /** Enum value Deleting. */
+ DELETING("Deleting"),
+
+ /** Enum value Failed. */
+ FAILED("Failed");
+
+ /** The actual serialized value for a CertificateProvisioningState instance. */
+ private String value;
+
+ CertificateProvisioningState(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a CertificateProvisioningState instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed CertificateProvisioningState object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static CertificateProvisioningState fromString(String value) {
+ CertificateProvisioningState[] items = CertificateProvisioningState.values();
+ for (CertificateProvisioningState item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateReference.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateReference.java
new file mode 100644
index 00000000000..52b0ab3ac41
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateReference.java
@@ -0,0 +1,151 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A reference to a certificate to be installed on compute nodes in a pool.
+ * This must exist inside the same account as the pool.
+ */
+public class CertificateReference {
+ /**
+ * The fully qualified ID of the certificate to install on the pool. This
+ * must be inside the same batch account as the pool.
+ */
+ @JsonProperty(value = "id", required = true)
+ private String id;
+
+ /**
+ * The location of the certificate store on the compute node into which to
+ * install the certificate.
+ * The default value is currentUser. This property is applicable only for
+ * pools configured with Windows nodes (that is, created with
+ * cloudServiceConfiguration, or with virtualMachineConfiguration using a
+ * Windows image reference). For Linux compute nodes, the certificates are
+ * stored in a directory inside the task working directory and an
+ * environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task
+ * to query for this location. For certificates with visibility of
+ * 'remoteUser', a 'certs' directory is created in the user's home
+ * directory (e.g., /home/{user-name}/certs) and certificates are placed in
+ * that directory. Possible values include: 'CurrentUser', 'LocalMachine'.
+ */
+ @JsonProperty(value = "storeLocation")
+ private CertificateStoreLocation storeLocation;
+
+ /**
+ * The name of the certificate store on the compute node into which to
+ * install the certificate.
+ * This property is applicable only for pools configured with Windows nodes
+ * (that is, created with cloudServiceConfiguration, or with
+ * virtualMachineConfiguration using a Windows image reference). Common
+ * store names include: My, Root, CA, Trust, Disallowed, TrustedPeople,
+ * TrustedPublisher, AuthRoot, AddressBook, but any custom store name can
+ * also be used. The default value is My.
+ */
+ @JsonProperty(value = "storeName")
+ private String storeName;
+
+ /**
+ * Which user accounts on the compute node should have access to the
+ * private data of the certificate.
+ * Values are:
+ *
+ * starttask - The user account under which the start task is run.
+ * task - The accounts under which job tasks are run.
+ * remoteuser - The accounts under which users remotely access the node.
+ *
+ * You can specify more than one visibility in this collection. The default
+ * is all accounts.
+ */
+ @JsonProperty(value = "visibility")
+ private List visibility;
+
+ /**
+ * Get the id value.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id value.
+ *
+ * @param id the id value to set
+ * @return the CertificateReference object itself.
+ */
+ public CertificateReference withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the storeLocation value.
+ *
+ * @return the storeLocation value
+ */
+ public CertificateStoreLocation storeLocation() {
+ return this.storeLocation;
+ }
+
+ /**
+ * Set the storeLocation value.
+ *
+ * @param storeLocation the storeLocation value to set
+ * @return the CertificateReference object itself.
+ */
+ public CertificateReference withStoreLocation(CertificateStoreLocation storeLocation) {
+ this.storeLocation = storeLocation;
+ return this;
+ }
+
+ /**
+ * Get the storeName value.
+ *
+ * @return the storeName value
+ */
+ public String storeName() {
+ return this.storeName;
+ }
+
+ /**
+ * Set the storeName value.
+ *
+ * @param storeName the storeName value to set
+ * @return the CertificateReference object itself.
+ */
+ public CertificateReference withStoreName(String storeName) {
+ this.storeName = storeName;
+ return this;
+ }
+
+ /**
+ * Get the visibility value.
+ *
+ * @return the visibility value
+ */
+ public List visibility() {
+ return this.visibility;
+ }
+
+ /**
+ * Set the visibility value.
+ *
+ * @param visibility the visibility value to set
+ * @return the CertificateReference object itself.
+ */
+ public CertificateReference withVisibility(List visibility) {
+ this.visibility = visibility;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateStoreLocation.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateStoreLocation.java
new file mode 100644
index 00000000000..904af2300c4
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateStoreLocation.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for CertificateStoreLocation.
+ */
+public enum CertificateStoreLocation {
+ /** Enum value CurrentUser. */
+ CURRENT_USER("CurrentUser"),
+
+ /** Enum value LocalMachine. */
+ LOCAL_MACHINE("LocalMachine");
+
+ /** The actual serialized value for a CertificateStoreLocation instance. */
+ private String value;
+
+ CertificateStoreLocation(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a CertificateStoreLocation instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed CertificateStoreLocation object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static CertificateStoreLocation fromString(String value) {
+ CertificateStoreLocation[] items = CertificateStoreLocation.values();
+ for (CertificateStoreLocation item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateUpdateHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateUpdateHeaders.java
new file mode 100644
index 00000000000..c668bda10c8
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateUpdateHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Update operation.
+ */
+public class CertificateUpdateHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the CertificateUpdateHeaders object itself.
+ */
+ public CertificateUpdateHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateVisibility.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateVisibility.java
new file mode 100644
index 00000000000..dedc85da487
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CertificateVisibility.java
@@ -0,0 +1,56 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for CertificateVisibility.
+ */
+public enum CertificateVisibility {
+ /** Enum value StartTask. */
+ START_TASK("StartTask"),
+
+ /** Enum value Task. */
+ TASK("Task"),
+
+ /** Enum value RemoteUser. */
+ REMOTE_USER("RemoteUser");
+
+ /** The actual serialized value for a CertificateVisibility instance. */
+ private String value;
+
+ CertificateVisibility(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a CertificateVisibility instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed CertificateVisibility object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static CertificateVisibility fromString(String value) {
+ CertificateVisibility[] items = CertificateVisibility.values();
+ for (CertificateVisibility item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CheckNameAvailabilityParameters.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CheckNameAvailabilityParameters.java
new file mode 100644
index 00000000000..52bcb8950df
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CheckNameAvailabilityParameters.java
@@ -0,0 +1,76 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Parameters for a check name availability request.
+ */
+public class CheckNameAvailabilityParameters {
+ /**
+ * The name to check for availability.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The resource type. Must be set to Microsoft.Batch/batchAccounts.
+ */
+ @JsonProperty(value = "type", required = true)
+ private String type;
+
+ /**
+ * Creates an instance of CheckNameAvailabilityParameters class.
+ */
+ public CheckNameAvailabilityParameters() {
+ type = "Microsoft.Batch/batchAccounts";
+ }
+
+ /**
+ * Get the name value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name value.
+ *
+ * @param name the name value to set
+ * @return the CheckNameAvailabilityParameters object itself.
+ */
+ public CheckNameAvailabilityParameters withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the type value.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type value.
+ *
+ * @param type the type value to set
+ * @return the CheckNameAvailabilityParameters object itself.
+ */
+ public CheckNameAvailabilityParameters withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CloudServiceConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CloudServiceConfiguration.java
new file mode 100644
index 00000000000..abdba9c6930
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/CloudServiceConfiguration.java
@@ -0,0 +1,112 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The configuration for nodes in a pool based on the Azure Cloud Services
+ * platform.
+ */
+public class CloudServiceConfiguration {
+ /**
+ * The Azure Guest OS family to be installed on the virtual machines in the
+ * pool.
+ * Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008
+ * R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS
+ * Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5,
+ * equivalent to Windows Server 2016. For more information, see Azure Guest
+ * OS Releases
+ * (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
+ */
+ @JsonProperty(value = "osFamily", required = true)
+ private String osFamily;
+
+ /**
+ * The Azure Guest OS version to be installed on the virtual machines in
+ * the pool.
+ * The default value is * which specifies the latest operating system
+ * version for the specified OS family.
+ */
+ @JsonProperty(value = "targetOSVersion")
+ private String targetOSVersion;
+
+ /**
+ * The Azure Guest OS Version currently installed on the virtual machines
+ * in the pool.
+ * This may differ from targetOSVersion if the pool state is Upgrading. In
+ * this case some virtual machines may be on the targetOSVersion and some
+ * may be on the currentOSVersion during the upgrade process. Once all
+ * virtual machines have upgraded, currentOSVersion is updated to be the
+ * same as targetOSVersion.
+ */
+ @JsonProperty(value = "currentOSVersion")
+ private String currentOSVersion;
+
+ /**
+ * Get the osFamily value.
+ *
+ * @return the osFamily value
+ */
+ public String osFamily() {
+ return this.osFamily;
+ }
+
+ /**
+ * Set the osFamily value.
+ *
+ * @param osFamily the osFamily value to set
+ * @return the CloudServiceConfiguration object itself.
+ */
+ public CloudServiceConfiguration withOsFamily(String osFamily) {
+ this.osFamily = osFamily;
+ return this;
+ }
+
+ /**
+ * Get the targetOSVersion value.
+ *
+ * @return the targetOSVersion value
+ */
+ public String targetOSVersion() {
+ return this.targetOSVersion;
+ }
+
+ /**
+ * Set the targetOSVersion value.
+ *
+ * @param targetOSVersion the targetOSVersion value to set
+ * @return the CloudServiceConfiguration object itself.
+ */
+ public CloudServiceConfiguration withTargetOSVersion(String targetOSVersion) {
+ this.targetOSVersion = targetOSVersion;
+ return this;
+ }
+
+ /**
+ * Get the currentOSVersion value.
+ *
+ * @return the currentOSVersion value
+ */
+ public String currentOSVersion() {
+ return this.currentOSVersion;
+ }
+
+ /**
+ * Set the currentOSVersion value.
+ *
+ * @param currentOSVersion the currentOSVersion value to set
+ * @return the CloudServiceConfiguration object itself.
+ */
+ public CloudServiceConfiguration withCurrentOSVersion(String currentOSVersion) {
+ this.currentOSVersion = currentOSVersion;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeDeallocationOption.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeDeallocationOption.java
new file mode 100644
index 00000000000..b975a14768f
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeDeallocationOption.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for ComputeNodeDeallocationOption.
+ */
+public enum ComputeNodeDeallocationOption {
+ /** Enum value Requeue. */
+ REQUEUE("Requeue"),
+
+ /** Enum value Terminate. */
+ TERMINATE("Terminate"),
+
+ /** Enum value TaskCompletion. */
+ TASK_COMPLETION("TaskCompletion"),
+
+ /** Enum value RetainedData. */
+ RETAINED_DATA("RetainedData");
+
+ /** The actual serialized value for a ComputeNodeDeallocationOption instance. */
+ private String value;
+
+ ComputeNodeDeallocationOption(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a ComputeNodeDeallocationOption instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed ComputeNodeDeallocationOption object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static ComputeNodeDeallocationOption fromString(String value) {
+ ComputeNodeDeallocationOption[] items = ComputeNodeDeallocationOption.values();
+ for (ComputeNodeDeallocationOption item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeFillType.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeFillType.java
new file mode 100644
index 00000000000..598a520d01f
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ComputeNodeFillType.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for ComputeNodeFillType.
+ */
+public enum ComputeNodeFillType {
+ /** Enum value Spread. */
+ SPREAD("Spread"),
+
+ /** Enum value Pack. */
+ PACK("Pack");
+
+ /** The actual serialized value for a ComputeNodeFillType instance. */
+ private String value;
+
+ ComputeNodeFillType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a ComputeNodeFillType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed ComputeNodeFillType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static ComputeNodeFillType fromString(String value) {
+ ComputeNodeFillType[] items = ComputeNodeFillType.values();
+ for (ComputeNodeFillType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DataDisk.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DataDisk.java
new file mode 100644
index 00000000000..fb2f68052fc
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DataDisk.java
@@ -0,0 +1,140 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Data Disk settings which will be used by the data disks associated to
+ * Compute Nodes in the pool.
+ */
+public class DataDisk {
+ /**
+ * The logical unit number.
+ * The lun is used to uniquely identify each data disk. If attaching
+ * multiple disks, each should have a distinct lun.
+ */
+ @JsonProperty(value = "lun", required = true)
+ private int lun;
+
+ /**
+ * The type of caching to be enabled for the data disks.
+ * Values are:
+ *
+ * none - The caching mode for the disk is not enabled.
+ * readOnly - The caching mode for the disk is read only.
+ * readWrite - The caching mode for the disk is read and write.
+ *
+ * The default value for caching is none. For information about the caching
+ * options see:
+ * https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.
+ * Possible values include: 'None', 'ReadOnly', 'ReadWrite'.
+ */
+ @JsonProperty(value = "caching")
+ private CachingType caching;
+
+ /**
+ * The initial disk size in GB when creating new data disk.
+ */
+ @JsonProperty(value = "diskSizeGB", required = true)
+ private int diskSizeGB;
+
+ /**
+ * The storage account type to be used for the data disk.
+ * If omitted, the default is "Standard_LRS". Values are:
+ *
+ * Standard_LRS - The data disk should use standard locally redundant
+ * storage.
+ * Premium_LRS - The data disk should use premium locally redundant
+ * storage. Possible values include: 'Standard_LRS', 'Premium_LRS'.
+ */
+ @JsonProperty(value = "storageAccountType")
+ private StorageAccountType storageAccountType;
+
+ /**
+ * Get the lun value.
+ *
+ * @return the lun value
+ */
+ public int lun() {
+ return this.lun;
+ }
+
+ /**
+ * Set the lun value.
+ *
+ * @param lun the lun value to set
+ * @return the DataDisk object itself.
+ */
+ public DataDisk withLun(int lun) {
+ this.lun = lun;
+ return this;
+ }
+
+ /**
+ * Get the caching value.
+ *
+ * @return the caching value
+ */
+ public CachingType caching() {
+ return this.caching;
+ }
+
+ /**
+ * Set the caching value.
+ *
+ * @param caching the caching value to set
+ * @return the DataDisk object itself.
+ */
+ public DataDisk withCaching(CachingType caching) {
+ this.caching = caching;
+ return this;
+ }
+
+ /**
+ * Get the diskSizeGB value.
+ *
+ * @return the diskSizeGB value
+ */
+ public int diskSizeGB() {
+ return this.diskSizeGB;
+ }
+
+ /**
+ * Set the diskSizeGB value.
+ *
+ * @param diskSizeGB the diskSizeGB value to set
+ * @return the DataDisk object itself.
+ */
+ public DataDisk withDiskSizeGB(int diskSizeGB) {
+ this.diskSizeGB = diskSizeGB;
+ return this;
+ }
+
+ /**
+ * Get the storageAccountType value.
+ *
+ * @return the storageAccountType value
+ */
+ public StorageAccountType storageAccountType() {
+ return this.storageAccountType;
+ }
+
+ /**
+ * Set the storageAccountType value.
+ *
+ * @param storageAccountType the storageAccountType value to set
+ * @return the DataDisk object itself.
+ */
+ public DataDisk withStorageAccountType(StorageAccountType storageAccountType) {
+ this.storageAccountType = storageAccountType;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeleteCertificateError.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeleteCertificateError.java
new file mode 100644
index 00000000000..28ca54eb2e1
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeleteCertificateError.java
@@ -0,0 +1,125 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An error response from the Batch service.
+ */
+public class DeleteCertificateError {
+ /**
+ * An identifier for the error. Codes are invariant and are intended to be
+ * consumed programmatically.
+ */
+ @JsonProperty(value = "code", required = true)
+ private String code;
+
+ /**
+ * A message describing the error, intended to be suitable for display in a
+ * user interface.
+ */
+ @JsonProperty(value = "message", required = true)
+ private String message;
+
+ /**
+ * The target of the particular error. For example, the name of the
+ * property in error.
+ */
+ @JsonProperty(value = "target")
+ private String target;
+
+ /**
+ * A list of additional details about the error.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * Get the code value.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set the code value.
+ *
+ * @param code the code value to set
+ * @return the DeleteCertificateError object itself.
+ */
+ public DeleteCertificateError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get the message value.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the message value.
+ *
+ * @param message the message value to set
+ * @return the DeleteCertificateError object itself.
+ */
+ public DeleteCertificateError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the target value.
+ *
+ * @return the target value
+ */
+ public String target() {
+ return this.target;
+ }
+
+ /**
+ * Set the target value.
+ *
+ * @param target the target value to set
+ * @return the DeleteCertificateError object itself.
+ */
+ public DeleteCertificateError withTarget(String target) {
+ this.target = target;
+ return this;
+ }
+
+ /**
+ * Get the details value.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the details value.
+ *
+ * @param details the details value to set
+ * @return the DeleteCertificateError object itself.
+ */
+ public DeleteCertificateError withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeploymentConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeploymentConfiguration.java
new file mode 100644
index 00000000000..70d0613672f
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/DeploymentConfiguration.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Deployment configuration properties.
+ */
+public class DeploymentConfiguration {
+ /**
+ * The cloud service configuration for the pool.
+ * This property and virtualMachineConfiguration are mutually exclusive and
+ * one of the properties must be specified. This property cannot be
+ * specified if the Batch account was created with its poolAllocationMode
+ * property set to 'UserSubscription'.
+ */
+ @JsonProperty(value = "cloudServiceConfiguration")
+ private CloudServiceConfiguration cloudServiceConfiguration;
+
+ /**
+ * The virtual machine configuration for the pool.
+ * This property and cloudServiceConfiguration are mutually exclusive and
+ * one of the properties must be specified.
+ */
+ @JsonProperty(value = "virtualMachineConfiguration")
+ private VirtualMachineConfiguration virtualMachineConfiguration;
+
+ /**
+ * Get the cloudServiceConfiguration value.
+ *
+ * @return the cloudServiceConfiguration value
+ */
+ public CloudServiceConfiguration cloudServiceConfiguration() {
+ return this.cloudServiceConfiguration;
+ }
+
+ /**
+ * Set the cloudServiceConfiguration value.
+ *
+ * @param cloudServiceConfiguration the cloudServiceConfiguration value to set
+ * @return the DeploymentConfiguration object itself.
+ */
+ public DeploymentConfiguration withCloudServiceConfiguration(CloudServiceConfiguration cloudServiceConfiguration) {
+ this.cloudServiceConfiguration = cloudServiceConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the virtualMachineConfiguration value.
+ *
+ * @return the virtualMachineConfiguration value
+ */
+ public VirtualMachineConfiguration virtualMachineConfiguration() {
+ return this.virtualMachineConfiguration;
+ }
+
+ /**
+ * Set the virtualMachineConfiguration value.
+ *
+ * @param virtualMachineConfiguration the virtualMachineConfiguration value to set
+ * @return the DeploymentConfiguration object itself.
+ */
+ public DeploymentConfiguration withVirtualMachineConfiguration(VirtualMachineConfiguration virtualMachineConfiguration) {
+ this.virtualMachineConfiguration = virtualMachineConfiguration;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ElevationLevel.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ElevationLevel.java
new file mode 100644
index 00000000000..57615675721
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ElevationLevel.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for ElevationLevel.
+ */
+public enum ElevationLevel {
+ /** Enum value NonAdmin. */
+ NON_ADMIN("NonAdmin"),
+
+ /** Enum value Admin. */
+ ADMIN("Admin");
+
+ /** The actual serialized value for a ElevationLevel instance. */
+ private String value;
+
+ ElevationLevel(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a ElevationLevel instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed ElevationLevel object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static ElevationLevel fromString(String value) {
+ ElevationLevel[] items = ElevationLevel.values();
+ for (ElevationLevel item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/EnvironmentSetting.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/EnvironmentSetting.java
new file mode 100644
index 00000000000..f9fc3cbafb8
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/EnvironmentSetting.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An environment variable to be set on a task process.
+ */
+public class EnvironmentSetting {
+ /**
+ * The name of the environment variable.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The value of the environment variable.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get the name value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name value.
+ *
+ * @param name the name value to set
+ * @return the EnvironmentSetting object itself.
+ */
+ public EnvironmentSetting withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the value value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value value.
+ *
+ * @param value the value value to set
+ * @return the EnvironmentSetting object itself.
+ */
+ public EnvironmentSetting withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/FixedScaleSettings.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/FixedScaleSettings.java
new file mode 100644
index 00000000000..ba0d7b99083
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/FixedScaleSettings.java
@@ -0,0 +1,134 @@
+/**
+ * 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.batch;
+
+import org.joda.time.Period;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Fixed scale settings for the pool.
+ */
+public class FixedScaleSettings {
+ /**
+ * The timeout for allocation of compute nodes to the pool.
+ * The default value is 15 minutes. Timeout values use ISO 8601 format. For
+ * example, use PT10M for 10 minutes. The minimum value is 5 minutes. If
+ * you specify a value less than 5 minutes, the Batch service rejects the
+ * request with an error; if you are calling the REST API directly, the
+ * HTTP status code is 400 (Bad Request).
+ */
+ @JsonProperty(value = "resizeTimeout")
+ private Period resizeTimeout;
+
+ /**
+ * The desired number of dedicated compute nodes in the pool.
+ * At least one of targetDedicatedNodes, targetLowPriority nodes must be
+ * set.
+ */
+ @JsonProperty(value = "targetDedicatedNodes")
+ private Integer targetDedicatedNodes;
+
+ /**
+ * The desired number of low-priority compute nodes in the pool.
+ * At least one of targetDedicatedNodes, targetLowPriority nodes must be
+ * set.
+ */
+ @JsonProperty(value = "targetLowPriorityNodes")
+ private Integer targetLowPriorityNodes;
+
+ /**
+ * Determines what to do with a node and its running task(s) if the pool
+ * size is decreasing.
+ * If omitted, the default value is Requeue. Possible values include:
+ * 'Requeue', 'Terminate', 'TaskCompletion', 'RetainedData'.
+ */
+ @JsonProperty(value = "nodeDeallocationOption")
+ private ComputeNodeDeallocationOption nodeDeallocationOption;
+
+ /**
+ * Get the resizeTimeout value.
+ *
+ * @return the resizeTimeout value
+ */
+ public Period resizeTimeout() {
+ return this.resizeTimeout;
+ }
+
+ /**
+ * Set the resizeTimeout value.
+ *
+ * @param resizeTimeout the resizeTimeout value to set
+ * @return the FixedScaleSettings object itself.
+ */
+ public FixedScaleSettings withResizeTimeout(Period resizeTimeout) {
+ this.resizeTimeout = resizeTimeout;
+ return this;
+ }
+
+ /**
+ * Get the targetDedicatedNodes value.
+ *
+ * @return the targetDedicatedNodes value
+ */
+ public Integer targetDedicatedNodes() {
+ return this.targetDedicatedNodes;
+ }
+
+ /**
+ * Set the targetDedicatedNodes value.
+ *
+ * @param targetDedicatedNodes the targetDedicatedNodes value to set
+ * @return the FixedScaleSettings object itself.
+ */
+ public FixedScaleSettings withTargetDedicatedNodes(Integer targetDedicatedNodes) {
+ this.targetDedicatedNodes = targetDedicatedNodes;
+ return this;
+ }
+
+ /**
+ * Get the targetLowPriorityNodes value.
+ *
+ * @return the targetLowPriorityNodes value
+ */
+ public Integer targetLowPriorityNodes() {
+ return this.targetLowPriorityNodes;
+ }
+
+ /**
+ * Set the targetLowPriorityNodes value.
+ *
+ * @param targetLowPriorityNodes the targetLowPriorityNodes value to set
+ * @return the FixedScaleSettings object itself.
+ */
+ public FixedScaleSettings withTargetLowPriorityNodes(Integer targetLowPriorityNodes) {
+ this.targetLowPriorityNodes = targetLowPriorityNodes;
+ return this;
+ }
+
+ /**
+ * Get the nodeDeallocationOption value.
+ *
+ * @return the nodeDeallocationOption value
+ */
+ public ComputeNodeDeallocationOption nodeDeallocationOption() {
+ return this.nodeDeallocationOption;
+ }
+
+ /**
+ * Set the nodeDeallocationOption value.
+ *
+ * @param nodeDeallocationOption the nodeDeallocationOption value to set
+ * @return the FixedScaleSettings object itself.
+ */
+ public FixedScaleSettings withNodeDeallocationOption(ComputeNodeDeallocationOption nodeDeallocationOption) {
+ this.nodeDeallocationOption = nodeDeallocationOption;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ImageReference.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ImageReference.java
new file mode 100644
index 00000000000..b9ec75a3bbe
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ImageReference.java
@@ -0,0 +1,163 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A reference to an Azure Virtual Machines Marketplace image or the Azure
+ * Image resource of a custom Virtual Machine. To get the list of all
+ * imageReferences verified by Azure Batch, see the 'List supported node agent
+ * SKUs' operation.
+ */
+public class ImageReference {
+ /**
+ * The publisher of the Azure Virtual Machines Marketplace image.
+ * For example, Canonical or MicrosoftWindowsServer.
+ */
+ @JsonProperty(value = "publisher")
+ private String publisher;
+
+ /**
+ * The offer type of the Azure Virtual Machines Marketplace image.
+ * For example, UbuntuServer or WindowsServer.
+ */
+ @JsonProperty(value = "offer")
+ private String offer;
+
+ /**
+ * The SKU of the Azure Virtual Machines Marketplace image.
+ * For example, 14.04.0-LTS or 2012-R2-Datacenter.
+ */
+ @JsonProperty(value = "sku")
+ private String sku;
+
+ /**
+ * The version of the Azure Virtual Machines Marketplace image.
+ * A value of 'latest' can be specified to select the latest version of an
+ * image. If omitted, the default is 'latest'.
+ */
+ @JsonProperty(value = "version")
+ private String version;
+
+ /**
+ * The ARM resource identifier of the virtual machine image. Computes nodes
+ * of the pool will be created using this custom image. This is of the form
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}.
+ * This property is mutually exclusive with other properties. The virtual
+ * machine image must be in the same region and subscription as the Azure
+ * Batch account. For information about the firewall settings for Batch
+ * node agent to communicate with Batch service see
+ * https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
+ * .
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * Get the publisher value.
+ *
+ * @return the publisher value
+ */
+ public String publisher() {
+ return this.publisher;
+ }
+
+ /**
+ * Set the publisher value.
+ *
+ * @param publisher the publisher value to set
+ * @return the ImageReference object itself.
+ */
+ public ImageReference withPublisher(String publisher) {
+ this.publisher = publisher;
+ return this;
+ }
+
+ /**
+ * Get the offer value.
+ *
+ * @return the offer value
+ */
+ public String offer() {
+ return this.offer;
+ }
+
+ /**
+ * Set the offer value.
+ *
+ * @param offer the offer value to set
+ * @return the ImageReference object itself.
+ */
+ public ImageReference withOffer(String offer) {
+ this.offer = offer;
+ return this;
+ }
+
+ /**
+ * Get the sku value.
+ *
+ * @return the sku value
+ */
+ public String sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku value.
+ *
+ * @param sku the sku value to set
+ * @return the ImageReference object itself.
+ */
+ public ImageReference withSku(String sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the version value.
+ *
+ * @return the version value
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Set the version value.
+ *
+ * @param version the version value to set
+ * @return the ImageReference object itself.
+ */
+ public ImageReference withVersion(String version) {
+ this.version = version;
+ return this;
+ }
+
+ /**
+ * Get the id value.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id value.
+ *
+ * @param id the id value to set
+ * @return the ImageReference object itself.
+ */
+ public ImageReference withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundEndpointProtocol.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundEndpointProtocol.java
new file mode 100644
index 00000000000..3052d71a62c
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundEndpointProtocol.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for InboundEndpointProtocol.
+ */
+public enum InboundEndpointProtocol {
+ /** Enum value TCP. */
+ TCP("TCP"),
+
+ /** Enum value UDP. */
+ UDP("UDP");
+
+ /** The actual serialized value for a InboundEndpointProtocol instance. */
+ private String value;
+
+ InboundEndpointProtocol(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a InboundEndpointProtocol instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed InboundEndpointProtocol object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static InboundEndpointProtocol fromString(String value) {
+ InboundEndpointProtocol[] items = InboundEndpointProtocol.values();
+ for (InboundEndpointProtocol item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundNatPool.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundNatPool.java
new file mode 100644
index 00000000000..b2a3002d9f8
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InboundNatPool.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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A inbound NAT pool that can be used to address specific ports on compute
+ * nodes in a Batch pool externally.
+ */
+public class InboundNatPool {
+ /**
+ * The name of the endpoint.
+ * The name must be unique within a Batch pool, can contain letters,
+ * numbers, underscores, periods, and hyphens. Names must start with a
+ * letter or number, must end with a letter, number, or underscore, and
+ * cannot exceed 77 characters. If any invalid values are provided the
+ * request fails with HTTP status code 400.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The protocol of the endpoint.
+ * Possible values include: 'TCP', 'UDP'.
+ */
+ @JsonProperty(value = "protocol", required = true)
+ private InboundEndpointProtocol protocol;
+
+ /**
+ * The port number on the compute node.
+ * This must be unique within a Batch pool. Acceptable values are between 1
+ * and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If
+ * any reserved values are provided the request fails with HTTP status code
+ * 400.
+ */
+ @JsonProperty(value = "backendPort", required = true)
+ private int backendPort;
+
+ /**
+ * The first port number in the range of external ports that will be used
+ * to provide inbound access to the backendPort on individual compute
+ * nodes.
+ * Acceptable values range between 1 and 65534 except ports from 50000 to
+ * 55000 which are reserved. All ranges within a pool must be distinct and
+ * cannot overlap. If any reserved or overlapping values are provided the
+ * request fails with HTTP status code 400.
+ */
+ @JsonProperty(value = "frontendPortRangeStart", required = true)
+ private int frontendPortRangeStart;
+
+ /**
+ * The last port number in the range of external ports that will be used to
+ * provide inbound access to the backendPort on individual compute nodes.
+ * Acceptable values range between 1 and 65534 except ports from 50000 to
+ * 55000 which are reserved by the Batch service. All ranges within a pool
+ * must be distinct and cannot overlap. If any reserved or overlapping
+ * values are provided the request fails with HTTP status code 400.
+ */
+ @JsonProperty(value = "frontendPortRangeEnd", required = true)
+ private int frontendPortRangeEnd;
+
+ /**
+ * A list of network security group rules that will be applied to the
+ * endpoint.
+ * The maximum number of rules that can be specified across all the
+ * endpoints on a Batch pool is 25. If no network security group rules are
+ * specified, a default rule will be created to allow inbound access to the
+ * specified backendPort. If the maximum number of network security group
+ * rules is exceeded the request fails with HTTP status code 400.
+ */
+ @JsonProperty(value = "networkSecurityGroupRules")
+ private List networkSecurityGroupRules;
+
+ /**
+ * Get the name value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name value.
+ *
+ * @param name the name value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the protocol value.
+ *
+ * @return the protocol value
+ */
+ public InboundEndpointProtocol protocol() {
+ return this.protocol;
+ }
+
+ /**
+ * Set the protocol value.
+ *
+ * @param protocol the protocol value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withProtocol(InboundEndpointProtocol protocol) {
+ this.protocol = protocol;
+ return this;
+ }
+
+ /**
+ * Get the backendPort value.
+ *
+ * @return the backendPort value
+ */
+ public int backendPort() {
+ return this.backendPort;
+ }
+
+ /**
+ * Set the backendPort value.
+ *
+ * @param backendPort the backendPort value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withBackendPort(int backendPort) {
+ this.backendPort = backendPort;
+ return this;
+ }
+
+ /**
+ * Get the frontendPortRangeStart value.
+ *
+ * @return the frontendPortRangeStart value
+ */
+ public int frontendPortRangeStart() {
+ return this.frontendPortRangeStart;
+ }
+
+ /**
+ * Set the frontendPortRangeStart value.
+ *
+ * @param frontendPortRangeStart the frontendPortRangeStart value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withFrontendPortRangeStart(int frontendPortRangeStart) {
+ this.frontendPortRangeStart = frontendPortRangeStart;
+ return this;
+ }
+
+ /**
+ * Get the frontendPortRangeEnd value.
+ *
+ * @return the frontendPortRangeEnd value
+ */
+ public int frontendPortRangeEnd() {
+ return this.frontendPortRangeEnd;
+ }
+
+ /**
+ * Set the frontendPortRangeEnd value.
+ *
+ * @param frontendPortRangeEnd the frontendPortRangeEnd value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withFrontendPortRangeEnd(int frontendPortRangeEnd) {
+ this.frontendPortRangeEnd = frontendPortRangeEnd;
+ return this;
+ }
+
+ /**
+ * Get the networkSecurityGroupRules value.
+ *
+ * @return the networkSecurityGroupRules value
+ */
+ public List networkSecurityGroupRules() {
+ return this.networkSecurityGroupRules;
+ }
+
+ /**
+ * Set the networkSecurityGroupRules value.
+ *
+ * @param networkSecurityGroupRules the networkSecurityGroupRules value to set
+ * @return the InboundNatPool object itself.
+ */
+ public InboundNatPool withNetworkSecurityGroupRules(List networkSecurityGroupRules) {
+ this.networkSecurityGroupRules = networkSecurityGroupRules;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InterNodeCommunicationState.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InterNodeCommunicationState.java
new file mode 100644
index 00000000000..0bef23e90c3
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/InterNodeCommunicationState.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for InterNodeCommunicationState.
+ */
+public enum InterNodeCommunicationState {
+ /** Enum value Enabled. */
+ ENABLED("Enabled"),
+
+ /** Enum value Disabled. */
+ DISABLED("Disabled");
+
+ /** The actual serialized value for a InterNodeCommunicationState instance. */
+ private String value;
+
+ InterNodeCommunicationState(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a InterNodeCommunicationState instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed InterNodeCommunicationState object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static InterNodeCommunicationState fromString(String value) {
+ InterNodeCommunicationState[] items = InterNodeCommunicationState.values();
+ for (InterNodeCommunicationState item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/LinuxUserConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/LinuxUserConfiguration.java
new file mode 100644
index 00000000000..aa6d1aaea10
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/LinuxUserConfiguration.java
@@ -0,0 +1,107 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties used to create a user account on a Linux node.
+ */
+public class LinuxUserConfiguration {
+ /**
+ * The user ID of the user account.
+ * The uid and gid properties must be specified together or not at all. If
+ * not specified the underlying operating system picks the uid.
+ */
+ @JsonProperty(value = "uid")
+ private Integer uid;
+
+ /**
+ * The group ID for the user account.
+ * The uid and gid properties must be specified together or not at all. If
+ * not specified the underlying operating system picks the gid.
+ */
+ @JsonProperty(value = "gid")
+ private Integer gid;
+
+ /**
+ * The SSH private key for the user account.
+ * The private key must not be password protected. The private key is used
+ * to automatically configure asymmetric-key based authentication for SSH
+ * between nodes in a Linux pool when the pool's
+ * enableInterNodeCommunication property is true (it is ignored if
+ * enableInterNodeCommunication is false). It does this by placing the key
+ * pair into the user's .ssh directory. If not specified, password-less SSH
+ * is not configured between nodes (no modification of the user's .ssh
+ * directory is done).
+ */
+ @JsonProperty(value = "sshPrivateKey")
+ private String sshPrivateKey;
+
+ /**
+ * Get the uid value.
+ *
+ * @return the uid value
+ */
+ public Integer uid() {
+ return this.uid;
+ }
+
+ /**
+ * Set the uid value.
+ *
+ * @param uid the uid value to set
+ * @return the LinuxUserConfiguration object itself.
+ */
+ public LinuxUserConfiguration withUid(Integer uid) {
+ this.uid = uid;
+ return this;
+ }
+
+ /**
+ * Get the gid value.
+ *
+ * @return the gid value
+ */
+ public Integer gid() {
+ return this.gid;
+ }
+
+ /**
+ * Set the gid value.
+ *
+ * @param gid the gid value to set
+ * @return the LinuxUserConfiguration object itself.
+ */
+ public LinuxUserConfiguration withGid(Integer gid) {
+ this.gid = gid;
+ return this;
+ }
+
+ /**
+ * Get the sshPrivateKey value.
+ *
+ * @return the sshPrivateKey value
+ */
+ public String sshPrivateKey() {
+ return this.sshPrivateKey;
+ }
+
+ /**
+ * Set the sshPrivateKey value.
+ *
+ * @param sshPrivateKey the sshPrivateKey value to set
+ * @return the LinuxUserConfiguration object itself.
+ */
+ public LinuxUserConfiguration withSshPrivateKey(String sshPrivateKey) {
+ this.sshPrivateKey = sshPrivateKey;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/MetadataItem.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/MetadataItem.java
new file mode 100644
index 00000000000..2fae608f588
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/MetadataItem.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A name-value pair associated with a Batch service resource.
+ * The Batch service does not assign any meaning to this metadata; it is solely
+ * for the use of user code.
+ */
+public class MetadataItem {
+ /**
+ * The name of the metadata item.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The value of the metadata item.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * Get the name value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name value.
+ *
+ * @param name the name value to set
+ * @return the MetadataItem object itself.
+ */
+ public MetadataItem withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the value value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value value.
+ *
+ * @param value the value value to set
+ * @return the MetadataItem object itself.
+ */
+ public MetadataItem withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NameAvailabilityReason.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NameAvailabilityReason.java
new file mode 100644
index 00000000000..d64a4fc31c6
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NameAvailabilityReason.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for NameAvailabilityReason.
+ */
+public enum NameAvailabilityReason {
+ /** Enum value Invalid. */
+ INVALID("Invalid"),
+
+ /** Enum value AlreadyExists. */
+ ALREADY_EXISTS("AlreadyExists");
+
+ /** The actual serialized value for a NameAvailabilityReason instance. */
+ private String value;
+
+ NameAvailabilityReason(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a NameAvailabilityReason instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed NameAvailabilityReason object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static NameAvailabilityReason fromString(String value) {
+ NameAvailabilityReason[] items = NameAvailabilityReason.values();
+ for (NameAvailabilityReason item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkConfiguration.java
new file mode 100644
index 00000000000..615e33a7335
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkConfiguration.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The network configuration for a pool.
+ */
+public class NetworkConfiguration {
+ /**
+ * The ARM resource identifier of the virtual network subnet which the
+ * compute nodes of the pool will join. This is of the form
+ * /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.
+ * The virtual network must be in the same region and subscription as the
+ * Azure Batch account. The specified subnet should have enough free IP
+ * addresses to accommodate the number of nodes in the pool. If the subnet
+ * doesn't have enough free IP addresses, the pool will partially allocate
+ * compute nodes, and a resize error will occur. The 'MicrosoftAzureBatch'
+ * service principal must have the 'Classic Virtual Machine Contributor'
+ * Role-Based Access Control (RBAC) role for the specified VNet. The
+ * specified subnet must allow communication from the Azure Batch service
+ * to be able to schedule tasks on the compute nodes. This can be verified
+ * by checking if the specified VNet has any associated Network Security
+ * Groups (NSG). If communication to the compute nodes in the specified
+ * subnet is denied by an NSG, then the Batch service will set the state of
+ * the compute nodes to unusable. For pools created via
+ * virtualMachineConfiguration the Batch account must have
+ * poolAllocationMode userSubscription in order to use a VNet. If the
+ * specified VNet has any associated Network Security Groups (NSG), then a
+ * few reserved system ports must be enabled for inbound communication. For
+ * pools created with a virtual machine configuration, enable ports 29876
+ * and 29877, as well as port 22 for Linux and port 3389 for Windows. For
+ * pools created with a cloud service configuration, enable ports 10100,
+ * 20100, and 30100. Also enable outbound connections to Azure Storage on
+ * port 443. For more details see:
+ * https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
+ */
+ @JsonProperty(value = "subnetId")
+ private String subnetId;
+
+ /**
+ * The configuration for endpoints on compute nodes in the Batch pool.
+ * Pool endpoint configuration is only supported on pools with the
+ * virtualMachineConfiguration property.
+ */
+ @JsonProperty(value = "endpointConfiguration")
+ private PoolEndpointConfiguration endpointConfiguration;
+
+ /**
+ * Get the subnetId value.
+ *
+ * @return the subnetId value
+ */
+ public String subnetId() {
+ return this.subnetId;
+ }
+
+ /**
+ * Set the subnetId value.
+ *
+ * @param subnetId the subnetId value to set
+ * @return the NetworkConfiguration object itself.
+ */
+ public NetworkConfiguration withSubnetId(String subnetId) {
+ this.subnetId = subnetId;
+ return this;
+ }
+
+ /**
+ * Get the endpointConfiguration value.
+ *
+ * @return the endpointConfiguration value
+ */
+ public PoolEndpointConfiguration endpointConfiguration() {
+ return this.endpointConfiguration;
+ }
+
+ /**
+ * Set the endpointConfiguration value.
+ *
+ * @param endpointConfiguration the endpointConfiguration value to set
+ * @return the NetworkConfiguration object itself.
+ */
+ public NetworkConfiguration withEndpointConfiguration(PoolEndpointConfiguration endpointConfiguration) {
+ this.endpointConfiguration = endpointConfiguration;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRule.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRule.java
new file mode 100644
index 00000000000..fbd68d135d2
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRule.java
@@ -0,0 +1,107 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A network security group rule to apply to an inbound endpoint.
+ */
+public class NetworkSecurityGroupRule {
+ /**
+ * The priority for this rule.
+ * Priorities within a pool must be unique and are evaluated in order of
+ * priority. The lower the number the higher the priority. For example,
+ * rules could be specified with order numbers of 150, 250, and 350. The
+ * rule with the order number of 150 takes precedence over the rule that
+ * has an order of 250. Allowed priorities are 150 to 3500. If any reserved
+ * or duplicate values are provided the request fails with HTTP status code
+ * 400.
+ */
+ @JsonProperty(value = "priority", required = true)
+ private int priority;
+
+ /**
+ * The action that should be taken for a specified IP address, subnet range
+ * or tag.
+ * Possible values include: 'Allow', 'Deny'.
+ */
+ @JsonProperty(value = "access", required = true)
+ private NetworkSecurityGroupRuleAccess access;
+
+ /**
+ * The source address prefix or tag to match for the rule.
+ * Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e.
+ * 192.168.1.0/24), default tag, or * (for all addresses). If any other
+ * values are provided the request fails with HTTP status code 400.
+ */
+ @JsonProperty(value = "sourceAddressPrefix", required = true)
+ private String sourceAddressPrefix;
+
+ /**
+ * Get the priority value.
+ *
+ * @return the priority value
+ */
+ public int priority() {
+ return this.priority;
+ }
+
+ /**
+ * Set the priority value.
+ *
+ * @param priority the priority value to set
+ * @return the NetworkSecurityGroupRule object itself.
+ */
+ public NetworkSecurityGroupRule withPriority(int priority) {
+ this.priority = priority;
+ return this;
+ }
+
+ /**
+ * Get the access value.
+ *
+ * @return the access value
+ */
+ public NetworkSecurityGroupRuleAccess access() {
+ return this.access;
+ }
+
+ /**
+ * Set the access value.
+ *
+ * @param access the access value to set
+ * @return the NetworkSecurityGroupRule object itself.
+ */
+ public NetworkSecurityGroupRule withAccess(NetworkSecurityGroupRuleAccess access) {
+ this.access = access;
+ return this;
+ }
+
+ /**
+ * Get the sourceAddressPrefix value.
+ *
+ * @return the sourceAddressPrefix value
+ */
+ public String sourceAddressPrefix() {
+ return this.sourceAddressPrefix;
+ }
+
+ /**
+ * Set the sourceAddressPrefix value.
+ *
+ * @param sourceAddressPrefix the sourceAddressPrefix value to set
+ * @return the NetworkSecurityGroupRule object itself.
+ */
+ public NetworkSecurityGroupRule withSourceAddressPrefix(String sourceAddressPrefix) {
+ this.sourceAddressPrefix = sourceAddressPrefix;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRuleAccess.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRuleAccess.java
new file mode 100644
index 00000000000..59b0b0adf97
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/NetworkSecurityGroupRuleAccess.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for NetworkSecurityGroupRuleAccess.
+ */
+public enum NetworkSecurityGroupRuleAccess {
+ /** Enum value Allow. */
+ ALLOW("Allow"),
+
+ /** Enum value Deny. */
+ DENY("Deny");
+
+ /** The actual serialized value for a NetworkSecurityGroupRuleAccess instance. */
+ private String value;
+
+ NetworkSecurityGroupRuleAccess(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a NetworkSecurityGroupRuleAccess instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed NetworkSecurityGroupRuleAccess object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static NetworkSecurityGroupRuleAccess fromString(String value) {
+ NetworkSecurityGroupRuleAccess[] items = NetworkSecurityGroupRuleAccess.values();
+ for (NetworkSecurityGroupRuleAccess item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/OSDisk.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/OSDisk.java
new file mode 100644
index 00000000000..df7a589eedc
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/OSDisk.java
@@ -0,0 +1,48 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Settings for the operating system disk of the virtual machine.
+ */
+public class OSDisk {
+ /**
+ * The type of caching to be enabled for the data disks. none - The caching
+ * mode for the disk is not enabled. readOnly - The caching mode for the
+ * disk is read only. readWrite - The caching mode for the disk is read and
+ * write.
+ * Default value is none. Possible values include: 'None', 'ReadOnly',
+ * 'ReadWrite'.
+ */
+ @JsonProperty(value = "caching")
+ private CachingType caching;
+
+ /**
+ * Get the caching value.
+ *
+ * @return the caching value
+ */
+ public CachingType caching() {
+ return this.caching;
+ }
+
+ /**
+ * Set the caching value.
+ *
+ * @param caching the caching value to set
+ * @return the OSDisk object itself.
+ */
+ public OSDisk withCaching(CachingType caching) {
+ this.caching = caching;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PackageState.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PackageState.java
index 22bed0b1e71..7eb878ce1f5 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PackageState.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PackageState.java
@@ -15,14 +15,14 @@
* Defines values for PackageState.
*/
public enum PackageState {
- /** Enum value pending. */
- PENDING("pending"),
+ /** Enum value Pending. */
+ PENDING("Pending"),
- /** Enum value active. */
- ACTIVE("active"),
+ /** Enum value Active. */
+ ACTIVE("Active"),
- /** Enum value unmapped. */
- UNMAPPED("unmapped");
+ /** Enum value Unmapped. */
+ UNMAPPED("Unmapped");
/** The actual serialized value for a PackageState instance. */
private String value;
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolCreateHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolCreateHeaders.java
new file mode 100644
index 00000000000..42721b080e7
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolCreateHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Create operation.
+ */
+public class PoolCreateHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the PoolCreateHeaders object itself.
+ */
+ public PoolCreateHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDeleteHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDeleteHeaders.java
new file mode 100644
index 00000000000..6e991841690
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDeleteHeaders.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Delete operation.
+ */
+public class PoolDeleteHeaders {
+ /**
+ * The URL of the resource used to check the status of the asynchronous
+ * operation.
+ */
+ @JsonProperty(value = "Location")
+ private String location;
+
+ /**
+ * Suggested delay to check the status of the asynchronous operation. The
+ * value is an integer that represents the seconds.
+ */
+ @JsonProperty(value = "Retry-After")
+ private Integer retryAfter;
+
+ /**
+ * Get the location value.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location value.
+ *
+ * @param location the location value to set
+ * @return the PoolDeleteHeaders object itself.
+ */
+ public PoolDeleteHeaders withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the retryAfter value.
+ *
+ * @return the retryAfter value
+ */
+ public Integer retryAfter() {
+ return this.retryAfter;
+ }
+
+ /**
+ * Set the retryAfter value.
+ *
+ * @param retryAfter the retryAfter value to set
+ * @return the PoolDeleteHeaders object itself.
+ */
+ public PoolDeleteHeaders withRetryAfter(Integer retryAfter) {
+ this.retryAfter = retryAfter;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDisableAutoScaleHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDisableAutoScaleHeaders.java
new file mode 100644
index 00000000000..197a8cb5fd2
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolDisableAutoScaleHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for DisableAutoScale operation.
+ */
+public class PoolDisableAutoScaleHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the PoolDisableAutoScaleHeaders object itself.
+ */
+ public PoolDisableAutoScaleHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolEndpointConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolEndpointConfiguration.java
new file mode 100644
index 00000000000..16bf7bcdac2
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolEndpointConfiguration.java
@@ -0,0 +1,48 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The endpoint configuration for a pool.
+ */
+public class PoolEndpointConfiguration {
+ /**
+ * A list of inbound NAT pools that can be used to address specific ports
+ * on an individual compute node externally.
+ * The maximum number of inbound NAT pools per Batch pool is 5. If the
+ * maximum number of inbound NAT pools is exceeded the request fails with
+ * HTTP status code 400.
+ */
+ @JsonProperty(value = "inboundNatPools", required = true)
+ private List inboundNatPools;
+
+ /**
+ * Get the inboundNatPools value.
+ *
+ * @return the inboundNatPools value
+ */
+ public List inboundNatPools() {
+ return this.inboundNatPools;
+ }
+
+ /**
+ * Set the inboundNatPools value.
+ *
+ * @param inboundNatPools the inboundNatPools value to set
+ * @return the PoolEndpointConfiguration object itself.
+ */
+ public PoolEndpointConfiguration withInboundNatPools(List inboundNatPools) {
+ this.inboundNatPools = inboundNatPools;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolGetHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolGetHeaders.java
new file mode 100644
index 00000000000..12328688e49
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolGetHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Get operation.
+ */
+public class PoolGetHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the PoolGetHeaders object itself.
+ */
+ public PoolGetHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolProvisioningState.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolProvisioningState.java
new file mode 100644
index 00000000000..815ccdd355a
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolProvisioningState.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for PoolProvisioningState.
+ */
+public enum PoolProvisioningState {
+ /** Enum value Succeeded. */
+ SUCCEEDED("Succeeded"),
+
+ /** Enum value Deleting. */
+ DELETING("Deleting");
+
+ /** The actual serialized value for a PoolProvisioningState instance. */
+ private String value;
+
+ PoolProvisioningState(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a PoolProvisioningState instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed PoolProvisioningState object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static PoolProvisioningState fromString(String value) {
+ PoolProvisioningState[] items = PoolProvisioningState.values();
+ for (PoolProvisioningState item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolStopResizeHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolStopResizeHeaders.java
new file mode 100644
index 00000000000..b8524d9d978
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolStopResizeHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for StopResize operation.
+ */
+public class PoolStopResizeHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the PoolStopResizeHeaders object itself.
+ */
+ public PoolStopResizeHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolUpdateHeaders.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolUpdateHeaders.java
new file mode 100644
index 00000000000..f2dd7ecad41
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/PoolUpdateHeaders.java
@@ -0,0 +1,46 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Update operation.
+ */
+public class PoolUpdateHeaders {
+ /**
+ * The ETag HTTP response header. This is an opaque string. You can use it
+ * to detect whether the resource has changed between requests. In
+ * particular, you can pass the ETag to one of the If-Match or
+ * If-None-Match headers.
+ */
+ @JsonProperty(value = "ETag")
+ private String eTag;
+
+ /**
+ * Get the eTag value.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the eTag value.
+ *
+ * @param eTag the eTag value to set
+ * @return the PoolUpdateHeaders object itself.
+ */
+ public PoolUpdateHeaders withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeError.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeError.java
new file mode 100644
index 00000000000..601953d9dc8
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeError.java
@@ -0,0 +1,98 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An error that occurred when resizing a pool.
+ */
+public class ResizeError {
+ /**
+ * An identifier for the error. Codes are invariant and are intended to be
+ * consumed programmatically.
+ */
+ @JsonProperty(value = "code", required = true)
+ private String code;
+
+ /**
+ * A message describing the error, intended to be suitable for display in a
+ * user interface.
+ */
+ @JsonProperty(value = "message", required = true)
+ private String message;
+
+ /**
+ * Additional details about the error.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * Get the code value.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set the code value.
+ *
+ * @param code the code value to set
+ * @return the ResizeError object itself.
+ */
+ public ResizeError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get the message value.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set the message value.
+ *
+ * @param message the message value to set
+ * @return the ResizeError object itself.
+ */
+ public ResizeError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the details value.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the details value.
+ *
+ * @param details the details value to set
+ * @return the ResizeError object itself.
+ */
+ public ResizeError withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeOperationStatus.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeOperationStatus.java
new file mode 100644
index 00000000000..73d0c58bcf8
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResizeOperationStatus.java
@@ -0,0 +1,190 @@
+/**
+ * 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.batch;
+
+import org.joda.time.Period;
+import org.joda.time.DateTime;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Details about the current or last completed resize operation.
+ * Describes either the current operation (if the pool AllocationState is
+ * Resizing) or the previously completed operation (if the AllocationState is
+ * Steady).
+ */
+public class ResizeOperationStatus {
+ /**
+ * The desired number of dedicated compute nodes in the pool.
+ */
+ @JsonProperty(value = "targetDedicatedNodes")
+ private Integer targetDedicatedNodes;
+
+ /**
+ * The desired number of low-priority compute nodes in the pool.
+ */
+ @JsonProperty(value = "targetLowPriorityNodes")
+ private Integer targetLowPriorityNodes;
+
+ /**
+ * The timeout for allocation of compute nodes to the pool or removal of
+ * compute nodes from the pool.
+ * The default value is 15 minutes. The minimum value is 5 minutes. If you
+ * specify a value less than 5 minutes, the Batch service returns an error;
+ * if you are calling the REST API directly, the HTTP status code is 400
+ * (Bad Request).
+ */
+ @JsonProperty(value = "resizeTimeout")
+ private Period resizeTimeout;
+
+ /**
+ * Determines what to do with a node and its running task(s) if the pool
+ * size is decreasing.
+ * The default value is requeue. Possible values include: 'Requeue',
+ * 'Terminate', 'TaskCompletion', 'RetainedData'.
+ */
+ @JsonProperty(value = "nodeDeallocationOption")
+ private ComputeNodeDeallocationOption nodeDeallocationOption;
+
+ /**
+ * The time when this resize operation was started.
+ */
+ @JsonProperty(value = "startTime")
+ private DateTime startTime;
+
+ /**
+ * Details of any errors encountered while performing the last resize on
+ * the pool.
+ * This property is set only if an error occurred during the last pool
+ * resize, and only when the pool allocationState is Steady.
+ */
+ @JsonProperty(value = "errors")
+ private List errors;
+
+ /**
+ * Get the targetDedicatedNodes value.
+ *
+ * @return the targetDedicatedNodes value
+ */
+ public Integer targetDedicatedNodes() {
+ return this.targetDedicatedNodes;
+ }
+
+ /**
+ * Set the targetDedicatedNodes value.
+ *
+ * @param targetDedicatedNodes the targetDedicatedNodes value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withTargetDedicatedNodes(Integer targetDedicatedNodes) {
+ this.targetDedicatedNodes = targetDedicatedNodes;
+ return this;
+ }
+
+ /**
+ * Get the targetLowPriorityNodes value.
+ *
+ * @return the targetLowPriorityNodes value
+ */
+ public Integer targetLowPriorityNodes() {
+ return this.targetLowPriorityNodes;
+ }
+
+ /**
+ * Set the targetLowPriorityNodes value.
+ *
+ * @param targetLowPriorityNodes the targetLowPriorityNodes value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withTargetLowPriorityNodes(Integer targetLowPriorityNodes) {
+ this.targetLowPriorityNodes = targetLowPriorityNodes;
+ return this;
+ }
+
+ /**
+ * Get the resizeTimeout value.
+ *
+ * @return the resizeTimeout value
+ */
+ public Period resizeTimeout() {
+ return this.resizeTimeout;
+ }
+
+ /**
+ * Set the resizeTimeout value.
+ *
+ * @param resizeTimeout the resizeTimeout value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withResizeTimeout(Period resizeTimeout) {
+ this.resizeTimeout = resizeTimeout;
+ return this;
+ }
+
+ /**
+ * Get the nodeDeallocationOption value.
+ *
+ * @return the nodeDeallocationOption value
+ */
+ public ComputeNodeDeallocationOption nodeDeallocationOption() {
+ return this.nodeDeallocationOption;
+ }
+
+ /**
+ * Set the nodeDeallocationOption value.
+ *
+ * @param nodeDeallocationOption the nodeDeallocationOption value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withNodeDeallocationOption(ComputeNodeDeallocationOption nodeDeallocationOption) {
+ this.nodeDeallocationOption = nodeDeallocationOption;
+ return this;
+ }
+
+ /**
+ * Get the startTime value.
+ *
+ * @return the startTime value
+ */
+ public DateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime value.
+ *
+ * @param startTime the startTime value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withStartTime(DateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the errors value.
+ *
+ * @return the errors value
+ */
+ public List errors() {
+ return this.errors;
+ }
+
+ /**
+ * Set the errors value.
+ *
+ * @param errors the errors value to set
+ * @return the ResizeOperationStatus object itself.
+ */
+ public ResizeOperationStatus withErrors(List errors) {
+ this.errors = errors;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResourceFile.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResourceFile.java
new file mode 100644
index 00000000000..cf186b809ec
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ResourceFile.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A file to be downloaded from Azure blob storage to a compute node.
+ */
+public class ResourceFile {
+ /**
+ * The URL of the file within Azure Blob Storage.
+ * This URL must be readable using anonymous access; that is, the Batch
+ * service does not present any credentials when downloading the blob.
+ * There are two ways to get such a URL for a blob in Azure storage:
+ * include a Shared Access Signature (SAS) granting read permissions on the
+ * blob, or set the ACL for the blob or its container to allow public
+ * access.
+ */
+ @JsonProperty(value = "blobSource", required = true)
+ private String blobSource;
+
+ /**
+ * The location on the compute node to which to download the file, relative
+ * to the task's working directory.
+ */
+ @JsonProperty(value = "filePath", required = true)
+ private String filePath;
+
+ /**
+ * The file permission mode attribute in octal format.
+ * This property applies only to files being downloaded to Linux compute
+ * nodes. It will be ignored if it is specified for a resourceFile which
+ * will be downloaded to a Windows node. If this property is not specified
+ * for a Linux node, then a default value of 0770 is applied to the file.
+ */
+ @JsonProperty(value = "fileMode")
+ private String fileMode;
+
+ /**
+ * Get the blobSource value.
+ *
+ * @return the blobSource value
+ */
+ public String blobSource() {
+ return this.blobSource;
+ }
+
+ /**
+ * Set the blobSource value.
+ *
+ * @param blobSource the blobSource value to set
+ * @return the ResourceFile object itself.
+ */
+ public ResourceFile withBlobSource(String blobSource) {
+ this.blobSource = blobSource;
+ return this;
+ }
+
+ /**
+ * Get the filePath value.
+ *
+ * @return the filePath value
+ */
+ public String filePath() {
+ return this.filePath;
+ }
+
+ /**
+ * Set the filePath value.
+ *
+ * @param filePath the filePath value to set
+ * @return the ResourceFile object itself.
+ */
+ public ResourceFile withFilePath(String filePath) {
+ this.filePath = filePath;
+ return this;
+ }
+
+ /**
+ * Get the fileMode value.
+ *
+ * @return the fileMode value
+ */
+ public String fileMode() {
+ return this.fileMode;
+ }
+
+ /**
+ * Set the fileMode value.
+ *
+ * @param fileMode the fileMode value to set
+ * @return the ResourceFile object itself.
+ */
+ public ResourceFile withFileMode(String fileMode) {
+ this.fileMode = fileMode;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ScaleSettings.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ScaleSettings.java
new file mode 100644
index 00000000000..14b8fb76a02
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/ScaleSettings.java
@@ -0,0 +1,77 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Scale settings for the pool.
+ * Defines the desired size of the pool. This can either be 'fixedScale' where
+ * the requested targetDedicatedNodes is specified, or 'autoScale' which
+ * defines a formula which is periodically reevaluated. If this property is not
+ * specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
+ */
+public class ScaleSettings {
+ /**
+ * Fixed scale settings for the pool.
+ * This property and autoScale are mutually exclusive and one of the
+ * properties must be specified.
+ */
+ @JsonProperty(value = "fixedScale")
+ private FixedScaleSettings fixedScale;
+
+ /**
+ * AutoScale settings for the pool.
+ * This property and fixedScale are mutually exclusive and one of the
+ * properties must be specified.
+ */
+ @JsonProperty(value = "autoScale")
+ private AutoScaleSettings autoScale;
+
+ /**
+ * Get the fixedScale value.
+ *
+ * @return the fixedScale value
+ */
+ public FixedScaleSettings fixedScale() {
+ return this.fixedScale;
+ }
+
+ /**
+ * Set the fixedScale value.
+ *
+ * @param fixedScale the fixedScale value to set
+ * @return the ScaleSettings object itself.
+ */
+ public ScaleSettings withFixedScale(FixedScaleSettings fixedScale) {
+ this.fixedScale = fixedScale;
+ return this;
+ }
+
+ /**
+ * Get the autoScale value.
+ *
+ * @return the autoScale value
+ */
+ public AutoScaleSettings autoScale() {
+ return this.autoScale;
+ }
+
+ /**
+ * Set the autoScale value.
+ *
+ * @param autoScale the autoScale value to set
+ * @return the ScaleSettings object itself.
+ */
+ public ScaleSettings withAutoScale(AutoScaleSettings autoScale) {
+ this.autoScale = autoScale;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StartTask.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StartTask.java
new file mode 100644
index 00000000000..09e23d4dc98
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StartTask.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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A task which is run when a compute node joins a pool in the Azure Batch
+ * service, or when the compute node is rebooted or reimaged.
+ */
+public class StartTask {
+ /**
+ * The command line of the start task.
+ * The command line does not run under a shell, and therefore cannot take
+ * advantage of shell features such as environment variable expansion. If
+ * you want to take advantage of such features, you should invoke the shell
+ * in the command line, for example using "cmd /c MyCommand" in Windows or
+ * "/bin/sh -c MyCommand" in Linux. Required if any other properties of the
+ * startTask are specified.
+ */
+ @JsonProperty(value = "commandLine")
+ private String commandLine;
+
+ /**
+ * A list of files that the Batch service will download to the compute node
+ * before running the command line.
+ */
+ @JsonProperty(value = "resourceFiles")
+ private List resourceFiles;
+
+ /**
+ * A list of environment variable settings for the start task.
+ */
+ @JsonProperty(value = "environmentSettings")
+ private List environmentSettings;
+
+ /**
+ * The user identity under which the start task runs.
+ * If omitted, the task runs as a non-administrative user unique to the
+ * task.
+ */
+ @JsonProperty(value = "userIdentity")
+ private UserIdentity userIdentity;
+
+ /**
+ * The maximum number of times the task may be retried.
+ * The Batch service retries a task if its exit code is nonzero. Note that
+ * this value specifically controls the number of retries. The Batch
+ * service will try the task once, and may then retry up to this limit. For
+ * example, if the maximum retry count is 3, Batch tries the task up to 4
+ * times (one initial try and 3 retries). If the maximum retry count is 0,
+ * the Batch service does not retry the task. If the maximum retry count is
+ * -1, the Batch service retries the task without limit.
+ */
+ @JsonProperty(value = "maxTaskRetryCount")
+ private Integer maxTaskRetryCount;
+
+ /**
+ * Whether the Batch service should wait for the start task to complete
+ * successfully (that is, to exit with exit code 0) before scheduling any
+ * tasks on the compute node.
+ * If true and the start task fails on a compute node, the Batch service
+ * retries the start task up to its maximum retry count
+ * (maxTaskRetryCount). If the task has still not completed successfully
+ * after all retries, then the Batch service marks the compute node
+ * unusable, and will not schedule tasks to it. This condition can be
+ * detected via the node state and scheduling error detail. If false, the
+ * Batch service will not wait for the start task to complete. In this
+ * case, other tasks can start executing on the compute node while the
+ * start task is still running; and even if the start task fails, new tasks
+ * will continue to be scheduled on the node. The default is false.
+ */
+ @JsonProperty(value = "waitForSuccess")
+ private Boolean waitForSuccess;
+
+ /**
+ * Get the commandLine value.
+ *
+ * @return the commandLine value
+ */
+ public String commandLine() {
+ return this.commandLine;
+ }
+
+ /**
+ * Set the commandLine value.
+ *
+ * @param commandLine the commandLine value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withCommandLine(String commandLine) {
+ this.commandLine = commandLine;
+ return this;
+ }
+
+ /**
+ * Get the resourceFiles value.
+ *
+ * @return the resourceFiles value
+ */
+ public List resourceFiles() {
+ return this.resourceFiles;
+ }
+
+ /**
+ * Set the resourceFiles value.
+ *
+ * @param resourceFiles the resourceFiles value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withResourceFiles(List resourceFiles) {
+ this.resourceFiles = resourceFiles;
+ return this;
+ }
+
+ /**
+ * Get the environmentSettings value.
+ *
+ * @return the environmentSettings value
+ */
+ public List environmentSettings() {
+ return this.environmentSettings;
+ }
+
+ /**
+ * Set the environmentSettings value.
+ *
+ * @param environmentSettings the environmentSettings value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withEnvironmentSettings(List environmentSettings) {
+ this.environmentSettings = environmentSettings;
+ return this;
+ }
+
+ /**
+ * Get the userIdentity value.
+ *
+ * @return the userIdentity value
+ */
+ public UserIdentity userIdentity() {
+ return this.userIdentity;
+ }
+
+ /**
+ * Set the userIdentity value.
+ *
+ * @param userIdentity the userIdentity value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withUserIdentity(UserIdentity userIdentity) {
+ this.userIdentity = userIdentity;
+ return this;
+ }
+
+ /**
+ * Get the maxTaskRetryCount value.
+ *
+ * @return the maxTaskRetryCount value
+ */
+ public Integer maxTaskRetryCount() {
+ return this.maxTaskRetryCount;
+ }
+
+ /**
+ * Set the maxTaskRetryCount value.
+ *
+ * @param maxTaskRetryCount the maxTaskRetryCount value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withMaxTaskRetryCount(Integer maxTaskRetryCount) {
+ this.maxTaskRetryCount = maxTaskRetryCount;
+ return this;
+ }
+
+ /**
+ * Get the waitForSuccess value.
+ *
+ * @return the waitForSuccess value
+ */
+ public Boolean waitForSuccess() {
+ return this.waitForSuccess;
+ }
+
+ /**
+ * Set the waitForSuccess value.
+ *
+ * @param waitForSuccess the waitForSuccess value to set
+ * @return the StartTask object itself.
+ */
+ public StartTask withWaitForSuccess(Boolean waitForSuccess) {
+ this.waitForSuccess = waitForSuccess;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StorageAccountType.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StorageAccountType.java
new file mode 100644
index 00000000000..9e586108dc5
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/StorageAccountType.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for StorageAccountType.
+ */
+public enum StorageAccountType {
+ /** Enum value Standard_LRS. */
+ STANDARD_LRS("Standard_LRS"),
+
+ /** Enum value Premium_LRS. */
+ PREMIUM_LRS("Premium_LRS");
+
+ /** The actual serialized value for a StorageAccountType instance. */
+ private String value;
+
+ StorageAccountType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a StorageAccountType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed StorageAccountType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static StorageAccountType fromString(String value) {
+ StorageAccountType[] items = StorageAccountType.values();
+ for (StorageAccountType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/TaskSchedulingPolicy.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/TaskSchedulingPolicy.java
new file mode 100644
index 00000000000..ae0bada906c
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/TaskSchedulingPolicy.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Specifies how tasks should be distributed across compute nodes.
+ */
+public class TaskSchedulingPolicy {
+ /**
+ * How tasks should be distributed across compute nodes.
+ * Possible values include: 'Spread', 'Pack'.
+ */
+ @JsonProperty(value = "nodeFillType", required = true)
+ private ComputeNodeFillType nodeFillType;
+
+ /**
+ * Get the nodeFillType value.
+ *
+ * @return the nodeFillType value
+ */
+ public ComputeNodeFillType nodeFillType() {
+ return this.nodeFillType;
+ }
+
+ /**
+ * Set the nodeFillType value.
+ *
+ * @param nodeFillType the nodeFillType value to set
+ * @return the TaskSchedulingPolicy object itself.
+ */
+ public TaskSchedulingPolicy withNodeFillType(ComputeNodeFillType nodeFillType) {
+ this.nodeFillType = nodeFillType;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserAccount.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserAccount.java
new file mode 100644
index 00000000000..3e8b182cb2e
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserAccount.java
@@ -0,0 +1,127 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Properties used to create a user on an Azure Batch node.
+ */
+public class UserAccount {
+ /**
+ * The name of the user account.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The password for the user account.
+ */
+ @JsonProperty(value = "password", required = true)
+ private String password;
+
+ /**
+ * The elevation level of the user account.
+ * nonAdmin - The auto user is a standard user without elevated access.
+ * admin - The auto user is a user with elevated access and operates with
+ * full Administrator permissions. The default value is nonAdmin. Possible
+ * values include: 'NonAdmin', 'Admin'.
+ */
+ @JsonProperty(value = "elevationLevel")
+ private ElevationLevel elevationLevel;
+
+ /**
+ * The Linux-specific user configuration for the user account.
+ * This property is ignored if specified on a Windows pool. If not
+ * specified, the user is created with the default options.
+ */
+ @JsonProperty(value = "linuxUserConfiguration")
+ private LinuxUserConfiguration linuxUserConfiguration;
+
+ /**
+ * Get the name value.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name value.
+ *
+ * @param name the name value to set
+ * @return the UserAccount object itself.
+ */
+ public UserAccount withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the password value.
+ *
+ * @return the password value
+ */
+ public String password() {
+ return this.password;
+ }
+
+ /**
+ * Set the password value.
+ *
+ * @param password the password value to set
+ * @return the UserAccount object itself.
+ */
+ public UserAccount withPassword(String password) {
+ this.password = password;
+ return this;
+ }
+
+ /**
+ * Get the elevationLevel value.
+ *
+ * @return the elevationLevel value
+ */
+ public ElevationLevel elevationLevel() {
+ return this.elevationLevel;
+ }
+
+ /**
+ * Set the elevationLevel value.
+ *
+ * @param elevationLevel the elevationLevel value to set
+ * @return the UserAccount object itself.
+ */
+ public UserAccount withElevationLevel(ElevationLevel elevationLevel) {
+ this.elevationLevel = elevationLevel;
+ return this;
+ }
+
+ /**
+ * Get the linuxUserConfiguration value.
+ *
+ * @return the linuxUserConfiguration value
+ */
+ public LinuxUserConfiguration linuxUserConfiguration() {
+ return this.linuxUserConfiguration;
+ }
+
+ /**
+ * Set the linuxUserConfiguration value.
+ *
+ * @param linuxUserConfiguration the linuxUserConfiguration value to set
+ * @return the UserAccount object itself.
+ */
+ public UserAccount withLinuxUserConfiguration(LinuxUserConfiguration linuxUserConfiguration) {
+ this.linuxUserConfiguration = linuxUserConfiguration;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserIdentity.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserIdentity.java
new file mode 100644
index 00000000000..f98c8f333ff
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/UserIdentity.java
@@ -0,0 +1,74 @@
+/**
+ * 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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The definition of the user identity under which the task is run.
+ * Specify either the userName or autoUser property, but not both.
+ */
+public class UserIdentity {
+ /**
+ * The name of the user identity under which the task is run.
+ * The userName and autoUser properties are mutually exclusive; you must
+ * specify one but not both.
+ */
+ @JsonProperty(value = "userName")
+ private String userName;
+
+ /**
+ * The auto user under which the task is run.
+ * The userName and autoUser properties are mutually exclusive; you must
+ * specify one but not both.
+ */
+ @JsonProperty(value = "autoUser")
+ private AutoUserSpecification autoUser;
+
+ /**
+ * Get the userName value.
+ *
+ * @return the userName value
+ */
+ public String userName() {
+ return this.userName;
+ }
+
+ /**
+ * Set the userName value.
+ *
+ * @param userName the userName value to set
+ * @return the UserIdentity object itself.
+ */
+ public UserIdentity withUserName(String userName) {
+ this.userName = userName;
+ return this;
+ }
+
+ /**
+ * Get the autoUser value.
+ *
+ * @return the autoUser value
+ */
+ public AutoUserSpecification autoUser() {
+ return this.autoUser;
+ }
+
+ /**
+ * Set the autoUser value.
+ *
+ * @param autoUser the autoUser value to set
+ * @return the UserIdentity object itself.
+ */
+ public UserIdentity withAutoUser(AutoUserSpecification autoUser) {
+ this.autoUser = autoUser;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/VirtualMachineConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/VirtualMachineConfiguration.java
new file mode 100644
index 00000000000..ae7f60ff8fa
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/VirtualMachineConfiguration.java
@@ -0,0 +1,197 @@
+/**
+ * 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.batch;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The configuration for compute nodes in a pool based on the Azure Virtual
+ * Machines infrastructure.
+ */
+public class VirtualMachineConfiguration {
+ /**
+ * A reference to the Azure Virtual Machines Marketplace Image or the
+ * custom Virtual Machine Image to use.
+ */
+ @JsonProperty(value = "imageReference", required = true)
+ private ImageReference imageReference;
+
+ /**
+ * Settings for the operating system disk of the Virtual Machine.
+ */
+ @JsonProperty(value = "osDisk")
+ private OSDisk osDisk;
+
+ /**
+ * The SKU of the Batch node agent to be provisioned on compute nodes in
+ * the pool.
+ * The Batch node agent is a program that runs on each node in the pool,
+ * and provides the command-and-control interface between the node and the
+ * Batch service. There are different implementations of the node agent,
+ * known as SKUs, for different operating systems. You must specify a node
+ * agent SKU which matches the selected image reference. To get the list of
+ * supported node agent SKUs along with their list of verified image
+ * references, see the 'List supported node agent SKUs' operation.
+ */
+ @JsonProperty(value = "nodeAgentSkuId", required = true)
+ private String nodeAgentSkuId;
+
+ /**
+ * Windows operating system settings on the virtual machine.
+ * This property must not be specified if the imageReference specifies a
+ * Linux OS image.
+ */
+ @JsonProperty(value = "windowsConfiguration")
+ private WindowsConfiguration windowsConfiguration;
+
+ /**
+ * The configuration for data disks attached to the comptue nodes in the
+ * pool.
+ * This property must be specified if the compute nodes in the pool need to
+ * have empty data disks attached to them.
+ */
+ @JsonProperty(value = "dataDisks")
+ private List dataDisks;
+
+ /**
+ * The type of on-premises license to be used when deploying the operating
+ * system.
+ * This only applies to images that contain the Windows operating system,
+ * and should only be used when you hold valid on-premises licenses for the
+ * nodes which will be deployed. If omitted, no on-premises licensing
+ * discount is applied. Values are:
+ *
+ * Windows_Server - The on-premises license is for Windows Server.
+ * Windows_Client - The on-premises license is for Windows Client.
+ */
+ @JsonProperty(value = "licenseType")
+ private String licenseType;
+
+ /**
+ * Get the imageReference value.
+ *
+ * @return the imageReference value
+ */
+ public ImageReference imageReference() {
+ return this.imageReference;
+ }
+
+ /**
+ * Set the imageReference value.
+ *
+ * @param imageReference the imageReference value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withImageReference(ImageReference imageReference) {
+ this.imageReference = imageReference;
+ return this;
+ }
+
+ /**
+ * Get the osDisk value.
+ *
+ * @return the osDisk value
+ */
+ public OSDisk osDisk() {
+ return this.osDisk;
+ }
+
+ /**
+ * Set the osDisk value.
+ *
+ * @param osDisk the osDisk value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withOsDisk(OSDisk osDisk) {
+ this.osDisk = osDisk;
+ return this;
+ }
+
+ /**
+ * Get the nodeAgentSkuId value.
+ *
+ * @return the nodeAgentSkuId value
+ */
+ public String nodeAgentSkuId() {
+ return this.nodeAgentSkuId;
+ }
+
+ /**
+ * Set the nodeAgentSkuId value.
+ *
+ * @param nodeAgentSkuId the nodeAgentSkuId value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withNodeAgentSkuId(String nodeAgentSkuId) {
+ this.nodeAgentSkuId = nodeAgentSkuId;
+ return this;
+ }
+
+ /**
+ * Get the windowsConfiguration value.
+ *
+ * @return the windowsConfiguration value
+ */
+ public WindowsConfiguration windowsConfiguration() {
+ return this.windowsConfiguration;
+ }
+
+ /**
+ * Set the windowsConfiguration value.
+ *
+ * @param windowsConfiguration the windowsConfiguration value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withWindowsConfiguration(WindowsConfiguration windowsConfiguration) {
+ this.windowsConfiguration = windowsConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the dataDisks value.
+ *
+ * @return the dataDisks value
+ */
+ public List dataDisks() {
+ return this.dataDisks;
+ }
+
+ /**
+ * Set the dataDisks value.
+ *
+ * @param dataDisks the dataDisks value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withDataDisks(List dataDisks) {
+ this.dataDisks = dataDisks;
+ return this;
+ }
+
+ /**
+ * Get the licenseType value.
+ *
+ * @return the licenseType value
+ */
+ public String licenseType() {
+ return this.licenseType;
+ }
+
+ /**
+ * Set the licenseType value.
+ *
+ * @param licenseType the licenseType value to set
+ * @return the VirtualMachineConfiguration object itself.
+ */
+ public VirtualMachineConfiguration withLicenseType(String licenseType) {
+ this.licenseType = licenseType;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/WindowsConfiguration.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/WindowsConfiguration.java
new file mode 100644
index 00000000000..f4699a8e1a9
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/WindowsConfiguration.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.batch;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Windows operating system settings to apply to the virtual machine.
+ */
+public class WindowsConfiguration {
+ /**
+ * Whether automatic updates are enabled on the virtual machine.
+ * If omitted, the default value is true.
+ */
+ @JsonProperty(value = "enableAutomaticUpdates")
+ private Boolean enableAutomaticUpdates;
+
+ /**
+ * Get the enableAutomaticUpdates value.
+ *
+ * @return the enableAutomaticUpdates value
+ */
+ public Boolean enableAutomaticUpdates() {
+ return this.enableAutomaticUpdates;
+ }
+
+ /**
+ * Set the enableAutomaticUpdates value.
+ *
+ * @param enableAutomaticUpdates the enableAutomaticUpdates value to set
+ * @return the WindowsConfiguration object itself.
+ */
+ public WindowsConfiguration withEnableAutomaticUpdates(Boolean enableAutomaticUpdates) {
+ this.enableAutomaticUpdates = enableAutomaticUpdates;
+ return this;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationImpl.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationImpl.java
index 0de0faea8af..496df04efbf 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationImpl.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationImpl.java
@@ -8,7 +8,9 @@
import com.microsoft.azure.management.apigeneration.LangDefinition;
import com.microsoft.azure.management.batch.Application;
+import com.microsoft.azure.management.batch.ApplicationCreateParameters;
import com.microsoft.azure.management.batch.ApplicationPackage;
+import com.microsoft.azure.management.batch.ApplicationUpdateParameters;
import com.microsoft.azure.management.batch.BatchAccount;
import com.microsoft.azure.management.resources.fluentcore.arm.models.implementation.ExternalChildResourceImpl;
import com.microsoft.azure.management.resources.fluentcore.utils.RXMapper;
@@ -71,7 +73,7 @@ public String defaultVersion() {
@Override
public Observable createResourceAsync() {
final ApplicationImpl self = this;
- ApplicationCreateParametersInner createParameter = new ApplicationCreateParametersInner();
+ ApplicationCreateParameters createParameter = new ApplicationCreateParameters();
createParameter.withDisplayName(this.inner().displayName());
createParameter.withAllowUpdates(this.inner().allowUpdates());
@@ -104,7 +106,7 @@ public Application call(List applications) {
public Observable updateResourceAsync() {
final ApplicationImpl self = this;
- ApplicationUpdateParametersInner updateParameter = new ApplicationUpdateParametersInner();
+ ApplicationUpdateParameters updateParameter = new ApplicationUpdateParameters();
updateParameter.withDisplayName(this.inner().displayName());
updateParameter.withAllowUpdates(this.inner().allowUpdates());
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationPackageInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationPackageInner.java
index 3e7ffb80fa6..0eb403d93a5 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationPackageInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationPackageInner.java
@@ -31,7 +31,7 @@ public class ApplicationPackageInner {
/**
* The current state of the application package. Possible values include:
- * 'pending', 'active', 'unmapped'.
+ * 'Pending', 'Active', 'Unmapped'.
*/
@JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
private PackageState state;
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationsInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationsInner.java
index d20caa14ae1..39fcb33dd57 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationsInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/ApplicationsInner.java
@@ -13,6 +13,8 @@
import com.microsoft.azure.AzureServiceFuture;
import com.microsoft.azure.CloudException;
import com.microsoft.azure.ListOperationCallback;
+import com.microsoft.azure.management.batch.ApplicationCreateParameters;
+import com.microsoft.azure.management.batch.ApplicationUpdateParameters;
import com.microsoft.azure.Page;
import com.microsoft.azure.PagedList;
import com.microsoft.rest.ServiceCallback;
@@ -64,7 +66,7 @@ public ApplicationsInner(Retrofit retrofit, BatchManagementClientImpl client) {
interface ApplicationsService {
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Applications create" })
@PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}")
- Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("applicationId") String applicationId, @Path("subscriptionId") String subscriptionId, @Body ApplicationCreateParametersInner parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("applicationId") String applicationId, @Path("subscriptionId") String subscriptionId, @Body ApplicationCreateParameters parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Applications delete" })
@HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}", method = "DELETE", hasBody = true)
@@ -76,7 +78,7 @@ interface ApplicationsService {
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Applications update" })
@PATCH("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}")
- Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("applicationId") String applicationId, @Path("subscriptionId") String subscriptionId, @Body ApplicationUpdateParametersInner parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("applicationId") String applicationId, @Path("subscriptionId") String subscriptionId, @Body ApplicationUpdateParameters parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Applications list" })
@GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications")
@@ -160,7 +162,7 @@ public Observable> createWithServiceResponseAs
if (this.client.apiVersion() == null) {
throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
}
- final ApplicationCreateParametersInner parameters = null;
+ final ApplicationCreateParameters parameters = null;
return service.create(resourceGroupName, accountName, applicationId, this.client.subscriptionId(), parameters, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
.flatMap(new Func1, Observable>>() {
@Override
@@ -187,7 +189,7 @@ public Observable> call(Response
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the ApplicationInner object if successful.
*/
- public ApplicationInner create(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParametersInner parameters) {
+ public ApplicationInner create(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParameters parameters) {
return createWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters).toBlocking().single().body();
}
@@ -202,7 +204,7 @@ public ApplicationInner create(String resourceGroupName, String accountName, Str
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
- public ServiceFuture createAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParametersInner parameters, final ServiceCallback serviceCallback) {
+ public ServiceFuture createAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParameters parameters, final ServiceCallback serviceCallback) {
return ServiceFuture.fromResponse(createWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters), serviceCallback);
}
@@ -216,7 +218,7 @@ public ServiceFuture createAsync(String resourceGroupName, Str
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the ApplicationInner object
*/
- public Observable createAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParametersInner parameters) {
+ public Observable createAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParameters parameters) {
return createWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters).map(new Func1, ApplicationInner>() {
@Override
public ApplicationInner call(ServiceResponse response) {
@@ -235,7 +237,7 @@ public ApplicationInner call(ServiceResponse response) {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the ApplicationInner object
*/
- public Observable> createWithServiceResponseAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParametersInner parameters) {
+ public Observable> createWithServiceResponseAsync(String resourceGroupName, String accountName, String applicationId, ApplicationCreateParameters parameters) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -469,7 +471,7 @@ private ServiceResponse getDelegate(Response res
* @throws CloudException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
*/
- public void update(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParametersInner parameters) {
+ public void update(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParameters parameters) {
updateWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters).toBlocking().single().body();
}
@@ -484,7 +486,7 @@ public void update(String resourceGroupName, String accountName, String applicat
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
- public ServiceFuture updateAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParametersInner parameters, final ServiceCallback serviceCallback) {
+ public ServiceFuture updateAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParameters parameters, final ServiceCallback serviceCallback) {
return ServiceFuture.fromResponse(updateWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters), serviceCallback);
}
@@ -498,7 +500,7 @@ public ServiceFuture updateAsync(String resourceGroupName, String accountN
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
- public Observable updateAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParametersInner parameters) {
+ public Observable updateAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParameters parameters) {
return updateWithServiceResponseAsync(resourceGroupName, accountName, applicationId, parameters).map(new Func1, Void>() {
@Override
public Void call(ServiceResponse response) {
@@ -517,7 +519,7 @@ public Void call(ServiceResponse response) {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
- public Observable> updateWithServiceResponseAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParametersInner parameters) {
+ public Observable> updateWithServiceResponseAsync(String resourceGroupName, String accountName, String applicationId, ApplicationUpdateParameters parameters) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountImpl.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountImpl.java
index a734c9d9501..1b0019177e0 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountImpl.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountImpl.java
@@ -12,6 +12,7 @@
import com.microsoft.azure.management.batch.AutoStorageBaseProperties;
import com.microsoft.azure.management.batch.AutoStorageProperties;
import com.microsoft.azure.management.batch.BatchAccount;
+import com.microsoft.azure.management.batch.BatchAccountCreateParameters;
import com.microsoft.azure.management.batch.BatchAccountKeys;
import com.microsoft.azure.management.batch.ProvisioningState;
import com.microsoft.azure.management.resources.fluentcore.arm.models.implementation.GroupableResourceImpl;
@@ -78,7 +79,7 @@ public Observable createResourceAsync() {
final BatchAccountImpl self = this;
handleStorageSettings();
- BatchAccountCreateParametersInner batchAccountCreateParametersInner = new BatchAccountCreateParametersInner();
+ BatchAccountCreateParameters batchAccountCreateParametersInner = new BatchAccountCreateParameters();
if (autoStorage != null) {
batchAccountCreateParametersInner.withAutoStorage(new AutoStorageBaseProperties());
batchAccountCreateParametersInner.autoStorage().withStorageAccountId(autoStorage.storageAccountId());
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountInner.java
index c9f37931656..f5f1e9f974d 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountInner.java
@@ -14,12 +14,14 @@
import com.microsoft.azure.management.batch.AutoStorageProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
+import com.microsoft.rest.SkipParentValidation;
import com.microsoft.azure.Resource;
/**
* Contains information about an Azure Batch account.
*/
@JsonFlatten
+@SkipParentValidation
public class BatchAccountInner extends Resource {
/**
* The account endpoint used to interact with the Batch service.
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountsInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountsInner.java
index a6cfc2b02aa..bce03360631 100644
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountsInner.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchAccountsInner.java
@@ -17,7 +17,11 @@
import com.microsoft.azure.CloudException;
import com.microsoft.azure.ListOperationCallback;
import com.microsoft.azure.management.batch.AccountKeyType;
+import com.microsoft.azure.management.batch.BatchAccountCreateHeaders;
+import com.microsoft.azure.management.batch.BatchAccountCreateParameters;
+import com.microsoft.azure.management.batch.BatchAccountDeleteHeaders;
import com.microsoft.azure.management.batch.BatchAccountRegenerateKeyParameters;
+import com.microsoft.azure.management.batch.BatchAccountUpdateParameters;
import com.microsoft.azure.Page;
import com.microsoft.azure.PagedList;
import com.microsoft.rest.ServiceCallback;
@@ -71,15 +75,15 @@ public BatchAccountsInner(Retrofit retrofit, BatchManagementClientImpl client) {
interface BatchAccountsService {
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.BatchAccounts create" })
@PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}")
- Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountCreateParametersInner parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountCreateParameters parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.BatchAccounts beginCreate" })
@PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}")
- Observable> beginCreate(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountCreateParametersInner parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ Observable> beginCreate(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountCreateParameters parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.BatchAccounts update" })
@PATCH("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}")
- Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountUpdateParametersInner parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Body BatchAccountUpdateParameters parameters, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.BatchAccounts delete" })
@HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", method = "DELETE", hasBody = true)
@@ -134,7 +138,7 @@ interface BatchAccountsService {
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the BatchAccountInner object if successful.
*/
- public BatchAccountInner create(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters) {
+ public BatchAccountInner create(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters) {
return createWithServiceResponseAsync(resourceGroupName, accountName, parameters).toBlocking().last().body();
}
@@ -148,7 +152,7 @@ public BatchAccountInner create(String resourceGroupName, String accountName, Ba
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
- public ServiceFuture createAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters, final ServiceCallback serviceCallback) {
+ public ServiceFuture createAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters, final ServiceCallback serviceCallback) {
return ServiceFuture.fromHeaderResponse(createWithServiceResponseAsync(resourceGroupName, accountName, parameters), serviceCallback);
}
@@ -161,10 +165,10 @@ public ServiceFuture createAsync(String resourceGroupName, St
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable for the request
*/
- public Observable createAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters) {
- return createWithServiceResponseAsync(resourceGroupName, accountName, parameters).map(new Func1, BatchAccountInner>() {
+ public Observable createAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters) {
+ return createWithServiceResponseAsync(resourceGroupName, accountName, parameters).map(new Func1, BatchAccountInner>() {
@Override
- public BatchAccountInner call(ServiceResponseWithHeaders response) {
+ public BatchAccountInner call(ServiceResponseWithHeaders response) {
return response.body();
}
});
@@ -179,7 +183,7 @@ public BatchAccountInner call(ServiceResponseWithHeaders> createWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters) {
+ public Observable> createWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -197,7 +201,7 @@ public Observable> observable = service.create(resourceGroupName, accountName, this.client.subscriptionId(), parameters, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent());
- return client.getAzureClient().getPutOrPatchResultWithHeadersAsync(observable, new TypeToken() { }.getType(), BatchAccountCreateHeadersInner.class);
+ return client.getAzureClient().getPutOrPatchResultWithHeadersAsync(observable, new TypeToken() { }.getType(), BatchAccountCreateHeaders.class);
}
/**
@@ -211,7 +215,7 @@ public Observable beginCreateAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters, final ServiceCallback serviceCallback) {
+ public ServiceFuture beginCreateAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters, final ServiceCallback serviceCallback) {
return ServiceFuture.fromHeaderResponse(beginCreateWithServiceResponseAsync(resourceGroupName, accountName, parameters), serviceCallback);
}
@@ -238,10 +242,10 @@ public ServiceFuture beginCreateAsync(String resourceGroupNam
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BatchAccountInner object
*/
- public Observable beginCreateAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters) {
- return beginCreateWithServiceResponseAsync(resourceGroupName, accountName, parameters).map(new Func1, BatchAccountInner>() {
+ public Observable beginCreateAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters) {
+ return beginCreateWithServiceResponseAsync(resourceGroupName, accountName, parameters).map(new Func1, BatchAccountInner>() {
@Override
- public BatchAccountInner call(ServiceResponseWithHeaders response) {
+ public BatchAccountInner call(ServiceResponseWithHeaders response) {
return response.body();
}
});
@@ -256,7 +260,7 @@ public BatchAccountInner call(ServiceResponseWithHeaders> beginCreateWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountCreateParametersInner parameters) {
+ public Observable> beginCreateWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountCreateParameters parameters) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -274,11 +278,11 @@ public Observable, Observable>>() {
+ .flatMap(new Func1, Observable>>() {
@Override
- public Observable> call(Response response) {
+ public Observable> call(Response response) {
try {
- ServiceResponseWithHeaders clientResponse = beginCreateDelegate(response);
+ ServiceResponseWithHeaders clientResponse = beginCreateDelegate(response);
return Observable.just(clientResponse);
} catch (Throwable t) {
return Observable.error(t);
@@ -287,12 +291,12 @@ public Observable beginCreateDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ private ServiceResponseWithHeaders beginCreateDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
.register(200, new TypeToken() { }.getType())
.register(202, new TypeToken() { }.getType())
.registerError(CloudException.class)
- .buildWithHeaders(response, BatchAccountCreateHeadersInner.class);
+ .buildWithHeaders(response, BatchAccountCreateHeaders.class);
}
/**
@@ -306,7 +310,7 @@ private ServiceResponseWithHeaders updateAsync(String resourceGroupName, String accountName, BatchAccountUpdateParametersInner parameters, final ServiceCallback serviceCallback) {
+ public ServiceFuture updateAsync(String resourceGroupName, String accountName, BatchAccountUpdateParameters parameters, final ServiceCallback serviceCallback) {
return ServiceFuture.fromResponse(updateWithServiceResponseAsync(resourceGroupName, accountName, parameters), serviceCallback);
}
@@ -333,7 +337,7 @@ public ServiceFuture updateAsync(String resourceGroupName, St
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BatchAccountInner object
*/
- public Observable updateAsync(String resourceGroupName, String accountName, BatchAccountUpdateParametersInner parameters) {
+ public Observable updateAsync(String resourceGroupName, String accountName, BatchAccountUpdateParameters parameters) {
return updateWithServiceResponseAsync(resourceGroupName, accountName, parameters).map(new Func1, BatchAccountInner>() {
@Override
public BatchAccountInner call(ServiceResponse response) {
@@ -351,7 +355,7 @@ public BatchAccountInner call(ServiceResponse response) {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BatchAccountInner object
*/
- public Observable> updateWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountUpdateParametersInner parameters) {
+ public Observable> updateWithServiceResponseAsync(String resourceGroupName, String accountName, BatchAccountUpdateParameters parameters) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -424,9 +428,9 @@ public ServiceFuture deleteAsync(String resourceGroupName, String accountN
* @return the observable for the request
*/
public Observable deleteAsync(String resourceGroupName, String accountName) {
- return deleteWithServiceResponseAsync(resourceGroupName, accountName).map(new Func1, Void>() {
+ return deleteWithServiceResponseAsync(resourceGroupName, accountName).map(new Func1, Void>() {
@Override
- public Void call(ServiceResponseWithHeaders response) {
+ public Void call(ServiceResponseWithHeaders response) {
return response.body();
}
});
@@ -440,7 +444,7 @@ public Void call(ServiceResponseWithHeaders> deleteWithServiceResponseAsync(String resourceGroupName, String accountName) {
+ public Observable> deleteWithServiceResponseAsync(String resourceGroupName, String accountName) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -454,7 +458,7 @@ public Observable> observable = service.delete(resourceGroupName, accountName, this.client.subscriptionId(), this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent());
- return client.getAzureClient().getPostOrDeleteResultWithHeadersAsync(observable, new TypeToken() { }.getType(), BatchAccountDeleteHeadersInner.class);
+ return client.getAzureClient().getPostOrDeleteResultWithHeadersAsync(observable, new TypeToken() { }.getType(), BatchAccountDeleteHeaders.class);
}
/**
@@ -492,9 +496,9 @@ public ServiceFuture beginDeleteAsync(String resourceGroupName, String acc
* @return the {@link ServiceResponseWithHeaders} object if successful.
*/
public Observable beginDeleteAsync(String resourceGroupName, String accountName) {
- return beginDeleteWithServiceResponseAsync(resourceGroupName, accountName).map(new Func1, Void>() {
+ return beginDeleteWithServiceResponseAsync(resourceGroupName, accountName).map(new Func1, Void>() {
@Override
- public Void call(ServiceResponseWithHeaders response) {
+ public Void call(ServiceResponseWithHeaders response) {
return response.body();
}
});
@@ -508,7 +512,7 @@ public Void call(ServiceResponseWithHeaders> beginDeleteWithServiceResponseAsync(String resourceGroupName, String accountName) {
+ public Observable> beginDeleteWithServiceResponseAsync(String resourceGroupName, String accountName) {
if (resourceGroupName == null) {
throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
@@ -522,11 +526,11 @@ public Observable, Observable>>() {
+ .flatMap(new Func1, Observable>>() {
@Override
- public Observable> call(Response response) {
+ public Observable> call(Response response) {
try {
- ServiceResponseWithHeaders clientResponse = beginDeleteDelegate(response);
+ ServiceResponseWithHeaders clientResponse = beginDeleteDelegate(response);
return Observable.just(clientResponse);
} catch (Throwable t) {
return Observable.error(t);
@@ -535,13 +539,13 @@ public Observable beginDeleteDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ private ServiceResponseWithHeaders beginDeleteDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
.register(200, new TypeToken() { }.getType())
.register(202, new TypeToken() { }.getType())
.register(204, new TypeToken() { }.getType())
.registerError(CloudException.class)
- .buildWithHeaders(response, BatchAccountDeleteHeadersInner.class);
+ .buildWithHeaders(response, BatchAccountDeleteHeaders.class);
}
/**
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchManagementClientImpl.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchManagementClientImpl.java
index d0209761d91..477666ea5f8 100755
--- a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchManagementClientImpl.java
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/BatchManagementClientImpl.java
@@ -197,6 +197,32 @@ public OperationsInner operations() {
return this.operations;
}
+ /**
+ * The CertificatesInner object to access its operations.
+ */
+ private CertificatesInner certificates;
+
+ /**
+ * Gets the CertificatesInner object to access its operations.
+ * @return the CertificatesInner object.
+ */
+ public CertificatesInner certificates() {
+ return this.certificates;
+ }
+
+ /**
+ * The PoolsInner object to access its operations.
+ */
+ private PoolsInner pools;
+
+ /**
+ * Gets the PoolsInner object to access its operations.
+ * @return the PoolsInner object.
+ */
+ public PoolsInner pools() {
+ return this.pools;
+ }
+
/**
* Initializes an instance of BatchManagementClient client.
*
@@ -228,7 +254,7 @@ public BatchManagementClientImpl(RestClient restClient) {
}
protected void initialize() {
- this.apiVersion = "2017-05-01";
+ this.apiVersion = "2017-09-01";
this.acceptLanguage = "en-US";
this.longRunningOperationRetryTimeout = 30;
this.generateClientRequestId = true;
@@ -237,6 +263,8 @@ protected void initialize() {
this.applications = new ApplicationsInner(restClient().retrofit(), this);
this.locations = new LocationsInner(restClient().retrofit(), this);
this.operations = new OperationsInner(restClient().retrofit(), this);
+ this.certificates = new CertificatesInner(restClient().retrofit(), this);
+ this.pools = new PoolsInner(restClient().retrofit(), this);
this.azureClient = new AzureClient(this);
}
@@ -247,6 +275,6 @@ protected void initialize() {
*/
@Override
public String userAgent() {
- return String.format("%s (%s, %s)", super.userAgent(), "BatchManagementClient", "2017-05-01");
+ return String.format("%s (%s, %s)", super.userAgent(), "BatchManagementClient", "2017-09-01");
}
}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateCreateOrUpdateParametersInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateCreateOrUpdateParametersInner.java
new file mode 100644
index 00000000000..dd7651f6ded
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateCreateOrUpdateParametersInner.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.batch.implementation;
+
+import com.microsoft.azure.management.batch.CertificateFormat;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+import com.microsoft.azure.ProxyResource;
+
+/**
+ * Contains information about a certificate.
+ */
+@JsonFlatten
+public class CertificateCreateOrUpdateParametersInner extends ProxyResource {
+ /**
+ * The algorithm of the certificate thumbprint.
+ * This must match the first portion of the certificate name. Currently
+ * required to be 'SHA1'.
+ */
+ @JsonProperty(value = "properties.thumbprintAlgorithm")
+ private String thumbprintAlgorithm;
+
+ /**
+ * The thumbprint of the certificate.
+ * This must match the thumbprint from the name.
+ */
+ @JsonProperty(value = "properties.thumbprint")
+ private String thumbprint;
+
+ /**
+ * The format of the certificate - either Pfx or Cer. If omitted, the
+ * default is Pfx. Possible values include: 'Pfx', 'Cer'.
+ */
+ @JsonProperty(value = "properties.format")
+ private CertificateFormat format;
+
+ /**
+ * The base64-encoded contents of the certificate.
+ * The maximum size is 10KB.
+ */
+ @JsonProperty(value = "properties.data", required = true)
+ private String data;
+
+ /**
+ * The password to access the certificate's private key.
+ * This is required if the certificate format is pfx and must be omitted if
+ * the certificate format is cer.
+ */
+ @JsonProperty(value = "properties.password")
+ private String password;
+
+ /**
+ * The ETag of the resource, used for concurrency statements.
+ */
+ @JsonProperty(value = "etag", access = JsonProperty.Access.WRITE_ONLY)
+ private String etag;
+
+ /**
+ * Get the thumbprintAlgorithm value.
+ *
+ * @return the thumbprintAlgorithm value
+ */
+ public String thumbprintAlgorithm() {
+ return this.thumbprintAlgorithm;
+ }
+
+ /**
+ * Set the thumbprintAlgorithm value.
+ *
+ * @param thumbprintAlgorithm the thumbprintAlgorithm value to set
+ * @return the CertificateCreateOrUpdateParametersInner object itself.
+ */
+ public CertificateCreateOrUpdateParametersInner withThumbprintAlgorithm(String thumbprintAlgorithm) {
+ this.thumbprintAlgorithm = thumbprintAlgorithm;
+ return this;
+ }
+
+ /**
+ * Get the thumbprint value.
+ *
+ * @return the thumbprint value
+ */
+ public String thumbprint() {
+ return this.thumbprint;
+ }
+
+ /**
+ * Set the thumbprint value.
+ *
+ * @param thumbprint the thumbprint value to set
+ * @return the CertificateCreateOrUpdateParametersInner object itself.
+ */
+ public CertificateCreateOrUpdateParametersInner withThumbprint(String thumbprint) {
+ this.thumbprint = thumbprint;
+ return this;
+ }
+
+ /**
+ * Get the format value.
+ *
+ * @return the format value
+ */
+ public CertificateFormat format() {
+ return this.format;
+ }
+
+ /**
+ * Set the format value.
+ *
+ * @param format the format value to set
+ * @return the CertificateCreateOrUpdateParametersInner object itself.
+ */
+ public CertificateCreateOrUpdateParametersInner withFormat(CertificateFormat format) {
+ this.format = format;
+ return this;
+ }
+
+ /**
+ * Get the data value.
+ *
+ * @return the data value
+ */
+ public String data() {
+ return this.data;
+ }
+
+ /**
+ * Set the data value.
+ *
+ * @param data the data value to set
+ * @return the CertificateCreateOrUpdateParametersInner object itself.
+ */
+ public CertificateCreateOrUpdateParametersInner withData(String data) {
+ this.data = data;
+ return this;
+ }
+
+ /**
+ * Get the password value.
+ *
+ * @return the password value
+ */
+ public String password() {
+ return this.password;
+ }
+
+ /**
+ * Set the password value.
+ *
+ * @param password the password value to set
+ * @return the CertificateCreateOrUpdateParametersInner object itself.
+ */
+ public CertificateCreateOrUpdateParametersInner withPassword(String password) {
+ this.password = password;
+ return this;
+ }
+
+ /**
+ * Get the etag value.
+ *
+ * @return the etag value
+ */
+ public String etag() {
+ return this.etag;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateInner.java
new file mode 100644
index 00000000000..1473fee3361
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificateInner.java
@@ -0,0 +1,228 @@
+/**
+ * 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.batch.implementation;
+
+import com.microsoft.azure.management.batch.CertificateFormat;
+import com.microsoft.azure.management.batch.CertificateProvisioningState;
+import org.joda.time.DateTime;
+import com.microsoft.azure.management.batch.DeleteCertificateError;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+import com.microsoft.azure.ProxyResource;
+
+/**
+ * Contains information about a certificate.
+ */
+@JsonFlatten
+public class CertificateInner extends ProxyResource {
+ /**
+ * The algorithm of the certificate thumbprint.
+ * This must match the first portion of the certificate name. Currently
+ * required to be 'SHA1'.
+ */
+ @JsonProperty(value = "properties.thumbprintAlgorithm")
+ private String thumbprintAlgorithm;
+
+ /**
+ * The thumbprint of the certificate.
+ * This must match the thumbprint from the name.
+ */
+ @JsonProperty(value = "properties.thumbprint")
+ private String thumbprint;
+
+ /**
+ * The format of the certificate - either Pfx or Cer. If omitted, the
+ * default is Pfx. Possible values include: 'Pfx', 'Cer'.
+ */
+ @JsonProperty(value = "properties.format")
+ private CertificateFormat format;
+
+ /**
+ * The provisioned state of the resource.
+ * Values are:
+ *
+ * Succeeded - The certificate is available for use in pools.
+ * Deleting - The user has requested that the certificate be deleted, but
+ * the delete operation has not yet completed. You may not reference the
+ * certificate when creating or updating pools.
+ * Failed - The user requested that the certificate be deleted, but there
+ * are pools that still have references to the certificate, or it is still
+ * installed on one or more compute nodes. (The latter can occur if the
+ * certificate has been removed from the pool, but the node has not yet
+ * restarted. Nodes refresh their certificates only when they restart.) You
+ * may use the cancel certificate delete operation to cancel the delete, or
+ * the delete certificate operation to retry the delete. Possible values
+ * include: 'Succeeded', 'Deleting', 'Failed'.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private CertificateProvisioningState provisioningState;
+
+ /**
+ * The time at which the certificate entered its current state.
+ */
+ @JsonProperty(value = "properties.provisioningStateTransitionTime", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime provisioningStateTransitionTime;
+
+ /**
+ * The previous provisioned state of the resource. Possible values include:
+ * 'Succeeded', 'Deleting', 'Failed'.
+ */
+ @JsonProperty(value = "properties.previousProvisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private CertificateProvisioningState previousProvisioningState;
+
+ /**
+ * The time at which the certificate entered its previous state.
+ */
+ @JsonProperty(value = "properties.previousProvisioningStateTransitionTime", access = JsonProperty.Access.WRITE_ONLY)
+ private DateTime previousProvisioningStateTransitionTime;
+
+ /**
+ * The public key of the certificate.
+ */
+ @JsonProperty(value = "properties.publicData", access = JsonProperty.Access.WRITE_ONLY)
+ private String publicData;
+
+ /**
+ * The error which occurred while deleting the certificate.
+ * This is only returned when the certificate provisioningState is
+ * 'Failed'.
+ */
+ @JsonProperty(value = "properties.deleteCertificateError", access = JsonProperty.Access.WRITE_ONLY)
+ private DeleteCertificateError deleteCertificateError;
+
+ /**
+ * The ETag of the resource, used for concurrency statements.
+ */
+ @JsonProperty(value = "etag", access = JsonProperty.Access.WRITE_ONLY)
+ private String etag;
+
+ /**
+ * Get the thumbprintAlgorithm value.
+ *
+ * @return the thumbprintAlgorithm value
+ */
+ public String thumbprintAlgorithm() {
+ return this.thumbprintAlgorithm;
+ }
+
+ /**
+ * Set the thumbprintAlgorithm value.
+ *
+ * @param thumbprintAlgorithm the thumbprintAlgorithm value to set
+ * @return the CertificateInner object itself.
+ */
+ public CertificateInner withThumbprintAlgorithm(String thumbprintAlgorithm) {
+ this.thumbprintAlgorithm = thumbprintAlgorithm;
+ return this;
+ }
+
+ /**
+ * Get the thumbprint value.
+ *
+ * @return the thumbprint value
+ */
+ public String thumbprint() {
+ return this.thumbprint;
+ }
+
+ /**
+ * Set the thumbprint value.
+ *
+ * @param thumbprint the thumbprint value to set
+ * @return the CertificateInner object itself.
+ */
+ public CertificateInner withThumbprint(String thumbprint) {
+ this.thumbprint = thumbprint;
+ return this;
+ }
+
+ /**
+ * Get the format value.
+ *
+ * @return the format value
+ */
+ public CertificateFormat format() {
+ return this.format;
+ }
+
+ /**
+ * Set the format value.
+ *
+ * @param format the format value to set
+ * @return the CertificateInner object itself.
+ */
+ public CertificateInner withFormat(CertificateFormat format) {
+ this.format = format;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState value.
+ *
+ * @return the provisioningState value
+ */
+ public CertificateProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the provisioningStateTransitionTime value.
+ *
+ * @return the provisioningStateTransitionTime value
+ */
+ public DateTime provisioningStateTransitionTime() {
+ return this.provisioningStateTransitionTime;
+ }
+
+ /**
+ * Get the previousProvisioningState value.
+ *
+ * @return the previousProvisioningState value
+ */
+ public CertificateProvisioningState previousProvisioningState() {
+ return this.previousProvisioningState;
+ }
+
+ /**
+ * Get the previousProvisioningStateTransitionTime value.
+ *
+ * @return the previousProvisioningStateTransitionTime value
+ */
+ public DateTime previousProvisioningStateTransitionTime() {
+ return this.previousProvisioningStateTransitionTime;
+ }
+
+ /**
+ * Get the publicData value.
+ *
+ * @return the publicData value
+ */
+ public String publicData() {
+ return this.publicData;
+ }
+
+ /**
+ * Get the deleteCertificateError value.
+ *
+ * @return the deleteCertificateError value
+ */
+ public DeleteCertificateError deleteCertificateError() {
+ return this.deleteCertificateError;
+ }
+
+ /**
+ * Get the etag value.
+ *
+ * @return the etag value
+ */
+ public String etag() {
+ return this.etag;
+ }
+
+}
diff --git a/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificatesInner.java b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificatesInner.java
new file mode 100644
index 00000000000..3caecc48797
--- /dev/null
+++ b/azure-mgmt-batch/src/main/java/com/microsoft/azure/management/batch/implementation/CertificatesInner.java
@@ -0,0 +1,1419 @@
+/**
+ * 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.batch.implementation;
+
+import retrofit2.Retrofit;
+import com.google.common.reflect.TypeToken;
+import com.microsoft.azure.AzureServiceFuture;
+import com.microsoft.azure.CloudException;
+import com.microsoft.azure.ListOperationCallback;
+import com.microsoft.azure.management.batch.CertificateCancelDeletionHeaders;
+import com.microsoft.azure.management.batch.CertificateCreateHeaders;
+import com.microsoft.azure.management.batch.CertificateDeleteHeaders;
+import com.microsoft.azure.management.batch.CertificateGetHeaders;
+import com.microsoft.azure.management.batch.CertificateUpdateHeaders;
+import com.microsoft.azure.Page;
+import com.microsoft.azure.PagedList;
+import com.microsoft.rest.ServiceCallback;
+import com.microsoft.rest.ServiceFuture;
+import com.microsoft.rest.ServiceResponse;
+import com.microsoft.rest.ServiceResponseWithHeaders;
+import com.microsoft.rest.Validator;
+import java.io.IOException;
+import java.util.List;
+import okhttp3.ResponseBody;
+import retrofit2.http.Body;
+import retrofit2.http.GET;
+import retrofit2.http.Header;
+import retrofit2.http.Headers;
+import retrofit2.http.HTTP;
+import retrofit2.http.PATCH;
+import retrofit2.http.Path;
+import retrofit2.http.POST;
+import retrofit2.http.PUT;
+import retrofit2.http.Query;
+import retrofit2.http.Url;
+import retrofit2.Response;
+import rx.functions.Func1;
+import rx.Observable;
+
+/**
+ * An instance of this class provides access to all the operations defined
+ * in Certificates.
+ */
+public class CertificatesInner {
+ /** The Retrofit service to perform REST calls. */
+ private CertificatesService service;
+ /** The service client containing this operation class. */
+ private BatchManagementClientImpl client;
+
+ /**
+ * Initializes an instance of CertificatesInner.
+ *
+ * @param retrofit the Retrofit instance built from a Retrofit Builder.
+ * @param client the instance of the service client containing this operation class.
+ */
+ public CertificatesInner(Retrofit retrofit, BatchManagementClientImpl client) {
+ this.service = retrofit.create(CertificatesService.class);
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for Certificates to be
+ * used by Retrofit to perform actually REST calls.
+ */
+ interface CertificatesService {
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates listByBatchAccount" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates")
+ Observable> listByBatchAccount(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("subscriptionId") String subscriptionId, @Query("maxresults") Integer maxresults, @Query("$select") String select, @Query("$filter") String filter, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates create" })
+ @PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}")
+ Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Body CertificateCreateOrUpdateParametersInner parameters, @Header("If-Match") String ifMatch, @Header("If-None-Match") String ifNoneMatch, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates beginCreate" })
+ @PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}")
+ Observable> beginCreate(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Body CertificateCreateOrUpdateParametersInner parameters, @Header("If-Match") String ifMatch, @Header("If-None-Match") String ifNoneMatch, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates update" })
+ @PATCH("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}")
+ Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Body CertificateCreateOrUpdateParametersInner parameters, @Header("If-Match") String ifMatch, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates delete" })
+ @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", method = "DELETE", hasBody = true)
+ Observable> delete(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates beginDelete" })
+ @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", method = "DELETE", hasBody = true)
+ Observable> beginDelete(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates get" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}")
+ Observable> get(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates cancelDeletion" })
+ @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}/cancelDelete")
+ Observable> cancelDeletion(@Path("resourceGroupName") String resourceGroupName, @Path("accountName") String accountName, @Path("certificateName") String certificateName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.batch.Certificates listByBatchAccountNext" })
+ @GET
+ Observable> listByBatchAccountNext(@Url String nextUrl, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the PagedList<CertificateInner> object if successful.
+ */
+ public PagedList listByBatchAccount(final String resourceGroupName, final String accountName) {
+ ServiceResponse> response = listByBatchAccountSinglePageAsync(resourceGroupName, accountName).toBlocking().single();
+ return new PagedList(response.body()) {
+ @Override
+ public Page nextPage(String nextPageLink) {
+ return listByBatchAccountNextSinglePageAsync(nextPageLink).toBlocking().single().body();
+ }
+ };
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture> listByBatchAccountAsync(final String resourceGroupName, final String accountName, final ListOperationCallback serviceCallback) {
+ return AzureServiceFuture.fromPageResponse(
+ listByBatchAccountSinglePageAsync(resourceGroupName, accountName),
+ new Func1>>>() {
+ @Override
+ public Observable>> call(String nextPageLink) {
+ return listByBatchAccountNextSinglePageAsync(nextPageLink);
+ }
+ },
+ serviceCallback);
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the PagedList<CertificateInner> object
+ */
+ public Observable> listByBatchAccountAsync(final String resourceGroupName, final String accountName) {
+ return listByBatchAccountWithServiceResponseAsync(resourceGroupName, accountName)
+ .map(new Func1>, Page>() {
+ @Override
+ public Page call(ServiceResponse> response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the PagedList<CertificateInner> object
+ */
+ public Observable>> listByBatchAccountWithServiceResponseAsync(final String resourceGroupName, final String accountName) {
+ return listByBatchAccountSinglePageAsync(resourceGroupName, accountName)
+ .concatMap(new Func1>, Observable>>>() {
+ @Override
+ public Observable>> call(ServiceResponse> page) {
+ String nextPageLink = page.body().nextPageLink();
+ if (nextPageLink == null) {
+ return Observable.just(page);
+ }
+ return Observable.just(page).concatWith(listByBatchAccountNextWithServiceResponseAsync(nextPageLink));
+ }
+ });
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the PagedList<CertificateInner> object wrapped in {@link ServiceResponse} if successful.
+ */
+ public Observable>> listByBatchAccountSinglePageAsync(final String resourceGroupName, final String accountName) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (accountName == null) {
+ throw new IllegalArgumentException("Parameter accountName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (this.client.apiVersion() == null) {
+ throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
+ }
+ final Integer maxresults = null;
+ final String select = null;
+ final String filter = null;
+ return service.listByBatchAccount(resourceGroupName, accountName, this.client.subscriptionId(), maxresults, select, filter, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>>() {
+ @Override
+ public Observable>> call(Response response) {
+ try {
+ ServiceResponse> result = listByBatchAccountDelegate(response);
+ return Observable.just(new ServiceResponse>(result.body(), result.response()));
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param maxresults The maximum number of items to return in the response.
+ * @param select Comma separated list of properties that should be returned. e.g. "properties/provisioningState". Only top level properties under properties/ are valid for selection.
+ * @param filter OData filter expression. Valid properties for filtering are "properties/provisioningState", "properties/provisioningStateTransitionTime", "name".
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the PagedList<CertificateInner> object if successful.
+ */
+ public PagedList listByBatchAccount(final String resourceGroupName, final String accountName, final Integer maxresults, final String select, final String filter) {
+ ServiceResponse> response = listByBatchAccountSinglePageAsync(resourceGroupName, accountName, maxresults, select, filter).toBlocking().single();
+ return new PagedList(response.body()) {
+ @Override
+ public Page nextPage(String nextPageLink) {
+ return listByBatchAccountNextSinglePageAsync(nextPageLink).toBlocking().single().body();
+ }
+ };
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param maxresults The maximum number of items to return in the response.
+ * @param select Comma separated list of properties that should be returned. e.g. "properties/provisioningState". Only top level properties under properties/ are valid for selection.
+ * @param filter OData filter expression. Valid properties for filtering are "properties/provisioningState", "properties/provisioningStateTransitionTime", "name".
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture> listByBatchAccountAsync(final String resourceGroupName, final String accountName, final Integer maxresults, final String select, final String filter, final ListOperationCallback serviceCallback) {
+ return AzureServiceFuture.fromPageResponse(
+ listByBatchAccountSinglePageAsync(resourceGroupName, accountName, maxresults, select, filter),
+ new Func1>>>() {
+ @Override
+ public Observable>> call(String nextPageLink) {
+ return listByBatchAccountNextSinglePageAsync(nextPageLink);
+ }
+ },
+ serviceCallback);
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param maxresults The maximum number of items to return in the response.
+ * @param select Comma separated list of properties that should be returned. e.g. "properties/provisioningState". Only top level properties under properties/ are valid for selection.
+ * @param filter OData filter expression. Valid properties for filtering are "properties/provisioningState", "properties/provisioningStateTransitionTime", "name".
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the PagedList<CertificateInner> object
+ */
+ public Observable> listByBatchAccountAsync(final String resourceGroupName, final String accountName, final Integer maxresults, final String select, final String filter) {
+ return listByBatchAccountWithServiceResponseAsync(resourceGroupName, accountName, maxresults, select, filter)
+ .map(new Func1>, Page>() {
+ @Override
+ public Page call(ServiceResponse> response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param maxresults The maximum number of items to return in the response.
+ * @param select Comma separated list of properties that should be returned. e.g. "properties/provisioningState". Only top level properties under properties/ are valid for selection.
+ * @param filter OData filter expression. Valid properties for filtering are "properties/provisioningState", "properties/provisioningStateTransitionTime", "name".
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the PagedList<CertificateInner> object
+ */
+ public Observable>> listByBatchAccountWithServiceResponseAsync(final String resourceGroupName, final String accountName, final Integer maxresults, final String select, final String filter) {
+ return listByBatchAccountSinglePageAsync(resourceGroupName, accountName, maxresults, select, filter)
+ .concatMap(new Func1>, Observable>>>() {
+ @Override
+ public Observable>> call(ServiceResponse> page) {
+ String nextPageLink = page.body().nextPageLink();
+ if (nextPageLink == null) {
+ return Observable.just(page);
+ }
+ return Observable.just(page).concatWith(listByBatchAccountNextWithServiceResponseAsync(nextPageLink));
+ }
+ });
+ }
+
+ /**
+ * Lists all of the certificates in the specified account.
+ *
+ ServiceResponse> * @param resourceGroupName The name of the resource group that contains the Batch account.
+ ServiceResponse> * @param accountName The name of the Batch account.
+ ServiceResponse> * @param maxresults The maximum number of items to return in the response.
+ ServiceResponse> * @param select Comma separated list of properties that should be returned. e.g. "properties/provisioningState". Only top level properties under properties/ are valid for selection.
+ ServiceResponse> * @param filter OData filter expression. Valid properties for filtering are "properties/provisioningState", "properties/provisioningStateTransitionTime", "name".
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the PagedList<CertificateInner> object wrapped in {@link ServiceResponse} if successful.
+ */
+ public Observable>> listByBatchAccountSinglePageAsync(final String resourceGroupName, final String accountName, final Integer maxresults, final String select, final String filter) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (accountName == null) {
+ throw new IllegalArgumentException("Parameter accountName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (this.client.apiVersion() == null) {
+ throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
+ }
+ return service.listByBatchAccount(resourceGroupName, accountName, this.client.subscriptionId(), maxresults, select, filter, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>>() {
+ @Override
+ public Observable>> call(Response response) {
+ try {
+ ServiceResponse> result = listByBatchAccountDelegate(response);
+ return Observable.just(new ServiceResponse>(result.body(), result.response()));
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ private ServiceResponse> listByBatchAccountDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory()., CloudException>newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken>() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
+ /**
+ * Creates a new certificate inside the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param certificateName The identifier for the certificate. This must be made up of algorithm and thumbprint separated by a dash, and must match the certificate data in the request. For example SHA1-a3d1c5.
+ * @param parameters Additional parameters for certificate creation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the CertificateInner object if successful.
+ */
+ public CertificateInner create(String resourceGroupName, String accountName, String certificateName, CertificateCreateOrUpdateParametersInner parameters) {
+ return createWithServiceResponseAsync(resourceGroupName, accountName, certificateName, parameters).toBlocking().last().body();
+ }
+
+ /**
+ * Creates a new certificate inside the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param certificateName The identifier for the certificate. This must be made up of algorithm and thumbprint separated by a dash, and must match the certificate data in the request. For example SHA1-a3d1c5.
+ * @param parameters Additional parameters for certificate creation.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture createAsync(String resourceGroupName, String accountName, String certificateName, CertificateCreateOrUpdateParametersInner parameters, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromHeaderResponse(createWithServiceResponseAsync(resourceGroupName, accountName, certificateName, parameters), serviceCallback);
+ }
+
+ /**
+ * Creates a new certificate inside the specified account.
+ *
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
+ * @param accountName The name of the Batch account.
+ * @param certificateName The identifier for the certificate. This must be made up of algorithm and thumbprint separated by a dash, and must match the certificate data in the request. For example SHA1-a3d1c5.
+ * @param parameters Additional parameters for certificate creation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable createAsync(String resourceGroupName, String accountName, String certificateName, CertificateCreateOrUpdateParametersInner parameters) {
+ return createWithServiceResponseAsync(resourceGroupName, accountName, certificateName, parameters).map(new Func1