diff --git a/applicationinsights/resource-manager/v2015_05_01/pom.xml b/applicationinsights/resource-manager/v2015_05_01/pom.xml
new file mode 100644
index 000000000000..8f9418956b9a
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/pom.xml
@@ -0,0 +1,133 @@
+
+
+ 4.0.0
+ com.microsoft.azure.applicationinsights.v2015_05_01
+
+ com.microsoft.azure
+ azure-arm-parent
+ 0.0.2-beta
+ ../../../pom.xml
+
+ azure-mgmt-insights
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for Insights Management
+ This package contains Microsoft Insights Management SDK.
+ https://github.com/Azure/azure-libraries-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-libraries-for-java
+ scm:git:git@github.com:Azure/azure-libraries-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ true
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.7
+ 1.7
+
+
+ com.microsoft.azure.management.apigeneration.LangDefinitionProcessor
+
+
+ true
+ true
+
+ true
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.8
+
+ *.implementation.*;*.utils.*;com.microsoft.schemas._2003._10.serialization;*.blob.core.search
+
+
+ /**
+
* Copyright (c) Microsoft Corporation. All rights reserved.
+
* Licensed under the MIT License. See License.txt in the project root for
+
* license information.
+
*/
+ ]]>
+
+
+
+
+
+
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeyRequest.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeyRequest.java
new file mode 100644
index 000000000000..5ec8d23280e3
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeyRequest.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.applicationinsights.v2015_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An Application Insights component API Key creation request definition.
+ */
+public class APIKeyRequest {
+ /**
+ * The name of the API Key.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The read access rights of this API Key.
+ */
+ @JsonProperty(value = "linkedReadProperties")
+ private List linkedReadProperties;
+
+ /**
+ * The write access rights of this API Key.
+ */
+ @JsonProperty(value = "linkedWriteProperties")
+ private List linkedWriteProperties;
+
+ /**
+ * Get the name of the API Key.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the API Key.
+ *
+ * @param name the name value to set
+ * @return the APIKeyRequest object itself.
+ */
+ public APIKeyRequest withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the read access rights of this API Key.
+ *
+ * @return the linkedReadProperties value
+ */
+ public List linkedReadProperties() {
+ return this.linkedReadProperties;
+ }
+
+ /**
+ * Set the read access rights of this API Key.
+ *
+ * @param linkedReadProperties the linkedReadProperties value to set
+ * @return the APIKeyRequest object itself.
+ */
+ public APIKeyRequest withLinkedReadProperties(List linkedReadProperties) {
+ this.linkedReadProperties = linkedReadProperties;
+ return this;
+ }
+
+ /**
+ * Get the write access rights of this API Key.
+ *
+ * @return the linkedWriteProperties value
+ */
+ public List linkedWriteProperties() {
+ return this.linkedWriteProperties;
+ }
+
+ /**
+ * Set the write access rights of this API Key.
+ *
+ * @param linkedWriteProperties the linkedWriteProperties value to set
+ * @return the APIKeyRequest object itself.
+ */
+ public APIKeyRequest withLinkedWriteProperties(List linkedWriteProperties) {
+ this.linkedWriteProperties = linkedWriteProperties;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeys.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeys.java
new file mode 100644
index 000000000000..a3a243df6272
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/APIKeys.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.APIKeysInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing APIKeys.
+ */
+public interface APIKeys extends HasInner {
+ /**
+ * Get the API Key for this key id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, String keyId);
+
+ /**
+ * Gets a list of API keys of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Delete an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName, String keyId);
+
+ /**
+ * Create an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param aPIKeyProperties Properties that need to be specified to create an API key of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable createAsync(String resourceGroupName, String resourceName, APIKeyRequest aPIKeyProperties);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnalyticsItems.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnalyticsItems.java
new file mode 100644
index 000000000000..cb3abbf6a6d2
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnalyticsItems.java
@@ -0,0 +1,66 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentAnalyticsItemInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.AnalyticsItemsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing AnalyticsItems.
+ */
+public interface AnalyticsItems extends HasInner {
+ /**
+ * Gets a list of Analytics Items defined within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param scopePath Enum indicating if this item definition is owned by a specific user or is shared between all users with access to the Application Insights component. Possible values include: 'analyticsItems', 'myanalyticsItems'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName, ItemScopePath scopePath);
+
+ /**
+ * Gets a specific Analytics Items defined within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param scopePath Enum indicating if this item definition is owned by a specific user or is shared between all users with access to the Application Insights component. Possible values include: 'analyticsItems', 'myanalyticsItems'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, ItemScopePath scopePath);
+
+ /**
+ * Adds or Updates a specific Analytics Item within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param scopePath Enum indicating if this item definition is owned by a specific user or is shared between all users with access to the Application Insights component. Possible values include: 'analyticsItems', 'myanalyticsItems'
+ * @param itemProperties Properties that need to be specified to create a new item and add it to an Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable putAsync(String resourceGroupName, String resourceName, ItemScopePath scopePath, ApplicationInsightsComponentAnalyticsItemInner itemProperties);
+
+ /**
+ * Deletes a specific Analytics Items defined within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param scopePath Enum indicating if this item definition is owned by a specific user or is shared between all users with access to the Application Insights component. Possible values include: 'analyticsItems', 'myanalyticsItems'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName, ItemScopePath scopePath);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotation.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotation.java
new file mode 100644
index 000000000000..db7bf3729f0a
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotation.java
@@ -0,0 +1,51 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.AnnotationInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing Annotation.
+ */
+public interface Annotation extends HasInner, HasManager {
+ /**
+ * @return the annotationName value.
+ */
+ String annotationName();
+
+ /**
+ * @return the category value.
+ */
+ String category();
+
+ /**
+ * @return the eventTime value.
+ */
+ DateTime eventTime();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the properties value.
+ */
+ String properties();
+
+ /**
+ * @return the relatedAnnotation value.
+ */
+ String relatedAnnotation();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationError.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationError.java
new file mode 100644
index 000000000000..e5e7fcf492f6
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationError.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error associated with trying to create annotation with Id that already
+ * exist.
+ */
+public class AnnotationError {
+ /**
+ * Error detail code and explanation.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Error message.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * The innererror property.
+ */
+ @JsonProperty(value = "innererror")
+ private InnerError innererror;
+
+ /**
+ * Get error detail code and explanation.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set error detail code and explanation.
+ *
+ * @param code the code value to set
+ * @return the AnnotationError object itself.
+ */
+ public AnnotationError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get error message.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set error message.
+ *
+ * @param message the message value to set
+ * @return the AnnotationError object itself.
+ */
+ public AnnotationError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the innererror value.
+ *
+ * @return the innererror value
+ */
+ public InnerError innererror() {
+ return this.innererror;
+ }
+
+ /**
+ * Set the innererror value.
+ *
+ * @param innererror the innererror value to set
+ * @return the AnnotationError object itself.
+ */
+ public AnnotationError withInnererror(InnerError innererror) {
+ this.innererror = innererror;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationErrorException.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationErrorException.java
new file mode 100644
index 000000000000..28260bec2a99
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/AnnotationErrorException.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with AnnotationError information.
+ */
+public class AnnotationErrorException extends RestException {
+ /**
+ * Initializes a new instance of the AnnotationErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public AnnotationErrorException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the AnnotationErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ * @param body the deserialized response body
+ */
+ public AnnotationErrorException(final String message, final Response response, final AnnotationError body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public AnnotationError body() {
+ return (AnnotationError) super.body();
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotations.java
new file mode 100644
index 000000000000..cf545790539d
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Annotations.java
@@ -0,0 +1,66 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.AnnotationInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.AnnotationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Annotations.
+ */
+public interface Annotations extends HasInner {
+ /**
+ * Create an Annotation of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param annotationProperties Properties that need to be specified to create an annotation of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable createAsync(String resourceGroupName, String resourceName, AnnotationInner annotationProperties);
+
+ /**
+ * Get the annotation for given id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param annotationId The unique annotation ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, String annotationId);
+
+ /**
+ * Gets the list of annotations for a component for given time range.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param start The start time to query from for annotations, cannot be older than 90 days from current date.
+ * @param end The end time to query for annotations.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName, String start, String end);
+
+ /**
+ * Delete an Annotation of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param annotationId The unique annotation ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName, String annotationId);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponent.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponent.java
new file mode 100644
index 000000000000..65f6452d2f7b
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponent.java
@@ -0,0 +1,234 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import org.joda.time.DateTime;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentInner;
+
+/**
+ * Type representing ApplicationInsightsComponent.
+ */
+public interface ApplicationInsightsComponent extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the appId value.
+ */
+ String appId();
+
+ /**
+ * @return the applicationId value.
+ */
+ String applicationId();
+
+ /**
+ * @return the applicationType value.
+ */
+ ApplicationType applicationType();
+
+ /**
+ * @return the creationDate value.
+ */
+ DateTime creationDate();
+
+ /**
+ * @return the flowType value.
+ */
+ FlowType flowType();
+
+ /**
+ * @return the hockeyAppId value.
+ */
+ String hockeyAppId();
+
+ /**
+ * @return the hockeyAppToken value.
+ */
+ String hockeyAppToken();
+
+ /**
+ * @return the instrumentationKey value.
+ */
+ String instrumentationKey();
+
+ /**
+ * @return the kind value.
+ */
+ String kind();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the requestSource value.
+ */
+ RequestSource requestSource();
+
+ /**
+ * @return the samplingPercentage value.
+ */
+ Double samplingPercentage();
+
+ /**
+ * @return the tenantId value.
+ */
+ String tenantId();
+
+ /**
+ * The entirety of the ApplicationInsightsComponent definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithApplicationType, DefinitionStages.WithKind, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of ApplicationInsightsComponent definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a ApplicationInsightsComponent definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the ApplicationInsightsComponent definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent definition allowing to specify ApplicationType.
+ */
+ interface WithApplicationType {
+ /**
+ * Specifies applicationType.
+ */
+ WithKind withApplicationType(ApplicationType applicationType);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent definition allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ */
+ WithCreate withKind(String kind);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent update allowing to specify FlowType.
+ */
+ interface WithFlowType {
+ /**
+ * Specifies flowType.
+ */
+ WithCreate withFlowType(FlowType flowType);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent update allowing to specify HockeyAppId.
+ */
+ interface WithHockeyAppId {
+ /**
+ * Specifies hockeyAppId.
+ */
+ WithCreate withHockeyAppId(String hockeyAppId);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent update allowing to specify RequestSource.
+ */
+ interface WithRequestSource {
+ /**
+ * Specifies requestSource.
+ */
+ WithCreate withRequestSource(RequestSource requestSource);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent update allowing to specify SamplingPercentage.
+ */
+ interface WithSamplingPercentage {
+ /**
+ * Specifies samplingPercentage.
+ */
+ WithCreate withSamplingPercentage(Double samplingPercentage);
+ }
+
+ /**
+ * 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.WithFlowType, DefinitionStages.WithHockeyAppId, DefinitionStages.WithRequestSource, DefinitionStages.WithSamplingPercentage {
+ }
+ }
+ /**
+ * The template for a ApplicationInsightsComponent update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithFlowType, UpdateStages.WithHockeyAppId, UpdateStages.WithRequestSource, UpdateStages.WithSamplingPercentage {
+ }
+
+ /**
+ * Grouping of ApplicationInsightsComponent update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the applicationinsightscomponent {0} allowing to specify FlowType.
+ */
+ interface WithFlowType {
+ /**
+ * Specifies flowType.
+ */
+ Update withFlowType(FlowType flowType);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent {0} allowing to specify HockeyAppId.
+ */
+ interface WithHockeyAppId {
+ /**
+ * Specifies hockeyAppId.
+ */
+ Update withHockeyAppId(String hockeyAppId);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent {0} allowing to specify RequestSource.
+ */
+ interface WithRequestSource {
+ /**
+ * Specifies requestSource.
+ */
+ Update withRequestSource(RequestSource requestSource);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponent {0} allowing to specify SamplingPercentage.
+ */
+ interface WithSamplingPercentage {
+ /**
+ * Specifies samplingPercentage.
+ */
+ Update withSamplingPercentage(Double samplingPercentage);
+ }
+
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAPIKey.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAPIKey.java
new file mode 100644
index 000000000000..d6460c808b81
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAPIKey.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentAPIKeyInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import java.util.List;
+
+/**
+ * Type representing ApplicationInsightsComponentAPIKey.
+ */
+public interface ApplicationInsightsComponentAPIKey extends HasInner, Indexable, Refreshable, HasManager {
+ /**
+ * @return the apiKey value.
+ */
+ String apiKey();
+
+ /**
+ * @return the createdDate value.
+ */
+ String createdDate();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the linkedReadProperties value.
+ */
+ List linkedReadProperties();
+
+ /**
+ * @return the linkedWriteProperties value.
+ */
+ List linkedWriteProperties();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItem.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItem.java
new file mode 100644
index 000000000000..0d8fafb7de17
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItem.java
@@ -0,0 +1,65 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentAnalyticsItemInner;
+
+/**
+ * Type representing ApplicationInsightsComponentAnalyticsItem.
+ */
+public interface ApplicationInsightsComponentAnalyticsItem extends HasInner, HasManager {
+ /**
+ * @return the content value.
+ */
+ String content();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ ApplicationInsightsComponentAnalyticsItemProperties properties();
+
+ /**
+ * @return the scope value.
+ */
+ ItemScope scope();
+
+ /**
+ * @return the timeCreated value.
+ */
+ String timeCreated();
+
+ /**
+ * @return the timeModified value.
+ */
+ String timeModified();
+
+ /**
+ * @return the type value.
+ */
+ ItemType type();
+
+ /**
+ * @return the version value.
+ */
+ String version();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItemProperties.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItemProperties.java
new file mode 100644
index 000000000000..e9debb271317
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAnalyticsItemProperties.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A set of properties that can be defined in the context of a specific item
+ * type. Each type may have its own properties.
+ */
+public class ApplicationInsightsComponentAnalyticsItemProperties {
+ /**
+ * A function alias, used when the type of the item is Function.
+ */
+ @JsonProperty(value = "functionAlias")
+ private String functionAlias;
+
+ /**
+ * Get a function alias, used when the type of the item is Function.
+ *
+ * @return the functionAlias value
+ */
+ public String functionAlias() {
+ return this.functionAlias;
+ }
+
+ /**
+ * Set a function alias, used when the type of the item is Function.
+ *
+ * @param functionAlias the functionAlias value to set
+ * @return the ApplicationInsightsComponentAnalyticsItemProperties object itself.
+ */
+ public ApplicationInsightsComponentAnalyticsItemProperties withFunctionAlias(String functionAlias) {
+ this.functionAlias = functionAlias;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAvailableFeatures.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAvailableFeatures.java
new file mode 100644
index 000000000000..efffb0ab4bd9
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentAvailableFeatures.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentAvailableFeaturesInner;
+import java.util.List;
+
+/**
+ * Type representing ApplicationInsightsComponentAvailableFeatures.
+ */
+public interface ApplicationInsightsComponentAvailableFeatures extends HasInner, HasManager {
+ /**
+ * @return the result value.
+ */
+ List result();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentBillingFeatures.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentBillingFeatures.java
new file mode 100644
index 000000000000..984990d8440d
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentBillingFeatures.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentBillingFeaturesInner;
+import java.util.List;
+
+/**
+ * Type representing ApplicationInsightsComponentBillingFeatures.
+ */
+public interface ApplicationInsightsComponentBillingFeatures extends HasInner, HasManager {
+ /**
+ * @return the currentBillingFeatures value.
+ */
+ List currentBillingFeatures();
+
+ /**
+ * @return the dataVolumeCap value.
+ */
+ ApplicationInsightsComponentDataVolumeCap dataVolumeCap();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentDataVolumeCap.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentDataVolumeCap.java
new file mode 100644
index 000000000000..47da2f3d85b2
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentDataVolumeCap.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An Application Insights component daily data volume cap.
+ */
+public class ApplicationInsightsComponentDataVolumeCap {
+ /**
+ * Daily data volume cap in GB.
+ */
+ @JsonProperty(value = "Cap")
+ private Double cap;
+
+ /**
+ * Daily data volume cap UTC reset hour.
+ */
+ @JsonProperty(value = "ResetTime", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer resetTime;
+
+ /**
+ * Reserved, not used for now.
+ */
+ @JsonProperty(value = "WarningThreshold")
+ private Integer warningThreshold;
+
+ /**
+ * Reserved, not used for now.
+ */
+ @JsonProperty(value = "StopSendNotificationWhenHitThreshold")
+ private Boolean stopSendNotificationWhenHitThreshold;
+
+ /**
+ * Do not send a notification email when the daily data volume cap is met.
+ */
+ @JsonProperty(value = "StopSendNotificationWhenHitCap")
+ private Boolean stopSendNotificationWhenHitCap;
+
+ /**
+ * Maximum daily data volume cap that the user can set for this component.
+ */
+ @JsonProperty(value = "MaxHistoryCap", access = JsonProperty.Access.WRITE_ONLY)
+ private Double maxHistoryCap;
+
+ /**
+ * Get daily data volume cap in GB.
+ *
+ * @return the cap value
+ */
+ public Double cap() {
+ return this.cap;
+ }
+
+ /**
+ * Set daily data volume cap in GB.
+ *
+ * @param cap the cap value to set
+ * @return the ApplicationInsightsComponentDataVolumeCap object itself.
+ */
+ public ApplicationInsightsComponentDataVolumeCap withCap(Double cap) {
+ this.cap = cap;
+ return this;
+ }
+
+ /**
+ * Get daily data volume cap UTC reset hour.
+ *
+ * @return the resetTime value
+ */
+ public Integer resetTime() {
+ return this.resetTime;
+ }
+
+ /**
+ * Get reserved, not used for now.
+ *
+ * @return the warningThreshold value
+ */
+ public Integer warningThreshold() {
+ return this.warningThreshold;
+ }
+
+ /**
+ * Set reserved, not used for now.
+ *
+ * @param warningThreshold the warningThreshold value to set
+ * @return the ApplicationInsightsComponentDataVolumeCap object itself.
+ */
+ public ApplicationInsightsComponentDataVolumeCap withWarningThreshold(Integer warningThreshold) {
+ this.warningThreshold = warningThreshold;
+ return this;
+ }
+
+ /**
+ * Get reserved, not used for now.
+ *
+ * @return the stopSendNotificationWhenHitThreshold value
+ */
+ public Boolean stopSendNotificationWhenHitThreshold() {
+ return this.stopSendNotificationWhenHitThreshold;
+ }
+
+ /**
+ * Set reserved, not used for now.
+ *
+ * @param stopSendNotificationWhenHitThreshold the stopSendNotificationWhenHitThreshold value to set
+ * @return the ApplicationInsightsComponentDataVolumeCap object itself.
+ */
+ public ApplicationInsightsComponentDataVolumeCap withStopSendNotificationWhenHitThreshold(Boolean stopSendNotificationWhenHitThreshold) {
+ this.stopSendNotificationWhenHitThreshold = stopSendNotificationWhenHitThreshold;
+ return this;
+ }
+
+ /**
+ * Get do not send a notification email when the daily data volume cap is met.
+ *
+ * @return the stopSendNotificationWhenHitCap value
+ */
+ public Boolean stopSendNotificationWhenHitCap() {
+ return this.stopSendNotificationWhenHitCap;
+ }
+
+ /**
+ * Set do not send a notification email when the daily data volume cap is met.
+ *
+ * @param stopSendNotificationWhenHitCap the stopSendNotificationWhenHitCap value to set
+ * @return the ApplicationInsightsComponentDataVolumeCap object itself.
+ */
+ public ApplicationInsightsComponentDataVolumeCap withStopSendNotificationWhenHitCap(Boolean stopSendNotificationWhenHitCap) {
+ this.stopSendNotificationWhenHitCap = stopSendNotificationWhenHitCap;
+ return this;
+ }
+
+ /**
+ * Get maximum daily data volume cap that the user can set for this component.
+ *
+ * @return the maxHistoryCap value
+ */
+ public Double maxHistoryCap() {
+ return this.maxHistoryCap;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportConfiguration.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportConfiguration.java
new file mode 100644
index 000000000000..79de450ae147
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportConfiguration.java
@@ -0,0 +1,115 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentExportConfigurationInner;
+
+/**
+ * Type representing ApplicationInsightsComponentExportConfiguration.
+ */
+public interface ApplicationInsightsComponentExportConfiguration extends HasInner, HasManager {
+ /**
+ * @return the applicationName value.
+ */
+ String applicationName();
+
+ /**
+ * @return the containerName value.
+ */
+ String containerName();
+
+ /**
+ * @return the destinationAccountId value.
+ */
+ String destinationAccountId();
+
+ /**
+ * @return the destinationStorageLocationId value.
+ */
+ String destinationStorageLocationId();
+
+ /**
+ * @return the destinationStorageSubscriptionId value.
+ */
+ String destinationStorageSubscriptionId();
+
+ /**
+ * @return the destinationType value.
+ */
+ String destinationType();
+
+ /**
+ * @return the exportId value.
+ */
+ String exportId();
+
+ /**
+ * @return the exportStatus value.
+ */
+ String exportStatus();
+
+ /**
+ * @return the instrumentationKey value.
+ */
+ String instrumentationKey();
+
+ /**
+ * @return the isUserEnabled value.
+ */
+ String isUserEnabled();
+
+ /**
+ * @return the lastGapTime value.
+ */
+ String lastGapTime();
+
+ /**
+ * @return the lastSuccessTime value.
+ */
+ String lastSuccessTime();
+
+ /**
+ * @return the lastUserUpdate value.
+ */
+ String lastUserUpdate();
+
+ /**
+ * @return the notificationQueueEnabled value.
+ */
+ String notificationQueueEnabled();
+
+ /**
+ * @return the permanentErrorReason value.
+ */
+ String permanentErrorReason();
+
+ /**
+ * @return the recordTypes value.
+ */
+ String recordTypes();
+
+ /**
+ * @return the resourceGroup value.
+ */
+ String resourceGroup();
+
+ /**
+ * @return the storageName value.
+ */
+ String storageName();
+
+ /**
+ * @return the subscriptionId value.
+ */
+ String subscriptionId();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportRequest.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportRequest.java
new file mode 100644
index 000000000000..4434b7d6c2e6
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentExportRequest.java
@@ -0,0 +1,257 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An Application Insights component Continuous Export configuration request
+ * definition.
+ */
+public class ApplicationInsightsComponentExportRequest {
+ /**
+ * The document types to be exported, as comma separated values. Allowed
+ * values include 'Requests', 'Event', 'Exceptions', 'Metrics',
+ * 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters',
+ * 'Availability', 'Messages'.
+ */
+ @JsonProperty(value = "RecordTypes")
+ private String recordTypes;
+
+ /**
+ * The Continuous Export destination type. This has to be 'Blob'.
+ */
+ @JsonProperty(value = "DestinationType")
+ private String destinationType;
+
+ /**
+ * The SAS URL for the destination storage container. It must grant write
+ * permission.
+ */
+ @JsonProperty(value = "DestinationAddress")
+ private String destinationAddress;
+
+ /**
+ * Set to 'true' to create a Continuous Export configuration as enabled,
+ * otherwise set it to 'false'.
+ */
+ @JsonProperty(value = "IsEnabled")
+ private String isEnabled;
+
+ /**
+ * Deprecated.
+ */
+ @JsonProperty(value = "NotificationQueueEnabled")
+ private String notificationQueueEnabled;
+
+ /**
+ * Deprecated.
+ */
+ @JsonProperty(value = "NotificationQueueUri")
+ private String notificationQueueUri;
+
+ /**
+ * The subscription ID of the destination storage container.
+ */
+ @JsonProperty(value = "DestinationStorageSubscriptionId")
+ private String destinationStorageSubscriptionId;
+
+ /**
+ * The location ID of the destination storage container.
+ */
+ @JsonProperty(value = "DestinationStorageLocationId")
+ private String destinationStorageLocationId;
+
+ /**
+ * The name of destination storage account.
+ */
+ @JsonProperty(value = "DestinationAccountId")
+ private String destinationAccountId;
+
+ /**
+ * Get the document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
+ *
+ * @return the recordTypes value
+ */
+ public String recordTypes() {
+ return this.recordTypes;
+ }
+
+ /**
+ * Set the document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
+ *
+ * @param recordTypes the recordTypes value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withRecordTypes(String recordTypes) {
+ this.recordTypes = recordTypes;
+ return this;
+ }
+
+ /**
+ * Get the Continuous Export destination type. This has to be 'Blob'.
+ *
+ * @return the destinationType value
+ */
+ public String destinationType() {
+ return this.destinationType;
+ }
+
+ /**
+ * Set the Continuous Export destination type. This has to be 'Blob'.
+ *
+ * @param destinationType the destinationType value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withDestinationType(String destinationType) {
+ this.destinationType = destinationType;
+ return this;
+ }
+
+ /**
+ * Get the SAS URL for the destination storage container. It must grant write permission.
+ *
+ * @return the destinationAddress value
+ */
+ public String destinationAddress() {
+ return this.destinationAddress;
+ }
+
+ /**
+ * Set the SAS URL for the destination storage container. It must grant write permission.
+ *
+ * @param destinationAddress the destinationAddress value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withDestinationAddress(String destinationAddress) {
+ this.destinationAddress = destinationAddress;
+ return this;
+ }
+
+ /**
+ * Get set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
+ *
+ * @return the isEnabled value
+ */
+ public String isEnabled() {
+ return this.isEnabled;
+ }
+
+ /**
+ * Set set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
+ *
+ * @param isEnabled the isEnabled value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withIsEnabled(String isEnabled) {
+ this.isEnabled = isEnabled;
+ return this;
+ }
+
+ /**
+ * Get deprecated.
+ *
+ * @return the notificationQueueEnabled value
+ */
+ public String notificationQueueEnabled() {
+ return this.notificationQueueEnabled;
+ }
+
+ /**
+ * Set deprecated.
+ *
+ * @param notificationQueueEnabled the notificationQueueEnabled value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withNotificationQueueEnabled(String notificationQueueEnabled) {
+ this.notificationQueueEnabled = notificationQueueEnabled;
+ return this;
+ }
+
+ /**
+ * Get deprecated.
+ *
+ * @return the notificationQueueUri value
+ */
+ public String notificationQueueUri() {
+ return this.notificationQueueUri;
+ }
+
+ /**
+ * Set deprecated.
+ *
+ * @param notificationQueueUri the notificationQueueUri value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withNotificationQueueUri(String notificationQueueUri) {
+ this.notificationQueueUri = notificationQueueUri;
+ return this;
+ }
+
+ /**
+ * Get the subscription ID of the destination storage container.
+ *
+ * @return the destinationStorageSubscriptionId value
+ */
+ public String destinationStorageSubscriptionId() {
+ return this.destinationStorageSubscriptionId;
+ }
+
+ /**
+ * Set the subscription ID of the destination storage container.
+ *
+ * @param destinationStorageSubscriptionId the destinationStorageSubscriptionId value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withDestinationStorageSubscriptionId(String destinationStorageSubscriptionId) {
+ this.destinationStorageSubscriptionId = destinationStorageSubscriptionId;
+ return this;
+ }
+
+ /**
+ * Get the location ID of the destination storage container.
+ *
+ * @return the destinationStorageLocationId value
+ */
+ public String destinationStorageLocationId() {
+ return this.destinationStorageLocationId;
+ }
+
+ /**
+ * Set the location ID of the destination storage container.
+ *
+ * @param destinationStorageLocationId the destinationStorageLocationId value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withDestinationStorageLocationId(String destinationStorageLocationId) {
+ this.destinationStorageLocationId = destinationStorageLocationId;
+ return this;
+ }
+
+ /**
+ * Get the name of destination storage account.
+ *
+ * @return the destinationAccountId value
+ */
+ public String destinationAccountId() {
+ return this.destinationAccountId;
+ }
+
+ /**
+ * Set the name of destination storage account.
+ *
+ * @param destinationAccountId the destinationAccountId value to set
+ * @return the ApplicationInsightsComponentExportRequest object itself.
+ */
+ public ApplicationInsightsComponentExportRequest withDestinationAccountId(String destinationAccountId) {
+ this.destinationAccountId = destinationAccountId;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFavorite.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFavorite.java
new file mode 100644
index 000000000000..83fb566013bd
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFavorite.java
@@ -0,0 +1,192 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentFavoriteInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import java.util.List;
+
+/**
+ * Type representing ApplicationInsightsComponentFavorite.
+ */
+public interface ApplicationInsightsComponentFavorite extends HasInner, Indexable, HasManager {
+ /**
+ * @return the category value.
+ */
+ String category();
+
+ /**
+ * @return the config value.
+ */
+ String config();
+
+ /**
+ * @return the favoriteId value.
+ */
+ String favoriteId();
+
+ /**
+ * @return the favoriteType value.
+ */
+ FavoriteType favoriteType();
+
+ /**
+ * @return the isGeneratedFromTemplate value.
+ */
+ Boolean isGeneratedFromTemplate();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the sourceType value.
+ */
+ String sourceType();
+
+ /**
+ * @return the tags value.
+ */
+ List tags();
+
+ /**
+ * @return the timeModified value.
+ */
+ String timeModified();
+
+ /**
+ * @return the userId value.
+ */
+ String userId();
+
+ /**
+ * @return the version value.
+ */
+ String version();
+
+ /**
+ * The entirety of the ApplicationInsightsComponentFavorite definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithComponent, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of ApplicationInsightsComponentFavorite definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a ApplicationInsightsComponentFavorite definition.
+ */
+ interface Blank extends WithComponent {
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Component.
+ */
+ interface WithComponent {
+ /**
+ * Specifies resourceGroupName, resourceName.
+ */
+ WithCreate withExistingComponent(String resourceGroupName, String resourceName);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Category.
+ */
+ interface WithCategory {
+ /**
+ * Specifies category.
+ */
+ WithCreate withCategory(String category);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Config.
+ */
+ interface WithConfig {
+ /**
+ * Specifies config.
+ */
+ WithCreate withConfig(String config);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify FavoriteType.
+ */
+ interface WithFavoriteType {
+ /**
+ * Specifies favoriteType.
+ */
+ WithCreate withFavoriteType(FavoriteType favoriteType);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify IsGeneratedFromTemplate.
+ */
+ interface WithIsGeneratedFromTemplate {
+ /**
+ * Specifies isGeneratedFromTemplate.
+ */
+ WithCreate withIsGeneratedFromTemplate(Boolean isGeneratedFromTemplate);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Name.
+ */
+ interface WithName {
+ /**
+ * Specifies name.
+ */
+ WithCreate withName(String name);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify SourceType.
+ */
+ interface WithSourceType {
+ /**
+ * Specifies sourceType.
+ */
+ WithCreate withSourceType(String sourceType);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ */
+ WithCreate withTags(List tags);
+ }
+
+ /**
+ * The stage of the applicationinsightscomponentfavorite definition allowing to specify Version.
+ */
+ interface WithVersion {
+ /**
+ * Specifies version.
+ */
+ WithCreate withVersion(String version);
+ }
+
+ /**
+ * 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.WithCategory, DefinitionStages.WithConfig, DefinitionStages.WithFavoriteType, DefinitionStages.WithIsGeneratedFromTemplate, DefinitionStages.WithName, DefinitionStages.WithSourceType, DefinitionStages.WithTags, DefinitionStages.WithVersion {
+ }
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeature.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeature.java
new file mode 100644
index 000000000000..c8c8238ba4e7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeature.java
@@ -0,0 +1,153 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An Application Insights component daily data volume cap status.
+ */
+public class ApplicationInsightsComponentFeature {
+ /**
+ * The pricing feature name.
+ */
+ @JsonProperty(value = "FeatureName", access = JsonProperty.Access.WRITE_ONLY)
+ private String featureName;
+
+ /**
+ * The meter id used for the feature.
+ */
+ @JsonProperty(value = "MeterId", access = JsonProperty.Access.WRITE_ONLY)
+ private String meterId;
+
+ /**
+ * The meter rate for the feature's meter.
+ */
+ @JsonProperty(value = "MeterRateFrequency", access = JsonProperty.Access.WRITE_ONLY)
+ private String meterRateFrequency;
+
+ /**
+ * Reserved, not used now.
+ */
+ @JsonProperty(value = "ResouceId", access = JsonProperty.Access.WRITE_ONLY)
+ private String resouceId;
+
+ /**
+ * Reserved, not used now.
+ */
+ @JsonProperty(value = "IsHidden", access = JsonProperty.Access.WRITE_ONLY)
+ private Boolean isHidden;
+
+ /**
+ * A list of Application Insights component feature capability.
+ */
+ @JsonProperty(value = "Capabilities", access = JsonProperty.Access.WRITE_ONLY)
+ private List capabilities;
+
+ /**
+ * Display name of the feature.
+ */
+ @JsonProperty(value = "Title", access = JsonProperty.Access.WRITE_ONLY)
+ private String title;
+
+ /**
+ * Whether can apply addon feature on to it.
+ */
+ @JsonProperty(value = "IsMainFeature", access = JsonProperty.Access.WRITE_ONLY)
+ private Boolean isMainFeature;
+
+ /**
+ * The add on features on main feature.
+ */
+ @JsonProperty(value = "SupportedAddonFeatures", access = JsonProperty.Access.WRITE_ONLY)
+ private String supportedAddonFeatures;
+
+ /**
+ * Get the pricing feature name.
+ *
+ * @return the featureName value
+ */
+ public String featureName() {
+ return this.featureName;
+ }
+
+ /**
+ * Get the meter id used for the feature.
+ *
+ * @return the meterId value
+ */
+ public String meterId() {
+ return this.meterId;
+ }
+
+ /**
+ * Get the meter rate for the feature's meter.
+ *
+ * @return the meterRateFrequency value
+ */
+ public String meterRateFrequency() {
+ return this.meterRateFrequency;
+ }
+
+ /**
+ * Get reserved, not used now.
+ *
+ * @return the resouceId value
+ */
+ public String resouceId() {
+ return this.resouceId;
+ }
+
+ /**
+ * Get reserved, not used now.
+ *
+ * @return the isHidden value
+ */
+ public Boolean isHidden() {
+ return this.isHidden;
+ }
+
+ /**
+ * Get a list of Application Insights component feature capability.
+ *
+ * @return the capabilities value
+ */
+ public List capabilities() {
+ return this.capabilities;
+ }
+
+ /**
+ * Get display name of the feature.
+ *
+ * @return the title value
+ */
+ public String title() {
+ return this.title;
+ }
+
+ /**
+ * Get whether can apply addon feature on to it.
+ *
+ * @return the isMainFeature value
+ */
+ public Boolean isMainFeature() {
+ return this.isMainFeature;
+ }
+
+ /**
+ * Get the add on features on main feature.
+ *
+ * @return the supportedAddonFeatures value
+ */
+ public String supportedAddonFeatures() {
+ return this.supportedAddonFeatures;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapabilities.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapabilities.java
new file mode 100644
index 000000000000..1a586aa20626
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapabilities.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentFeatureCapabilitiesInner;
+
+/**
+ * Type representing ApplicationInsightsComponentFeatureCapabilities.
+ */
+public interface ApplicationInsightsComponentFeatureCapabilities extends HasInner, HasManager {
+ /**
+ * @return the analyticsIntegration value.
+ */
+ Boolean analyticsIntegration();
+
+ /**
+ * @return the apiAccessLevel value.
+ */
+ String apiAccessLevel();
+
+ /**
+ * @return the applicationMap value.
+ */
+ Boolean applicationMap();
+
+ /**
+ * @return the burstThrottlePolicy value.
+ */
+ String burstThrottlePolicy();
+
+ /**
+ * @return the dailyCap value.
+ */
+ Double dailyCap();
+
+ /**
+ * @return the dailyCapResetTime value.
+ */
+ Double dailyCapResetTime();
+
+ /**
+ * @return the liveStreamMetrics value.
+ */
+ Boolean liveStreamMetrics();
+
+ /**
+ * @return the metadataClass value.
+ */
+ String metadataClass();
+
+ /**
+ * @return the multipleStepWebTest value.
+ */
+ Boolean multipleStepWebTest();
+
+ /**
+ * @return the openSchema value.
+ */
+ Boolean openSchema();
+
+ /**
+ * @return the powerBIIntegration value.
+ */
+ Boolean powerBIIntegration();
+
+ /**
+ * @return the proactiveDetection value.
+ */
+ Boolean proactiveDetection();
+
+ /**
+ * @return the supportExportData value.
+ */
+ Boolean supportExportData();
+
+ /**
+ * @return the throttleRate value.
+ */
+ Double throttleRate();
+
+ /**
+ * @return the trackingType value.
+ */
+ String trackingType();
+
+ /**
+ * @return the workItemIntegration value.
+ */
+ Boolean workItemIntegration();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapability.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapability.java
new file mode 100644
index 000000000000..7a953b25444a
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentFeatureCapability.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An Application Insights component feature capability.
+ */
+public class ApplicationInsightsComponentFeatureCapability {
+ /**
+ * The name of the capability.
+ */
+ @JsonProperty(value = "Name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /**
+ * The description of the capability.
+ */
+ @JsonProperty(value = "Description", access = JsonProperty.Access.WRITE_ONLY)
+ private String description;
+
+ /**
+ * The value of the capability.
+ */
+ @JsonProperty(value = "Value", access = JsonProperty.Access.WRITE_ONLY)
+ private String value;
+
+ /**
+ * The unit of the capability.
+ */
+ @JsonProperty(value = "Unit", access = JsonProperty.Access.WRITE_ONLY)
+ private String unit;
+
+ /**
+ * The meter used for the capability.
+ */
+ @JsonProperty(value = "MeterId", access = JsonProperty.Access.WRITE_ONLY)
+ private String meterId;
+
+ /**
+ * The meter rate of the meter.
+ */
+ @JsonProperty(value = "MeterRateFrequency", access = JsonProperty.Access.WRITE_ONLY)
+ private String meterRateFrequency;
+
+ /**
+ * Get the name of the capability.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the description of the capability.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Get the value of the capability.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Get the unit of the capability.
+ *
+ * @return the unit value
+ */
+ public String unit() {
+ return this.unit;
+ }
+
+ /**
+ * Get the meter used for the capability.
+ *
+ * @return the meterId value
+ */
+ public String meterId() {
+ return this.meterId;
+ }
+
+ /**
+ * Get the meter rate of the meter.
+ *
+ * @return the meterRateFrequency value
+ */
+ public String meterRateFrequency() {
+ return this.meterRateFrequency;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfiguration.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfiguration.java
new file mode 100644
index 000000000000..4117158b657e
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfiguration.java
@@ -0,0 +1,51 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentProactiveDetectionConfigurationInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import java.util.List;
+
+/**
+ * Type representing ApplicationInsightsComponentProactiveDetectionConfiguration.
+ */
+public interface ApplicationInsightsComponentProactiveDetectionConfiguration extends HasInner, HasManager {
+ /**
+ * @return the customEmails value.
+ */
+ List customEmails();
+
+ /**
+ * @return the enabled value.
+ */
+ Boolean enabled();
+
+ /**
+ * @return the lastUpdatedTime value.
+ */
+ String lastUpdatedTime();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the ruleDefinitions value.
+ */
+ ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions ruleDefinitions();
+
+ /**
+ * @return the sendEmailsToSubscriptionOwners value.
+ */
+ Boolean sendEmailsToSubscriptionOwners();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions.java
new file mode 100644
index 000000000000..2c05678ea249
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions.java
@@ -0,0 +1,227 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Static definitions of the ProactiveDetection configuration rule (same values
+ * for all components).
+ */
+public class ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions {
+ /**
+ * The rule name.
+ */
+ @JsonProperty(value = "Name")
+ private String name;
+
+ /**
+ * The rule name as it is displayed in UI.
+ */
+ @JsonProperty(value = "DisplayName")
+ private String displayName;
+
+ /**
+ * The rule description.
+ */
+ @JsonProperty(value = "Description")
+ private String description;
+
+ /**
+ * URL which displays additional info about the proactive detection rule.
+ */
+ @JsonProperty(value = "HelpUrl")
+ private String helpUrl;
+
+ /**
+ * A flag indicating whether the rule is hidden (from the UI).
+ */
+ @JsonProperty(value = "IsHidden")
+ private Boolean isHidden;
+
+ /**
+ * A flag indicating whether the rule is enabled by default.
+ */
+ @JsonProperty(value = "IsEnabledByDefault")
+ private Boolean isEnabledByDefault;
+
+ /**
+ * A flag indicating whether the rule is in preview.
+ */
+ @JsonProperty(value = "IsInPreview")
+ private Boolean isInPreview;
+
+ /**
+ * A flag indicating whether email notifications are supported for
+ * detections for this rule.
+ */
+ @JsonProperty(value = "SupportsEmailNotifications")
+ private Boolean supportsEmailNotifications;
+
+ /**
+ * Get the rule name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the rule name.
+ *
+ * @param name the name value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the rule name as it is displayed in UI.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the rule name as it is displayed in UI.
+ *
+ * @param displayName the displayName value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the rule description.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the rule description.
+ *
+ * @param description the description value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get uRL which displays additional info about the proactive detection rule.
+ *
+ * @return the helpUrl value
+ */
+ public String helpUrl() {
+ return this.helpUrl;
+ }
+
+ /**
+ * Set uRL which displays additional info about the proactive detection rule.
+ *
+ * @param helpUrl the helpUrl value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withHelpUrl(String helpUrl) {
+ this.helpUrl = helpUrl;
+ return this;
+ }
+
+ /**
+ * Get a flag indicating whether the rule is hidden (from the UI).
+ *
+ * @return the isHidden value
+ */
+ public Boolean isHidden() {
+ return this.isHidden;
+ }
+
+ /**
+ * Set a flag indicating whether the rule is hidden (from the UI).
+ *
+ * @param isHidden the isHidden value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withIsHidden(Boolean isHidden) {
+ this.isHidden = isHidden;
+ return this;
+ }
+
+ /**
+ * Get a flag indicating whether the rule is enabled by default.
+ *
+ * @return the isEnabledByDefault value
+ */
+ public Boolean isEnabledByDefault() {
+ return this.isEnabledByDefault;
+ }
+
+ /**
+ * Set a flag indicating whether the rule is enabled by default.
+ *
+ * @param isEnabledByDefault the isEnabledByDefault value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withIsEnabledByDefault(Boolean isEnabledByDefault) {
+ this.isEnabledByDefault = isEnabledByDefault;
+ return this;
+ }
+
+ /**
+ * Get a flag indicating whether the rule is in preview.
+ *
+ * @return the isInPreview value
+ */
+ public Boolean isInPreview() {
+ return this.isInPreview;
+ }
+
+ /**
+ * Set a flag indicating whether the rule is in preview.
+ *
+ * @param isInPreview the isInPreview value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withIsInPreview(Boolean isInPreview) {
+ this.isInPreview = isInPreview;
+ return this;
+ }
+
+ /**
+ * Get a flag indicating whether email notifications are supported for detections for this rule.
+ *
+ * @return the supportsEmailNotifications value
+ */
+ public Boolean supportsEmailNotifications() {
+ return this.supportsEmailNotifications;
+ }
+
+ /**
+ * Set a flag indicating whether email notifications are supported for detections for this rule.
+ *
+ * @param supportsEmailNotifications the supportsEmailNotifications value to set
+ * @return the ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions object itself.
+ */
+ public ApplicationInsightsComponentProactiveDetectionConfigurationRuleDefinitions withSupportsEmailNotifications(Boolean supportsEmailNotifications) {
+ this.supportsEmailNotifications = supportsEmailNotifications;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentQuotaStatus.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentQuotaStatus.java
new file mode 100644
index 000000000000..36fada2ab618
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentQuotaStatus.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentQuotaStatusInner;
+
+/**
+ * Type representing ApplicationInsightsComponentQuotaStatus.
+ */
+public interface ApplicationInsightsComponentQuotaStatus extends HasInner, HasManager {
+ /**
+ * @return the appId value.
+ */
+ String appId();
+
+ /**
+ * @return the expirationTime value.
+ */
+ String expirationTime();
+
+ /**
+ * @return the shouldBeThrottled value.
+ */
+ Boolean shouldBeThrottled();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentWebTestLocation.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentWebTestLocation.java
new file mode 100644
index 000000000000..107d5d1b07fc
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationInsightsComponentWebTestLocation.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentWebTestLocationInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+
+/**
+ * Type representing ApplicationInsightsComponentWebTestLocation.
+ */
+public interface ApplicationInsightsComponentWebTestLocation extends HasInner, HasManager {
+ /**
+ * @return the displayName value.
+ */
+ String displayName();
+
+ /**
+ * @return the tag value.
+ */
+ String tag();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationType.java
new file mode 100644
index 000000000000..52d4299cf92f
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ApplicationType.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ApplicationType.
+ */
+public final class ApplicationType extends ExpandableStringEnum {
+ /** Static value web for ApplicationType. */
+ public static final ApplicationType WEB = fromString("web");
+
+ /** Static value other for ApplicationType. */
+ public static final ApplicationType OTHER = fromString("other");
+
+ /**
+ * Creates or finds a ApplicationType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ApplicationType
+ */
+ @JsonCreator
+ public static ApplicationType fromString(String name) {
+ return fromString(name, ApplicationType.class);
+ }
+
+ /**
+ * @return known ApplicationType values
+ */
+ public static Collection values() {
+ return values(ApplicationType.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/CategoryType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/CategoryType.java
new file mode 100644
index 000000000000..de7c92922167
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/CategoryType.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.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for CategoryType.
+ */
+public final class CategoryType extends ExpandableStringEnum {
+ /** Static value workbook for CategoryType. */
+ public static final CategoryType WORKBOOK = fromString("workbook");
+
+ /** Static value TSG for CategoryType. */
+ public static final CategoryType TSG = fromString("TSG");
+
+ /** Static value performance for CategoryType. */
+ public static final CategoryType PERFORMANCE = fromString("performance");
+
+ /** Static value retention for CategoryType. */
+ public static final CategoryType RETENTION = fromString("retention");
+
+ /**
+ * Creates or finds a CategoryType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding CategoryType
+ */
+ @JsonCreator
+ public static CategoryType fromString(String name) {
+ return fromString(name, CategoryType.class);
+ }
+
+ /**
+ * @return known CategoryType values
+ */
+ public static Collection values() {
+ return values(CategoryType.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentAvailableFeatures.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentAvailableFeatures.java
new file mode 100644
index 000000000000..af68a46e6b9c
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentAvailableFeatures.java
@@ -0,0 +1,29 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentAvailableFeaturesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ComponentAvailableFeatures.
+ */
+public interface ComponentAvailableFeatures extends HasInner {
+ /**
+ * Returns all available features of the application insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentCurrentBillingFeatures.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentCurrentBillingFeatures.java
new file mode 100644
index 000000000000..62707c2816cd
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentCurrentBillingFeatures.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ApplicationInsightsComponentBillingFeaturesInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentCurrentBillingFeaturesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ComponentCurrentBillingFeatures.
+ */
+public interface ComponentCurrentBillingFeatures extends HasInner {
+ /**
+ * Returns current billing features for an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Update current billing features for an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param billingFeaturesProperties Properties that need to be specified to update billing features for an Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable updateAsync(String resourceGroupName, String resourceName, ApplicationInsightsComponentBillingFeaturesInner billingFeaturesProperties);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentFeatureCapabilities.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentFeatureCapabilities.java
new file mode 100644
index 000000000000..6938c748726b
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentFeatureCapabilities.java
@@ -0,0 +1,29 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentFeatureCapabilitiesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ComponentFeatureCapabilities.
+ */
+public interface ComponentFeatureCapabilities extends HasInner {
+ /**
+ * Returns feature capabilities of the application insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBody.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBody.java
new file mode 100644
index 000000000000..db27a6224844
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBody.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.applicationinsights.v2015_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the body of a purge request for an App Insights component.
+ */
+public class ComponentPurgeBody {
+ /**
+ * Table from which to purge data.
+ */
+ @JsonProperty(value = "table", required = true)
+ private String table;
+
+ /**
+ * The set of columns and filters (queries) to run over them to purge the
+ * resulting data.
+ */
+ @JsonProperty(value = "filters", required = true)
+ private List filters;
+
+ /**
+ * Get table from which to purge data.
+ *
+ * @return the table value
+ */
+ public String table() {
+ return this.table;
+ }
+
+ /**
+ * Set table from which to purge data.
+ *
+ * @param table the table value to set
+ * @return the ComponentPurgeBody object itself.
+ */
+ public ComponentPurgeBody withTable(String table) {
+ this.table = table;
+ return this;
+ }
+
+ /**
+ * Get the set of columns and filters (queries) to run over them to purge the resulting data.
+ *
+ * @return the filters value
+ */
+ public List filters() {
+ return this.filters;
+ }
+
+ /**
+ * Set the set of columns and filters (queries) to run over them to purge the resulting data.
+ *
+ * @param filters the filters value to set
+ * @return the ComponentPurgeBody object itself.
+ */
+ public ComponentPurgeBody withFilters(List filters) {
+ this.filters = filters;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBodyFilters.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBodyFilters.java
new file mode 100644
index 000000000000..e84676243cd9
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeBodyFilters.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * User-defined filters to return data which will be purged from the table.
+ */
+public class ComponentPurgeBodyFilters {
+ /**
+ * The column of the table over which the given query should run.
+ */
+ @JsonProperty(value = "column")
+ private String column;
+
+ /**
+ * A query operator to evaluate over the provided column and value(s).
+ */
+ @JsonProperty(value = "operator")
+ private String operator;
+
+ /**
+ * the value for the operator to function over. This can be a number (e.g.,
+ * > 100), a string (timestamp >= '2017-09-01') or array of values.
+ */
+ @JsonProperty(value = "value")
+ private Object value;
+
+ /**
+ * When filtering over custom dimensions, this key will be used as the name
+ * of the custom dimension.
+ */
+ @JsonProperty(value = "key")
+ private String key;
+
+ /**
+ * Get the column of the table over which the given query should run.
+ *
+ * @return the column value
+ */
+ public String column() {
+ return this.column;
+ }
+
+ /**
+ * Set the column of the table over which the given query should run.
+ *
+ * @param column the column value to set
+ * @return the ComponentPurgeBodyFilters object itself.
+ */
+ public ComponentPurgeBodyFilters withColumn(String column) {
+ this.column = column;
+ return this;
+ }
+
+ /**
+ * Get a query operator to evaluate over the provided column and value(s).
+ *
+ * @return the operator value
+ */
+ public String operator() {
+ return this.operator;
+ }
+
+ /**
+ * Set a query operator to evaluate over the provided column and value(s).
+ *
+ * @param operator the operator value to set
+ * @return the ComponentPurgeBodyFilters object itself.
+ */
+ public ComponentPurgeBodyFilters withOperator(String operator) {
+ this.operator = operator;
+ return this;
+ }
+
+ /**
+ * Get the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values.
+ *
+ * @return the value value
+ */
+ public Object value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values.
+ *
+ * @param value the value value to set
+ * @return the ComponentPurgeBodyFilters object itself.
+ */
+ public ComponentPurgeBodyFilters withValue(Object value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get when filtering over custom dimensions, this key will be used as the name of the custom dimension.
+ *
+ * @return the key value
+ */
+ public String key() {
+ return this.key;
+ }
+
+ /**
+ * Set when filtering over custom dimensions, this key will be used as the name of the custom dimension.
+ *
+ * @param key the key value to set
+ * @return the ComponentPurgeBodyFilters object itself.
+ */
+ public ComponentPurgeBodyFilters withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeResponse.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeResponse.java
new file mode 100644
index 000000000000..b9d27cdea88d
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeResponse.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentPurgeResponseInner;
+
+/**
+ * Type representing ComponentPurgeResponse.
+ */
+public interface ComponentPurgeResponse extends HasInner, HasManager {
+ /**
+ * @return the operationId value.
+ */
+ String operationId();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeStatusResponse.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeStatusResponse.java
new file mode 100644
index 000000000000..dd0de19a8802
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentPurgeStatusResponse.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentPurgeStatusResponseInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+
+/**
+ * Type representing ComponentPurgeStatusResponse.
+ */
+public interface ComponentPurgeStatusResponse extends HasInner, HasManager {
+ /**
+ * @return the status value.
+ */
+ PurgeState status();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentQuotaStatus.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentQuotaStatus.java
new file mode 100644
index 000000000000..cd3a82939013
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentQuotaStatus.java
@@ -0,0 +1,29 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentQuotaStatusInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ComponentQuotaStatus.
+ */
+public interface ComponentQuotaStatus extends HasInner {
+ /**
+ * Returns daily data volume cap (quota) status for an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Components.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Components.java
new file mode 100644
index 000000000000..10df03721321
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Components.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ComponentsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Components.
+ */
+public interface Components extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Purges data in an Application Insights component by a set of user-defined filters.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param body Describes the body of a request to purge data in a single table of an Application Insights component
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable purgeAsync(String resourceGroupName, String resourceName, ComponentPurgeBody body);
+
+ /**
+ * Get status for an ongoing purge operation.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param purgeId In a purge status request, this is the Id of the operation the status of which is returned.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getPurgeStatusAsync(String resourceGroupName, String resourceName, String purgeId);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentsResource.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentsResource.java
new file mode 100644
index 000000000000..88d80df9b937
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ComponentsResource.java
@@ -0,0 +1,17 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.Resource;
+
+/**
+ * An azure resource object.
+ */
+public class ComponentsResource extends Resource {
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorFieldContract.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorFieldContract.java
new file mode 100644
index 000000000000..e5d63c1b5782
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorFieldContract.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error Field contract.
+ */
+public class ErrorFieldContract {
+ /**
+ * Property level error code.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Human-readable representation of property-level error.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * Property name.
+ */
+ @JsonProperty(value = "target")
+ private String target;
+
+ /**
+ * Get property level error code.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set property level error code.
+ *
+ * @param code the code value to set
+ * @return the ErrorFieldContract object itself.
+ */
+ public ErrorFieldContract withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get human-readable representation of property-level error.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set human-readable representation of property-level error.
+ *
+ * @param message the message value to set
+ * @return the ErrorFieldContract object itself.
+ */
+ public ErrorFieldContract withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get property name.
+ *
+ * @return the target value
+ */
+ public String target() {
+ return this.target;
+ }
+
+ /**
+ * Set property name.
+ *
+ * @param target the target value to set
+ * @return the ErrorFieldContract object itself.
+ */
+ public ErrorFieldContract withTarget(String target) {
+ this.target = target;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponse.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponse.java
new file mode 100644
index 000000000000..3ccda6b572b7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponse.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error response indicates Insights service is not able to process the
+ * incoming request. The reason is provided in the error message.
+ */
+public class ErrorResponse {
+ /**
+ * Error code.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Error message indicating why the operation failed.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * Get error code.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set error code.
+ *
+ * @param code the code value to set
+ * @return the ErrorResponse object itself.
+ */
+ public ErrorResponse withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get error message indicating why the operation failed.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set error message indicating why the operation failed.
+ *
+ * @param message the message value to set
+ * @return the ErrorResponse object itself.
+ */
+ public ErrorResponse withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponseException.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponseException.java
new file mode 100644
index 000000000000..3f9f5c39eb4f
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ErrorResponseException.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with ErrorResponse information.
+ */
+public class ErrorResponseException extends RestException {
+ /**
+ * Initializes a new instance of the ErrorResponseException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public ErrorResponseException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the ErrorResponseException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ * @param body the deserialized response body
+ */
+ public ErrorResponseException(final String message, final Response response, final ErrorResponse body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public ErrorResponse body() {
+ return (ErrorResponse) super.body();
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ExportConfigurations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ExportConfigurations.java
new file mode 100644
index 000000000000..45bd53095dba
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ExportConfigurations.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.applicationinsights.v2015_05_01;
+
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ExportConfigurationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ExportConfigurations.
+ */
+public interface ExportConfigurations extends HasInner {
+ /**
+ * Gets a list of Continuous Export configuration of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Create a Continuous Export configuration of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param exportProperties Properties that need to be specified to create a Continuous Export configuration of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable createAsync(String resourceGroupName, String resourceName, ApplicationInsightsComponentExportRequest exportProperties);
+
+ /**
+ * Delete a Continuous Export configuration of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param exportId The Continuous Export configuration ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable deleteAsync(String resourceGroupName, String resourceName, String exportId);
+
+ /**
+ * Get the Continuous Export configuration for this export id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param exportId The Continuous Export configuration ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, String exportId);
+
+ /**
+ * Update the Continuous Export configuration for this export id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param exportId The Continuous Export configuration ID. This is unique within a Application Insights component.
+ * @param exportProperties Properties that need to be specified to update the Continuous Export configuration.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable updateAsync(String resourceGroupName, String resourceName, String exportId, ApplicationInsightsComponentExportRequest exportProperties);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteSourceType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteSourceType.java
new file mode 100644
index 000000000000..b7fe5822545e
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteSourceType.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.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for FavoriteSourceType.
+ */
+public final class FavoriteSourceType extends ExpandableStringEnum {
+ /** Static value retention for FavoriteSourceType. */
+ public static final FavoriteSourceType RETENTION = fromString("retention");
+
+ /** Static value notebook for FavoriteSourceType. */
+ public static final FavoriteSourceType NOTEBOOK = fromString("notebook");
+
+ /** Static value sessions for FavoriteSourceType. */
+ public static final FavoriteSourceType SESSIONS = fromString("sessions");
+
+ /** Static value events for FavoriteSourceType. */
+ public static final FavoriteSourceType EVENTS = fromString("events");
+
+ /** Static value userflows for FavoriteSourceType. */
+ public static final FavoriteSourceType USERFLOWS = fromString("userflows");
+
+ /** Static value funnel for FavoriteSourceType. */
+ public static final FavoriteSourceType FUNNEL = fromString("funnel");
+
+ /** Static value impact for FavoriteSourceType. */
+ public static final FavoriteSourceType IMPACT = fromString("impact");
+
+ /** Static value segmentation for FavoriteSourceType. */
+ public static final FavoriteSourceType SEGMENTATION = fromString("segmentation");
+
+ /**
+ * Creates or finds a FavoriteSourceType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding FavoriteSourceType
+ */
+ @JsonCreator
+ public static FavoriteSourceType fromString(String name) {
+ return fromString(name, FavoriteSourceType.class);
+ }
+
+ /**
+ * @return known FavoriteSourceType values
+ */
+ public static Collection values() {
+ return values(FavoriteSourceType.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteType.java
new file mode 100644
index 000000000000..950ca0f28d4f
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FavoriteType.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for FavoriteType.
+ */
+public enum FavoriteType {
+ /** Enum value shared. */
+ SHARED("shared"),
+
+ /** Enum value user. */
+ USER("user");
+
+ /** The actual serialized value for a FavoriteType instance. */
+ private String value;
+
+ FavoriteType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a FavoriteType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed FavoriteType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static FavoriteType fromString(String value) {
+ FavoriteType[] items = FavoriteType.values();
+ for (FavoriteType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Favorites.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Favorites.java
new file mode 100644
index 000000000000..28cf21d908c7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Favorites.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.FavoritesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Favorites.
+ */
+public interface Favorites extends SupportsCreating, HasInner {
+ /**
+ * Get a single favorite by its FavoriteId, defined within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param favoriteId The Id of a specific favorite defined in the Application Insights component
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, String favoriteId);
+
+ /**
+ * Gets a list of favorites defined within an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Remove a favorite that is associated to an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param favoriteId The Id of a specific favorite defined in the Application Insights component
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName, String favoriteId);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FlowType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FlowType.java
new file mode 100644
index 000000000000..4718be92212c
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/FlowType.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for FlowType.
+ */
+public final class FlowType extends ExpandableStringEnum {
+ /** Static value Bluefield for FlowType. */
+ public static final FlowType BLUEFIELD = fromString("Bluefield");
+
+ /**
+ * Creates or finds a FlowType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding FlowType
+ */
+ @JsonCreator
+ public static FlowType fromString(String name) {
+ return fromString(name, FlowType.class);
+ }
+
+ /**
+ * @return known FlowType values
+ */
+ public static Collection values() {
+ return values(FlowType.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/InnerError.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/InnerError.java
new file mode 100644
index 000000000000..6c1692f7f31a
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/InnerError.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Inner error.
+ */
+public class InnerError {
+ /**
+ * Provides correlation for request.
+ */
+ @JsonProperty(value = "diagnosticcontext")
+ private String diagnosticcontext;
+
+ /**
+ * Request time.
+ */
+ @JsonProperty(value = "time")
+ private DateTime time;
+
+ /**
+ * Get provides correlation for request.
+ *
+ * @return the diagnosticcontext value
+ */
+ public String diagnosticcontext() {
+ return this.diagnosticcontext;
+ }
+
+ /**
+ * Set provides correlation for request.
+ *
+ * @param diagnosticcontext the diagnosticcontext value to set
+ * @return the InnerError object itself.
+ */
+ public InnerError withDiagnosticcontext(String diagnosticcontext) {
+ this.diagnosticcontext = diagnosticcontext;
+ return this;
+ }
+
+ /**
+ * Get request time.
+ *
+ * @return the time value
+ */
+ public DateTime time() {
+ return this.time;
+ }
+
+ /**
+ * Set request time.
+ *
+ * @param time the time value to set
+ * @return the InnerError object itself.
+ */
+ public InnerError withTime(DateTime time) {
+ this.time = time;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScope.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScope.java
new file mode 100644
index 000000000000..162fbf919ea5
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScope.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ItemScope.
+ */
+public final class ItemScope extends ExpandableStringEnum {
+ /** Static value shared for ItemScope. */
+ public static final ItemScope SHARED = fromString("shared");
+
+ /** Static value user for ItemScope. */
+ public static final ItemScope USER = fromString("user");
+
+ /**
+ * Creates or finds a ItemScope from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ItemScope
+ */
+ @JsonCreator
+ public static ItemScope fromString(String name) {
+ return fromString(name, ItemScope.class);
+ }
+
+ /**
+ * @return known ItemScope values
+ */
+ public static Collection values() {
+ return values(ItemScope.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScopePath.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScopePath.java
new file mode 100644
index 000000000000..9c6f5771ebe2
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemScopePath.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ItemScopePath.
+ */
+public final class ItemScopePath extends ExpandableStringEnum {
+ /** Static value analyticsItems for ItemScopePath. */
+ public static final ItemScopePath ANALYTICS_ITEMS = fromString("analyticsItems");
+
+ /** Static value myanalyticsItems for ItemScopePath. */
+ public static final ItemScopePath MYANALYTICS_ITEMS = fromString("myanalyticsItems");
+
+ /**
+ * Creates or finds a ItemScopePath from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ItemScopePath
+ */
+ @JsonCreator
+ public static ItemScopePath fromString(String name) {
+ return fromString(name, ItemScopePath.class);
+ }
+
+ /**
+ * @return known ItemScopePath values
+ */
+ public static Collection values() {
+ return values(ItemScopePath.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemType.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemType.java
new file mode 100644
index 000000000000..a82d11e3c329
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemType.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.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ItemType.
+ */
+public final class ItemType extends ExpandableStringEnum {
+ /** Static value query for ItemType. */
+ public static final ItemType QUERY = fromString("query");
+
+ /** Static value function for ItemType. */
+ public static final ItemType FUNCTION = fromString("function");
+
+ /** Static value folder for ItemType. */
+ public static final ItemType FOLDER = fromString("folder");
+
+ /** Static value recent for ItemType. */
+ public static final ItemType RECENT = fromString("recent");
+
+ /**
+ * Creates or finds a ItemType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ItemType
+ */
+ @JsonCreator
+ public static ItemType fromString(String name) {
+ return fromString(name, ItemType.class);
+ }
+
+ /**
+ * @return known ItemType values
+ */
+ public static Collection values() {
+ return values(ItemType.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemTypeParameter.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemTypeParameter.java
new file mode 100644
index 000000000000..61b3a7d9b2dc
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ItemTypeParameter.java
@@ -0,0 +1,50 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ItemTypeParameter.
+ */
+public final class ItemTypeParameter extends ExpandableStringEnum {
+ /** Static value none for ItemTypeParameter. */
+ public static final ItemTypeParameter NONE = fromString("none");
+
+ /** Static value query for ItemTypeParameter. */
+ public static final ItemTypeParameter QUERY = fromString("query");
+
+ /** Static value function for ItemTypeParameter. */
+ public static final ItemTypeParameter FUNCTION = fromString("function");
+
+ /** Static value folder for ItemTypeParameter. */
+ public static final ItemTypeParameter FOLDER = fromString("folder");
+
+ /** Static value recent for ItemTypeParameter. */
+ public static final ItemTypeParameter RECENT = fromString("recent");
+
+ /**
+ * Creates or finds a ItemTypeParameter from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ItemTypeParameter
+ */
+ @JsonCreator
+ public static ItemTypeParameter fromString(String name) {
+ return fromString(name, ItemTypeParameter.class);
+ }
+
+ /**
+ * @return known ItemTypeParameter values
+ */
+ public static Collection values() {
+ return values(ItemTypeParameter.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/LinkProperties.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/LinkProperties.java
new file mode 100644
index 000000000000..d994efac5d8e
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/LinkProperties.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Contains a sourceId and workbook resource id to link two resources.
+ */
+public class LinkProperties {
+ /**
+ * The source Azure resource id.
+ */
+ @JsonProperty(value = "sourceId")
+ private String sourceId;
+
+ /**
+ * The workbook Azure resource id.
+ */
+ @JsonProperty(value = "targetId")
+ private String targetId;
+
+ /**
+ * The category of workbook.
+ */
+ @JsonProperty(value = "category")
+ private String category;
+
+ /**
+ * Get the source Azure resource id.
+ *
+ * @return the sourceId value
+ */
+ public String sourceId() {
+ return this.sourceId;
+ }
+
+ /**
+ * Set the source Azure resource id.
+ *
+ * @param sourceId the sourceId value to set
+ * @return the LinkProperties object itself.
+ */
+ public LinkProperties withSourceId(String sourceId) {
+ this.sourceId = sourceId;
+ return this;
+ }
+
+ /**
+ * Get the workbook Azure resource id.
+ *
+ * @return the targetId value
+ */
+ public String targetId() {
+ return this.targetId;
+ }
+
+ /**
+ * Set the workbook Azure resource id.
+ *
+ * @param targetId the targetId value to set
+ * @return the LinkProperties object itself.
+ */
+ public LinkProperties withTargetId(String targetId) {
+ this.targetId = targetId;
+ return this;
+ }
+
+ /**
+ * Get the category of workbook.
+ *
+ * @return the category value
+ */
+ public String category() {
+ return this.category;
+ }
+
+ /**
+ * Set the category of workbook.
+ *
+ * @param category the category value to set
+ * @return the LinkProperties object itself.
+ */
+ public LinkProperties withCategory(String category) {
+ this.category = category;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operation.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operation.java
new file mode 100644
index 000000000000..fc3acc7da62a
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operation.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.OperationInner;
+
+/**
+ * Type representing Operation.
+ */
+public interface Operation extends HasInner, HasManager {
+ /**
+ * @return the display value.
+ */
+ OperationDisplay display();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/OperationDisplay.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/OperationDisplay.java
new file mode 100644
index 000000000000..6ebb2e4fe77e
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/OperationDisplay.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The object that represents the operation.
+ */
+public class OperationDisplay {
+ /**
+ * Service provider: Microsoft.Cdn.
+ */
+ @JsonProperty(value = "provider")
+ private String provider;
+
+ /**
+ * Resource on which the operation is performed: Profile, endpoint, etc.
+ */
+ @JsonProperty(value = "resource")
+ private String resource;
+
+ /**
+ * Operation type: Read, write, delete, etc.
+ */
+ @JsonProperty(value = "operation")
+ private String operation;
+
+ /**
+ * Get service provider: Microsoft.Cdn.
+ *
+ * @return the provider value
+ */
+ public String provider() {
+ return this.provider;
+ }
+
+ /**
+ * Set service provider: Microsoft.Cdn.
+ *
+ * @param provider the provider value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withProvider(String provider) {
+ this.provider = provider;
+ return this;
+ }
+
+ /**
+ * Get resource on which the operation is performed: Profile, endpoint, etc.
+ *
+ * @return the resource value
+ */
+ public String resource() {
+ return this.resource;
+ }
+
+ /**
+ * Set resource on which the operation is performed: Profile, endpoint, etc.
+ *
+ * @param resource the resource value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withResource(String resource) {
+ this.resource = resource;
+ return this;
+ }
+
+ /**
+ * Get operation type: Read, write, delete, etc.
+ *
+ * @return the operation value
+ */
+ public String operation() {
+ return this.operation;
+ }
+
+ /**
+ * Set operation type: Read, write, delete, etc.
+ *
+ * @param operation the operation value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withOperation(String operation) {
+ this.operation = operation;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operations.java
new file mode 100644
index 000000000000..902427138469
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Operations.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.OperationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Operations.
+ */
+public interface Operations extends HasInner {
+ /**
+ * Lists all of the available insights REST API operations.
+ *
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ProactiveDetectionConfigurations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ProactiveDetectionConfigurations.java
new file mode 100644
index 000000000000..495f08f0dd11
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/ProactiveDetectionConfigurations.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.ProactiveDetectionConfigurationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ProactiveDetectionConfigurations.
+ */
+public interface ProactiveDetectionConfigurations extends HasInner {
+ /**
+ * Get the ProactiveDetection configuration for this configuration id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param configurationId The ProactiveDetection configuration ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName, String configurationId);
+
+ /**
+ * Gets a list of ProactiveDetection configurations of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/PurgeState.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/PurgeState.java
new file mode 100644
index 000000000000..29b2d4f32681
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/PurgeState.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for PurgeState.
+ */
+public final class PurgeState extends ExpandableStringEnum {
+ /** Static value pending for PurgeState. */
+ public static final PurgeState PENDING = fromString("pending");
+
+ /** Static value completed for PurgeState. */
+ public static final PurgeState COMPLETED = fromString("completed");
+
+ /**
+ * Creates or finds a PurgeState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding PurgeState
+ */
+ @JsonCreator
+ public static PurgeState fromString(String name) {
+ return fromString(name, PurgeState.class);
+ }
+
+ /**
+ * @return known PurgeState values
+ */
+ public static Collection values() {
+ return values(PurgeState.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/RequestSource.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/RequestSource.java
new file mode 100644
index 000000000000..cd5163b32176
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/RequestSource.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for RequestSource.
+ */
+public final class RequestSource extends ExpandableStringEnum {
+ /** Static value rest for RequestSource. */
+ public static final RequestSource REST = fromString("rest");
+
+ /**
+ * Creates or finds a RequestSource from its string representation.
+ * @param name a name to look for
+ * @return the corresponding RequestSource
+ */
+ @JsonCreator
+ public static RequestSource fromString(String name) {
+ return fromString(name, RequestSource.class);
+ }
+
+ /**
+ * @return known RequestSource values
+ */
+ public static Collection values() {
+ return values(RequestSource.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/SharedTypeKind.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/SharedTypeKind.java
new file mode 100644
index 000000000000..e943a09cd3b7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/SharedTypeKind.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SharedTypeKind.
+ */
+public final class SharedTypeKind extends ExpandableStringEnum {
+ /** Static value user for SharedTypeKind. */
+ public static final SharedTypeKind USER = fromString("user");
+
+ /** Static value shared for SharedTypeKind. */
+ public static final SharedTypeKind SHARED = fromString("shared");
+
+ /**
+ * Creates or finds a SharedTypeKind from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SharedTypeKind
+ */
+ @JsonCreator
+ public static SharedTypeKind fromString(String name) {
+ return fromString(name, SharedTypeKind.class);
+ }
+
+ /**
+ * @return known SharedTypeKind values
+ */
+ public static Collection values() {
+ return values(SharedTypeKind.class);
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/TagsResource.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/TagsResource.java
new file mode 100644
index 000000000000..50704e48e2a4
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/TagsResource.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A container holding only the Tags for a resource, allowing the user to
+ * update the tags on a WebTest instance.
+ */
+public class TagsResource {
+ /**
+ * Resource tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get resource tags.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set resource tags.
+ *
+ * @param tags the tags value to set
+ * @return the TagsResource object itself.
+ */
+ public TagsResource withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTest.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTest.java
new file mode 100644
index 000000000000..f40f224550af
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTest.java
@@ -0,0 +1,309 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import java.util.List;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WebTestInner;
+
+/**
+ * Type representing WebTest.
+ */
+public interface WebTest extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the configuration value.
+ */
+ WebTestPropertiesConfiguration configuration();
+
+ /**
+ * @return the description value.
+ */
+ String description();
+
+ /**
+ * @return the enabled value.
+ */
+ Boolean enabled();
+
+ /**
+ * @return the frequency value.
+ */
+ Integer frequency();
+
+ /**
+ * @return the kind value.
+ */
+ WebTestKind kind();
+
+ /**
+ * @return the locations value.
+ */
+ List locations();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the retryEnabled value.
+ */
+ Boolean retryEnabled();
+
+ /**
+ * @return the syntheticMonitorId value.
+ */
+ String syntheticMonitorId();
+
+ /**
+ * @return the timeout value.
+ */
+ Integer timeout();
+
+ /**
+ * @return the webTestKind value.
+ */
+ WebTestKind webTestKind();
+
+ /**
+ * @return the webTestName value.
+ */
+ String webTestName();
+
+ /**
+ * The entirety of the WebTest definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithLocations, DefinitionStages.WithSyntheticMonitorId, DefinitionStages.WithWebTestKind, DefinitionStages.WithWebTestName, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of WebTest definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a WebTest definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the WebTest definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the webtest definition allowing to specify Locations.
+ */
+ interface WithLocations {
+ /**
+ * Specifies locations.
+ */
+ WithSyntheticMonitorId withLocations(List locations);
+ }
+
+ /**
+ * The stage of the webtest definition allowing to specify SyntheticMonitorId.
+ */
+ interface WithSyntheticMonitorId {
+ /**
+ * Specifies syntheticMonitorId.
+ */
+ WithWebTestKind withSyntheticMonitorId(String syntheticMonitorId);
+ }
+
+ /**
+ * The stage of the webtest definition allowing to specify WebTestKind.
+ */
+ interface WithWebTestKind {
+ /**
+ * Specifies webTestKind.
+ */
+ WithWebTestName withWebTestKind(WebTestKind webTestKind);
+ }
+
+ /**
+ * The stage of the webtest definition allowing to specify WebTestName.
+ */
+ interface WithWebTestName {
+ /**
+ * Specifies webTestName.
+ */
+ WithCreate withWebTestName(String webTestName);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Configuration.
+ */
+ interface WithConfiguration {
+ /**
+ * Specifies configuration.
+ */
+ WithCreate withConfiguration(WebTestPropertiesConfiguration configuration);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ */
+ WithCreate withDescription(String description);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Enabled.
+ */
+ interface WithEnabled {
+ /**
+ * Specifies enabled.
+ */
+ WithCreate withEnabled(Boolean enabled);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Frequency.
+ */
+ interface WithFrequency {
+ /**
+ * Specifies frequency.
+ */
+ WithCreate withFrequency(Integer frequency);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ */
+ WithCreate withKind(WebTestKind kind);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify RetryEnabled.
+ */
+ interface WithRetryEnabled {
+ /**
+ * Specifies retryEnabled.
+ */
+ WithCreate withRetryEnabled(Boolean retryEnabled);
+ }
+
+ /**
+ * The stage of the webtest update allowing to specify Timeout.
+ */
+ interface WithTimeout {
+ /**
+ * Specifies timeout.
+ */
+ WithCreate withTimeout(Integer timeout);
+ }
+
+ /**
+ * 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.WithConfiguration, DefinitionStages.WithDescription, DefinitionStages.WithEnabled, DefinitionStages.WithFrequency, DefinitionStages.WithKind, DefinitionStages.WithRetryEnabled, DefinitionStages.WithTimeout {
+ }
+ }
+ /**
+ * The template for a WebTest update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithConfiguration, UpdateStages.WithDescription, UpdateStages.WithEnabled, UpdateStages.WithFrequency, UpdateStages.WithKind, UpdateStages.WithRetryEnabled, UpdateStages.WithTimeout {
+ }
+
+ /**
+ * Grouping of WebTest update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the webtest {0} allowing to specify Configuration.
+ */
+ interface WithConfiguration {
+ /**
+ * Specifies configuration.
+ */
+ Update withConfiguration(WebTestPropertiesConfiguration configuration);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify Description.
+ */
+ interface WithDescription {
+ /**
+ * Specifies description.
+ */
+ Update withDescription(String description);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify Enabled.
+ */
+ interface WithEnabled {
+ /**
+ * Specifies enabled.
+ */
+ Update withEnabled(Boolean enabled);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify Frequency.
+ */
+ interface WithFrequency {
+ /**
+ * Specifies frequency.
+ */
+ Update withFrequency(Integer frequency);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ */
+ Update withKind(WebTestKind kind);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify RetryEnabled.
+ */
+ interface WithRetryEnabled {
+ /**
+ * Specifies retryEnabled.
+ */
+ Update withRetryEnabled(Boolean retryEnabled);
+ }
+
+ /**
+ * The stage of the webtest {0} allowing to specify Timeout.
+ */
+ interface WithTimeout {
+ /**
+ * Specifies timeout.
+ */
+ Update withTimeout(Integer timeout);
+ }
+
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestGeolocation.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestGeolocation.java
new file mode 100644
index 000000000000..3ac472babee7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestGeolocation.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Geo-physical location to run a web test from. You must specify one or more
+ * locations for the test to run from.
+ */
+public class WebTestGeolocation {
+ /**
+ * Location ID for the webtest to run from.
+ */
+ @JsonProperty(value = "Id")
+ private String location;
+
+ /**
+ * Get location ID for the webtest to run from.
+ *
+ * @return the location value
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Set location ID for the webtest to run from.
+ *
+ * @param location the location value to set
+ * @return the WebTestGeolocation object itself.
+ */
+ public WebTestGeolocation withLocation(String location) {
+ this.location = location;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestKind.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestKind.java
new file mode 100644
index 000000000000..7dec00f413d2
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestKind.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for WebTestKind.
+ */
+public enum WebTestKind {
+ /** Enum value ping. */
+ PING("ping"),
+
+ /** Enum value multistep. */
+ MULTISTEP("multistep");
+
+ /** The actual serialized value for a WebTestKind instance. */
+ private String value;
+
+ WebTestKind(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a WebTestKind instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed WebTestKind object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static WebTestKind fromString(String value) {
+ WebTestKind[] items = WebTestKind.values();
+ for (WebTestKind item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestLocations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestLocations.java
new file mode 100644
index 000000000000..05cb42ac90a9
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestLocations.java
@@ -0,0 +1,29 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WebTestLocationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing WebTestLocations.
+ */
+public interface WebTestLocations extends HasInner {
+ /**
+ * Gets a list of web test locations available to this Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestPropertiesConfiguration.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestPropertiesConfiguration.java
new file mode 100644
index 000000000000..39469de54e92
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTestPropertiesConfiguration.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * An XML configuration specification for a WebTest.
+ */
+public class WebTestPropertiesConfiguration {
+ /**
+ * The XML specification of a WebTest to run against an application.
+ */
+ @JsonProperty(value = "WebTest")
+ private String webTest;
+
+ /**
+ * Get the XML specification of a WebTest to run against an application.
+ *
+ * @return the webTest value
+ */
+ public String webTest() {
+ return this.webTest;
+ }
+
+ /**
+ * Set the XML specification of a WebTest to run against an application.
+ *
+ * @param webTest the webTest value to set
+ * @return the WebTestPropertiesConfiguration object itself.
+ */
+ public WebTestPropertiesConfiguration withWebTest(String webTest) {
+ this.webTest = webTest;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTests.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTests.java
new file mode 100644
index 000000000000..70345f1c055c
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebTests.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WebTestsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing WebTests.
+ */
+public interface WebTests extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+ /**
+ * Get all Application Insights web tests defined for the specified component.
+ *
+ * @param componentName The name of the Application Insights component resource.
+ * @param resourceGroupName The name of the resource group.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByComponentAsync(final String componentName, final String resourceGroupName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebtestsResource.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebtestsResource.java
new file mode 100644
index 000000000000..c2a5da4386ea
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WebtestsResource.java
@@ -0,0 +1,17 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.Resource;
+
+/**
+ * An azure resource object.
+ */
+public class WebtestsResource extends Resource {
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfiguration.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfiguration.java
new file mode 100644
index 000000000000..00dc85892e93
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfiguration.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WorkItemConfigurationInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+
+/**
+ * Type representing WorkItemConfiguration.
+ */
+public interface WorkItemConfiguration extends HasInner, HasManager {
+ /**
+ * @return the configDisplayName value.
+ */
+ String configDisplayName();
+
+ /**
+ * @return the configProperties value.
+ */
+ String configProperties();
+
+ /**
+ * @return the connectorId value.
+ */
+ String connectorId();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the isDefault value.
+ */
+ Boolean isDefault();
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationError.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationError.java
new file mode 100644
index 000000000000..8efcd9a3ba0c
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationError.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.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error associated with trying to get work item configuration or
+ * configurations.
+ */
+public class WorkItemConfigurationError {
+ /**
+ * Error detail code and explanation.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Error message.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * The innererror property.
+ */
+ @JsonProperty(value = "innererror")
+ private InnerError innererror;
+
+ /**
+ * Get error detail code and explanation.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set error detail code and explanation.
+ *
+ * @param code the code value to set
+ * @return the WorkItemConfigurationError object itself.
+ */
+ public WorkItemConfigurationError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get error message.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set error message.
+ *
+ * @param message the message value to set
+ * @return the WorkItemConfigurationError object itself.
+ */
+ public WorkItemConfigurationError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the innererror value.
+ *
+ * @return the innererror value
+ */
+ public InnerError innererror() {
+ return this.innererror;
+ }
+
+ /**
+ * Set the innererror value.
+ *
+ * @param innererror the innererror value to set
+ * @return the WorkItemConfigurationError object itself.
+ */
+ public WorkItemConfigurationError withInnererror(InnerError innererror) {
+ this.innererror = innererror;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationErrorException.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationErrorException.java
new file mode 100644
index 000000000000..4e7212eb6da7
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurationErrorException.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with WorkItemConfigurationError
+ * information.
+ */
+public class WorkItemConfigurationErrorException extends RestException {
+ /**
+ * Initializes a new instance of the WorkItemConfigurationErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public WorkItemConfigurationErrorException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the WorkItemConfigurationErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ * @param body the deserialized response body
+ */
+ public WorkItemConfigurationErrorException(final String message, final Response response, final WorkItemConfigurationError body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public WorkItemConfigurationError body() {
+ return (WorkItemConfigurationError) super.body();
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurations.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurations.java
new file mode 100644
index 000000000000..9e67fc1677d4
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemConfigurations.java
@@ -0,0 +1,61 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.WorkItemConfiguration;
+import rx.Completable;
+
+/**
+ * Type representing WorkItemConfigurations.
+ */
+public interface WorkItemConfigurations {
+ /**
+ * Gets the list work item configurations that exist for the application.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Delete a work item configuration of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param workItemConfigId The unique work item configuration Id. This can be either friendly name of connector as defined in connector configuration
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName, String workItemConfigId);
+
+ /**
+ * Create a work item configuration for an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param workItemConfigurationProperties Properties that need to be specified to create a work item configuration of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable createAsync(String resourceGroupName, String resourceName, WorkItemCreateConfiguration workItemConfigurationProperties);
+
+ /**
+ * Gets default work item configurations that exist for the application.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getDefaultAsync(String resourceGroupName, String resourceName);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemCreateConfiguration.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemCreateConfiguration.java
new file mode 100644
index 000000000000..a271adfb1ce6
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkItemCreateConfiguration.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Work item configuration creation payload.
+ */
+public class WorkItemCreateConfiguration {
+ /**
+ * Unique connector id.
+ */
+ @JsonProperty(value = "ConnectorId")
+ private String connectorId;
+
+ /**
+ * Serialized JSON object for detailed properties.
+ */
+ @JsonProperty(value = "ConnectorDataConfiguration")
+ private String connectorDataConfiguration;
+
+ /**
+ * Boolean indicating validate only.
+ */
+ @JsonProperty(value = "ValidateOnly")
+ private Boolean validateOnly;
+
+ /**
+ * Custom work item properties.
+ */
+ @JsonProperty(value = "WorkItemProperties")
+ private String workItemProperties;
+
+ /**
+ * Get unique connector id.
+ *
+ * @return the connectorId value
+ */
+ public String connectorId() {
+ return this.connectorId;
+ }
+
+ /**
+ * Set unique connector id.
+ *
+ * @param connectorId the connectorId value to set
+ * @return the WorkItemCreateConfiguration object itself.
+ */
+ public WorkItemCreateConfiguration withConnectorId(String connectorId) {
+ this.connectorId = connectorId;
+ return this;
+ }
+
+ /**
+ * Get serialized JSON object for detailed properties.
+ *
+ * @return the connectorDataConfiguration value
+ */
+ public String connectorDataConfiguration() {
+ return this.connectorDataConfiguration;
+ }
+
+ /**
+ * Set serialized JSON object for detailed properties.
+ *
+ * @param connectorDataConfiguration the connectorDataConfiguration value to set
+ * @return the WorkItemCreateConfiguration object itself.
+ */
+ public WorkItemCreateConfiguration withConnectorDataConfiguration(String connectorDataConfiguration) {
+ this.connectorDataConfiguration = connectorDataConfiguration;
+ return this;
+ }
+
+ /**
+ * Get boolean indicating validate only.
+ *
+ * @return the validateOnly value
+ */
+ public Boolean validateOnly() {
+ return this.validateOnly;
+ }
+
+ /**
+ * Set boolean indicating validate only.
+ *
+ * @param validateOnly the validateOnly value to set
+ * @return the WorkItemCreateConfiguration object itself.
+ */
+ public WorkItemCreateConfiguration withValidateOnly(Boolean validateOnly) {
+ this.validateOnly = validateOnly;
+ return this;
+ }
+
+ /**
+ * Get custom work item properties.
+ *
+ * @return the workItemProperties value
+ */
+ public String workItemProperties() {
+ return this.workItemProperties;
+ }
+
+ /**
+ * Set custom work item properties.
+ *
+ * @param workItemProperties the workItemProperties value to set
+ * @return the WorkItemCreateConfiguration object itself.
+ */
+ public WorkItemCreateConfiguration withWorkItemProperties(String workItemProperties) {
+ this.workItemProperties = workItemProperties;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbook.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbook.java
new file mode 100644
index 000000000000..4b90e11c52ff
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbook.java
@@ -0,0 +1,321 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WorkbookInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.InsightsManager;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing Workbook.
+ */
+public interface Workbook extends HasInner, Indexable, Updatable, HasManager {
+ /**
+ * @return the category value.
+ */
+ String category();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the kind value.
+ */
+ SharedTypeKind kind();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the serializedData value.
+ */
+ String serializedData();
+
+ /**
+ * @return the sharedTypeKind value.
+ */
+ SharedTypeKind sharedTypeKind();
+
+ /**
+ * @return the sourceResourceId value.
+ */
+ String sourceResourceId();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the timeModified value.
+ */
+ String timeModified();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the userId value.
+ */
+ String userId();
+
+ /**
+ * @return the version value.
+ */
+ String version();
+
+ /**
+ * @return the workbookId value.
+ */
+ String workbookId();
+
+ /**
+ * @return the workbookName value.
+ */
+ String workbookName();
+
+ /**
+ * @return the workbookTags value.
+ */
+ List workbookTags();
+
+ /**
+ * The entirety of the Workbook definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithResourceGroupName, DefinitionStages.WithCategory, DefinitionStages.WithLocation, DefinitionStages.WithSerializedData, DefinitionStages.WithSharedTypeKind, DefinitionStages.WithUserId, DefinitionStages.WithWorkbookId, DefinitionStages.WithWorkbookName, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Workbook definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Workbook definition.
+ */
+ interface Blank extends WithResourceGroupName {
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify ResourceGroupName.
+ */
+ interface WithResourceGroupName {
+ /**
+ * Specifies resourceGroupName.
+ */
+ WithCategory withResourceGroupName(String resourceGroupName);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify Category.
+ */
+ interface WithCategory {
+ /**
+ * Specifies category.
+ */
+ WithLocation withCategory(String category);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ */
+ WithSerializedData withLocation(String location);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify SerializedData.
+ */
+ interface WithSerializedData {
+ /**
+ * Specifies serializedData.
+ */
+ WithSharedTypeKind withSerializedData(String serializedData);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify SharedTypeKind.
+ */
+ interface WithSharedTypeKind {
+ /**
+ * Specifies sharedTypeKind.
+ */
+ WithUserId withSharedTypeKind(SharedTypeKind sharedTypeKind);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify UserId.
+ */
+ interface WithUserId {
+ /**
+ * Specifies userId.
+ */
+ WithWorkbookId withUserId(String userId);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify WorkbookId.
+ */
+ interface WithWorkbookId {
+ /**
+ * Specifies workbookId.
+ */
+ WithWorkbookName withWorkbookId(String workbookId);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify WorkbookName.
+ */
+ interface WithWorkbookName {
+ /**
+ * Specifies workbookName.
+ */
+ WithCreate withWorkbookName(String workbookName);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ */
+ WithCreate withKind(SharedTypeKind kind);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify SourceResourceId.
+ */
+ interface WithSourceResourceId {
+ /**
+ * Specifies sourceResourceId.
+ */
+ WithCreate withSourceResourceId(String sourceResourceId);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify Version.
+ */
+ interface WithVersion {
+ /**
+ * Specifies version.
+ */
+ WithCreate withVersion(String version);
+ }
+
+ /**
+ * The stage of the workbook definition allowing to specify WorkbookTags.
+ */
+ interface WithWorkbookTags {
+ /**
+ * Specifies workbookTags.
+ */
+ WithCreate withWorkbookTags(List workbookTags);
+ }
+
+ /**
+ * 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.WithKind, DefinitionStages.WithSourceResourceId, DefinitionStages.WithTags, DefinitionStages.WithVersion, DefinitionStages.WithWorkbookTags {
+ }
+ }
+ /**
+ * The template for a Workbook update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithKind, UpdateStages.WithSourceResourceId, UpdateStages.WithTags, UpdateStages.WithVersion, UpdateStages.WithWorkbookTags {
+ }
+
+ /**
+ * Grouping of Workbook update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the workbook update allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ */
+ Update withKind(SharedTypeKind kind);
+ }
+
+ /**
+ * The stage of the workbook update allowing to specify SourceResourceId.
+ */
+ interface WithSourceResourceId {
+ /**
+ * Specifies sourceResourceId.
+ */
+ Update withSourceResourceId(String sourceResourceId);
+ }
+
+ /**
+ * The stage of the workbook update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the workbook update allowing to specify Version.
+ */
+ interface WithVersion {
+ /**
+ * Specifies version.
+ */
+ Update withVersion(String version);
+ }
+
+ /**
+ * The stage of the workbook update allowing to specify WorkbookTags.
+ */
+ interface WithWorkbookTags {
+ /**
+ * Specifies workbookTags.
+ */
+ Update withWorkbookTags(List workbookTags);
+ }
+
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookError.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookError.java
new file mode 100644
index 000000000000..7b903017d55e
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookError.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.applicationinsights.v2015_05_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error message body that will indicate why the operation failed.
+ */
+public class WorkbookError {
+ /**
+ * Service-defined error code. This code serves as a sub-status for the
+ * HTTP error code specified in the response.
+ */
+ @JsonProperty(value = "code")
+ private String code;
+
+ /**
+ * Human-readable representation of the error.
+ */
+ @JsonProperty(value = "message")
+ private String message;
+
+ /**
+ * The list of invalid fields send in request, in case of validation error.
+ */
+ @JsonProperty(value = "details")
+ private List details;
+
+ /**
+ * Get service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Set service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.
+ *
+ * @param code the code value to set
+ * @return the WorkbookError object itself.
+ */
+ public WorkbookError withCode(String code) {
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Get human-readable representation of the error.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Set human-readable representation of the error.
+ *
+ * @param message the message value to set
+ * @return the WorkbookError object itself.
+ */
+ public WorkbookError withMessage(String message) {
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Get the list of invalid fields send in request, in case of validation error.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Set the list of invalid fields send in request, in case of validation error.
+ *
+ * @param details the details value to set
+ * @return the WorkbookError object itself.
+ */
+ public WorkbookError withDetails(List details) {
+ this.details = details;
+ return this;
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookErrorException.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookErrorException.java
new file mode 100644
index 000000000000..59a8dc90a6ef
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookErrorException.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.applicationinsights.v2015_05_01;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with WorkbookError information.
+ */
+public class WorkbookErrorException extends RestException {
+ /**
+ * Initializes a new instance of the WorkbookErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public WorkbookErrorException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the WorkbookErrorException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ * @param body the deserialized response body
+ */
+ public WorkbookErrorException(final String message, final Response response, final WorkbookError body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public WorkbookError body() {
+ return (WorkbookError) super.body();
+ }
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookResource.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookResource.java
new file mode 100644
index 000000000000..fb305263d76f
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/WorkbookResource.java
@@ -0,0 +1,17 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.Resource;
+
+/**
+ * An azure resource object.
+ */
+public class WorkbookResource extends Resource {
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbooks.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbooks.java
new file mode 100644
index 000000000000..86eb73b2c242
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/Workbooks.java
@@ -0,0 +1,51 @@
+/**
+ * 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.applicationinsights.v2015_05_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.implementation.WorkbooksInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Workbooks.
+ */
+public interface Workbooks extends SupportsCreating, HasInner {
+ /**
+ * Get a single workbook by its resourceName.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Delete a workbook.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String resourceName);
+
+ /**
+ * Get all Workbooks defined within a specified resource group and category.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param category Category of workbook to return. Possible values include: 'workbook', 'TSG', 'performance', 'retention'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByResourceGroupAsync(String resourceGroupName, CategoryType category);
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysImpl.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysImpl.java
new file mode 100644
index 000000000000..ba00ae3f23c0
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysImpl.java
@@ -0,0 +1,85 @@
+/**
+ * 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.applicationinsights.v2015_05_01.implementation;
+
+import com.microsoft.azure.arm.model.implementation.WrapperImpl;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.APIKeys;
+import rx.Completable;
+import rx.Observable;
+import rx.functions.Func1;
+import java.util.List;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.ApplicationInsightsComponentAPIKey;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.APIKeyRequest;
+
+class APIKeysImpl extends WrapperImpl implements APIKeys {
+ private final InsightsManager manager;
+
+ APIKeysImpl(InsightsManager manager) {
+ super(manager.inner().aPIKeys());
+ this.manager = manager;
+ }
+
+ public InsightsManager manager() {
+ return this.manager;
+ }
+
+ private ApplicationInsightsComponentAPIKeyImpl wrapModel(ApplicationInsightsComponentAPIKeyInner inner) {
+ return new ApplicationInsightsComponentAPIKeyImpl(inner, manager());
+ }
+
+ @Override
+ public Observable listAsync(String resourceGroupName, String resourceName) {
+ APIKeysInner client = this.inner();
+ return client.listAsync(resourceGroupName, resourceName)
+ .flatMap(new Func1, Observable>() {
+ @Override
+ public Observable call(List innerList) {
+ return Observable.from(innerList);
+ }
+ })
+ .map(new Func1() {
+ @Override
+ public ApplicationInsightsComponentAPIKey call(ApplicationInsightsComponentAPIKeyInner inner) {
+ return wrapModel(inner);
+ }
+ });
+ }
+
+ @Override
+ public Observable getAsync(String resourceGroupName, String resourceName, String keyId) {
+ APIKeysInner client = this.inner();
+ return client.getAsync(resourceGroupName, resourceName, keyId)
+ .map(new Func1() {
+ @Override
+ public ApplicationInsightsComponentAPIKey call(ApplicationInsightsComponentAPIKeyInner inner) {
+ return wrapModel(inner);
+ }
+ });
+ }
+
+ @Override
+ public Completable deleteAsync(String resourceGroupName, String resourceName, String keyId) {
+ APIKeysInner client = this.inner();
+ return client.deleteAsync(resourceGroupName, resourceName, keyId).toCompletable();
+ }
+
+ @Override
+ public Observable createAsync(String resourceGroupName, String resourceName, APIKeyRequest aPIKeyProperties) {
+ APIKeysInner client = this.inner();
+ return client.createAsync(resourceGroupName, resourceName, aPIKeyProperties)
+ .map(new Func1() {
+ @Override
+ public ApplicationInsightsComponentAPIKey call(ApplicationInsightsComponentAPIKeyInner inner) {
+ return new ApplicationInsightsComponentAPIKeyImpl(inner, manager());
+ }
+ });
+ }
+
+}
diff --git a/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysInner.java b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysInner.java
new file mode 100644
index 000000000000..1bbfafca118b
--- /dev/null
+++ b/applicationinsights/resource-manager/v2015_05_01/src/main/java/com/microsoft/azure/management/applicationinsights/v2015_05_01/implementation/APIKeysInner.java
@@ -0,0 +1,449 @@
+/**
+ * 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.applicationinsights.v2015_05_01.implementation;
+
+import retrofit2.Retrofit;
+import com.google.common.reflect.TypeToken;
+import com.microsoft.azure.CloudException;
+import com.microsoft.azure.management.applicationinsights.v2015_05_01.APIKeyRequest;
+import com.microsoft.rest.ServiceCallback;
+import com.microsoft.rest.ServiceFuture;
+import com.microsoft.rest.ServiceResponse;
+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.Path;
+import retrofit2.http.POST;
+import retrofit2.http.Query;
+import retrofit2.Response;
+import rx.functions.Func1;
+import rx.Observable;
+
+/**
+ * An instance of this class provides access to all the operations defined
+ * in APIKeys.
+ */
+public class APIKeysInner {
+ /** The Retrofit service to perform REST calls. */
+ private APIKeysService service;
+ /** The service client containing this operation class. */
+ private ApplicationInsightsManagementClientImpl client;
+
+ /**
+ * Initializes an instance of APIKeysInner.
+ *
+ * @param retrofit the Retrofit instance built from a Retrofit Builder.
+ * @param client the instance of the service client containing this operation class.
+ */
+ public APIKeysInner(Retrofit retrofit, ApplicationInsightsManagementClientImpl client) {
+ this.service = retrofit.create(APIKeysService.class);
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for APIKeys to be
+ * used by Retrofit to perform actually REST calls.
+ */
+ interface APIKeysService {
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.applicationinsights.v2015_05_01.APIKeys list" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/ApiKeys")
+ Observable> list(@Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("resourceName") String resourceName, @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.applicationinsights.v2015_05_01.APIKeys create" })
+ @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/ApiKeys")
+ Observable> create(@Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("resourceName") String resourceName, @Query("api-version") String apiVersion, @Body APIKeyRequest aPIKeyProperties, @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.applicationinsights.v2015_05_01.APIKeys delete" })
+ @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/APIKeys/{keyId}", method = "DELETE", hasBody = true)
+ Observable> delete(@Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("resourceName") String resourceName, @Path("keyId") String keyId, @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.applicationinsights.v2015_05_01.APIKeys get" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/APIKeys/{keyId}")
+ Observable> get(@Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("resourceName") String resourceName, @Path("keyId") String keyId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ }
+
+ /**
+ * Gets a list of API keys of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @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 List<ApplicationInsightsComponentAPIKeyInner> object if successful.
+ */
+ public List list(String resourceGroupName, String resourceName) {
+ return listWithServiceResponseAsync(resourceGroupName, resourceName).toBlocking().single().body();
+ }
+
+ /**
+ * Gets a list of API keys of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @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> listAsync(String resourceGroupName, String resourceName, final ServiceCallback> serviceCallback) {
+ return ServiceFuture.fromResponse(listWithServiceResponseAsync(resourceGroupName, resourceName), serviceCallback);
+ }
+
+ /**
+ * Gets a list of API keys of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the List<ApplicationInsightsComponentAPIKeyInner> object
+ */
+ public Observable> listAsync(String resourceGroupName, String resourceName) {
+ return listWithServiceResponseAsync(resourceGroupName, resourceName).map(new Func1>, List>() {
+ @Override
+ public List call(ServiceResponse> response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Gets a list of API keys of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the List<ApplicationInsightsComponentAPIKeyInner> object
+ */
+ public Observable>> listWithServiceResponseAsync(String resourceGroupName, String resourceName) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName 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 (resourceName == null) {
+ throw new IllegalArgumentException("Parameter resourceName 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.list(resourceGroupName, this.client.subscriptionId(), resourceName, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>>() {
+ @Override
+ public Observable>> call(Response response) {
+ try {
+ ServiceResponse> result = listDelegate(response);
+ List items = null;
+ if (result.body() != null) {
+ items = result.body().items();
+ }
+ ServiceResponse> clientResponse = new ServiceResponse>(items, result.response());
+ return Observable.just(clientResponse);
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ private ServiceResponse> listDelegate(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);
+ }
+
+ /**
+ * Create an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param aPIKeyProperties Properties that need to be specified to create an API key of a Application Insights component.
+ * @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 ApplicationInsightsComponentAPIKeyInner object if successful.
+ */
+ public ApplicationInsightsComponentAPIKeyInner create(String resourceGroupName, String resourceName, APIKeyRequest aPIKeyProperties) {
+ return createWithServiceResponseAsync(resourceGroupName, resourceName, aPIKeyProperties).toBlocking().single().body();
+ }
+
+ /**
+ * Create an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param aPIKeyProperties Properties that need to be specified to create an API key of a Application Insights component.
+ * @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 resourceName, APIKeyRequest aPIKeyProperties, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(createWithServiceResponseAsync(resourceGroupName, resourceName, aPIKeyProperties), serviceCallback);
+ }
+
+ /**
+ * Create an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param aPIKeyProperties Properties that need to be specified to create an API key of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable createAsync(String resourceGroupName, String resourceName, APIKeyRequest aPIKeyProperties) {
+ return createWithServiceResponseAsync(resourceGroupName, resourceName, aPIKeyProperties).map(new Func1, ApplicationInsightsComponentAPIKeyInner>() {
+ @Override
+ public ApplicationInsightsComponentAPIKeyInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Create an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param aPIKeyProperties Properties that need to be specified to create an API key of a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable> createWithServiceResponseAsync(String resourceGroupName, String resourceName, APIKeyRequest aPIKeyProperties) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName 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 (resourceName == null) {
+ throw new IllegalArgumentException("Parameter resourceName is required and cannot be null.");
+ }
+ if (this.client.apiVersion() == null) {
+ throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
+ }
+ if (aPIKeyProperties == null) {
+ throw new IllegalArgumentException("Parameter aPIKeyProperties is required and cannot be null.");
+ }
+ Validator.validate(aPIKeyProperties);
+ return service.create(resourceGroupName, this.client.subscriptionId(), resourceName, this.client.apiVersion(), aPIKeyProperties, this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
+ @Override
+ public Observable> call(Response response) {
+ try {
+ ServiceResponse clientResponse = createDelegate(response);
+ return Observable.just(clientResponse);
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ private ServiceResponse createDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
+ /**
+ * Delete an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @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 ApplicationInsightsComponentAPIKeyInner object if successful.
+ */
+ public ApplicationInsightsComponentAPIKeyInner delete(String resourceGroupName, String resourceName, String keyId) {
+ return deleteWithServiceResponseAsync(resourceGroupName, resourceName, keyId).toBlocking().single().body();
+ }
+
+ /**
+ * Delete an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @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 deleteAsync(String resourceGroupName, String resourceName, String keyId, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(deleteWithServiceResponseAsync(resourceGroupName, resourceName, keyId), serviceCallback);
+ }
+
+ /**
+ * Delete an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable deleteAsync(String resourceGroupName, String resourceName, String keyId) {
+ return deleteWithServiceResponseAsync(resourceGroupName, resourceName, keyId).map(new Func1, ApplicationInsightsComponentAPIKeyInner>() {
+ @Override
+ public ApplicationInsightsComponentAPIKeyInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Delete an API Key of an Application Insights component.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable> deleteWithServiceResponseAsync(String resourceGroupName, String resourceName, String keyId) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName 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 (resourceName == null) {
+ throw new IllegalArgumentException("Parameter resourceName is required and cannot be null.");
+ }
+ if (keyId == null) {
+ throw new IllegalArgumentException("Parameter keyId 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.delete(resourceGroupName, this.client.subscriptionId(), resourceName, keyId, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
+ @Override
+ public Observable> call(Response response) {
+ try {
+ ServiceResponse clientResponse = deleteDelegate(response);
+ return Observable.just(clientResponse);
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ private ServiceResponse deleteDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
+ /**
+ * Get the API Key for this key id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @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 ApplicationInsightsComponentAPIKeyInner object if successful.
+ */
+ public ApplicationInsightsComponentAPIKeyInner get(String resourceGroupName, String resourceName, String keyId) {
+ return getWithServiceResponseAsync(resourceGroupName, resourceName, keyId).toBlocking().single().body();
+ }
+
+ /**
+ * Get the API Key for this key id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @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 getAsync(String resourceGroupName, String resourceName, String keyId, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(getWithServiceResponseAsync(resourceGroupName, resourceName, keyId), serviceCallback);
+ }
+
+ /**
+ * Get the API Key for this key id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable getAsync(String resourceGroupName, String resourceName, String keyId) {
+ return getWithServiceResponseAsync(resourceGroupName, resourceName, keyId).map(new Func1, ApplicationInsightsComponentAPIKeyInner>() {
+ @Override
+ public ApplicationInsightsComponentAPIKeyInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Get the API Key for this key id.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param resourceName The name of the Application Insights component resource.
+ * @param keyId The API Key ID. This is unique within a Application Insights component.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the ApplicationInsightsComponentAPIKeyInner object
+ */
+ public Observable> getWithServiceResponseAsync(String resourceGroupName, String resourceName, String keyId) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName 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 (resourceName == null) {
+ throw new IllegalArgumentException("Parameter resourceName is required and cannot be null.");
+ }
+ if (keyId == null) {
+ throw new IllegalArgumentException("Parameter keyId 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.get(resourceGroupName, this.client.subscriptionId(), resourceName, keyId, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
+ @Override
+ public Observable> call(Response