diff --git a/api-specs.json b/api-specs.json
index 2187614d8f1c..3cf2a840a50c 100644
--- a/api-specs.json
+++ b/api-specs.json
@@ -50,6 +50,10 @@
"source": "specification/eventgrid/data-plane/readme.md",
"args": "--multiapi"
},
+ "hdinsight/resource-manager": {
+ "source": "specification/hdinsight/resource-manager/readme.md",
+ "args": "--multiapi --fluent"
+ },
"iotcentral/resource-manager": {
"source": "specification/iotcentral/resource-manager/readme.md",
"args": "--multiapi --fluent",
@@ -72,6 +76,10 @@
"source": "specification/logic/resource-manager/readme.md",
"args": "--multiapi --fluent"
},
+ "notificationhubs/resource-manager": {
+ "source": "specification/notificationhubs/resource-manager/readme.md",
+ "args": "--multiapi --fluent"
+ },
"mediaservices/resource-manager": {
"source": "specification/mediaservices/resource-manager/readme.md",
"args": "--multiapi --fluent"
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/pom.xml b/hdinsight/resource-manager/v2015_03_01_preview/pom.xml
new file mode 100644
index 000000000000..d9fe0b16d822
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/pom.xml
@@ -0,0 +1,133 @@
+
+
+ 4.0.0
+ com.microsoft.azure.hdinsight.v2015_03_01_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.2-beta
+ ../../../pom.xml
+
+ azure-mgmt-hdinsight
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for HDInsight Management
+ This package contains Microsoft HDInsight Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+
* Copyright (c) Microsoft Corporation. All rights reserved.
+
* Licensed under the MIT License. See License.txt in the project root for
+
* license information.
+
*/
+ ]]>
+
+
+
+
+
+
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Application.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Application.java
new file mode 100644
index 000000000000..c90403770501
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Application.java
@@ -0,0 +1,176 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ApplicationInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.HDInsightManager;
+import java.util.Map;
+
+/**
+ * Type representing Application.
+ */
+public interface Application extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the etag value.
+ */
+ String etag();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ ApplicationProperties properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the Application definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithCluster, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Application definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Application definition.
+ */
+ interface Blank extends WithCluster {
+ }
+
+ /**
+ * The stage of the application definition allowing to specify Cluster.
+ */
+ interface WithCluster {
+ /**
+ * Specifies resourceGroupName, clusterName.
+ * @param resourceGroupName The name of the resource group
+ * @param clusterName The name of the cluster
+ * @return the next definition stage
+ */
+ WithCreate withExistingCluster(String resourceGroupName, String clusterName);
+ }
+
+ /**
+ * The stage of the application definition allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag for the application
+ * @return the next definition stage
+ */
+ WithCreate withEtag(String etag);
+ }
+
+ /**
+ * The stage of the application definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The properties of the application
+ * @return the next definition stage
+ */
+ WithCreate withProperties(ApplicationProperties properties);
+ }
+
+ /**
+ * The stage of the application definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags for the application
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithEtag, DefinitionStages.WithProperties, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a Application update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithEtag, UpdateStages.WithProperties, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of Application update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the application update allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag for the application
+ * @return the next update stage
+ */
+ Update withEtag(String etag);
+ }
+
+ /**
+ * The stage of the application update allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The properties of the application
+ * @return the next update stage
+ */
+ Update withProperties(ApplicationProperties properties);
+ }
+
+ /**
+ * The stage of the application update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags for the application
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetEndpoint.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetEndpoint.java
new file mode 100644
index 000000000000..30aad4561990
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetEndpoint.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Gets the application SSH endpoint.
+ */
+public class ApplicationGetEndpoint {
+ /**
+ * The location of the endpoint.
+ */
+ @JsonProperty(value = "location")
+ private String location;
+
+ /**
+ * The destination port to connect to.
+ */
+ @JsonProperty(value = "destinationPort")
+ private Integer destinationPort;
+
+ /**
+ * The public port to connect to.
+ */
+ @JsonProperty(value = "publicPort")
+ private Integer publicPort;
+
+ /**
+ * Get the location of the endpoint.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location of the endpoint.
+ *
+ * @param location the location value to set
+ * @return the ApplicationGetEndpoint object itself.
+ */
+ public ApplicationGetEndpoint withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the destination port to connect to.
+ *
+ * @return the destinationPort value
+ */
+ public Integer destinationPort() {
+ return this.destinationPort;
+ }
+
+ /**
+ * Set the destination port to connect to.
+ *
+ * @param destinationPort the destinationPort value to set
+ * @return the ApplicationGetEndpoint object itself.
+ */
+ public ApplicationGetEndpoint withDestinationPort(Integer destinationPort) {
+ this.destinationPort = destinationPort;
+ return this;
+ }
+
+ /**
+ * Get the public port to connect to.
+ *
+ * @return the publicPort value
+ */
+ public Integer publicPort() {
+ return this.publicPort;
+ }
+
+ /**
+ * Set the public port to connect to.
+ *
+ * @param publicPort the publicPort value to set
+ * @return the ApplicationGetEndpoint object itself.
+ */
+ public ApplicationGetEndpoint withPublicPort(Integer publicPort) {
+ this.publicPort = publicPort;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetHttpsEndpoint.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetHttpsEndpoint.java
new file mode 100644
index 000000000000..c93c78f1460d
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationGetHttpsEndpoint.java
@@ -0,0 +1,149 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import java.util.Map;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Gets the application HTTP endpoints.
+ */
+public class ApplicationGetHttpsEndpoint {
+ /**
+ * Unmatched properties from the message are deserialized this collection.
+ */
+ @JsonProperty(value = "")
+ private Map additionalProperties;
+
+ /**
+ * The list of access modes for the application.
+ */
+ @JsonProperty(value = "accessModes")
+ private List accessModes;
+
+ /**
+ * The location of the endpoint.
+ */
+ @JsonProperty(value = "location")
+ private String location;
+
+ /**
+ * The destination port to connect to.
+ */
+ @JsonProperty(value = "destinationPort")
+ private Integer destinationPort;
+
+ /**
+ * The public port to connect to.
+ */
+ @JsonProperty(value = "publicPort")
+ private Integer publicPort;
+
+ /**
+ * Get unmatched properties from the message are deserialized this collection.
+ *
+ * @return the additionalProperties value
+ */
+ public Map additionalProperties() {
+ return this.additionalProperties;
+ }
+
+ /**
+ * Set unmatched properties from the message are deserialized this collection.
+ *
+ * @param additionalProperties the additionalProperties value to set
+ * @return the ApplicationGetHttpsEndpoint object itself.
+ */
+ public ApplicationGetHttpsEndpoint withAdditionalProperties(Map additionalProperties) {
+ this.additionalProperties = additionalProperties;
+ return this;
+ }
+
+ /**
+ * Get the list of access modes for the application.
+ *
+ * @return the accessModes value
+ */
+ public List accessModes() {
+ return this.accessModes;
+ }
+
+ /**
+ * Set the list of access modes for the application.
+ *
+ * @param accessModes the accessModes value to set
+ * @return the ApplicationGetHttpsEndpoint object itself.
+ */
+ public ApplicationGetHttpsEndpoint withAccessModes(List accessModes) {
+ this.accessModes = accessModes;
+ return this;
+ }
+
+ /**
+ * Get the location of the endpoint.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location of the endpoint.
+ *
+ * @param location the location value to set
+ * @return the ApplicationGetHttpsEndpoint object itself.
+ */
+ public ApplicationGetHttpsEndpoint withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the destination port to connect to.
+ *
+ * @return the destinationPort value
+ */
+ public Integer destinationPort() {
+ return this.destinationPort;
+ }
+
+ /**
+ * Set the destination port to connect to.
+ *
+ * @param destinationPort the destinationPort value to set
+ * @return the ApplicationGetHttpsEndpoint object itself.
+ */
+ public ApplicationGetHttpsEndpoint withDestinationPort(Integer destinationPort) {
+ this.destinationPort = destinationPort;
+ return this;
+ }
+
+ /**
+ * Get the public port to connect to.
+ *
+ * @return the publicPort value
+ */
+ public Integer publicPort() {
+ return this.publicPort;
+ }
+
+ /**
+ * Set the public port to connect to.
+ *
+ * @param publicPort the publicPort value to set
+ * @return the ApplicationGetHttpsEndpoint object itself.
+ */
+ public ApplicationGetHttpsEndpoint withPublicPort(Integer publicPort) {
+ this.publicPort = publicPort;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationProperties.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationProperties.java
new file mode 100644
index 000000000000..4766b6dbe0f8
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ApplicationProperties.java
@@ -0,0 +1,286 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The HDInsight cluster application GET response.
+ */
+public class ApplicationProperties {
+ /**
+ * The list of roles in the cluster.
+ */
+ @JsonProperty(value = "computeProfile")
+ private ComputeProfile computeProfile;
+
+ /**
+ * The list of install script actions.
+ */
+ @JsonProperty(value = "installScriptActions")
+ private List installScriptActions;
+
+ /**
+ * The list of uninstall script actions.
+ */
+ @JsonProperty(value = "uninstallScriptActions")
+ private List uninstallScriptActions;
+
+ /**
+ * The list of application HTTPS endpoints.
+ */
+ @JsonProperty(value = "httpsEndpoints")
+ private List httpsEndpoints;
+
+ /**
+ * The list of application SSH endpoints.
+ */
+ @JsonProperty(value = "sshEndpoints")
+ private List sshEndpoints;
+
+ /**
+ * The provisioning state of the application.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /**
+ * The application type.
+ */
+ @JsonProperty(value = "applicationType")
+ private String applicationType;
+
+ /**
+ * The application state.
+ */
+ @JsonProperty(value = "applicationState", access = JsonProperty.Access.WRITE_ONLY)
+ private String applicationState;
+
+ /**
+ * The list of errors.
+ */
+ @JsonProperty(value = "errors")
+ private List errors;
+
+ /**
+ * The application create date time.
+ */
+ @JsonProperty(value = "createdDate", access = JsonProperty.Access.WRITE_ONLY)
+ private String createdDate;
+
+ /**
+ * The marketplace identifier.
+ */
+ @JsonProperty(value = "marketplaceIdentifier", access = JsonProperty.Access.WRITE_ONLY)
+ private String marketplaceIdentifier;
+
+ /**
+ * The additional properties for application.
+ */
+ @JsonProperty(value = "additionalProperties")
+ private String additionalProperties;
+
+ /**
+ * Get the list of roles in the cluster.
+ *
+ * @return the computeProfile value
+ */
+ public ComputeProfile computeProfile() {
+ return this.computeProfile;
+ }
+
+ /**
+ * Set the list of roles in the cluster.
+ *
+ * @param computeProfile the computeProfile value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withComputeProfile(ComputeProfile computeProfile) {
+ this.computeProfile = computeProfile;
+ return this;
+ }
+
+ /**
+ * Get the list of install script actions.
+ *
+ * @return the installScriptActions value
+ */
+ public List installScriptActions() {
+ return this.installScriptActions;
+ }
+
+ /**
+ * Set the list of install script actions.
+ *
+ * @param installScriptActions the installScriptActions value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withInstallScriptActions(List installScriptActions) {
+ this.installScriptActions = installScriptActions;
+ return this;
+ }
+
+ /**
+ * Get the list of uninstall script actions.
+ *
+ * @return the uninstallScriptActions value
+ */
+ public List uninstallScriptActions() {
+ return this.uninstallScriptActions;
+ }
+
+ /**
+ * Set the list of uninstall script actions.
+ *
+ * @param uninstallScriptActions the uninstallScriptActions value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withUninstallScriptActions(List uninstallScriptActions) {
+ this.uninstallScriptActions = uninstallScriptActions;
+ return this;
+ }
+
+ /**
+ * Get the list of application HTTPS endpoints.
+ *
+ * @return the httpsEndpoints value
+ */
+ public List httpsEndpoints() {
+ return this.httpsEndpoints;
+ }
+
+ /**
+ * Set the list of application HTTPS endpoints.
+ *
+ * @param httpsEndpoints the httpsEndpoints value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withHttpsEndpoints(List httpsEndpoints) {
+ this.httpsEndpoints = httpsEndpoints;
+ return this;
+ }
+
+ /**
+ * Get the list of application SSH endpoints.
+ *
+ * @return the sshEndpoints value
+ */
+ public List sshEndpoints() {
+ return this.sshEndpoints;
+ }
+
+ /**
+ * Set the list of application SSH endpoints.
+ *
+ * @param sshEndpoints the sshEndpoints value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withSshEndpoints(List sshEndpoints) {
+ this.sshEndpoints = sshEndpoints;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state of the application.
+ *
+ * @return the provisioningState value
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the application type.
+ *
+ * @return the applicationType value
+ */
+ public String applicationType() {
+ return this.applicationType;
+ }
+
+ /**
+ * Set the application type.
+ *
+ * @param applicationType the applicationType value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withApplicationType(String applicationType) {
+ this.applicationType = applicationType;
+ return this;
+ }
+
+ /**
+ * Get the application state.
+ *
+ * @return the applicationState value
+ */
+ public String applicationState() {
+ return this.applicationState;
+ }
+
+ /**
+ * Get the list of errors.
+ *
+ * @return the errors value
+ */
+ public List errors() {
+ return this.errors;
+ }
+
+ /**
+ * Set the list of errors.
+ *
+ * @param errors the errors value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withErrors(List errors) {
+ this.errors = errors;
+ return this;
+ }
+
+ /**
+ * Get the application create date time.
+ *
+ * @return the createdDate value
+ */
+ public String createdDate() {
+ return this.createdDate;
+ }
+
+ /**
+ * Get the marketplace identifier.
+ *
+ * @return the marketplaceIdentifier value
+ */
+ public String marketplaceIdentifier() {
+ return this.marketplaceIdentifier;
+ }
+
+ /**
+ * Get the additional properties for application.
+ *
+ * @return the additionalProperties value
+ */
+ public String additionalProperties() {
+ return this.additionalProperties;
+ }
+
+ /**
+ * Set the additional properties for application.
+ *
+ * @param additionalProperties the additionalProperties value to set
+ * @return the ApplicationProperties object itself.
+ */
+ public ApplicationProperties withAdditionalProperties(String additionalProperties) {
+ this.additionalProperties = additionalProperties;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Applications.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Applications.java
new file mode 100644
index 000000000000..cd4e43545737
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Applications.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.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ApplicationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Applications.
+ */
+public interface Applications extends SupportsCreating, HasInner {
+ /**
+ * Lists properties of the specified application.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @param applicationName The constant value for the application name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String clusterName, String applicationName);
+
+ /**
+ * Lists all of the applications for the HDInsight cluster.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String clusterName);
+
+ /**
+ * Deletes the specified application on the HDInsight cluster.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @param applicationName The constant value for the application name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String clusterName, String applicationName);
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/AsyncOperationState.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/AsyncOperationState.java
new file mode 100644
index 000000000000..b4114684d7be
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/AsyncOperationState.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.hdinsight.v2015_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for AsyncOperationState.
+ */
+public enum AsyncOperationState {
+ /** Enum value InProgress. */
+ IN_PROGRESS("InProgress"),
+
+ /** Enum value Succeeded. */
+ SUCCEEDED("Succeeded"),
+
+ /** Enum value Failed. */
+ FAILED("Failed");
+
+ /** The actual serialized value for a AsyncOperationState instance. */
+ private String value;
+
+ AsyncOperationState(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a AsyncOperationState instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed AsyncOperationState object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static AsyncOperationState fromString(String value) {
+ AsyncOperationState[] items = AsyncOperationState.values();
+ for (AsyncOperationState item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/CapabilitiesResult.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/CapabilitiesResult.java
new file mode 100644
index 000000000000..30af6b8ba26f
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/CapabilitiesResult.java
@@ -0,0 +1,52 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.HDInsightManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.CapabilitiesResultInner;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing CapabilitiesResult.
+ */
+public interface CapabilitiesResult extends HasInner, HasManager {
+ /**
+ * @return the features value.
+ */
+ List features();
+
+ /**
+ * @return the quota value.
+ */
+ QuotaCapability quota();
+
+ /**
+ * @return the regions value.
+ */
+ Map regions();
+
+ /**
+ * @return the versions value.
+ */
+ Map versions();
+
+ /**
+ * @return the vmSizeFilters value.
+ */
+ List vmSizeFilters();
+
+ /**
+ * @return the vmSizes value.
+ */
+ Map vmSizes();
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Cluster.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Cluster.java
new file mode 100644
index 000000000000..eb0d21be238e
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Cluster.java
@@ -0,0 +1,102 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.HDInsightManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ClusterInner;
+
+/**
+ * Type representing Cluster.
+ */
+public interface Cluster extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the etag value.
+ */
+ String etag();
+
+ /**
+ * @return the properties value.
+ */
+ ClusterGetProperties properties();
+
+ /**
+ * The entirety of the Cluster definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Cluster definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Cluster definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the Cluster definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the cluster definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The cluster create parameters
+ * @return the next definition stage
+ */
+ WithCreate withProperties(ClusterCreateProperties properties);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, Resource.DefinitionWithTags, DefinitionStages.WithProperties {
+ }
+ }
+ /**
+ * The template for a Cluster update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithProperties {
+ }
+
+ /**
+ * Grouping of Cluster update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the cluster update allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The cluster create parameters
+ * @return the next update stage
+ */
+ Update withProperties(ClusterCreateProperties properties);
+ }
+
+ }
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateParametersExtended.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateParametersExtended.java
new file mode 100644
index 000000000000..2a0e78442d46
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateParametersExtended.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.hdinsight.v2015_03_01_preview;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The CreateCluster request parameters.
+ */
+public class ClusterCreateParametersExtended {
+ /**
+ * The location of the cluster.
+ */
+ @JsonProperty(value = "location")
+ private String location;
+
+ /**
+ * The resource tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * The cluster create parameters.
+ */
+ @JsonProperty(value = "properties")
+ private ClusterCreateProperties properties;
+
+ /**
+ * Get the location of the cluster.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set the location of the cluster.
+ *
+ * @param location the location value to set
+ * @return the ClusterCreateParametersExtended object itself.
+ */
+ public ClusterCreateParametersExtended withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+ /**
+ * Get the resource tags.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the resource tags.
+ *
+ * @param tags the tags value to set
+ * @return the ClusterCreateParametersExtended object itself.
+ */
+ public ClusterCreateParametersExtended withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ /**
+ * Get the cluster create parameters.
+ *
+ * @return the properties value
+ */
+ public ClusterCreateProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the cluster create parameters.
+ *
+ * @param properties the properties value to set
+ * @return the ClusterCreateParametersExtended object itself.
+ */
+ public ClusterCreateParametersExtended withProperties(ClusterCreateProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateProperties.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateProperties.java
new file mode 100644
index 000000000000..9ca2b6a9d2af
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterCreateProperties.java
@@ -0,0 +1,200 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The cluster create parameters.
+ */
+public class ClusterCreateProperties {
+ /**
+ * The version of the cluster.
+ */
+ @JsonProperty(value = "clusterVersion")
+ private String clusterVersion;
+
+ /**
+ * The type of operating system. Possible values include: 'Windows',
+ * 'Linux'.
+ */
+ @JsonProperty(value = "osType")
+ private OSType osType;
+
+ /**
+ * The cluster tier. Possible values include: 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "tier")
+ private Tier tier;
+
+ /**
+ * The cluster definition.
+ */
+ @JsonProperty(value = "clusterDefinition")
+ private ClusterDefinition clusterDefinition;
+
+ /**
+ * The security profile.
+ */
+ @JsonProperty(value = "securityProfile")
+ private SecurityProfile securityProfile;
+
+ /**
+ * The compute profile.
+ */
+ @JsonProperty(value = "computeProfile")
+ private ComputeProfile computeProfile;
+
+ /**
+ * The storage profile.
+ */
+ @JsonProperty(value = "storageProfile")
+ private StorageProfile storageProfile;
+
+ /**
+ * Get the version of the cluster.
+ *
+ * @return the clusterVersion value
+ */
+ public String clusterVersion() {
+ return this.clusterVersion;
+ }
+
+ /**
+ * Set the version of the cluster.
+ *
+ * @param clusterVersion the clusterVersion value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withClusterVersion(String clusterVersion) {
+ this.clusterVersion = clusterVersion;
+ return this;
+ }
+
+ /**
+ * Get the type of operating system. Possible values include: 'Windows', 'Linux'.
+ *
+ * @return the osType value
+ */
+ public OSType osType() {
+ return this.osType;
+ }
+
+ /**
+ * Set the type of operating system. Possible values include: 'Windows', 'Linux'.
+ *
+ * @param osType the osType value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withOsType(OSType osType) {
+ this.osType = osType;
+ return this;
+ }
+
+ /**
+ * Get the cluster tier. Possible values include: 'Standard', 'Premium'.
+ *
+ * @return the tier value
+ */
+ public Tier tier() {
+ return this.tier;
+ }
+
+ /**
+ * Set the cluster tier. Possible values include: 'Standard', 'Premium'.
+ *
+ * @param tier the tier value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withTier(Tier tier) {
+ this.tier = tier;
+ return this;
+ }
+
+ /**
+ * Get the cluster definition.
+ *
+ * @return the clusterDefinition value
+ */
+ public ClusterDefinition clusterDefinition() {
+ return this.clusterDefinition;
+ }
+
+ /**
+ * Set the cluster definition.
+ *
+ * @param clusterDefinition the clusterDefinition value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withClusterDefinition(ClusterDefinition clusterDefinition) {
+ this.clusterDefinition = clusterDefinition;
+ return this;
+ }
+
+ /**
+ * Get the security profile.
+ *
+ * @return the securityProfile value
+ */
+ public SecurityProfile securityProfile() {
+ return this.securityProfile;
+ }
+
+ /**
+ * Set the security profile.
+ *
+ * @param securityProfile the securityProfile value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withSecurityProfile(SecurityProfile securityProfile) {
+ this.securityProfile = securityProfile;
+ return this;
+ }
+
+ /**
+ * Get the compute profile.
+ *
+ * @return the computeProfile value
+ */
+ public ComputeProfile computeProfile() {
+ return this.computeProfile;
+ }
+
+ /**
+ * Set the compute profile.
+ *
+ * @param computeProfile the computeProfile value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withComputeProfile(ComputeProfile computeProfile) {
+ this.computeProfile = computeProfile;
+ return this;
+ }
+
+ /**
+ * Get the storage profile.
+ *
+ * @return the storageProfile value
+ */
+ public StorageProfile storageProfile() {
+ return this.storageProfile;
+ }
+
+ /**
+ * Set the storage profile.
+ *
+ * @param storageProfile the storageProfile value to set
+ * @return the ClusterCreateProperties object itself.
+ */
+ public ClusterCreateProperties withStorageProfile(StorageProfile storageProfile) {
+ this.storageProfile = storageProfile;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterDefinition.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterDefinition.java
new file mode 100644
index 000000000000..33fff49e4d75
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterDefinition.java
@@ -0,0 +1,122 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The cluster definition.
+ */
+public class ClusterDefinition {
+ /**
+ * The link to the blueprint.
+ */
+ @JsonProperty(value = "blueprint")
+ private String blueprint;
+
+ /**
+ * The type of cluster.
+ */
+ @JsonProperty(value = "kind")
+ private String kind;
+
+ /**
+ * The versions of different services in the cluster.
+ */
+ @JsonProperty(value = "componentVersion")
+ private Map componentVersion;
+
+ /**
+ * The cluster configurations.
+ */
+ @JsonProperty(value = "configurations")
+ private Object configurations;
+
+ /**
+ * Get the link to the blueprint.
+ *
+ * @return the blueprint value
+ */
+ public String blueprint() {
+ return this.blueprint;
+ }
+
+ /**
+ * Set the link to the blueprint.
+ *
+ * @param blueprint the blueprint value to set
+ * @return the ClusterDefinition object itself.
+ */
+ public ClusterDefinition withBlueprint(String blueprint) {
+ this.blueprint = blueprint;
+ return this;
+ }
+
+ /**
+ * Get the type of cluster.
+ *
+ * @return the kind value
+ */
+ public String kind() {
+ return this.kind;
+ }
+
+ /**
+ * Set the type of cluster.
+ *
+ * @param kind the kind value to set
+ * @return the ClusterDefinition object itself.
+ */
+ public ClusterDefinition withKind(String kind) {
+ this.kind = kind;
+ return this;
+ }
+
+ /**
+ * Get the versions of different services in the cluster.
+ *
+ * @return the componentVersion value
+ */
+ public Map componentVersion() {
+ return this.componentVersion;
+ }
+
+ /**
+ * Set the versions of different services in the cluster.
+ *
+ * @param componentVersion the componentVersion value to set
+ * @return the ClusterDefinition object itself.
+ */
+ public ClusterDefinition withComponentVersion(Map componentVersion) {
+ this.componentVersion = componentVersion;
+ return this;
+ }
+
+ /**
+ * Get the cluster configurations.
+ *
+ * @return the configurations value
+ */
+ public Object configurations() {
+ return this.configurations;
+ }
+
+ /**
+ * Set the cluster configurations.
+ *
+ * @param configurations the configurations value to set
+ * @return the ClusterDefinition object itself.
+ */
+ public ClusterDefinition withConfigurations(Object configurations) {
+ this.configurations = configurations;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterGetProperties.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterGetProperties.java
new file mode 100644
index 000000000000..0326f67f19d4
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterGetProperties.java
@@ -0,0 +1,333 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The properties of cluster.
+ */
+public class ClusterGetProperties {
+ /**
+ * The version of the cluster.
+ */
+ @JsonProperty(value = "clusterVersion")
+ private String clusterVersion;
+
+ /**
+ * The type of operating system. Possible values include: 'Windows',
+ * 'Linux'.
+ */
+ @JsonProperty(value = "osType")
+ private OSType osType;
+
+ /**
+ * The cluster tier. Possible values include: 'Standard', 'Premium'.
+ */
+ @JsonProperty(value = "tier")
+ private Tier tier;
+
+ /**
+ * The cluster definition.
+ */
+ @JsonProperty(value = "clusterDefinition", required = true)
+ private ClusterDefinition clusterDefinition;
+
+ /**
+ * The security profile.
+ */
+ @JsonProperty(value = "securityProfile")
+ private SecurityProfile securityProfile;
+
+ /**
+ * The compute profile.
+ */
+ @JsonProperty(value = "computeProfile")
+ private ComputeProfile computeProfile;
+
+ /**
+ * The provisioning state, which only appears in the response. Possible
+ * values include: 'InProgress', 'Failed', 'Succeeded', 'Canceled',
+ * 'Deleting'.
+ */
+ @JsonProperty(value = "provisioningState")
+ private HDInsightClusterProvisioningState provisioningState;
+
+ /**
+ * The date on which the cluster was created.
+ */
+ @JsonProperty(value = "createdDate")
+ private String createdDate;
+
+ /**
+ * The state of the cluster.
+ */
+ @JsonProperty(value = "clusterState")
+ private String clusterState;
+
+ /**
+ * The quota information.
+ */
+ @JsonProperty(value = "quotaInfo")
+ private QuotaInfo quotaInfo;
+
+ /**
+ * The list of errors.
+ */
+ @JsonProperty(value = "errors")
+ private List errors;
+
+ /**
+ * The list of connectivity endpoints.
+ */
+ @JsonProperty(value = "connectivityEndpoints")
+ private List connectivityEndpoints;
+
+ /**
+ * Get the version of the cluster.
+ *
+ * @return the clusterVersion value
+ */
+ public String clusterVersion() {
+ return this.clusterVersion;
+ }
+
+ /**
+ * Set the version of the cluster.
+ *
+ * @param clusterVersion the clusterVersion value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withClusterVersion(String clusterVersion) {
+ this.clusterVersion = clusterVersion;
+ return this;
+ }
+
+ /**
+ * Get the type of operating system. Possible values include: 'Windows', 'Linux'.
+ *
+ * @return the osType value
+ */
+ public OSType osType() {
+ return this.osType;
+ }
+
+ /**
+ * Set the type of operating system. Possible values include: 'Windows', 'Linux'.
+ *
+ * @param osType the osType value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withOsType(OSType osType) {
+ this.osType = osType;
+ return this;
+ }
+
+ /**
+ * Get the cluster tier. Possible values include: 'Standard', 'Premium'.
+ *
+ * @return the tier value
+ */
+ public Tier tier() {
+ return this.tier;
+ }
+
+ /**
+ * Set the cluster tier. Possible values include: 'Standard', 'Premium'.
+ *
+ * @param tier the tier value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withTier(Tier tier) {
+ this.tier = tier;
+ return this;
+ }
+
+ /**
+ * Get the cluster definition.
+ *
+ * @return the clusterDefinition value
+ */
+ public ClusterDefinition clusterDefinition() {
+ return this.clusterDefinition;
+ }
+
+ /**
+ * Set the cluster definition.
+ *
+ * @param clusterDefinition the clusterDefinition value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withClusterDefinition(ClusterDefinition clusterDefinition) {
+ this.clusterDefinition = clusterDefinition;
+ return this;
+ }
+
+ /**
+ * Get the security profile.
+ *
+ * @return the securityProfile value
+ */
+ public SecurityProfile securityProfile() {
+ return this.securityProfile;
+ }
+
+ /**
+ * Set the security profile.
+ *
+ * @param securityProfile the securityProfile value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withSecurityProfile(SecurityProfile securityProfile) {
+ this.securityProfile = securityProfile;
+ return this;
+ }
+
+ /**
+ * Get the compute profile.
+ *
+ * @return the computeProfile value
+ */
+ public ComputeProfile computeProfile() {
+ return this.computeProfile;
+ }
+
+ /**
+ * Set the compute profile.
+ *
+ * @param computeProfile the computeProfile value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withComputeProfile(ComputeProfile computeProfile) {
+ this.computeProfile = computeProfile;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state, which only appears in the response. Possible values include: 'InProgress', 'Failed', 'Succeeded', 'Canceled', 'Deleting'.
+ *
+ * @return the provisioningState value
+ */
+ public HDInsightClusterProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Set the provisioning state, which only appears in the response. Possible values include: 'InProgress', 'Failed', 'Succeeded', 'Canceled', 'Deleting'.
+ *
+ * @param provisioningState the provisioningState value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withProvisioningState(HDInsightClusterProvisioningState provisioningState) {
+ this.provisioningState = provisioningState;
+ return this;
+ }
+
+ /**
+ * Get the date on which the cluster was created.
+ *
+ * @return the createdDate value
+ */
+ public String createdDate() {
+ return this.createdDate;
+ }
+
+ /**
+ * Set the date on which the cluster was created.
+ *
+ * @param createdDate the createdDate value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withCreatedDate(String createdDate) {
+ this.createdDate = createdDate;
+ return this;
+ }
+
+ /**
+ * Get the state of the cluster.
+ *
+ * @return the clusterState value
+ */
+ public String clusterState() {
+ return this.clusterState;
+ }
+
+ /**
+ * Set the state of the cluster.
+ *
+ * @param clusterState the clusterState value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withClusterState(String clusterState) {
+ this.clusterState = clusterState;
+ return this;
+ }
+
+ /**
+ * Get the quota information.
+ *
+ * @return the quotaInfo value
+ */
+ public QuotaInfo quotaInfo() {
+ return this.quotaInfo;
+ }
+
+ /**
+ * Set the quota information.
+ *
+ * @param quotaInfo the quotaInfo value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withQuotaInfo(QuotaInfo quotaInfo) {
+ this.quotaInfo = quotaInfo;
+ return this;
+ }
+
+ /**
+ * Get the list of errors.
+ *
+ * @return the errors value
+ */
+ public List errors() {
+ return this.errors;
+ }
+
+ /**
+ * Set the list of errors.
+ *
+ * @param errors the errors value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withErrors(List errors) {
+ this.errors = errors;
+ return this;
+ }
+
+ /**
+ * Get the list of connectivity endpoints.
+ *
+ * @return the connectivityEndpoints value
+ */
+ public List connectivityEndpoints() {
+ return this.connectivityEndpoints;
+ }
+
+ /**
+ * Set the list of connectivity endpoints.
+ *
+ * @param connectivityEndpoints the connectivityEndpoints value to set
+ * @return the ClusterGetProperties object itself.
+ */
+ public ClusterGetProperties withConnectivityEndpoints(List connectivityEndpoints) {
+ this.connectivityEndpoints = connectivityEndpoints;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListPersistedScriptActionsResult.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListPersistedScriptActionsResult.java
new file mode 100644
index 000000000000..4771a38f1a69
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListPersistedScriptActionsResult.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.hdinsight.v2015_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The ListPersistedScriptActions operation response.
+ */
+public class ClusterListPersistedScriptActionsResult {
+ /**
+ * The list of Persisted Script Actions.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /**
+ * The link (url) to the next page of results.
+ */
+ @JsonProperty(value = "nextLink", access = JsonProperty.Access.WRITE_ONLY)
+ private String nextLink;
+
+ /**
+ * Get the list of Persisted Script Actions.
+ *
+ * @return the value value
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the list of Persisted Script Actions.
+ *
+ * @param value the value value to set
+ * @return the ClusterListPersistedScriptActionsResult object itself.
+ */
+ public ClusterListPersistedScriptActionsResult withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the link (url) to the next page of results.
+ *
+ * @return the nextLink value
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListRuntimeScriptActionDetailResult.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListRuntimeScriptActionDetailResult.java
new file mode 100644
index 000000000000..dddb68eb68a8
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterListRuntimeScriptActionDetailResult.java
@@ -0,0 +1,49 @@
+/**
+ * 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.hdinsight.v2015_03_01_preview;
+
+import java.util.List;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.RuntimeScriptActionDetailInner;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The list runtime script action detail response.
+ */
+public class ClusterListRuntimeScriptActionDetailResult {
+ /**
+ * The list of persisted script action details for the cluster.
+ */
+ @JsonProperty(value = "value", access = JsonProperty.Access.WRITE_ONLY)
+ private List value;
+
+ /**
+ * The link (url) to the next page of results.
+ */
+ @JsonProperty(value = "nextLink", access = JsonProperty.Access.WRITE_ONLY)
+ private String nextLink;
+
+ /**
+ * Get the list of persisted script action details for the cluster.
+ *
+ * @return the value value
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Get the link (url) to the next page of results.
+ *
+ * @return the nextLink value
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringRequest.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringRequest.java
new file mode 100644
index 000000000000..ff83e029de9e
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringRequest.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.hdinsight.v2015_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Operations Management Suite (OMS) parameters.
+ */
+public class ClusterMonitoringRequest {
+ /**
+ * The Operations Management Suite (OMS) workspace ID.
+ */
+ @JsonProperty(value = "workspaceId")
+ private String workspaceId;
+
+ /**
+ * The Operations Management Suite (OMS) workspace key.
+ */
+ @JsonProperty(value = "primaryKey")
+ private String primaryKey;
+
+ /**
+ * Get the Operations Management Suite (OMS) workspace ID.
+ *
+ * @return the workspaceId value
+ */
+ public String workspaceId() {
+ return this.workspaceId;
+ }
+
+ /**
+ * Set the Operations Management Suite (OMS) workspace ID.
+ *
+ * @param workspaceId the workspaceId value to set
+ * @return the ClusterMonitoringRequest object itself.
+ */
+ public ClusterMonitoringRequest withWorkspaceId(String workspaceId) {
+ this.workspaceId = workspaceId;
+ return this;
+ }
+
+ /**
+ * Get the Operations Management Suite (OMS) workspace key.
+ *
+ * @return the primaryKey value
+ */
+ public String primaryKey() {
+ return this.primaryKey;
+ }
+
+ /**
+ * Set the Operations Management Suite (OMS) workspace key.
+ *
+ * @param primaryKey the primaryKey value to set
+ * @return the ClusterMonitoringRequest object itself.
+ */
+ public ClusterMonitoringRequest withPrimaryKey(String primaryKey) {
+ this.primaryKey = primaryKey;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringResponse.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringResponse.java
new file mode 100644
index 000000000000..2c32a0b24c6f
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterMonitoringResponse.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.HDInsightManager;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ClusterMonitoringResponseInner;
+
+/**
+ * Type representing ClusterMonitoringResponse.
+ */
+public interface ClusterMonitoringResponse extends HasInner, HasManager {
+ /**
+ * @return the clusterMonitoringEnabled value.
+ */
+ Boolean clusterMonitoringEnabled();
+
+ /**
+ * @return the workspaceId value.
+ */
+ String workspaceId();
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterPatchParameters.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterPatchParameters.java
new file mode 100644
index 000000000000..0a0e38b05177
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterPatchParameters.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.hdinsight.v2015_03_01_preview;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The PatchCluster request parameters.
+ */
+public class ClusterPatchParameters {
+ /**
+ * The resource tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get the resource tags.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set the resource tags.
+ *
+ * @param tags the tags value to set
+ * @return the ClusterPatchParameters object itself.
+ */
+ public ClusterPatchParameters withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterResizeParameters.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterResizeParameters.java
new file mode 100644
index 000000000000..19d32fc0983b
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ClusterResizeParameters.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The Resize Cluster request parameters.
+ */
+public class ClusterResizeParameters {
+ /**
+ * The target instance count for the operation.
+ */
+ @JsonProperty(value = "targetInstanceCount")
+ private Integer targetInstanceCount;
+
+ /**
+ * Get the target instance count for the operation.
+ *
+ * @return the targetInstanceCount value
+ */
+ public Integer targetInstanceCount() {
+ return this.targetInstanceCount;
+ }
+
+ /**
+ * Set the target instance count for the operation.
+ *
+ * @param targetInstanceCount the targetInstanceCount value to set
+ * @return the ClusterResizeParameters object itself.
+ */
+ public ClusterResizeParameters withTargetInstanceCount(Integer targetInstanceCount) {
+ this.targetInstanceCount = targetInstanceCount;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Clusters.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Clusters.java
new file mode 100644
index 000000000000..b7bf37ff2259
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Clusters.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.hdinsight.v2015_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import rx.Completable;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ClustersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Clusters.
+ */
+public interface Clusters extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Executes script actions on the specified HDInsight cluster.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @param parameters The parameters for executing script actions.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable executeScriptActionsAsync(String resourceGroupName, String clusterName, ExecuteScriptActionParameters parameters);
+
+ /**
+ * Resizes the specified HDInsight cluster to the specified size.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable resizeAsync(String resourceGroupName, String clusterName);
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ComputeProfile.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ComputeProfile.java
new file mode 100644
index 000000000000..3b49a2fa7da1
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/ComputeProfile.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.hdinsight.v2015_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the compute profile.
+ */
+public class ComputeProfile {
+ /**
+ * The list of roles in the cluster.
+ */
+ @JsonProperty(value = "roles")
+ private List roles;
+
+ /**
+ * Get the list of roles in the cluster.
+ *
+ * @return the roles value
+ */
+ public List roles() {
+ return this.roles;
+ }
+
+ /**
+ * Set the list of roles in the cluster.
+ *
+ * @param roles the roles value to set
+ * @return the ComputeProfile object itself.
+ */
+ public ComputeProfile withRoles(List roles) {
+ this.roles = roles;
+ return this;
+ }
+
+}
diff --git a/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Configurations.java b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Configurations.java
new file mode 100644
index 000000000000..73311cdf5fdf
--- /dev/null
+++ b/hdinsight/resource-manager/v2015_03_01_preview/src/main/java/com/microsoft/azure/management/hdinsight/v2015_03_01_preview/Configurations.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.hdinsight.v2015_03_01_preview;
+
+import rx.Completable;
+import rx.Observable;
+import java.util.Map;
+import com.microsoft.azure.management.hdinsight.v2015_03_01_preview.implementation.ConfigurationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Configurations.
+ */
+public interface Configurations extends HasInner {
+ /**
+ * Configures the HTTP settings on the specified cluster.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @param configurationName The name of the cluster configuration.
+ * @param parameters The cluster configurations.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable updateHTTPSettingsAsync(String resourceGroupName, String clusterName, String configurationName, Map parameters);
+
+ /**
+ * The configuration object for the specified cluster.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param clusterName The name of the cluster.
+ * @param configurationName The name of the cluster configuration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable