diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/pom.xml b/sdk/loganalytics/mgmt-v2020_03_01_preview/pom.xml
new file mode 100644
index 000000000000..d549de3cc484
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/pom.xml
@@ -0,0 +1,135 @@
+
+
+ 4.0.0
+ com.microsoft.azure.loganalytics.v2020_03_01_preview
+
+ com.microsoft.azure
+ azure-arm-parent
+ 1.1.0
+ ../../../pom.management.xml
+
+ azure-mgmt-loganalytics
+ 1.0.0-beta
+ jar
+ Microsoft Azure SDK for LogAnalytics Management
+ This package contains Microsoft LogAnalytics Management SDK.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+ scm:git:https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+ UTF-8
+
+
+
+
+ microsoft
+ Microsoft
+
+
+
+
+ com.microsoft.azure
+ azure-client-runtime
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+
+
+ junit
+ junit
+ test
+
+
+ com.microsoft.azure
+ azure-client-authentication
+ test
+
+
+ com.microsoft.azure
+ azure-mgmt-resources
+ test
+
+
+ com.microsoft.azure
+ azure-arm-client-runtime
+ test-jar
+ test
+
+ 1.6.5
+
+
+
+
+
+ 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/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTier.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTier.java
new file mode 100644
index 000000000000..41fade0d68a3
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTier.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.AvailableServiceTierInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+
+/**
+ * Type representing AvailableServiceTier.
+ */
+public interface AvailableServiceTier extends HasInner, HasManager {
+ /**
+ * @return the capacityReservationLevel value.
+ */
+ Long capacityReservationLevel();
+
+ /**
+ * @return the defaultRetention value.
+ */
+ Long defaultRetention();
+
+ /**
+ * @return the enabled value.
+ */
+ Boolean enabled();
+
+ /**
+ * @return the lastSkuUpdate value.
+ */
+ String lastSkuUpdate();
+
+ /**
+ * @return the maximumRetention value.
+ */
+ Long maximumRetention();
+
+ /**
+ * @return the minimumRetention value.
+ */
+ Long minimumRetention();
+
+ /**
+ * @return the serviceTier value.
+ */
+ SkuNameEnum serviceTier();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTiers.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTiers.java
new file mode 100644
index 000000000000..1604da8435c9
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AvailableServiceTiers.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.AvailableServiceTiersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing AvailableServiceTiers.
+ */
+public interface AvailableServiceTiers extends HasInner {
+ /**
+ * Gets the available service tiers for the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AzureEntityResource.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AzureEntityResource.java
new file mode 100644
index 000000000000..ccc374d93c9a
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/AzureEntityResource.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.azure.ProxyResource;
+
+/**
+ * The resource model definition for a Azure Resource Manager resource with an
+ * etag.
+ */
+public class AzureEntityResource extends ProxyResource {
+ /**
+ * Resource Etag.
+ */
+ @JsonProperty(value = "etag", access = JsonProperty.Access.WRITE_ONLY)
+ private String etag;
+
+ /**
+ * Get resource Etag.
+ *
+ * @return the etag value
+ */
+ public String etag() {
+ return this.etag;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Cluster.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Cluster.java
new file mode 100644
index 000000000000..e947bde229f1
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Cluster.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.ClusterInner;
+
+/**
+ * Type representing Cluster.
+ */
+public interface Cluster extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the clusterId value.
+ */
+ String clusterId();
+
+ /**
+ * @return the identity value.
+ */
+ Identity identity();
+
+ /**
+ * @return the keyVaultProperties value.
+ */
+ KeyVaultProperties keyVaultProperties();
+
+ /**
+ * @return the nextLink value.
+ */
+ String nextLink();
+
+ /**
+ * @return the provisioningState value.
+ */
+ ClusterEntityStatus provisioningState();
+
+ /**
+ * @return the sku value.
+ */
+ ClusterSku sku();
+
+ /**
+ * The entirety of the Cluster definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Cluster definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Cluster definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the Cluster definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the cluster definition allowing to specify Identity.
+ */
+ interface WithIdentity {
+ /**
+ * Specifies identity.
+ * @param identity The identity of the resource
+ * @return the next definition stage
+ */
+ WithCreate withIdentity(Identity identity);
+ }
+
+ /**
+ * The stage of the cluster definition allowing to specify KeyVaultProperties.
+ */
+ interface WithKeyVaultProperties {
+ /**
+ * Specifies keyVaultProperties.
+ * @param keyVaultProperties The associated key properties
+ * @return the next definition stage
+ */
+ WithCreate withKeyVaultProperties(KeyVaultProperties keyVaultProperties);
+ }
+
+ /**
+ * The stage of the cluster definition allowing to specify NextLink.
+ */
+ interface WithNextLink {
+ /**
+ * Specifies nextLink.
+ * @param nextLink The link used to get the next page of recommendations
+ * @return the next definition stage
+ */
+ WithCreate withNextLink(String nextLink);
+ }
+
+ /**
+ * The stage of the cluster definition allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku properties
+ * @return the next definition stage
+ */
+ WithCreate withSku(ClusterSku sku);
+ }
+
+ /**
+ * 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.WithIdentity, DefinitionStages.WithKeyVaultProperties, DefinitionStages.WithNextLink, DefinitionStages.WithSku {
+ }
+ }
+ /**
+ * The template for a Cluster update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithKeyVaultProperties, UpdateStages.WithSku {
+ }
+
+ /**
+ * Grouping of Cluster update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the cluster update allowing to specify KeyVaultProperties.
+ */
+ interface WithKeyVaultProperties {
+ /**
+ * Specifies keyVaultProperties.
+ * @param keyVaultProperties The associated key properties
+ * @return the next update stage
+ */
+ Update withKeyVaultProperties(KeyVaultProperties keyVaultProperties);
+ }
+
+ /**
+ * The stage of the cluster update allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The sku properties
+ * @return the next update stage
+ */
+ Update withSku(ClusterSku sku);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterEntityStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterEntityStatus.java
new file mode 100644
index 000000000000..cb3008ec6259
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterEntityStatus.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ClusterEntityStatus.
+ */
+public final class ClusterEntityStatus extends ExpandableStringEnum {
+ /** Static value Creating for ClusterEntityStatus. */
+ public static final ClusterEntityStatus CREATING = fromString("Creating");
+
+ /** Static value Succeeded for ClusterEntityStatus. */
+ public static final ClusterEntityStatus SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Failed for ClusterEntityStatus. */
+ public static final ClusterEntityStatus FAILED = fromString("Failed");
+
+ /** Static value Canceled for ClusterEntityStatus. */
+ public static final ClusterEntityStatus CANCELED = fromString("Canceled");
+
+ /** Static value Deleting for ClusterEntityStatus. */
+ public static final ClusterEntityStatus DELETING = fromString("Deleting");
+
+ /** Static value ProvisioningAccount for ClusterEntityStatus. */
+ public static final ClusterEntityStatus PROVISIONING_ACCOUNT = fromString("ProvisioningAccount");
+
+ /** Static value Updating for ClusterEntityStatus. */
+ public static final ClusterEntityStatus UPDATING = fromString("Updating");
+
+ /**
+ * Creates or finds a ClusterEntityStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ClusterEntityStatus
+ */
+ @JsonCreator
+ public static ClusterEntityStatus fromString(String name) {
+ return fromString(name, ClusterEntityStatus.class);
+ }
+
+ /**
+ * @return known ClusterEntityStatus values
+ */
+ public static Collection values() {
+ return values(ClusterEntityStatus.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponse.java
new file mode 100644
index 000000000000..7acd30073fdc
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponse.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error response indicates that the service is not able to process the
+ * incoming request. The reason is provided in the error message.
+ */
+public class ClusterErrorResponse {
+ /**
+ * The details of the error.
+ */
+ @JsonProperty(value = "error")
+ private ErrorResponse error;
+
+ /**
+ * Get the details of the error.
+ *
+ * @return the error value
+ */
+ public ErrorResponse error() {
+ return this.error;
+ }
+
+ /**
+ * Set the details of the error.
+ *
+ * @param error the error value to set
+ * @return the ClusterErrorResponse object itself.
+ */
+ public ClusterErrorResponse withError(ErrorResponse error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponseException.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponseException.java
new file mode 100644
index 000000000000..cb0fbb95f290
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterErrorResponseException.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with ClusterErrorResponse
+ * information.
+ */
+public class ClusterErrorResponseException extends RestException {
+ /**
+ * Initializes a new instance of the ClusterErrorResponseException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public ClusterErrorResponseException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the ClusterErrorResponseException 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 ClusterErrorResponseException(final String message, final Response response, final ClusterErrorResponse body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public ClusterErrorResponse body() {
+ return (ClusterErrorResponse) super.body();
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterPatch.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterPatch.java
new file mode 100644
index 000000000000..9bd565c09d28
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterPatch.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The top level Log Analytics cluster resource container.
+ */
+@JsonFlatten
+public class ClusterPatch {
+ /**
+ * The associated key properties.
+ */
+ @JsonProperty(value = "properties.keyVaultProperties")
+ private KeyVaultProperties keyVaultProperties;
+
+ /**
+ * The sku properties.
+ */
+ @JsonProperty(value = "sku")
+ private ClusterSku sku;
+
+ /**
+ * Resource tags.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get the associated key properties.
+ *
+ * @return the keyVaultProperties value
+ */
+ public KeyVaultProperties keyVaultProperties() {
+ return this.keyVaultProperties;
+ }
+
+ /**
+ * Set the associated key properties.
+ *
+ * @param keyVaultProperties the keyVaultProperties value to set
+ * @return the ClusterPatch object itself.
+ */
+ public ClusterPatch withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
+ this.keyVaultProperties = keyVaultProperties;
+ return this;
+ }
+
+ /**
+ * Get the sku properties.
+ *
+ * @return the sku value
+ */
+ public ClusterSku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the sku properties.
+ *
+ * @param sku the sku value to set
+ * @return the ClusterPatch object itself.
+ */
+ public ClusterPatch withSku(ClusterSku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * 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 ClusterPatch object itself.
+ */
+ public ClusterPatch withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSku.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSku.java
new file mode 100644
index 000000000000..0617bcbe7d58
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSku.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The cluster sku definition.
+ */
+public class ClusterSku {
+ /**
+ * The capacity value.
+ */
+ @JsonProperty(value = "capacity")
+ private Long capacity;
+
+ /**
+ * The name of the SKU. Possible values include: 'CapacityReservation'.
+ */
+ @JsonProperty(value = "name")
+ private ClusterSkuNameEnum name;
+
+ /**
+ * Get the capacity value.
+ *
+ * @return the capacity value
+ */
+ public Long capacity() {
+ return this.capacity;
+ }
+
+ /**
+ * Set the capacity value.
+ *
+ * @param capacity the capacity value to set
+ * @return the ClusterSku object itself.
+ */
+ public ClusterSku withCapacity(Long capacity) {
+ this.capacity = capacity;
+ return this;
+ }
+
+ /**
+ * Get the name of the SKU. Possible values include: 'CapacityReservation'.
+ *
+ * @return the name value
+ */
+ public ClusterSkuNameEnum name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the SKU. Possible values include: 'CapacityReservation'.
+ *
+ * @param name the name value to set
+ * @return the ClusterSku object itself.
+ */
+ public ClusterSku withName(ClusterSkuNameEnum name) {
+ this.name = name;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSkuNameEnum.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSkuNameEnum.java
new file mode 100644
index 000000000000..f6e0557e15bc
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ClusterSkuNameEnum.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ClusterSkuNameEnum.
+ */
+public final class ClusterSkuNameEnum extends ExpandableStringEnum {
+ /** Static value CapacityReservation for ClusterSkuNameEnum. */
+ public static final ClusterSkuNameEnum CAPACITY_RESERVATION = fromString("CapacityReservation");
+
+ /**
+ * Creates or finds a ClusterSkuNameEnum from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ClusterSkuNameEnum
+ */
+ @JsonCreator
+ public static ClusterSkuNameEnum fromString(String name) {
+ return fromString(name, ClusterSkuNameEnum.class);
+ }
+
+ /**
+ * @return known ClusterSkuNameEnum values
+ */
+ public static Collection values() {
+ return values(ClusterSkuNameEnum.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Clusters.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Clusters.java
new file mode 100644
index 000000000000..65501e9f779f
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Clusters.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.ClustersInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Clusters.
+ */
+public interface Clusters extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/CoreSummary.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/CoreSummary.java
new file mode 100644
index 000000000000..624567579c3e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/CoreSummary.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The core summary of a search.
+ */
+public class CoreSummary {
+ /**
+ * The status of a core summary.
+ */
+ @JsonProperty(value = "status")
+ private String status;
+
+ /**
+ * The number of documents of a core summary.
+ */
+ @JsonProperty(value = "numberOfDocuments", required = true)
+ private long numberOfDocuments;
+
+ /**
+ * Get the status of a core summary.
+ *
+ * @return the status value
+ */
+ public String status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status of a core summary.
+ *
+ * @param status the status value to set
+ * @return the CoreSummary object itself.
+ */
+ public CoreSummary withStatus(String status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the number of documents of a core summary.
+ *
+ * @return the numberOfDocuments value
+ */
+ public long numberOfDocuments() {
+ return this.numberOfDocuments;
+ }
+
+ /**
+ * Set the number of documents of a core summary.
+ *
+ * @param numberOfDocuments the numberOfDocuments value to set
+ * @return the CoreSummary object itself.
+ */
+ public CoreSummary withNumberOfDocuments(long numberOfDocuments) {
+ this.numberOfDocuments = numberOfDocuments;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExport.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExport.java
new file mode 100644
index 000000000000..10db33da1626
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExport.java
@@ -0,0 +1,314 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.DataExportInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+
+/**
+ * Type representing DataExport.
+ */
+public interface DataExport extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the allTables value.
+ */
+ Boolean allTables();
+
+ /**
+ * @return the createdDate value.
+ */
+ String createdDate();
+
+ /**
+ * @return the dataExportId value.
+ */
+ String dataExportId();
+
+ /**
+ * @return the dataExportType value.
+ */
+ Type dataExportType();
+
+ /**
+ * @return the enable value.
+ */
+ Boolean enable();
+
+ /**
+ * @return the eventHubName value.
+ */
+ String eventHubName();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the lastModifiedDate value.
+ */
+ String lastModifiedDate();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the resourceId value.
+ */
+ String resourceId();
+
+ /**
+ * @return the tableNames value.
+ */
+ List tableNames();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the DataExport definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithResourceId, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of DataExport definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a DataExport definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithResourceId withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify ResourceId.
+ */
+ interface WithResourceId {
+ /**
+ * Specifies resourceId.
+ * @param resourceId The destination resource ID. This can be copied from the Properties entry of the destination resource in Azure
+ * @return the next definition stage
+ */
+ WithCreate withResourceId(String resourceId);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify AllTables.
+ */
+ interface WithAllTables {
+ /**
+ * Specifies allTables.
+ * @param allTables When ‘true’, all workspace's tables are exported
+ * @return the next definition stage
+ */
+ WithCreate withAllTables(Boolean allTables);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify CreatedDate.
+ */
+ interface WithCreatedDate {
+ /**
+ * Specifies createdDate.
+ * @param createdDate The latest data export rule modification time
+ * @return the next definition stage
+ */
+ WithCreate withCreatedDate(String createdDate);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify DataExportId.
+ */
+ interface WithDataExportId {
+ /**
+ * Specifies dataExportId.
+ * @param dataExportId The data export rule ID
+ * @return the next definition stage
+ */
+ WithCreate withDataExportId(String dataExportId);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify Enable.
+ */
+ interface WithEnable {
+ /**
+ * Specifies enable.
+ * @param enable Active when enabled
+ * @return the next definition stage
+ */
+ WithCreate withEnable(Boolean enable);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify EventHubName.
+ */
+ interface WithEventHubName {
+ /**
+ * Specifies eventHubName.
+ * @param eventHubName Optional. Allows to define an Event Hub name. Not applicable when destination is Storage Account
+ * @return the next definition stage
+ */
+ WithCreate withEventHubName(String eventHubName);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify LastModifiedDate.
+ */
+ interface WithLastModifiedDate {
+ /**
+ * Specifies lastModifiedDate.
+ * @param lastModifiedDate Date and time when the export was last modified
+ * @return the next definition stage
+ */
+ WithCreate withLastModifiedDate(String lastModifiedDate);
+ }
+
+ /**
+ * The stage of the dataexport definition allowing to specify TableNames.
+ */
+ interface WithTableNames {
+ /**
+ * Specifies tableNames.
+ * @param tableNames An array of tables to export, for example: [“Heartbeat, SecurityEvent”]
+ * @return the next definition stage
+ */
+ WithCreate withTableNames(List tableNames);
+ }
+
+ /**
+ * 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.WithAllTables, DefinitionStages.WithCreatedDate, DefinitionStages.WithDataExportId, DefinitionStages.WithEnable, DefinitionStages.WithEventHubName, DefinitionStages.WithLastModifiedDate, DefinitionStages.WithTableNames {
+ }
+ }
+ /**
+ * The template for a DataExport update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAllTables, UpdateStages.WithCreatedDate, UpdateStages.WithDataExportId, UpdateStages.WithEnable, UpdateStages.WithEventHubName, UpdateStages.WithLastModifiedDate, UpdateStages.WithTableNames {
+ }
+
+ /**
+ * Grouping of DataExport update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the dataexport update allowing to specify AllTables.
+ */
+ interface WithAllTables {
+ /**
+ * Specifies allTables.
+ * @param allTables When ‘true’, all workspace's tables are exported
+ * @return the next update stage
+ */
+ Update withAllTables(Boolean allTables);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify CreatedDate.
+ */
+ interface WithCreatedDate {
+ /**
+ * Specifies createdDate.
+ * @param createdDate The latest data export rule modification time
+ * @return the next update stage
+ */
+ Update withCreatedDate(String createdDate);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify DataExportId.
+ */
+ interface WithDataExportId {
+ /**
+ * Specifies dataExportId.
+ * @param dataExportId The data export rule ID
+ * @return the next update stage
+ */
+ Update withDataExportId(String dataExportId);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify Enable.
+ */
+ interface WithEnable {
+ /**
+ * Specifies enable.
+ * @param enable Active when enabled
+ * @return the next update stage
+ */
+ Update withEnable(Boolean enable);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify EventHubName.
+ */
+ interface WithEventHubName {
+ /**
+ * Specifies eventHubName.
+ * @param eventHubName Optional. Allows to define an Event Hub name. Not applicable when destination is Storage Account
+ * @return the next update stage
+ */
+ Update withEventHubName(String eventHubName);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify LastModifiedDate.
+ */
+ interface WithLastModifiedDate {
+ /**
+ * Specifies lastModifiedDate.
+ * @param lastModifiedDate Date and time when the export was last modified
+ * @return the next update stage
+ */
+ Update withLastModifiedDate(String lastModifiedDate);
+ }
+
+ /**
+ * The stage of the dataexport update allowing to specify TableNames.
+ */
+ interface WithTableNames {
+ /**
+ * Specifies tableNames.
+ * @param tableNames An array of tables to export, for example: [“Heartbeat, SecurityEvent”]
+ * @return the next update stage
+ */
+ Update withTableNames(List tableNames);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponse.java
new file mode 100644
index 000000000000..bfbcf121ec6d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponse.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error response indicates that the service is not able to process the
+ * incoming request. The reason is provided in the error message.
+ */
+public class DataExportErrorResponse {
+ /**
+ * The details of the error.
+ */
+ @JsonProperty(value = "error")
+ private ErrorResponse error;
+
+ /**
+ * Get the details of the error.
+ *
+ * @return the error value
+ */
+ public ErrorResponse error() {
+ return this.error;
+ }
+
+ /**
+ * Set the details of the error.
+ *
+ * @param error the error value to set
+ * @return the DataExportErrorResponse object itself.
+ */
+ public DataExportErrorResponse withError(ErrorResponse error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponseException.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponseException.java
new file mode 100644
index 000000000000..6cb68bda596e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExportErrorResponseException.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with DataExportErrorResponse
+ * information.
+ */
+public class DataExportErrorResponseException extends RestException {
+ /**
+ * Initializes a new instance of the DataExportErrorResponseException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public DataExportErrorResponseException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the DataExportErrorResponseException 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 DataExportErrorResponseException(final String message, final Response response, final DataExportErrorResponse body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public DataExportErrorResponse body() {
+ return (DataExportErrorResponse) super.body();
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExports.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExports.java
new file mode 100644
index 000000000000..45ec4b26a52e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataExports.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.DataExportsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing DataExports.
+ */
+public interface DataExports extends SupportsCreating, HasInner {
+ /**
+ * Gets a data export instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataExportName The data export rule name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, String dataExportName);
+
+ /**
+ * Lists the data export instances within a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+ /**
+ * Deletes the specified data export in a given workspace..
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataExportName The data export rule name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String dataExportName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataIngestionStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataIngestionStatus.java
new file mode 100644
index 000000000000..45c7f347b450
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataIngestionStatus.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for DataIngestionStatus.
+ */
+public final class DataIngestionStatus extends ExpandableStringEnum {
+ /** Static value RespectQuota for DataIngestionStatus. */
+ public static final DataIngestionStatus RESPECT_QUOTA = fromString("RespectQuota");
+
+ /** Static value ForceOn for DataIngestionStatus. */
+ public static final DataIngestionStatus FORCE_ON = fromString("ForceOn");
+
+ /** Static value ForceOff for DataIngestionStatus. */
+ public static final DataIngestionStatus FORCE_OFF = fromString("ForceOff");
+
+ /** Static value OverQuota for DataIngestionStatus. */
+ public static final DataIngestionStatus OVER_QUOTA = fromString("OverQuota");
+
+ /** Static value SubscriptionSuspended for DataIngestionStatus. */
+ public static final DataIngestionStatus SUBSCRIPTION_SUSPENDED = fromString("SubscriptionSuspended");
+
+ /** Static value ApproachingQuota for DataIngestionStatus. */
+ public static final DataIngestionStatus APPROACHING_QUOTA = fromString("ApproachingQuota");
+
+ /**
+ * Creates or finds a DataIngestionStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding DataIngestionStatus
+ */
+ @JsonCreator
+ public static DataIngestionStatus fromString(String name) {
+ return fromString(name, DataIngestionStatus.class);
+ }
+
+ /**
+ * @return known DataIngestionStatus values
+ */
+ public static Collection values() {
+ return values(DataIngestionStatus.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSource.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSource.java
new file mode 100644
index 000000000000..a938301e9d3a
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSource.java
@@ -0,0 +1,181 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.DataSourceInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.Map;
+
+/**
+ * Type representing DataSource.
+ */
+public interface DataSource extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the etag value.
+ */
+ String etag();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the kind value.
+ */
+ DataSourceKind kind();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the properties value.
+ */
+ Object properties();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the DataSource definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithKind, DefinitionStages.WithProperties, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of DataSource definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a DataSource definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the datasource definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithKind withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the datasource definition allowing to specify Kind.
+ */
+ interface WithKind {
+ /**
+ * Specifies kind.
+ * @param kind Possible values include: 'WindowsEvent', 'WindowsPerformanceCounter', 'IISLogs', 'LinuxSyslog', 'LinuxSyslogCollection', 'LinuxPerformanceObject', 'LinuxPerformanceCollection', 'CustomLog', 'CustomLogCollection', 'AzureAuditLog', 'AzureActivityLog', 'GenericDataSource', 'ChangeTrackingCustomPath', 'ChangeTrackingPath', 'ChangeTrackingServices', 'ChangeTrackingDataTypeConfiguration', 'ChangeTrackingDefaultRegistry', 'ChangeTrackingRegistry', 'ChangeTrackingLinuxPath', 'LinuxChangeTrackingPath', 'ChangeTrackingContentLocation', 'WindowsTelemetry', 'Office365', 'SecurityWindowsBaselineConfiguration', 'SecurityCenterSecurityWindowsBaselineConfiguration', 'SecurityEventCollectionConfiguration', 'SecurityInsightsSecurityEventCollectionConfiguration', 'ImportComputerGroup', 'NetworkMonitoring', 'Itsm', 'DnsAnalytics', 'ApplicationInsights', 'SqlDataClassification'
+ * @return the next definition stage
+ */
+ WithProperties withKind(DataSourceKind kind);
+ }
+
+ /**
+ * The stage of the datasource definition allowing to specify Properties.
+ */
+ interface WithProperties {
+ /**
+ * Specifies properties.
+ * @param properties The data source properties in raw json format, each kind of data source have it's own schema
+ * @return the next definition stage
+ */
+ WithCreate withProperties(Object properties);
+ }
+
+ /**
+ * The stage of the datasource definition allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag of the data source
+ * @return the next definition stage
+ */
+ WithCreate withEtag(String etag);
+ }
+
+ /**
+ * The stage of the datasource definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithEtag, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a DataSource update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithEtag, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of DataSource update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the datasource update allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag of the data source
+ * @return the next update stage
+ */
+ Update withEtag(String etag);
+ }
+
+ /**
+ * The stage of the datasource update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceFilter.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceFilter.java
new file mode 100644
index 000000000000..0e60ff4ba0c9
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceFilter.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * DataSource filter. Right now, only filter by kind is supported.
+ */
+public class DataSourceFilter {
+ /**
+ * Possible values include: 'WindowsEvent', 'WindowsPerformanceCounter',
+ * 'IISLogs', 'LinuxSyslog', 'LinuxSyslogCollection',
+ * 'LinuxPerformanceObject', 'LinuxPerformanceCollection', 'CustomLog',
+ * 'CustomLogCollection', 'AzureAuditLog', 'AzureActivityLog',
+ * 'GenericDataSource', 'ChangeTrackingCustomPath', 'ChangeTrackingPath',
+ * 'ChangeTrackingServices', 'ChangeTrackingDataTypeConfiguration',
+ * 'ChangeTrackingDefaultRegistry', 'ChangeTrackingRegistry',
+ * 'ChangeTrackingLinuxPath', 'LinuxChangeTrackingPath',
+ * 'ChangeTrackingContentLocation', 'WindowsTelemetry', 'Office365',
+ * 'SecurityWindowsBaselineConfiguration',
+ * 'SecurityCenterSecurityWindowsBaselineConfiguration',
+ * 'SecurityEventCollectionConfiguration',
+ * 'SecurityInsightsSecurityEventCollectionConfiguration',
+ * 'ImportComputerGroup', 'NetworkMonitoring', 'Itsm', 'DnsAnalytics',
+ * 'ApplicationInsights', 'SqlDataClassification'.
+ */
+ @JsonProperty(value = "kind")
+ private DataSourceKind kind;
+
+ /**
+ * Get possible values include: 'WindowsEvent', 'WindowsPerformanceCounter', 'IISLogs', 'LinuxSyslog', 'LinuxSyslogCollection', 'LinuxPerformanceObject', 'LinuxPerformanceCollection', 'CustomLog', 'CustomLogCollection', 'AzureAuditLog', 'AzureActivityLog', 'GenericDataSource', 'ChangeTrackingCustomPath', 'ChangeTrackingPath', 'ChangeTrackingServices', 'ChangeTrackingDataTypeConfiguration', 'ChangeTrackingDefaultRegistry', 'ChangeTrackingRegistry', 'ChangeTrackingLinuxPath', 'LinuxChangeTrackingPath', 'ChangeTrackingContentLocation', 'WindowsTelemetry', 'Office365', 'SecurityWindowsBaselineConfiguration', 'SecurityCenterSecurityWindowsBaselineConfiguration', 'SecurityEventCollectionConfiguration', 'SecurityInsightsSecurityEventCollectionConfiguration', 'ImportComputerGroup', 'NetworkMonitoring', 'Itsm', 'DnsAnalytics', 'ApplicationInsights', 'SqlDataClassification'.
+ *
+ * @return the kind value
+ */
+ public DataSourceKind kind() {
+ return this.kind;
+ }
+
+ /**
+ * Set possible values include: 'WindowsEvent', 'WindowsPerformanceCounter', 'IISLogs', 'LinuxSyslog', 'LinuxSyslogCollection', 'LinuxPerformanceObject', 'LinuxPerformanceCollection', 'CustomLog', 'CustomLogCollection', 'AzureAuditLog', 'AzureActivityLog', 'GenericDataSource', 'ChangeTrackingCustomPath', 'ChangeTrackingPath', 'ChangeTrackingServices', 'ChangeTrackingDataTypeConfiguration', 'ChangeTrackingDefaultRegistry', 'ChangeTrackingRegistry', 'ChangeTrackingLinuxPath', 'LinuxChangeTrackingPath', 'ChangeTrackingContentLocation', 'WindowsTelemetry', 'Office365', 'SecurityWindowsBaselineConfiguration', 'SecurityCenterSecurityWindowsBaselineConfiguration', 'SecurityEventCollectionConfiguration', 'SecurityInsightsSecurityEventCollectionConfiguration', 'ImportComputerGroup', 'NetworkMonitoring', 'Itsm', 'DnsAnalytics', 'ApplicationInsights', 'SqlDataClassification'.
+ *
+ * @param kind the kind value to set
+ * @return the DataSourceFilter object itself.
+ */
+ public DataSourceFilter withKind(DataSourceKind kind) {
+ this.kind = kind;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceKind.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceKind.java
new file mode 100644
index 000000000000..4e5dd3e96127
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceKind.java
@@ -0,0 +1,134 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for DataSourceKind.
+ */
+public final class DataSourceKind extends ExpandableStringEnum {
+ /** Static value WindowsEvent for DataSourceKind. */
+ public static final DataSourceKind WINDOWS_EVENT = fromString("WindowsEvent");
+
+ /** Static value WindowsPerformanceCounter for DataSourceKind. */
+ public static final DataSourceKind WINDOWS_PERFORMANCE_COUNTER = fromString("WindowsPerformanceCounter");
+
+ /** Static value IISLogs for DataSourceKind. */
+ public static final DataSourceKind IISLOGS = fromString("IISLogs");
+
+ /** Static value LinuxSyslog for DataSourceKind. */
+ public static final DataSourceKind LINUX_SYSLOG = fromString("LinuxSyslog");
+
+ /** Static value LinuxSyslogCollection for DataSourceKind. */
+ public static final DataSourceKind LINUX_SYSLOG_COLLECTION = fromString("LinuxSyslogCollection");
+
+ /** Static value LinuxPerformanceObject for DataSourceKind. */
+ public static final DataSourceKind LINUX_PERFORMANCE_OBJECT = fromString("LinuxPerformanceObject");
+
+ /** Static value LinuxPerformanceCollection for DataSourceKind. */
+ public static final DataSourceKind LINUX_PERFORMANCE_COLLECTION = fromString("LinuxPerformanceCollection");
+
+ /** Static value CustomLog for DataSourceKind. */
+ public static final DataSourceKind CUSTOM_LOG = fromString("CustomLog");
+
+ /** Static value CustomLogCollection for DataSourceKind. */
+ public static final DataSourceKind CUSTOM_LOG_COLLECTION = fromString("CustomLogCollection");
+
+ /** Static value AzureAuditLog for DataSourceKind. */
+ public static final DataSourceKind AZURE_AUDIT_LOG = fromString("AzureAuditLog");
+
+ /** Static value AzureActivityLog for DataSourceKind. */
+ public static final DataSourceKind AZURE_ACTIVITY_LOG = fromString("AzureActivityLog");
+
+ /** Static value GenericDataSource for DataSourceKind. */
+ public static final DataSourceKind GENERIC_DATA_SOURCE = fromString("GenericDataSource");
+
+ /** Static value ChangeTrackingCustomPath for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_CUSTOM_PATH = fromString("ChangeTrackingCustomPath");
+
+ /** Static value ChangeTrackingPath for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_PATH = fromString("ChangeTrackingPath");
+
+ /** Static value ChangeTrackingServices for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_SERVICES = fromString("ChangeTrackingServices");
+
+ /** Static value ChangeTrackingDataTypeConfiguration for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_DATA_TYPE_CONFIGURATION = fromString("ChangeTrackingDataTypeConfiguration");
+
+ /** Static value ChangeTrackingDefaultRegistry for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_DEFAULT_REGISTRY = fromString("ChangeTrackingDefaultRegistry");
+
+ /** Static value ChangeTrackingRegistry for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_REGISTRY = fromString("ChangeTrackingRegistry");
+
+ /** Static value ChangeTrackingLinuxPath for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_LINUX_PATH = fromString("ChangeTrackingLinuxPath");
+
+ /** Static value LinuxChangeTrackingPath for DataSourceKind. */
+ public static final DataSourceKind LINUX_CHANGE_TRACKING_PATH = fromString("LinuxChangeTrackingPath");
+
+ /** Static value ChangeTrackingContentLocation for DataSourceKind. */
+ public static final DataSourceKind CHANGE_TRACKING_CONTENT_LOCATION = fromString("ChangeTrackingContentLocation");
+
+ /** Static value WindowsTelemetry for DataSourceKind. */
+ public static final DataSourceKind WINDOWS_TELEMETRY = fromString("WindowsTelemetry");
+
+ /** Static value Office365 for DataSourceKind. */
+ public static final DataSourceKind OFFICE365 = fromString("Office365");
+
+ /** Static value SecurityWindowsBaselineConfiguration for DataSourceKind. */
+ public static final DataSourceKind SECURITY_WINDOWS_BASELINE_CONFIGURATION = fromString("SecurityWindowsBaselineConfiguration");
+
+ /** Static value SecurityCenterSecurityWindowsBaselineConfiguration for DataSourceKind. */
+ public static final DataSourceKind SECURITY_CENTER_SECURITY_WINDOWS_BASELINE_CONFIGURATION = fromString("SecurityCenterSecurityWindowsBaselineConfiguration");
+
+ /** Static value SecurityEventCollectionConfiguration for DataSourceKind. */
+ public static final DataSourceKind SECURITY_EVENT_COLLECTION_CONFIGURATION = fromString("SecurityEventCollectionConfiguration");
+
+ /** Static value SecurityInsightsSecurityEventCollectionConfiguration for DataSourceKind. */
+ public static final DataSourceKind SECURITY_INSIGHTS_SECURITY_EVENT_COLLECTION_CONFIGURATION = fromString("SecurityInsightsSecurityEventCollectionConfiguration");
+
+ /** Static value ImportComputerGroup for DataSourceKind. */
+ public static final DataSourceKind IMPORT_COMPUTER_GROUP = fromString("ImportComputerGroup");
+
+ /** Static value NetworkMonitoring for DataSourceKind. */
+ public static final DataSourceKind NETWORK_MONITORING = fromString("NetworkMonitoring");
+
+ /** Static value Itsm for DataSourceKind. */
+ public static final DataSourceKind ITSM = fromString("Itsm");
+
+ /** Static value DnsAnalytics for DataSourceKind. */
+ public static final DataSourceKind DNS_ANALYTICS = fromString("DnsAnalytics");
+
+ /** Static value ApplicationInsights for DataSourceKind. */
+ public static final DataSourceKind APPLICATION_INSIGHTS = fromString("ApplicationInsights");
+
+ /** Static value SqlDataClassification for DataSourceKind. */
+ public static final DataSourceKind SQL_DATA_CLASSIFICATION = fromString("SqlDataClassification");
+
+ /**
+ * Creates or finds a DataSourceKind from its string representation.
+ * @param name a name to look for
+ * @return the corresponding DataSourceKind
+ */
+ @JsonCreator
+ public static DataSourceKind fromString(String name) {
+ return fromString(name, DataSourceKind.class);
+ }
+
+ /**
+ * @return known DataSourceKind values
+ */
+ public static Collection values() {
+ return values(DataSourceKind.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceType.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceType.java
new file mode 100644
index 000000000000..23e1a47696ef
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSourceType.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for DataSourceType.
+ */
+public enum DataSourceType {
+ /** Enum value CustomLogs. */
+ CUSTOM_LOGS("CustomLogs"),
+
+ /** Enum value AzureWatson. */
+ AZURE_WATSON("AzureWatson");
+
+ /** The actual serialized value for a DataSourceType instance. */
+ private String value;
+
+ DataSourceType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a DataSourceType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed DataSourceType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static DataSourceType fromString(String value) {
+ DataSourceType[] items = DataSourceType.values();
+ for (DataSourceType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSources.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSources.java
new file mode 100644
index 000000000000..0f46829b3597
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DataSources.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.DataSourcesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing DataSources.
+ */
+public interface DataSources extends SupportsCreating, HasInner {
+ /**
+ * Gets a datasource instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataSourceName Name of the datasource
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, String dataSourceName);
+
+ /**
+ * Gets the first page of data source instances in a workspace with the link to the next page.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param filter The filter to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(final String resourceGroupName, final String workspaceName, final String filter);
+
+ /**
+ * Deletes a data source instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataSourceName Name of the datasource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String dataSourceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DeletedWorkspaces.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DeletedWorkspaces.java
new file mode 100644
index 000000000000..33d41db9a273
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/DeletedWorkspaces.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.DeletedWorkspacesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing DeletedWorkspaces.
+ */
+public interface DeletedWorkspaces extends SupportsListingByResourceGroup, SupportsListing, HasInner {
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorAdditionalInfo.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorAdditionalInfo.java
new file mode 100644
index 000000000000..1022178bd576
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorAdditionalInfo.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The resource management error additional info.
+ */
+public class ErrorAdditionalInfo {
+ /**
+ * The additional info type.
+ */
+ @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+ private String type;
+
+ /**
+ * The additional info.
+ */
+ @JsonProperty(value = "info", access = JsonProperty.Access.WRITE_ONLY)
+ private Object info;
+
+ /**
+ * Get the additional info type.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the additional info.
+ *
+ * @return the info value
+ */
+ public Object info() {
+ return this.info;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContract.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContract.java
new file mode 100644
index 000000000000..bb697f8ee64f
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContract.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Error details.
+ * Contains details when the response code indicates an error.
+ */
+public class ErrorContract {
+ /**
+ * The details of the error.
+ */
+ @JsonProperty(value = "error")
+ private ErrorResponse error;
+
+ /**
+ * Get the details of the error.
+ *
+ * @return the error value
+ */
+ public ErrorResponse error() {
+ return this.error;
+ }
+
+ /**
+ * Set the details of the error.
+ *
+ * @param error the error value to set
+ * @return the ErrorContract object itself.
+ */
+ public ErrorContract withError(ErrorResponse error) {
+ this.error = error;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContractException.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContractException.java
new file mode 100644
index 000000000000..778235298660
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorContractException.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.rest.RestException;
+import okhttp3.ResponseBody;
+import retrofit2.Response;
+
+/**
+ * Exception thrown for an invalid response with ErrorContract information.
+ */
+public class ErrorContractException extends RestException {
+ /**
+ * Initializes a new instance of the ErrorContractException class.
+ *
+ * @param message the exception message or the response content if a message is not available
+ * @param response the HTTP response
+ */
+ public ErrorContractException(final String message, final Response response) {
+ super(message, response);
+ }
+
+ /**
+ * Initializes a new instance of the ErrorContractException 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 ErrorContractException(final String message, final Response response, final ErrorContract body) {
+ super(message, response, body);
+ }
+
+ @Override
+ public ErrorContract body() {
+ return (ErrorContract) super.body();
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorResponse.java
new file mode 100644
index 000000000000..20996e06d101
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ErrorResponse.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The resource management error response.
+ */
+public class ErrorResponse {
+ /**
+ * The error code.
+ */
+ @JsonProperty(value = "code", access = JsonProperty.Access.WRITE_ONLY)
+ private String code;
+
+ /**
+ * The error message.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /**
+ * The error target.
+ */
+ @JsonProperty(value = "target", access = JsonProperty.Access.WRITE_ONLY)
+ private String target;
+
+ /**
+ * The error details.
+ */
+ @JsonProperty(value = "details", access = JsonProperty.Access.WRITE_ONLY)
+ private List details;
+
+ /**
+ * The error additional info.
+ */
+ @JsonProperty(value = "additionalInfo", access = JsonProperty.Access.WRITE_ONLY)
+ private List additionalInfo;
+
+ /**
+ * Get the error code.
+ *
+ * @return the code value
+ */
+ public String code() {
+ return this.code;
+ }
+
+ /**
+ * Get the error message.
+ *
+ * @return the message value
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * Get the error target.
+ *
+ * @return the target value
+ */
+ public String target() {
+ return this.target;
+ }
+
+ /**
+ * Get the error details.
+ *
+ * @return the details value
+ */
+ public List details() {
+ return this.details;
+ }
+
+ /**
+ * Get the error additional info.
+ *
+ * @return the additionalInfo value
+ */
+ public List additionalInfo() {
+ return this.additionalInfo;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Gateways.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Gateways.java
new file mode 100644
index 000000000000..b33e98896052
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Gateways.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.loganalytics.v2020_03_01_preview;
+
+import rx.Completable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.GatewaysInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Gateways.
+ */
+public interface Gateways extends HasInner {
+ /**
+ * Delete a Log Analytics gateway.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param gatewayId The Log Analytics gateway Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String gatewayId);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Identity.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Identity.java
new file mode 100644
index 000000000000..409186736736
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Identity.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Identity for the resource.
+ */
+public class Identity {
+ /**
+ * The principal ID of resource identity.
+ */
+ @JsonProperty(value = "principalId", access = JsonProperty.Access.WRITE_ONLY)
+ private String principalId;
+
+ /**
+ * The tenant ID of resource.
+ */
+ @JsonProperty(value = "tenantId", access = JsonProperty.Access.WRITE_ONLY)
+ private String tenantId;
+
+ /**
+ * The identity type. Possible values include: 'SystemAssigned', 'None'.
+ */
+ @JsonProperty(value = "type", required = true)
+ private IdentityType type;
+
+ /**
+ * Get the principal ID of resource identity.
+ *
+ * @return the principalId value
+ */
+ public String principalId() {
+ return this.principalId;
+ }
+
+ /**
+ * Get the tenant ID of resource.
+ *
+ * @return the tenantId value
+ */
+ public String tenantId() {
+ return this.tenantId;
+ }
+
+ /**
+ * Get the identity type. Possible values include: 'SystemAssigned', 'None'.
+ *
+ * @return the type value
+ */
+ public IdentityType type() {
+ return this.type;
+ }
+
+ /**
+ * Set the identity type. Possible values include: 'SystemAssigned', 'None'.
+ *
+ * @param type the type value to set
+ * @return the Identity object itself.
+ */
+ public Identity withType(IdentityType type) {
+ this.type = type;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IdentityType.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IdentityType.java
new file mode 100644
index 000000000000..ba7550063bee
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IdentityType.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/**
+ * Defines values for IdentityType.
+ */
+public enum IdentityType {
+ /** Enum value SystemAssigned. */
+ SYSTEM_ASSIGNED("SystemAssigned"),
+
+ /** Enum value None. */
+ NONE("None");
+
+ /** The actual serialized value for a IdentityType instance. */
+ private String value;
+
+ IdentityType(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Parses a serialized value to a IdentityType instance.
+ *
+ * @param value the serialized value to parse.
+ * @return the parsed IdentityType object, or null if unable to parse.
+ */
+ @JsonCreator
+ public static IdentityType fromString(String value) {
+ IdentityType[] items = IdentityType.values();
+ for (IdentityType item : items) {
+ if (item.toString().equalsIgnoreCase(value)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ @JsonValue
+ @Override
+ public String toString() {
+ return this.value;
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePack.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePack.java
new file mode 100644
index 000000000000..8093ae06911b
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePack.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.IntelligencePackInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+
+/**
+ * Type representing IntelligencePack.
+ */
+public interface IntelligencePack extends HasInner, HasManager {
+ /**
+ * @return the displayName value.
+ */
+ String displayName();
+
+ /**
+ * @return the enabled value.
+ */
+ Boolean enabled();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePacks.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePacks.java
new file mode 100644
index 000000000000..8c27789df606
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/IntelligencePacks.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import rx.Completable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.IntelligencePacksInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing IntelligencePacks.
+ */
+public interface IntelligencePacks extends HasInner {
+ /**
+ * Disables an intelligence pack for a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param intelligencePackName The name of the intelligence pack to be disabled.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable disableAsync(String resourceGroupName, String workspaceName, String intelligencePackName);
+
+ /**
+ * Enables an intelligence pack for a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param intelligencePackName The name of the intelligence pack to be enabled.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable enableAsync(String resourceGroupName, String workspaceName, String intelligencePackName);
+
+ /**
+ * Lists all the intelligence packs possible and whether they are enabled or disabled for a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/KeyVaultProperties.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/KeyVaultProperties.java
new file mode 100644
index 000000000000..774e1cf05aa0
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/KeyVaultProperties.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The key vault properties.
+ */
+public class KeyVaultProperties {
+ /**
+ * The Key Vault uri which holds they key associated with the Log Analytics
+ * cluster.
+ */
+ @JsonProperty(value = "keyVaultUri")
+ private String keyVaultUri;
+
+ /**
+ * The name of the key associated with the Log Analytics cluster.
+ */
+ @JsonProperty(value = "keyName")
+ private String keyName;
+
+ /**
+ * The version of the key associated with the Log Analytics cluster.
+ */
+ @JsonProperty(value = "keyVersion")
+ private String keyVersion;
+
+ /**
+ * Get the Key Vault uri which holds they key associated with the Log Analytics cluster.
+ *
+ * @return the keyVaultUri value
+ */
+ public String keyVaultUri() {
+ return this.keyVaultUri;
+ }
+
+ /**
+ * Set the Key Vault uri which holds they key associated with the Log Analytics cluster.
+ *
+ * @param keyVaultUri the keyVaultUri value to set
+ * @return the KeyVaultProperties object itself.
+ */
+ public KeyVaultProperties withKeyVaultUri(String keyVaultUri) {
+ this.keyVaultUri = keyVaultUri;
+ return this;
+ }
+
+ /**
+ * Get the name of the key associated with the Log Analytics cluster.
+ *
+ * @return the keyName value
+ */
+ public String keyName() {
+ return this.keyName;
+ }
+
+ /**
+ * Set the name of the key associated with the Log Analytics cluster.
+ *
+ * @param keyName the keyName value to set
+ * @return the KeyVaultProperties object itself.
+ */
+ public KeyVaultProperties withKeyName(String keyName) {
+ this.keyName = keyName;
+ return this;
+ }
+
+ /**
+ * Get the version of the key associated with the Log Analytics cluster.
+ *
+ * @return the keyVersion value
+ */
+ public String keyVersion() {
+ return this.keyVersion;
+ }
+
+ /**
+ * Set the version of the key associated with the Log Analytics cluster.
+ *
+ * @param keyVersion the keyVersion value to set
+ * @return the KeyVaultProperties object itself.
+ */
+ public KeyVaultProperties withKeyVersion(String keyVersion) {
+ this.keyVersion = keyVersion;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedService.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedService.java
new file mode 100644
index 000000000000..3ef5ca2055d6
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedService.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LinkedServiceInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.Map;
+
+/**
+ * Type representing LinkedService.
+ */
+public interface LinkedService extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the provisioningState value.
+ */
+ LinkedServiceEntityStatus provisioningState();
+
+ /**
+ * @return the resourceId value.
+ */
+ String resourceId();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the writeAccessResourceId value.
+ */
+ String writeAccessResourceId();
+
+ /**
+ * The entirety of the LinkedService definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of LinkedService definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a LinkedService definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the linkedservice definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithCreate withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the linkedservice definition allowing to specify ProvisioningState.
+ */
+ interface WithProvisioningState {
+ /**
+ * Specifies provisioningState.
+ * @param provisioningState The provisioning state of the linked service. Possible values include: 'Succeeded', 'Deleting', 'ProvisioningAccount', 'Updating'
+ * @return the next definition stage
+ */
+ WithCreate withProvisioningState(LinkedServiceEntityStatus provisioningState);
+ }
+
+ /**
+ * The stage of the linkedservice definition allowing to specify ResourceId.
+ */
+ interface WithResourceId {
+ /**
+ * Specifies resourceId.
+ * @param resourceId The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access
+ * @return the next definition stage
+ */
+ WithCreate withResourceId(String resourceId);
+ }
+
+ /**
+ * The stage of the linkedservice definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the linkedservice definition allowing to specify WriteAccessResourceId.
+ */
+ interface WithWriteAccessResourceId {
+ /**
+ * Specifies writeAccessResourceId.
+ * @param writeAccessResourceId The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access
+ * @return the next definition stage
+ */
+ WithCreate withWriteAccessResourceId(String writeAccessResourceId);
+ }
+
+ /**
+ * 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.WithProvisioningState, DefinitionStages.WithResourceId, DefinitionStages.WithTags, DefinitionStages.WithWriteAccessResourceId {
+ }
+ }
+ /**
+ * The template for a LinkedService update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithProvisioningState, UpdateStages.WithResourceId, UpdateStages.WithTags, UpdateStages.WithWriteAccessResourceId {
+ }
+
+ /**
+ * Grouping of LinkedService update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the linkedservice update allowing to specify ProvisioningState.
+ */
+ interface WithProvisioningState {
+ /**
+ * Specifies provisioningState.
+ * @param provisioningState The provisioning state of the linked service. Possible values include: 'Succeeded', 'Deleting', 'ProvisioningAccount', 'Updating'
+ * @return the next update stage
+ */
+ Update withProvisioningState(LinkedServiceEntityStatus provisioningState);
+ }
+
+ /**
+ * The stage of the linkedservice update allowing to specify ResourceId.
+ */
+ interface WithResourceId {
+ /**
+ * Specifies resourceId.
+ * @param resourceId The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access
+ * @return the next update stage
+ */
+ Update withResourceId(String resourceId);
+ }
+
+ /**
+ * The stage of the linkedservice update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the linkedservice update allowing to specify WriteAccessResourceId.
+ */
+ interface WithWriteAccessResourceId {
+ /**
+ * Specifies writeAccessResourceId.
+ * @param writeAccessResourceId The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access
+ * @return the next update stage
+ */
+ Update withWriteAccessResourceId(String writeAccessResourceId);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServiceEntityStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServiceEntityStatus.java
new file mode 100644
index 000000000000..c9c094921f4a
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServiceEntityStatus.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for LinkedServiceEntityStatus.
+ */
+public final class LinkedServiceEntityStatus extends ExpandableStringEnum {
+ /** Static value Succeeded for LinkedServiceEntityStatus. */
+ public static final LinkedServiceEntityStatus SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Deleting for LinkedServiceEntityStatus. */
+ public static final LinkedServiceEntityStatus DELETING = fromString("Deleting");
+
+ /** Static value ProvisioningAccount for LinkedServiceEntityStatus. */
+ public static final LinkedServiceEntityStatus PROVISIONING_ACCOUNT = fromString("ProvisioningAccount");
+
+ /** Static value Updating for LinkedServiceEntityStatus. */
+ public static final LinkedServiceEntityStatus UPDATING = fromString("Updating");
+
+ /**
+ * Creates or finds a LinkedServiceEntityStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding LinkedServiceEntityStatus
+ */
+ @JsonCreator
+ public static LinkedServiceEntityStatus fromString(String name) {
+ return fromString(name, LinkedServiceEntityStatus.class);
+ }
+
+ /**
+ * @return known LinkedServiceEntityStatus values
+ */
+ public static Collection values() {
+ return values(LinkedServiceEntityStatus.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServices.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServices.java
new file mode 100644
index 000000000000..1e7899ed1d8a
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedServices.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LinkedServicesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing LinkedServices.
+ */
+public interface LinkedServices extends SupportsCreating, HasInner {
+ /**
+ * Gets a linked service instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param linkedServiceName Name of the linked service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, String linkedServiceName);
+
+ /**
+ * Gets the linked services instances in a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+ /**
+ * Deletes a linked service instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param linkedServiceName Name of the linked service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String linkedServiceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccounts.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccounts.java
new file mode 100644
index 000000000000..06d2dba268af
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccounts.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LinkedStorageAccountsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing LinkedStorageAccounts.
+ */
+public interface LinkedStorageAccounts extends SupportsCreating, HasInner {
+ /**
+ * Gets all linked storage account of a specific data source type associated with the specified workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataSourceType Linked storage accounts type. Possible values include: 'CustomLogs', 'AzureWatson'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, DataSourceType dataSourceType);
+
+ /**
+ * Gets all linked storage accounts associated with the specified workspace, storage accounts will be sorted by their data source type.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+ /**
+ * Deletes all linked storage accounts of a specific data source type associated with the specified workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param dataSourceType Linked storage accounts type. Possible values include: 'CustomLogs', 'AzureWatson'
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, DataSourceType dataSourceType);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccountsResource.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccountsResource.java
new file mode 100644
index 000000000000..ed811adaff5e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/LinkedStorageAccountsResource.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LinkedStorageAccountsResourceInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+
+/**
+ * Type representing LinkedStorageAccountsResource.
+ */
+public interface LinkedStorageAccountsResource extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the dataSourceType value.
+ */
+ DataSourceType dataSourceType();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the storageAccountIds value.
+ */
+ List storageAccountIds();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the LinkedStorageAccountsResource definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithStorageAccountIds, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of LinkedStorageAccountsResource definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a LinkedStorageAccountsResource definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the linkedstorageaccountsresource definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithStorageAccountIds withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the linkedstorageaccountsresource definition allowing to specify StorageAccountIds.
+ */
+ interface WithStorageAccountIds {
+ /**
+ * Specifies storageAccountIds.
+ * @param storageAccountIds Linked storage accounts resources ids
+ * @return the next definition stage
+ */
+ WithCreate withStorageAccountIds(List storageAccountIds);
+ }
+
+ /**
+ * 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 {
+ }
+ }
+ /**
+ * The template for a LinkedStorageAccountsResource update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithStorageAccountIds {
+ }
+
+ /**
+ * Grouping of LinkedStorageAccountsResource update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the linkedstorageaccountsresource update allowing to specify StorageAccountIds.
+ */
+ interface WithStorageAccountIds {
+ /**
+ * Specifies storageAccountIds.
+ * @param storageAccountIds Linked storage accounts resources ids
+ * @return the next update stage
+ */
+ Update withStorageAccountIds(List storageAccountIds);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroup.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroup.java
new file mode 100644
index 000000000000..fe5116b08719
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroup.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.ManagementGroupInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing ManagementGroup.
+ */
+public interface ManagementGroup extends HasInner, HasManager {
+ /**
+ * @return the created value.
+ */
+ DateTime created();
+
+ /**
+ * @return the dataReceived value.
+ */
+ DateTime dataReceived();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the isGateway value.
+ */
+ Boolean isGateway();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the serverCount value.
+ */
+ Integer serverCount();
+
+ /**
+ * @return the sku value.
+ */
+ String sku();
+
+ /**
+ * @return the version value.
+ */
+ String version();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroups.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroups.java
new file mode 100644
index 000000000000..e2511eeadf2c
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/ManagementGroups.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.ManagementGroupsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing ManagementGroups.
+ */
+public interface ManagementGroups extends HasInner {
+ /**
+ * Gets a list of management groups connected to a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/MetricName.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/MetricName.java
new file mode 100644
index 000000000000..229041e87ddc
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/MetricName.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The name of a metric.
+ */
+public class MetricName {
+ /**
+ * The system name of the metric.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * The localized name of the metric.
+ */
+ @JsonProperty(value = "localizedValue")
+ private String localizedValue;
+
+ /**
+ * Get the system name of the metric.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the system name of the metric.
+ *
+ * @param value the value value to set
+ * @return the MetricName object itself.
+ */
+ public MetricName withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the localized name of the metric.
+ *
+ * @return the localizedValue value
+ */
+ public String localizedValue() {
+ return this.localizedValue;
+ }
+
+ /**
+ * Set the localized name of the metric.
+ *
+ * @param localizedValue the localizedValue value to set
+ * @return the MetricName object itself.
+ */
+ public MetricName withLocalizedValue(String localizedValue) {
+ this.localizedValue = localizedValue;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Operation.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Operation.java
new file mode 100644
index 000000000000..45c5a6433a0e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.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/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationDisplay.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationDisplay.java
new file mode 100644
index 000000000000..8b3a77957b0f
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationDisplay.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Display metadata associated with the operation.
+ */
+public class OperationDisplay {
+ /**
+ * Service provider: Microsoft OperationsManagement.
+ */
+ @JsonProperty(value = "provider")
+ private String provider;
+
+ /**
+ * Resource on which the operation is performed etc.
+ */
+ @JsonProperty(value = "resource")
+ private String resource;
+
+ /**
+ * Type of operation: get, read, delete, etc.
+ */
+ @JsonProperty(value = "operation")
+ private String operation;
+
+ /**
+ * Description of operation.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * Get service provider: Microsoft OperationsManagement.
+ *
+ * @return the provider value
+ */
+ public String provider() {
+ return this.provider;
+ }
+
+ /**
+ * Set service provider: Microsoft OperationsManagement.
+ *
+ * @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 etc.
+ *
+ * @return the resource value
+ */
+ public String resource() {
+ return this.resource;
+ }
+
+ /**
+ * Set resource on which the operation is performed etc.
+ *
+ * @param resource the resource value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withResource(String resource) {
+ this.resource = resource;
+ return this;
+ }
+
+ /**
+ * Get type of operation: get, read, delete, etc.
+ *
+ * @return the operation value
+ */
+ public String operation() {
+ return this.operation;
+ }
+
+ /**
+ * Set type of operation: get, read, delete, etc.
+ *
+ * @param operation the operation value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withOperation(String operation) {
+ this.operation = operation;
+ return this;
+ }
+
+ /**
+ * Get description of operation.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set description of operation.
+ *
+ * @param description the description value to set
+ * @return the OperationDisplay object itself.
+ */
+ public OperationDisplay withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatus.java
new file mode 100644
index 000000000000..70671acac36d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatus.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.OperationStatusInner;
+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.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+
+/**
+ * Type representing OperationStatus.
+ */
+public interface OperationStatus extends HasInner, Indexable, Refreshable, HasManager {
+ /**
+ * @return the endTime value.
+ */
+ String endTime();
+
+ /**
+ * @return the error value.
+ */
+ ErrorResponse error();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the startTime value.
+ */
+ String startTime();
+
+ /**
+ * @return the status value.
+ */
+ String status();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatuses.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatuses.java
new file mode 100644
index 000000000000..7a926319cae6
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/OperationStatuses.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.OperationStatusesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing OperationStatuses.
+ */
+public interface OperationStatuses extends HasInner {
+ /**
+ * Get the status of a long running azure asynchronous operation.
+ *
+ * @param location The region name of operation.
+ * @param asyncOperationId The operation Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String location, String asyncOperationId);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Operations.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Operations.java
new file mode 100644
index 000000000000..630aee5cba8d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.OperationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Operations.
+ */
+public interface Operations extends HasInner {
+ /**
+ * Lists all of the available OperationalInsights Rest API operations.
+ *
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PrivateLinkScopedResource.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PrivateLinkScopedResource.java
new file mode 100644
index 000000000000..88cd7fa10690
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PrivateLinkScopedResource.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The private link scope resource reference.
+ */
+public class PrivateLinkScopedResource {
+ /**
+ * The full resource Id of the private link scope resource.
+ */
+ @JsonProperty(value = "resourceId")
+ private String resourceId;
+
+ /**
+ * The private link scope unique Identifier.
+ */
+ @JsonProperty(value = "scopeId")
+ private String scopeId;
+
+ /**
+ * Get the full resource Id of the private link scope resource.
+ *
+ * @return the resourceId value
+ */
+ public String resourceId() {
+ return this.resourceId;
+ }
+
+ /**
+ * Set the full resource Id of the private link scope resource.
+ *
+ * @param resourceId the resourceId value to set
+ * @return the PrivateLinkScopedResource object itself.
+ */
+ public PrivateLinkScopedResource withResourceId(String resourceId) {
+ this.resourceId = resourceId;
+ return this;
+ }
+
+ /**
+ * Get the private link scope unique Identifier.
+ *
+ * @return the scopeId value
+ */
+ public String scopeId() {
+ return this.scopeId;
+ }
+
+ /**
+ * Set the private link scope unique Identifier.
+ *
+ * @param scopeId the scopeId value to set
+ * @return the PrivateLinkScopedResource object itself.
+ */
+ public PrivateLinkScopedResource withScopeId(String scopeId) {
+ this.scopeId = scopeId;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PublicNetworkAccessType.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PublicNetworkAccessType.java
new file mode 100644
index 000000000000..bb6819566573
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PublicNetworkAccessType.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for PublicNetworkAccessType.
+ */
+public final class PublicNetworkAccessType extends ExpandableStringEnum {
+ /** Static value Enabled for PublicNetworkAccessType. */
+ public static final PublicNetworkAccessType ENABLED = fromString("Enabled");
+
+ /** Static value Disabled for PublicNetworkAccessType. */
+ public static final PublicNetworkAccessType DISABLED = fromString("Disabled");
+
+ /**
+ * Creates or finds a PublicNetworkAccessType from its string representation.
+ * @param name a name to look for
+ * @return the corresponding PublicNetworkAccessType
+ */
+ @JsonCreator
+ public static PublicNetworkAccessType fromString(String name) {
+ return fromString(name, PublicNetworkAccessType.class);
+ }
+
+ /**
+ * @return known PublicNetworkAccessType values
+ */
+ public static Collection values() {
+ return values(PublicNetworkAccessType.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PurgeState.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/PurgeState.java
new file mode 100644
index 000000000000..dd891719cfc5
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/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.loganalytics.v2020_03_01_preview;
+
+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/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearch.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearch.java
new file mode 100644
index 000000000000..96c464ea83d4
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearch.java
@@ -0,0 +1,285 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SavedSearchInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+
+/**
+ * Type representing SavedSearch.
+ */
+public interface SavedSearch extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the category value.
+ */
+ String category();
+
+ /**
+ * @return the displayName value.
+ */
+ String displayName();
+
+ /**
+ * @return the etag value.
+ */
+ String etag();
+
+ /**
+ * @return the functionAlias value.
+ */
+ String functionAlias();
+
+ /**
+ * @return the functionParameters value.
+ */
+ String functionParameters();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the query value.
+ */
+ String query();
+
+ /**
+ * @return the tags value.
+ */
+ List tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the version value.
+ */
+ Long version();
+
+ /**
+ * The entirety of the SavedSearch definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithCategory, DefinitionStages.WithDisplayName, DefinitionStages.WithQuery, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of SavedSearch definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a SavedSearch definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithCategory withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Category.
+ */
+ interface WithCategory {
+ /**
+ * Specifies category.
+ * @param category The category of the saved search. This helps the user to find a saved search faster
+ * @return the next definition stage
+ */
+ WithDisplayName withCategory(String category);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify DisplayName.
+ */
+ interface WithDisplayName {
+ /**
+ * Specifies displayName.
+ * @param displayName Saved search display name
+ * @return the next definition stage
+ */
+ WithQuery withDisplayName(String displayName);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Query.
+ */
+ interface WithQuery {
+ /**
+ * Specifies query.
+ * @param query The query expression for the saved search
+ * @return the next definition stage
+ */
+ WithCreate withQuery(String query);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag of the saved search
+ * @return the next definition stage
+ */
+ WithCreate withEtag(String etag);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify FunctionAlias.
+ */
+ interface WithFunctionAlias {
+ /**
+ * Specifies functionAlias.
+ * @param functionAlias The function alias if query serves as a function
+ * @return the next definition stage
+ */
+ WithCreate withFunctionAlias(String functionAlias);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify FunctionParameters.
+ */
+ interface WithFunctionParameters {
+ /**
+ * Specifies functionParameters.
+ * @param functionParameters The optional function parameters if query serves as a function. Value should be in the following format: 'param-name1:type1 = default_value1, param-name2:type2 = default_value2'. For more examples and proper syntax please refer to https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions
+ * @return the next definition stage
+ */
+ WithCreate withFunctionParameters(String functionParameters);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags attached to the saved search
+ * @return the next definition stage
+ */
+ WithCreate withTags(List tags);
+ }
+
+ /**
+ * The stage of the savedsearch definition allowing to specify Version.
+ */
+ interface WithVersion {
+ /**
+ * Specifies version.
+ * @param version The version number of the query language. The current version is 2 and is the default
+ * @return the next definition stage
+ */
+ WithCreate withVersion(Long 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.WithEtag, DefinitionStages.WithFunctionAlias, DefinitionStages.WithFunctionParameters, DefinitionStages.WithTags, DefinitionStages.WithVersion {
+ }
+ }
+ /**
+ * The template for a SavedSearch update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithEtag, UpdateStages.WithFunctionAlias, UpdateStages.WithFunctionParameters, UpdateStages.WithTags, UpdateStages.WithVersion {
+ }
+
+ /**
+ * Grouping of SavedSearch update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the savedsearch update allowing to specify Etag.
+ */
+ interface WithEtag {
+ /**
+ * Specifies etag.
+ * @param etag The ETag of the saved search
+ * @return the next update stage
+ */
+ Update withEtag(String etag);
+ }
+
+ /**
+ * The stage of the savedsearch update allowing to specify FunctionAlias.
+ */
+ interface WithFunctionAlias {
+ /**
+ * Specifies functionAlias.
+ * @param functionAlias The function alias if query serves as a function
+ * @return the next update stage
+ */
+ Update withFunctionAlias(String functionAlias);
+ }
+
+ /**
+ * The stage of the savedsearch update allowing to specify FunctionParameters.
+ */
+ interface WithFunctionParameters {
+ /**
+ * Specifies functionParameters.
+ * @param functionParameters The optional function parameters if query serves as a function. Value should be in the following format: 'param-name1:type1 = default_value1, param-name2:type2 = default_value2'. For more examples and proper syntax please refer to https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions
+ * @return the next update stage
+ */
+ Update withFunctionParameters(String functionParameters);
+ }
+
+ /**
+ * The stage of the savedsearch update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags The tags attached to the saved search
+ * @return the next update stage
+ */
+ Update withTags(List tags);
+ }
+
+ /**
+ * The stage of the savedsearch update allowing to specify Version.
+ */
+ interface WithVersion {
+ /**
+ * Specifies version.
+ * @param version The version number of the query language. The current version is 2 and is the default
+ * @return the next update stage
+ */
+ Update withVersion(Long version);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearches.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearches.java
new file mode 100644
index 000000000000..446a19f6abe2
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearches.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SavedSearchesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing SavedSearches.
+ */
+public interface SavedSearches extends SupportsCreating, HasInner {
+ /**
+ * Gets the saved searches for a given Log Analytics Workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+ /**
+ * Gets the specified saved search for a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param savedSearchId The id of the saved search.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, String savedSearchId);
+
+ /**
+ * Deletes the specified saved search in a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param savedSearchId The id of the saved search.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String savedSearchId);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearchesListResult.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearchesListResult.java
new file mode 100644
index 000000000000..34dcc5e31132
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SavedSearchesListResult.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SavedSearchesListResultInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SavedSearchInner;
+import java.util.List;
+
+/**
+ * Type representing SavedSearchesListResult.
+ */
+public interface SavedSearchesListResult extends HasInner, HasManager {
+ /**
+ * @return the value value.
+ */
+ List value();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Schemas.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Schemas.java
new file mode 100644
index 000000000000..dc4484865f6f
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Schemas.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SchemasInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Schemas.
+ */
+public interface Schemas extends HasInner {
+ /**
+ * Gets the schema for a given workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchGetSchemaResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchGetSchemaResponse.java
new file mode 100644
index 000000000000..5f301679a749
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchGetSchemaResponse.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SearchGetSchemaResponseInner;
+import java.util.List;
+
+/**
+ * Type representing SearchGetSchemaResponse.
+ */
+public interface SearchGetSchemaResponse extends HasInner, HasManager {
+ /**
+ * @return the metadata value.
+ */
+ SearchMetadata metadata();
+
+ /**
+ * @return the value value.
+ */
+ List value();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadata.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadata.java
new file mode 100644
index 000000000000..9faf4b6a9e85
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadata.java
@@ -0,0 +1,461 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.List;
+import org.joda.time.DateTime;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Metadata for search results.
+ */
+public class SearchMetadata {
+ /**
+ * The request id of the search.
+ */
+ @JsonProperty(value = "requestId")
+ private String searchId;
+
+ /**
+ * The search result type.
+ */
+ @JsonProperty(value = "resultType")
+ private String resultType;
+
+ /**
+ * The total number of search results.
+ */
+ @JsonProperty(value = "total")
+ private Long total;
+
+ /**
+ * The number of top search results.
+ */
+ @JsonProperty(value = "top")
+ private Long top;
+
+ /**
+ * The id of the search results request.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * The core summaries.
+ */
+ @JsonProperty(value = "coreSummaries")
+ private List coreSummaries;
+
+ /**
+ * The status of the search results.
+ */
+ @JsonProperty(value = "status")
+ private String status;
+
+ /**
+ * The start time for the search.
+ */
+ @JsonProperty(value = "startTime")
+ private DateTime startTime;
+
+ /**
+ * The time of last update.
+ */
+ @JsonProperty(value = "lastUpdated")
+ private DateTime lastUpdated;
+
+ /**
+ * The ETag of the search results.
+ */
+ @JsonProperty(value = "eTag")
+ private String eTag;
+
+ /**
+ * How the results are sorted.
+ */
+ @JsonProperty(value = "sort")
+ private List sort;
+
+ /**
+ * The request time.
+ */
+ @JsonProperty(value = "requestTime")
+ private Long requestTime;
+
+ /**
+ * The aggregated value field.
+ */
+ @JsonProperty(value = "aggregatedValueField")
+ private String aggregatedValueField;
+
+ /**
+ * The aggregated grouping fields.
+ */
+ @JsonProperty(value = "aggregatedGroupingFields")
+ private String aggregatedGroupingFields;
+
+ /**
+ * The sum of all aggregates returned in the result set.
+ */
+ @JsonProperty(value = "sum")
+ private Long sum;
+
+ /**
+ * The max of all aggregates returned in the result set.
+ */
+ @JsonProperty(value = "max")
+ private Long max;
+
+ /**
+ * The schema.
+ */
+ @JsonProperty(value = "schema")
+ private SearchMetadataSchema schema;
+
+ /**
+ * Get the request id of the search.
+ *
+ * @return the searchId value
+ */
+ public String searchId() {
+ return this.searchId;
+ }
+
+ /**
+ * Set the request id of the search.
+ *
+ * @param searchId the searchId value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withSearchId(String searchId) {
+ this.searchId = searchId;
+ return this;
+ }
+
+ /**
+ * Get the search result type.
+ *
+ * @return the resultType value
+ */
+ public String resultType() {
+ return this.resultType;
+ }
+
+ /**
+ * Set the search result type.
+ *
+ * @param resultType the resultType value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withResultType(String resultType) {
+ this.resultType = resultType;
+ return this;
+ }
+
+ /**
+ * Get the total number of search results.
+ *
+ * @return the total value
+ */
+ public Long total() {
+ return this.total;
+ }
+
+ /**
+ * Set the total number of search results.
+ *
+ * @param total the total value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withTotal(Long total) {
+ this.total = total;
+ return this;
+ }
+
+ /**
+ * Get the number of top search results.
+ *
+ * @return the top value
+ */
+ public Long top() {
+ return this.top;
+ }
+
+ /**
+ * Set the number of top search results.
+ *
+ * @param top the top value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withTop(Long top) {
+ this.top = top;
+ return this;
+ }
+
+ /**
+ * Get the id of the search results request.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id of the search results request.
+ *
+ * @param id the id value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the core summaries.
+ *
+ * @return the coreSummaries value
+ */
+ public List coreSummaries() {
+ return this.coreSummaries;
+ }
+
+ /**
+ * Set the core summaries.
+ *
+ * @param coreSummaries the coreSummaries value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withCoreSummaries(List coreSummaries) {
+ this.coreSummaries = coreSummaries;
+ return this;
+ }
+
+ /**
+ * Get the status of the search results.
+ *
+ * @return the status value
+ */
+ public String status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status of the search results.
+ *
+ * @param status the status value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withStatus(String status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the start time for the search.
+ *
+ * @return the startTime value
+ */
+ public DateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the start time for the search.
+ *
+ * @param startTime the startTime value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withStartTime(DateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the time of last update.
+ *
+ * @return the lastUpdated value
+ */
+ public DateTime lastUpdated() {
+ return this.lastUpdated;
+ }
+
+ /**
+ * Set the time of last update.
+ *
+ * @param lastUpdated the lastUpdated value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withLastUpdated(DateTime lastUpdated) {
+ this.lastUpdated = lastUpdated;
+ return this;
+ }
+
+ /**
+ * Get the ETag of the search results.
+ *
+ * @return the eTag value
+ */
+ public String eTag() {
+ return this.eTag;
+ }
+
+ /**
+ * Set the ETag of the search results.
+ *
+ * @param eTag the eTag value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withETag(String eTag) {
+ this.eTag = eTag;
+ return this;
+ }
+
+ /**
+ * Get how the results are sorted.
+ *
+ * @return the sort value
+ */
+ public List sort() {
+ return this.sort;
+ }
+
+ /**
+ * Set how the results are sorted.
+ *
+ * @param sort the sort value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withSort(List sort) {
+ this.sort = sort;
+ return this;
+ }
+
+ /**
+ * Get the request time.
+ *
+ * @return the requestTime value
+ */
+ public Long requestTime() {
+ return this.requestTime;
+ }
+
+ /**
+ * Set the request time.
+ *
+ * @param requestTime the requestTime value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withRequestTime(Long requestTime) {
+ this.requestTime = requestTime;
+ return this;
+ }
+
+ /**
+ * Get the aggregated value field.
+ *
+ * @return the aggregatedValueField value
+ */
+ public String aggregatedValueField() {
+ return this.aggregatedValueField;
+ }
+
+ /**
+ * Set the aggregated value field.
+ *
+ * @param aggregatedValueField the aggregatedValueField value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withAggregatedValueField(String aggregatedValueField) {
+ this.aggregatedValueField = aggregatedValueField;
+ return this;
+ }
+
+ /**
+ * Get the aggregated grouping fields.
+ *
+ * @return the aggregatedGroupingFields value
+ */
+ public String aggregatedGroupingFields() {
+ return this.aggregatedGroupingFields;
+ }
+
+ /**
+ * Set the aggregated grouping fields.
+ *
+ * @param aggregatedGroupingFields the aggregatedGroupingFields value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withAggregatedGroupingFields(String aggregatedGroupingFields) {
+ this.aggregatedGroupingFields = aggregatedGroupingFields;
+ return this;
+ }
+
+ /**
+ * Get the sum of all aggregates returned in the result set.
+ *
+ * @return the sum value
+ */
+ public Long sum() {
+ return this.sum;
+ }
+
+ /**
+ * Set the sum of all aggregates returned in the result set.
+ *
+ * @param sum the sum value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withSum(Long sum) {
+ this.sum = sum;
+ return this;
+ }
+
+ /**
+ * Get the max of all aggregates returned in the result set.
+ *
+ * @return the max value
+ */
+ public Long max() {
+ return this.max;
+ }
+
+ /**
+ * Set the max of all aggregates returned in the result set.
+ *
+ * @param max the max value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withMax(Long max) {
+ this.max = max;
+ return this;
+ }
+
+ /**
+ * Get the schema.
+ *
+ * @return the schema value
+ */
+ public SearchMetadataSchema schema() {
+ return this.schema;
+ }
+
+ /**
+ * Set the schema.
+ *
+ * @param schema the schema value to set
+ * @return the SearchMetadata object itself.
+ */
+ public SearchMetadata withSchema(SearchMetadataSchema schema) {
+ this.schema = schema;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadataSchema.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadataSchema.java
new file mode 100644
index 000000000000..b22bbabd5d9e
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchMetadataSchema.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Schema metadata for search.
+ */
+public class SearchMetadataSchema {
+ /**
+ * The name of the metadata schema.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The version of the metadata schema.
+ */
+ @JsonProperty(value = "version")
+ private Integer version;
+
+ /**
+ * Get the name of the metadata schema.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the metadata schema.
+ *
+ * @param name the name value to set
+ * @return the SearchMetadataSchema object itself.
+ */
+ public SearchMetadataSchema withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the version of the metadata schema.
+ *
+ * @return the version value
+ */
+ public Integer version() {
+ return this.version;
+ }
+
+ /**
+ * Set the version of the metadata schema.
+ *
+ * @param version the version value to set
+ * @return the SearchMetadataSchema object itself.
+ */
+ public SearchMetadataSchema withVersion(Integer version) {
+ this.version = version;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSchemaValue.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSchemaValue.java
new file mode 100644
index 000000000000..64e9d13b1019
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSchemaValue.java
@@ -0,0 +1,200 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Value object for schema results.
+ */
+public class SearchSchemaValue {
+ /**
+ * The name of the schema.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The display name of the schema.
+ */
+ @JsonProperty(value = "displayName")
+ private String displayName;
+
+ /**
+ * The type.
+ */
+ @JsonProperty(value = "type")
+ private String type;
+
+ /**
+ * The boolean that indicates the field is searchable as free text.
+ */
+ @JsonProperty(value = "indexed", required = true)
+ private boolean indexed;
+
+ /**
+ * The boolean that indicates whether or not the field is stored.
+ */
+ @JsonProperty(value = "stored", required = true)
+ private boolean stored;
+
+ /**
+ * The boolean that indicates whether or not the field is a facet.
+ */
+ @JsonProperty(value = "facet", required = true)
+ private boolean facet;
+
+ /**
+ * The array of workflows containing the field.
+ */
+ @JsonProperty(value = "ownerType")
+ private List ownerType;
+
+ /**
+ * Get the name of the schema.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the schema.
+ *
+ * @param name the name value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the display name of the schema.
+ *
+ * @return the displayName value
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Set the display name of the schema.
+ *
+ * @param displayName the displayName value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ /**
+ * Get the type.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type.
+ *
+ * @param type the type value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withType(String type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Get the boolean that indicates the field is searchable as free text.
+ *
+ * @return the indexed value
+ */
+ public boolean indexed() {
+ return this.indexed;
+ }
+
+ /**
+ * Set the boolean that indicates the field is searchable as free text.
+ *
+ * @param indexed the indexed value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withIndexed(boolean indexed) {
+ this.indexed = indexed;
+ return this;
+ }
+
+ /**
+ * Get the boolean that indicates whether or not the field is stored.
+ *
+ * @return the stored value
+ */
+ public boolean stored() {
+ return this.stored;
+ }
+
+ /**
+ * Set the boolean that indicates whether or not the field is stored.
+ *
+ * @param stored the stored value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withStored(boolean stored) {
+ this.stored = stored;
+ return this;
+ }
+
+ /**
+ * Get the boolean that indicates whether or not the field is a facet.
+ *
+ * @return the facet value
+ */
+ public boolean facet() {
+ return this.facet;
+ }
+
+ /**
+ * Set the boolean that indicates whether or not the field is a facet.
+ *
+ * @param facet the facet value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withFacet(boolean facet) {
+ this.facet = facet;
+ return this;
+ }
+
+ /**
+ * Get the array of workflows containing the field.
+ *
+ * @return the ownerType value
+ */
+ public List ownerType() {
+ return this.ownerType;
+ }
+
+ /**
+ * Set the array of workflows containing the field.
+ *
+ * @param ownerType the ownerType value to set
+ * @return the SearchSchemaValue object itself.
+ */
+ public SearchSchemaValue withOwnerType(List ownerType) {
+ this.ownerType = ownerType;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSort.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSort.java
new file mode 100644
index 000000000000..8f396fa25564
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSort.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The sort parameters for search.
+ */
+public class SearchSort {
+ /**
+ * The name of the field the search query is sorted on.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /**
+ * The sort order of the search. Possible values include: 'asc', 'desc'.
+ */
+ @JsonProperty(value = "order")
+ private SearchSortEnum order;
+
+ /**
+ * Get the name of the field the search query is sorted on.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the field the search query is sorted on.
+ *
+ * @param name the name value to set
+ * @return the SearchSort object itself.
+ */
+ public SearchSort withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the sort order of the search. Possible values include: 'asc', 'desc'.
+ *
+ * @return the order value
+ */
+ public SearchSortEnum order() {
+ return this.order;
+ }
+
+ /**
+ * Set the sort order of the search. Possible values include: 'asc', 'desc'.
+ *
+ * @param order the order value to set
+ * @return the SearchSort object itself.
+ */
+ public SearchSort withOrder(SearchSortEnum order) {
+ this.order = order;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSortEnum.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSortEnum.java
new file mode 100644
index 000000000000..b0c3ee1238fd
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SearchSortEnum.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SearchSortEnum.
+ */
+public final class SearchSortEnum extends ExpandableStringEnum {
+ /** Static value asc for SearchSortEnum. */
+ public static final SearchSortEnum ASC = fromString("asc");
+
+ /** Static value desc for SearchSortEnum. */
+ public static final SearchSortEnum DESC = fromString("desc");
+
+ /**
+ * Creates or finds a SearchSortEnum from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SearchSortEnum
+ */
+ @JsonCreator
+ public static SearchSortEnum fromString(String name) {
+ return fromString(name, SearchSortEnum.class);
+ }
+
+ /**
+ * @return known SearchSortEnum values
+ */
+ public static Collection values() {
+ return values(SearchSortEnum.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeys.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeys.java
new file mode 100644
index 000000000000..74a1040dafc1
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeys.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SharedKeysInner;
+
+/**
+ * Type representing SharedKeys.
+ */
+public interface SharedKeys extends HasInner, HasManager {
+ /**
+ * @return the primarySharedKey value.
+ */
+ String primarySharedKey();
+
+ /**
+ * @return the secondarySharedKey value.
+ */
+ String secondarySharedKey();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeysOperations.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeysOperations.java
new file mode 100644
index 000000000000..10d34d83dc4d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SharedKeysOperations.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.SharedKeysOperationsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing SharedKeysOperations.
+ */
+public interface SharedKeysOperations extends HasInner {
+ /**
+ * Gets the shared keys for a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getSharedKeysAsync(String resourceGroupName, String workspaceName);
+
+ /**
+ * Regenerates the shared keys for a Log Analytics Workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable regenerateAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SkuNameEnum.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SkuNameEnum.java
new file mode 100644
index 000000000000..1d51d6574332
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/SkuNameEnum.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for SkuNameEnum.
+ */
+public final class SkuNameEnum extends ExpandableStringEnum {
+ /** Static value Free for SkuNameEnum. */
+ public static final SkuNameEnum FREE = fromString("Free");
+
+ /** Static value Standard for SkuNameEnum. */
+ public static final SkuNameEnum STANDARD = fromString("Standard");
+
+ /** Static value Premium for SkuNameEnum. */
+ public static final SkuNameEnum PREMIUM = fromString("Premium");
+
+ /** Static value PerNode for SkuNameEnum. */
+ public static final SkuNameEnum PER_NODE = fromString("PerNode");
+
+ /** Static value PerGB2018 for SkuNameEnum. */
+ public static final SkuNameEnum PER_GB2018 = fromString("PerGB2018");
+
+ /** Static value Standalone for SkuNameEnum. */
+ public static final SkuNameEnum STANDALONE = fromString("Standalone");
+
+ /** Static value CapacityReservation for SkuNameEnum. */
+ public static final SkuNameEnum CAPACITY_RESERVATION = fromString("CapacityReservation");
+
+ /**
+ * Creates or finds a SkuNameEnum from its string representation.
+ * @param name a name to look for
+ * @return the corresponding SkuNameEnum
+ */
+ @JsonCreator
+ public static SkuNameEnum fromString(String name) {
+ return fromString(name, SkuNameEnum.class);
+ }
+
+ /**
+ * @return known SkuNameEnum values
+ */
+ public static Collection values() {
+ return values(SkuNameEnum.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageAccount.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageAccount.java
new file mode 100644
index 000000000000..e66a56cefbf0
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageAccount.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes a storage account connection.
+ */
+public class StorageAccount {
+ /**
+ * The Azure Resource Manager ID of the storage account resource.
+ */
+ @JsonProperty(value = "id", required = true)
+ private String id;
+
+ /**
+ * The storage account key.
+ */
+ @JsonProperty(value = "key", required = true)
+ private String key;
+
+ /**
+ * Get the Azure Resource Manager ID of the storage account resource.
+ *
+ * @return the id value
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the Azure Resource Manager ID of the storage account resource.
+ *
+ * @param id the id value to set
+ * @return the StorageAccount object itself.
+ */
+ public StorageAccount withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the storage account key.
+ *
+ * @return the key value
+ */
+ public String key() {
+ return this.key;
+ }
+
+ /**
+ * Set the storage account key.
+ *
+ * @param key the key value to set
+ * @return the StorageAccount object itself.
+ */
+ public StorageAccount withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsight.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsight.java
new file mode 100644
index 000000000000..ffa15d98368d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsight.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.StorageInsightInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Type representing StorageInsight.
+ */
+public interface StorageInsight extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the containers value.
+ */
+ List containers();
+
+ /**
+ * @return the eTag value.
+ */
+ String eTag();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the status value.
+ */
+ StorageInsightStatus status();
+
+ /**
+ * @return the storageAccount value.
+ */
+ StorageAccount storageAccount();
+
+ /**
+ * @return the tables value.
+ */
+ List tables();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the StorageInsight definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithWorkspace, DefinitionStages.WithStorageAccount, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of StorageInsight definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a StorageInsight definition.
+ */
+ interface Blank extends WithWorkspace {
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify Workspace.
+ */
+ interface WithWorkspace {
+ /**
+ * Specifies resourceGroupName, workspaceName.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive
+ * @param workspaceName The name of the workspace
+ * @return the next definition stage
+ */
+ WithStorageAccount withExistingWorkspace(String resourceGroupName, String workspaceName);
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify StorageAccount.
+ */
+ interface WithStorageAccount {
+ /**
+ * Specifies storageAccount.
+ * @param storageAccount The storage account connection details
+ * @return the next definition stage
+ */
+ WithCreate withStorageAccount(StorageAccount storageAccount);
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify Containers.
+ */
+ interface WithContainers {
+ /**
+ * Specifies containers.
+ * @param containers The names of the blob containers that the workspace should read
+ * @return the next definition stage
+ */
+ WithCreate withContainers(List containers);
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify ETag.
+ */
+ interface WithETag {
+ /**
+ * Specifies eTag.
+ * @param eTag The ETag of the storage insight
+ * @return the next definition stage
+ */
+ WithCreate withETag(String eTag);
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify Tables.
+ */
+ interface WithTables {
+ /**
+ * Specifies tables.
+ * @param tables The names of the Azure tables that the workspace should read
+ * @return the next definition stage
+ */
+ WithCreate withTables(List tables);
+ }
+
+ /**
+ * The stage of the storageinsight definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithContainers, DefinitionStages.WithETag, DefinitionStages.WithTables, DefinitionStages.WithTags {
+ }
+ }
+ /**
+ * The template for a StorageInsight update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithContainers, UpdateStages.WithETag, UpdateStages.WithTables, UpdateStages.WithTags {
+ }
+
+ /**
+ * Grouping of StorageInsight update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the storageinsight update allowing to specify Containers.
+ */
+ interface WithContainers {
+ /**
+ * Specifies containers.
+ * @param containers The names of the blob containers that the workspace should read
+ * @return the next update stage
+ */
+ Update withContainers(List containers);
+ }
+
+ /**
+ * The stage of the storageinsight update allowing to specify ETag.
+ */
+ interface WithETag {
+ /**
+ * Specifies eTag.
+ * @param eTag The ETag of the storage insight
+ * @return the next update stage
+ */
+ Update withETag(String eTag);
+ }
+
+ /**
+ * The stage of the storageinsight update allowing to specify Tables.
+ */
+ interface WithTables {
+ /**
+ * Specifies tables.
+ * @param tables The names of the Azure tables that the workspace should read
+ * @return the next update stage
+ */
+ Update withTables(List tables);
+ }
+
+ /**
+ * The stage of the storageinsight update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightConfigs.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightConfigs.java
new file mode 100644
index 000000000000..91bf2afbc8b8
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightConfigs.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.StorageInsightConfigsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing StorageInsightConfigs.
+ */
+public interface StorageInsightConfigs extends SupportsCreating, HasInner {
+ /**
+ * Gets a storage insight instance.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param storageInsightName Name of the storageInsightsConfigs resource
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String workspaceName, String storageInsightName);
+
+ /**
+ * Lists the storage insight instances within a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByWorkspaceAsync(final String resourceGroupName, final String workspaceName);
+
+ /**
+ * Deletes a storageInsightsConfigs resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param storageInsightName Name of the storageInsightsConfigs resource
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String workspaceName, String storageInsightName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightState.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightState.java
new file mode 100644
index 000000000000..6d9c00789165
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightState.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for StorageInsightState.
+ */
+public final class StorageInsightState extends ExpandableStringEnum {
+ /** Static value OK for StorageInsightState. */
+ public static final StorageInsightState OK = fromString("OK");
+
+ /** Static value ERROR for StorageInsightState. */
+ public static final StorageInsightState ERROR = fromString("ERROR");
+
+ /**
+ * Creates or finds a StorageInsightState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding StorageInsightState
+ */
+ @JsonCreator
+ public static StorageInsightState fromString(String name) {
+ return fromString(name, StorageInsightState.class);
+ }
+
+ /**
+ * @return known StorageInsightState values
+ */
+ public static Collection values() {
+ return values(StorageInsightState.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightStatus.java
new file mode 100644
index 000000000000..041b5bb9cdd2
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/StorageInsightStatus.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The status of the storage insight.
+ */
+public class StorageInsightStatus {
+ /**
+ * The state of the storage insight connection to the workspace. Possible
+ * values include: 'OK', 'ERROR'.
+ */
+ @JsonProperty(value = "state", required = true)
+ private StorageInsightState state;
+
+ /**
+ * Description of the state of the storage insight.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * Get the state of the storage insight connection to the workspace. Possible values include: 'OK', 'ERROR'.
+ *
+ * @return the state value
+ */
+ public StorageInsightState state() {
+ return this.state;
+ }
+
+ /**
+ * Set the state of the storage insight connection to the workspace. Possible values include: 'OK', 'ERROR'.
+ *
+ * @param state the state value to set
+ * @return the StorageInsightStatus object itself.
+ */
+ public StorageInsightStatus withState(StorageInsightState state) {
+ this.state = state;
+ return this;
+ }
+
+ /**
+ * Get description of the state of the storage insight.
+ *
+ * @return the description value
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set description of the state of the storage insight.
+ *
+ * @param description the description value to set
+ * @return the StorageInsightStatus object itself.
+ */
+ public StorageInsightStatus withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Table.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Table.java
new file mode 100644
index 000000000000..b12869d76566
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Table.java
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.TableInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+
+/**
+ * Type representing Table.
+ */
+public interface Table extends HasInner, Indexable, Refreshable
, Updatable, HasManager {
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the retentionInDays value.
+ */
+ Integer retentionInDays();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The template for a Table update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable
, UpdateStages.WithRetentionInDays {
+ }
+
+ /**
+ * Grouping of Table update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the table update allowing to specify RetentionInDays.
+ */
+ interface WithRetentionInDays {
+ /**
+ * Specifies retentionInDays.
+ * @param retentionInDays The data table data retention in days, between 30 and 730. Setting this property to null will default to the workspace retention
+ * @return the next update stage
+ */
+ Update withRetentionInDays(Integer retentionInDays);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tables.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tables.java
new file mode 100644
index 000000000000..5ff1cd051b6d
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tables.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.TablesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Tables.
+ */
+public interface Tables extends HasInner {
+ /**
+ * Gets a Log Analytics workspace table.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param tableName The name of the table.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable
getAsync(String resourceGroupName, String workspaceName, String tableName);
+
+ /**
+ * Gets all the tables for the specified Log Analytics workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable
listByWorkspaceAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tag.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tag.java
new file mode 100644
index 000000000000..73f5d1e34921
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Tag.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * A tag of a saved search.
+ */
+public class Tag {
+ /**
+ * The tag name.
+ */
+ @JsonProperty(value = "name", required = true)
+ private String name;
+
+ /**
+ * The tag value.
+ */
+ @JsonProperty(value = "value", required = true)
+ private String value;
+
+ /**
+ * Get the tag name.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the tag name.
+ *
+ * @param name the name value to set
+ * @return the Tag object itself.
+ */
+ public Tag withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the tag value.
+ *
+ * @return the value value
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the tag value.
+ *
+ * @param value the value value to set
+ * @return the Tag object itself.
+ */
+ public Tag withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Type.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Type.java
new file mode 100644
index 000000000000..5def6af3c038
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Type.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.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for Type.
+ */
+public final class Type extends ExpandableStringEnum {
+ /** Static value StorageAccount for Type. */
+ public static final Type STORAGE_ACCOUNT = fromString("StorageAccount");
+
+ /** Static value EventHub for Type. */
+ public static final Type EVENT_HUB = fromString("EventHub");
+
+ /**
+ * Creates or finds a Type from its string representation.
+ * @param name a name to look for
+ * @return the corresponding Type
+ */
+ @JsonCreator
+ public static Type fromString(String name) {
+ return fromString(name, Type.class);
+ }
+
+ /**
+ * @return known Type values
+ */
+ public static Collection values() {
+ return values(Type.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/UsageMetric.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/UsageMetric.java
new file mode 100644
index 000000000000..379852b65e17
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/UsageMetric.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.UsageMetricInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import org.joda.time.DateTime;
+
+/**
+ * Type representing UsageMetric.
+ */
+public interface UsageMetric extends HasInner, HasManager {
+ /**
+ * @return the currentValue value.
+ */
+ Double currentValue();
+
+ /**
+ * @return the limit value.
+ */
+ Double limit();
+
+ /**
+ * @return the name value.
+ */
+ MetricName name();
+
+ /**
+ * @return the nextResetTime value.
+ */
+ DateTime nextResetTime();
+
+ /**
+ * @return the quotaPeriod value.
+ */
+ String quotaPeriod();
+
+ /**
+ * @return the unit value.
+ */
+ String unit();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Usages.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Usages.java
new file mode 100644
index 000000000000..e07f9b67c073
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Usages.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.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.UsagesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Usages.
+ */
+public interface Usages extends HasInner {
+ /**
+ * Gets a list of usage metrics for a workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(String resourceGroupName, String workspaceName);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspace.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspace.java
new file mode 100644
index 000000000000..0fe08f78a790
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspace.java
@@ -0,0 +1,270 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspaceInner;
+
+/**
+ * Type representing Workspace.
+ */
+public interface Workspace extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, Refreshable, Updatable, HasManager {
+ /**
+ * @return the customerId value.
+ */
+ String customerId();
+
+ /**
+ * @return the eTag value.
+ */
+ String eTag();
+
+ /**
+ * @return the privateLinkScopedResources value.
+ */
+ List privateLinkScopedResources();
+
+ /**
+ * @return the provisioningState value.
+ */
+ WorkspaceEntityStatus provisioningState();
+
+ /**
+ * @return the publicNetworkAccessForIngestion value.
+ */
+ PublicNetworkAccessType publicNetworkAccessForIngestion();
+
+ /**
+ * @return the publicNetworkAccessForQuery value.
+ */
+ PublicNetworkAccessType publicNetworkAccessForQuery();
+
+ /**
+ * @return the retentionInDays value.
+ */
+ Integer retentionInDays();
+
+ /**
+ * @return the sku value.
+ */
+ WorkspaceSku sku();
+
+ /**
+ * @return the workspaceCapping value.
+ */
+ WorkspaceCapping workspaceCapping();
+
+ /**
+ * The entirety of the Workspace definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithGroup, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of Workspace definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a Workspace definition.
+ */
+ interface Blank extends GroupableResourceCore.DefinitionWithRegion {
+ }
+
+ /**
+ * The stage of the Workspace definition allowing to specify the resource group.
+ */
+ interface WithGroup extends GroupableResourceCore.DefinitionStages.WithGroup {
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify ETag.
+ */
+ interface WithETag {
+ /**
+ * Specifies eTag.
+ * @param eTag The ETag of the workspace
+ * @return the next definition stage
+ */
+ WithCreate withETag(String eTag);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify ProvisioningState.
+ */
+ interface WithProvisioningState {
+ /**
+ * Specifies provisioningState.
+ * @param provisioningState The provisioning state of the workspace. Possible values include: 'Creating', 'Succeeded', 'Failed', 'Canceled', 'Deleting', 'ProvisioningAccount', 'Updating'
+ * @return the next definition stage
+ */
+ WithCreate withProvisioningState(WorkspaceEntityStatus provisioningState);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify PublicNetworkAccessForIngestion.
+ */
+ interface WithPublicNetworkAccessForIngestion {
+ /**
+ * Specifies publicNetworkAccessForIngestion.
+ * @param publicNetworkAccessForIngestion The network access type for accessing Log Analytics ingestion. Possible values include: 'Enabled', 'Disabled'
+ * @return the next definition stage
+ */
+ WithCreate withPublicNetworkAccessForIngestion(PublicNetworkAccessType publicNetworkAccessForIngestion);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify PublicNetworkAccessForQuery.
+ */
+ interface WithPublicNetworkAccessForQuery {
+ /**
+ * Specifies publicNetworkAccessForQuery.
+ * @param publicNetworkAccessForQuery The network access type for accessing Log Analytics query. Possible values include: 'Enabled', 'Disabled'
+ * @return the next definition stage
+ */
+ WithCreate withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify RetentionInDays.
+ */
+ interface WithRetentionInDays {
+ /**
+ * Specifies retentionInDays.
+ * @param retentionInDays The workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus
+ * @return the next definition stage
+ */
+ WithCreate withRetentionInDays(Integer retentionInDays);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The SKU of the workspace
+ * @return the next definition stage
+ */
+ WithCreate withSku(WorkspaceSku sku);
+ }
+
+ /**
+ * The stage of the workspace definition allowing to specify WorkspaceCapping.
+ */
+ interface WithWorkspaceCapping {
+ /**
+ * Specifies workspaceCapping.
+ * @param workspaceCapping The daily volume cap for ingestion
+ * @return the next definition stage
+ */
+ WithCreate withWorkspaceCapping(WorkspaceCapping workspaceCapping);
+ }
+
+ /**
+ * 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.WithETag, DefinitionStages.WithProvisioningState, DefinitionStages.WithPublicNetworkAccessForIngestion, DefinitionStages.WithPublicNetworkAccessForQuery, DefinitionStages.WithRetentionInDays, DefinitionStages.WithSku, DefinitionStages.WithWorkspaceCapping {
+ }
+ }
+ /**
+ * The template for a Workspace update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, Resource.UpdateWithTags, UpdateStages.WithProvisioningState, UpdateStages.WithPublicNetworkAccessForIngestion, UpdateStages.WithPublicNetworkAccessForQuery, UpdateStages.WithRetentionInDays, UpdateStages.WithSku, UpdateStages.WithWorkspaceCapping {
+ }
+
+ /**
+ * Grouping of Workspace update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the workspace update allowing to specify ProvisioningState.
+ */
+ interface WithProvisioningState {
+ /**
+ * Specifies provisioningState.
+ * @param provisioningState The provisioning state of the workspace. Possible values include: 'Creating', 'Succeeded', 'Failed', 'Canceled', 'Deleting', 'ProvisioningAccount', 'Updating'
+ * @return the next update stage
+ */
+ Update withProvisioningState(WorkspaceEntityStatus provisioningState);
+ }
+
+ /**
+ * The stage of the workspace update allowing to specify PublicNetworkAccessForIngestion.
+ */
+ interface WithPublicNetworkAccessForIngestion {
+ /**
+ * Specifies publicNetworkAccessForIngestion.
+ * @param publicNetworkAccessForIngestion The network access type for accessing Log Analytics ingestion. Possible values include: 'Enabled', 'Disabled'
+ * @return the next update stage
+ */
+ Update withPublicNetworkAccessForIngestion(PublicNetworkAccessType publicNetworkAccessForIngestion);
+ }
+
+ /**
+ * The stage of the workspace update allowing to specify PublicNetworkAccessForQuery.
+ */
+ interface WithPublicNetworkAccessForQuery {
+ /**
+ * Specifies publicNetworkAccessForQuery.
+ * @param publicNetworkAccessForQuery The network access type for accessing Log Analytics query. Possible values include: 'Enabled', 'Disabled'
+ * @return the next update stage
+ */
+ Update withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery);
+ }
+
+ /**
+ * The stage of the workspace update allowing to specify RetentionInDays.
+ */
+ interface WithRetentionInDays {
+ /**
+ * Specifies retentionInDays.
+ * @param retentionInDays The workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus
+ * @return the next update stage
+ */
+ Update withRetentionInDays(Integer retentionInDays);
+ }
+
+ /**
+ * The stage of the workspace update allowing to specify Sku.
+ */
+ interface WithSku {
+ /**
+ * Specifies sku.
+ * @param sku The SKU of the workspace
+ * @return the next update stage
+ */
+ Update withSku(WorkspaceSku sku);
+ }
+
+ /**
+ * The stage of the workspace update allowing to specify WorkspaceCapping.
+ */
+ interface WithWorkspaceCapping {
+ /**
+ * Specifies workspaceCapping.
+ * @param workspaceCapping The daily volume cap for ingestion
+ * @return the next update stage
+ */
+ Update withWorkspaceCapping(WorkspaceCapping workspaceCapping);
+ }
+
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceCapping.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceCapping.java
new file mode 100644
index 000000000000..23d0e6dc3efc
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceCapping.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The daily volume cap for ingestion.
+ */
+public class WorkspaceCapping {
+ /**
+ * The workspace daily quota for ingestion. -1 means unlimited.
+ */
+ @JsonProperty(value = "dailyQuotaGb")
+ private Double dailyQuotaGb;
+
+ /**
+ * The time when the quota will be rest.
+ */
+ @JsonProperty(value = "quotaNextResetTime", access = JsonProperty.Access.WRITE_ONLY)
+ private String quotaNextResetTime;
+
+ /**
+ * The status of data ingestion for this workspace. Possible values
+ * include: 'RespectQuota', 'ForceOn', 'ForceOff', 'OverQuota',
+ * 'SubscriptionSuspended', 'ApproachingQuota'.
+ */
+ @JsonProperty(value = "dataIngestionStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private DataIngestionStatus dataIngestionStatus;
+
+ /**
+ * Get the workspace daily quota for ingestion. -1 means unlimited.
+ *
+ * @return the dailyQuotaGb value
+ */
+ public Double dailyQuotaGb() {
+ return this.dailyQuotaGb;
+ }
+
+ /**
+ * Set the workspace daily quota for ingestion. -1 means unlimited.
+ *
+ * @param dailyQuotaGb the dailyQuotaGb value to set
+ * @return the WorkspaceCapping object itself.
+ */
+ public WorkspaceCapping withDailyQuotaGb(Double dailyQuotaGb) {
+ this.dailyQuotaGb = dailyQuotaGb;
+ return this;
+ }
+
+ /**
+ * Get the time when the quota will be rest.
+ *
+ * @return the quotaNextResetTime value
+ */
+ public String quotaNextResetTime() {
+ return this.quotaNextResetTime;
+ }
+
+ /**
+ * Get the status of data ingestion for this workspace. Possible values include: 'RespectQuota', 'ForceOn', 'ForceOff', 'OverQuota', 'SubscriptionSuspended', 'ApproachingQuota'.
+ *
+ * @return the dataIngestionStatus value
+ */
+ public DataIngestionStatus dataIngestionStatus() {
+ return this.dataIngestionStatus;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceEntityStatus.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceEntityStatus.java
new file mode 100644
index 000000000000..41251ba2756f
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceEntityStatus.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for WorkspaceEntityStatus.
+ */
+public final class WorkspaceEntityStatus extends ExpandableStringEnum {
+ /** Static value Creating for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus CREATING = fromString("Creating");
+
+ /** Static value Succeeded for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus SUCCEEDED = fromString("Succeeded");
+
+ /** Static value Failed for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus FAILED = fromString("Failed");
+
+ /** Static value Canceled for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus CANCELED = fromString("Canceled");
+
+ /** Static value Deleting for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus DELETING = fromString("Deleting");
+
+ /** Static value ProvisioningAccount for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus PROVISIONING_ACCOUNT = fromString("ProvisioningAccount");
+
+ /** Static value Updating for WorkspaceEntityStatus. */
+ public static final WorkspaceEntityStatus UPDATING = fromString("Updating");
+
+ /**
+ * Creates or finds a WorkspaceEntityStatus from its string representation.
+ * @param name a name to look for
+ * @return the corresponding WorkspaceEntityStatus
+ */
+ @JsonCreator
+ public static WorkspaceEntityStatus fromString(String name) {
+ return fromString(name, WorkspaceEntityStatus.class);
+ }
+
+ /**
+ * @return known WorkspaceEntityStatus values
+ */
+ public static Collection values() {
+ return values(WorkspaceEntityStatus.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceModel.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceModel.java
new file mode 100644
index 000000000000..54e6dfb3fffb
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceModel.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.Resource;
+import com.microsoft.azure.arm.resources.models.GroupableResourceCore;
+import com.microsoft.azure.arm.resources.models.HasResourceGroup;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import java.util.List;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspaceInner;
+
+/**
+ * Type representing WorkspaceModel.
+ */
+public interface WorkspaceModel extends HasInner, Resource, GroupableResourceCore, HasResourceGroup, HasManager {
+ /**
+ * @return the customerId value.
+ */
+ String customerId();
+
+ /**
+ * @return the eTag value.
+ */
+ String eTag();
+
+ /**
+ * @return the privateLinkScopedResources value.
+ */
+ List privateLinkScopedResources();
+
+ /**
+ * @return the provisioningState value.
+ */
+ WorkspaceEntityStatus provisioningState();
+
+ /**
+ * @return the publicNetworkAccessForIngestion value.
+ */
+ PublicNetworkAccessType publicNetworkAccessForIngestion();
+
+ /**
+ * @return the publicNetworkAccessForQuery value.
+ */
+ PublicNetworkAccessType publicNetworkAccessForQuery();
+
+ /**
+ * @return the retentionInDays value.
+ */
+ Integer retentionInDays();
+
+ /**
+ * @return the sku value.
+ */
+ WorkspaceSku sku();
+
+ /**
+ * @return the workspaceCapping value.
+ */
+ WorkspaceCapping workspaceCapping();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePatch.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePatch.java
new file mode 100644
index 000000000000..70d562d5f8f8
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePatch.java
@@ -0,0 +1,239 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.List;
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * The top level Workspace resource container.
+ */
+@JsonFlatten
+public class WorkspacePatch extends AzureEntityResource {
+ /**
+ * The provisioning state of the workspace. Possible values include:
+ * 'Creating', 'Succeeded', 'Failed', 'Canceled', 'Deleting',
+ * 'ProvisioningAccount', 'Updating'.
+ */
+ @JsonProperty(value = "properties.provisioningState")
+ private WorkspaceEntityStatus provisioningState;
+
+ /**
+ * This is a read-only property. Represents the ID associated with the
+ * workspace.
+ */
+ @JsonProperty(value = "properties.customerId", access = JsonProperty.Access.WRITE_ONLY)
+ private String customerId;
+
+ /**
+ * The SKU of the workspace.
+ */
+ @JsonProperty(value = "properties.sku")
+ private WorkspaceSku sku;
+
+ /**
+ * The workspace data retention in days. -1 means Unlimited retention for
+ * the Unlimited Sku. 730 days is the maximum allowed for all other Skus.
+ */
+ @JsonProperty(value = "properties.retentionInDays")
+ private Integer retentionInDays;
+
+ /**
+ * The daily volume cap for ingestion.
+ */
+ @JsonProperty(value = "properties.workspaceCapping")
+ private WorkspaceCapping workspaceCapping;
+
+ /**
+ * The network access type for accessing Log Analytics ingestion. Possible
+ * values include: 'Enabled', 'Disabled'.
+ */
+ @JsonProperty(value = "properties.publicNetworkAccessForIngestion")
+ private PublicNetworkAccessType publicNetworkAccessForIngestion;
+
+ /**
+ * The network access type for accessing Log Analytics query. Possible
+ * values include: 'Enabled', 'Disabled'.
+ */
+ @JsonProperty(value = "properties.publicNetworkAccessForQuery")
+ private PublicNetworkAccessType publicNetworkAccessForQuery;
+
+ /**
+ * List of linked private link scope resources.
+ */
+ @JsonProperty(value = "properties.privateLinkScopedResources", access = JsonProperty.Access.WRITE_ONLY)
+ private List privateLinkScopedResources;
+
+ /**
+ * Resource tags. Optional.
+ */
+ @JsonProperty(value = "tags")
+ private Map tags;
+
+ /**
+ * Get the provisioning state of the workspace. Possible values include: 'Creating', 'Succeeded', 'Failed', 'Canceled', 'Deleting', 'ProvisioningAccount', 'Updating'.
+ *
+ * @return the provisioningState value
+ */
+ public WorkspaceEntityStatus provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Set the provisioning state of the workspace. Possible values include: 'Creating', 'Succeeded', 'Failed', 'Canceled', 'Deleting', 'ProvisioningAccount', 'Updating'.
+ *
+ * @param provisioningState the provisioningState value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withProvisioningState(WorkspaceEntityStatus provisioningState) {
+ this.provisioningState = provisioningState;
+ return this;
+ }
+
+ /**
+ * Get this is a read-only property. Represents the ID associated with the workspace.
+ *
+ * @return the customerId value
+ */
+ public String customerId() {
+ return this.customerId;
+ }
+
+ /**
+ * Get the SKU of the workspace.
+ *
+ * @return the sku value
+ */
+ public WorkspaceSku sku() {
+ return this.sku;
+ }
+
+ /**
+ * Set the SKU of the workspace.
+ *
+ * @param sku the sku value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withSku(WorkspaceSku sku) {
+ this.sku = sku;
+ return this;
+ }
+
+ /**
+ * Get the workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus.
+ *
+ * @return the retentionInDays value
+ */
+ public Integer retentionInDays() {
+ return this.retentionInDays;
+ }
+
+ /**
+ * Set the workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus.
+ *
+ * @param retentionInDays the retentionInDays value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withRetentionInDays(Integer retentionInDays) {
+ this.retentionInDays = retentionInDays;
+ return this;
+ }
+
+ /**
+ * Get the daily volume cap for ingestion.
+ *
+ * @return the workspaceCapping value
+ */
+ public WorkspaceCapping workspaceCapping() {
+ return this.workspaceCapping;
+ }
+
+ /**
+ * Set the daily volume cap for ingestion.
+ *
+ * @param workspaceCapping the workspaceCapping value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
+ this.workspaceCapping = workspaceCapping;
+ return this;
+ }
+
+ /**
+ * Get the network access type for accessing Log Analytics ingestion. Possible values include: 'Enabled', 'Disabled'.
+ *
+ * @return the publicNetworkAccessForIngestion value
+ */
+ public PublicNetworkAccessType publicNetworkAccessForIngestion() {
+ return this.publicNetworkAccessForIngestion;
+ }
+
+ /**
+ * Set the network access type for accessing Log Analytics ingestion. Possible values include: 'Enabled', 'Disabled'.
+ *
+ * @param publicNetworkAccessForIngestion the publicNetworkAccessForIngestion value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withPublicNetworkAccessForIngestion(PublicNetworkAccessType publicNetworkAccessForIngestion) {
+ this.publicNetworkAccessForIngestion = publicNetworkAccessForIngestion;
+ return this;
+ }
+
+ /**
+ * Get the network access type for accessing Log Analytics query. Possible values include: 'Enabled', 'Disabled'.
+ *
+ * @return the publicNetworkAccessForQuery value
+ */
+ public PublicNetworkAccessType publicNetworkAccessForQuery() {
+ return this.publicNetworkAccessForQuery;
+ }
+
+ /**
+ * Set the network access type for accessing Log Analytics query. Possible values include: 'Enabled', 'Disabled'.
+ *
+ * @param publicNetworkAccessForQuery the publicNetworkAccessForQuery value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery) {
+ this.publicNetworkAccessForQuery = publicNetworkAccessForQuery;
+ return this;
+ }
+
+ /**
+ * Get list of linked private link scope resources.
+ *
+ * @return the privateLinkScopedResources value
+ */
+ public List privateLinkScopedResources() {
+ return this.privateLinkScopedResources;
+ }
+
+ /**
+ * Get resource tags. Optional.
+ *
+ * @return the tags value
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Set resource tags. Optional.
+ *
+ * @param tags the tags value to set
+ * @return the WorkspacePatch object itself.
+ */
+ public WorkspacePatch withTags(Map tags) {
+ this.tags = tags;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBody.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBody.java
new file mode 100644
index 000000000000..66baab9ec88a
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBody.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.loganalytics.v2020_03_01_preview;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the body of a purge request for an App Insights Workspace.
+ */
+public class WorkspacePurgeBody {
+ /**
+ * 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 WorkspacePurgeBody object itself.
+ */
+ public WorkspacePurgeBody 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 WorkspacePurgeBody object itself.
+ */
+ public WorkspacePurgeBody withFilters(List filters) {
+ this.filters = filters;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBodyFilters.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBodyFilters.java
new file mode 100644
index 000000000000..d6c086f296ab
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeBodyFilters.java
@@ -0,0 +1,125 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * User-defined filters to return data which will be purged from the table.
+ */
+public class WorkspacePurgeBodyFilters {
+ /**
+ * 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).
+ * Supported operators are ==, =~, in, in~, >, >=, <, <=,
+ * between, and have the same behavior as they would in a KQL query.
+ */
+ @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 WorkspacePurgeBodyFilters object itself.
+ */
+ public WorkspacePurgeBodyFilters withColumn(String column) {
+ this.column = column;
+ return this;
+ }
+
+ /**
+ * Get a query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.
+ *
+ * @return the operator value
+ */
+ public String operator() {
+ return this.operator;
+ }
+
+ /**
+ * Set a query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.
+ *
+ * @param operator the operator value to set
+ * @return the WorkspacePurgeBodyFilters object itself.
+ */
+ public WorkspacePurgeBodyFilters 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 WorkspacePurgeBodyFilters object itself.
+ */
+ public WorkspacePurgeBodyFilters 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 WorkspacePurgeBodyFilters object itself.
+ */
+ public WorkspacePurgeBodyFilters withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgePurgeHeaders.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgePurgeHeaders.java
new file mode 100644
index 000000000000..b403ed5e13f2
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgePurgeHeaders.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.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Defines headers for Purge operation.
+ */
+public class WorkspacePurgePurgeHeaders {
+ /**
+ * The location from which to request the operation status.
+ */
+ @JsonProperty(value = "x-ms-status-location")
+ private String xMsStatusLocation;
+
+ /**
+ * Get the location from which to request the operation status.
+ *
+ * @return the xMsStatusLocation value
+ */
+ public String xMsStatusLocation() {
+ return this.xMsStatusLocation;
+ }
+
+ /**
+ * Set the location from which to request the operation status.
+ *
+ * @param xMsStatusLocation the xMsStatusLocation value to set
+ * @return the WorkspacePurgePurgeHeaders object itself.
+ */
+ public WorkspacePurgePurgeHeaders withXMsStatusLocation(String xMsStatusLocation) {
+ this.xMsStatusLocation = xMsStatusLocation;
+ return this;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeResponse.java
new file mode 100644
index 000000000000..8b4106444ec8
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeResponse.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspacePurgeResponseInner;
+
+/**
+ * Type representing WorkspacePurgeResponse.
+ */
+public interface WorkspacePurgeResponse extends HasInner, HasManager {
+ /**
+ * @return the operationId value.
+ */
+ String operationId();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeStatusResponse.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeStatusResponse.java
new file mode 100644
index 000000000000..3bba6fd728c6
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurgeStatusResponse.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspacePurgeStatusResponseInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.LogAnalyticsManager;
+
+/**
+ * Type representing WorkspacePurgeStatusResponse.
+ */
+public interface WorkspacePurgeStatusResponse extends HasInner, HasManager {
+ /**
+ * @return the status value.
+ */
+ PurgeState status();
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurges.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurges.java
new file mode 100644
index 000000000000..a5907effcc93
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspacePurges.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspacePurgesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing WorkspacePurges.
+ */
+public interface WorkspacePurges extends HasInner {
+ /**
+ * Gets status of an ongoing purge operation.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @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 workspaceName, String purgeId);
+
+ /**
+ * Purges data in an Log Analytics workspace by a set of user-defined filters.
+ In order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param body Describes the body of a request to purge data in a single table of an Log Analytics Workspace
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable purgeAsync(String resourceGroupName, String workspaceName, WorkspacePurgeBody body);
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSku.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSku.java
new file mode 100644
index 000000000000..c50390203a08
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSku.java
@@ -0,0 +1,102 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The SKU (tier) of a workspace.
+ */
+public class WorkspaceSku {
+ /**
+ * The name of the SKU. Possible values include: 'Free', 'Standard',
+ * 'Premium', 'PerNode', 'PerGB2018', 'Standalone', 'CapacityReservation'.
+ */
+ @JsonProperty(value = "name", required = true)
+ private WorkspaceSkuNameEnum name;
+
+ /**
+ * The capacity reservation level for this workspace, when
+ * CapacityReservation sku is selected.
+ */
+ @JsonProperty(value = "capacityReservationLevel")
+ private Integer capacityReservationLevel;
+
+ /**
+ * The maximum capacity reservation level available for this workspace,
+ * when CapacityReservation sku is selected.
+ */
+ @JsonProperty(value = "maxCapacityReservationLevel", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer maxCapacityReservationLevel;
+
+ /**
+ * The last time when the sku was updated.
+ */
+ @JsonProperty(value = "lastSkuUpdate", access = JsonProperty.Access.WRITE_ONLY)
+ private String lastSkuUpdate;
+
+ /**
+ * Get the name of the SKU. Possible values include: 'Free', 'Standard', 'Premium', 'PerNode', 'PerGB2018', 'Standalone', 'CapacityReservation'.
+ *
+ * @return the name value
+ */
+ public WorkspaceSkuNameEnum name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name of the SKU. Possible values include: 'Free', 'Standard', 'Premium', 'PerNode', 'PerGB2018', 'Standalone', 'CapacityReservation'.
+ *
+ * @param name the name value to set
+ * @return the WorkspaceSku object itself.
+ */
+ public WorkspaceSku withName(WorkspaceSkuNameEnum name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the capacity reservation level for this workspace, when CapacityReservation sku is selected.
+ *
+ * @return the capacityReservationLevel value
+ */
+ public Integer capacityReservationLevel() {
+ return this.capacityReservationLevel;
+ }
+
+ /**
+ * Set the capacity reservation level for this workspace, when CapacityReservation sku is selected.
+ *
+ * @param capacityReservationLevel the capacityReservationLevel value to set
+ * @return the WorkspaceSku object itself.
+ */
+ public WorkspaceSku withCapacityReservationLevel(Integer capacityReservationLevel) {
+ this.capacityReservationLevel = capacityReservationLevel;
+ return this;
+ }
+
+ /**
+ * Get the maximum capacity reservation level available for this workspace, when CapacityReservation sku is selected.
+ *
+ * @return the maxCapacityReservationLevel value
+ */
+ public Integer maxCapacityReservationLevel() {
+ return this.maxCapacityReservationLevel;
+ }
+
+ /**
+ * Get the last time when the sku was updated.
+ *
+ * @return the lastSkuUpdate value
+ */
+ public String lastSkuUpdate() {
+ return this.lastSkuUpdate;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSkuNameEnum.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSkuNameEnum.java
new file mode 100644
index 000000000000..a65a47df5549
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/WorkspaceSkuNameEnum.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for WorkspaceSkuNameEnum.
+ */
+public final class WorkspaceSkuNameEnum extends ExpandableStringEnum {
+ /** Static value Free for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum FREE = fromString("Free");
+
+ /** Static value Standard for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum STANDARD = fromString("Standard");
+
+ /** Static value Premium for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum PREMIUM = fromString("Premium");
+
+ /** Static value PerNode for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum PER_NODE = fromString("PerNode");
+
+ /** Static value PerGB2018 for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum PER_GB2018 = fromString("PerGB2018");
+
+ /** Static value Standalone for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum STANDALONE = fromString("Standalone");
+
+ /** Static value CapacityReservation for WorkspaceSkuNameEnum. */
+ public static final WorkspaceSkuNameEnum CAPACITY_RESERVATION = fromString("CapacityReservation");
+
+ /**
+ * Creates or finds a WorkspaceSkuNameEnum from its string representation.
+ * @param name a name to look for
+ * @return the corresponding WorkspaceSkuNameEnum
+ */
+ @JsonCreator
+ public static WorkspaceSkuNameEnum fromString(String name) {
+ return fromString(name, WorkspaceSkuNameEnum.class);
+ }
+
+ /**
+ * @return known WorkspaceSkuNameEnum values
+ */
+ public static Collection values() {
+ return values(WorkspaceSkuNameEnum.class);
+ }
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspaces.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspaces.java
new file mode 100644
index 000000000000..b47d875f9937
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/Workspaces.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.loganalytics.v2020_03_01_preview;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import com.microsoft.azure.arm.resources.collection.SupportsDeletingByResourceGroup;
+import com.microsoft.azure.arm.resources.collection.SupportsBatchDeletion;
+import com.microsoft.azure.arm.resources.collection.SupportsGettingByResourceGroup;
+import rx.Observable;
+import com.microsoft.azure.arm.resources.collection.SupportsListingByResourceGroup;
+import com.microsoft.azure.arm.collection.SupportsListing;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation.WorkspacesInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing Workspaces.
+ */
+public interface Workspaces extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner {
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierImpl.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierImpl.java
new file mode 100644
index 000000000000..a13e0e07b318
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierImpl.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.loganalytics.v2020_03_01_preview.implementation;
+
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.AvailableServiceTier;
+import com.microsoft.azure.arm.model.implementation.WrapperImpl;
+import rx.Observable;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.SkuNameEnum;
+
+class AvailableServiceTierImpl extends WrapperImpl implements AvailableServiceTier {
+ private final LogAnalyticsManager manager;
+
+ AvailableServiceTierImpl(AvailableServiceTierInner inner, LogAnalyticsManager manager) {
+ super(inner);
+ this.manager = manager;
+ }
+
+ @Override
+ public LogAnalyticsManager manager() {
+ return this.manager;
+ }
+
+
+
+ @Override
+ public Long capacityReservationLevel() {
+ return this.inner().capacityReservationLevel();
+ }
+
+ @Override
+ public Long defaultRetention() {
+ return this.inner().defaultRetention();
+ }
+
+ @Override
+ public Boolean enabled() {
+ return this.inner().enabled();
+ }
+
+ @Override
+ public String lastSkuUpdate() {
+ return this.inner().lastSkuUpdate();
+ }
+
+ @Override
+ public Long maximumRetention() {
+ return this.inner().maximumRetention();
+ }
+
+ @Override
+ public Long minimumRetention() {
+ return this.inner().minimumRetention();
+ }
+
+ @Override
+ public SkuNameEnum serviceTier() {
+ return this.inner().serviceTier();
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierInner.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierInner.java
new file mode 100644
index 000000000000..3f87b43fd8e0
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTierInner.java
@@ -0,0 +1,127 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation;
+
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.SkuNameEnum;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Service Tier details.
+ */
+public class AvailableServiceTierInner {
+ /**
+ * The name of the Service Tier. Possible values include: 'Free',
+ * 'Standard', 'Premium', 'PerNode', 'PerGB2018', 'Standalone',
+ * 'CapacityReservation'.
+ */
+ @JsonProperty(value = "serviceTier", access = JsonProperty.Access.WRITE_ONLY)
+ private SkuNameEnum serviceTier;
+
+ /**
+ * True if the Service Tier is enabled for the workspace.
+ */
+ @JsonProperty(value = "enabled", access = JsonProperty.Access.WRITE_ONLY)
+ private Boolean enabled;
+
+ /**
+ * The minimum retention for the Service Tier, in days.
+ */
+ @JsonProperty(value = "minimumRetention", access = JsonProperty.Access.WRITE_ONLY)
+ private Long minimumRetention;
+
+ /**
+ * The maximum retention for the Service Tier, in days.
+ */
+ @JsonProperty(value = "maximumRetention", access = JsonProperty.Access.WRITE_ONLY)
+ private Long maximumRetention;
+
+ /**
+ * The default retention for the Service Tier, in days.
+ */
+ @JsonProperty(value = "defaultRetention", access = JsonProperty.Access.WRITE_ONLY)
+ private Long defaultRetention;
+
+ /**
+ * The capacity reservation level in GB per day. Returned for the Capacity
+ * Reservation Service Tier.
+ */
+ @JsonProperty(value = "capacityReservationLevel", access = JsonProperty.Access.WRITE_ONLY)
+ private Long capacityReservationLevel;
+
+ /**
+ * Time when the sku was last updated for the workspace. Returned for the
+ * Capacity Reservation Service Tier.
+ */
+ @JsonProperty(value = "lastSkuUpdate", access = JsonProperty.Access.WRITE_ONLY)
+ private String lastSkuUpdate;
+
+ /**
+ * Get the name of the Service Tier. Possible values include: 'Free', 'Standard', 'Premium', 'PerNode', 'PerGB2018', 'Standalone', 'CapacityReservation'.
+ *
+ * @return the serviceTier value
+ */
+ public SkuNameEnum serviceTier() {
+ return this.serviceTier;
+ }
+
+ /**
+ * Get true if the Service Tier is enabled for the workspace.
+ *
+ * @return the enabled value
+ */
+ public Boolean enabled() {
+ return this.enabled;
+ }
+
+ /**
+ * Get the minimum retention for the Service Tier, in days.
+ *
+ * @return the minimumRetention value
+ */
+ public Long minimumRetention() {
+ return this.minimumRetention;
+ }
+
+ /**
+ * Get the maximum retention for the Service Tier, in days.
+ *
+ * @return the maximumRetention value
+ */
+ public Long maximumRetention() {
+ return this.maximumRetention;
+ }
+
+ /**
+ * Get the default retention for the Service Tier, in days.
+ *
+ * @return the defaultRetention value
+ */
+ public Long defaultRetention() {
+ return this.defaultRetention;
+ }
+
+ /**
+ * Get the capacity reservation level in GB per day. Returned for the Capacity Reservation Service Tier.
+ *
+ * @return the capacityReservationLevel value
+ */
+ public Long capacityReservationLevel() {
+ return this.capacityReservationLevel;
+ }
+
+ /**
+ * Get time when the sku was last updated for the workspace. Returned for the Capacity Reservation Service Tier.
+ *
+ * @return the lastSkuUpdate value
+ */
+ public String lastSkuUpdate() {
+ return this.lastSkuUpdate;
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersImpl.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersImpl.java
new file mode 100644
index 000000000000..096d3457a9e3
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersImpl.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.loganalytics.v2020_03_01_preview.implementation;
+
+import com.microsoft.azure.arm.model.implementation.WrapperImpl;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.AvailableServiceTiers;
+import rx.Observable;
+import rx.functions.Func1;
+import java.util.List;
+import com.microsoft.azure.management.loganalytics.v2020_03_01_preview.AvailableServiceTier;
+
+class AvailableServiceTiersImpl extends WrapperImpl implements AvailableServiceTiers {
+ private final LogAnalyticsManager manager;
+
+ AvailableServiceTiersImpl(LogAnalyticsManager manager) {
+ super(manager.inner().availableServiceTiers());
+ this.manager = manager;
+ }
+
+ public LogAnalyticsManager manager() {
+ return this.manager;
+ }
+
+ private AvailableServiceTierImpl wrapModel(AvailableServiceTierInner inner) {
+ return new AvailableServiceTierImpl(inner, manager());
+ }
+
+ @Override
+ public Observable listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
+ AvailableServiceTiersInner client = this.inner();
+ return client.listByWorkspaceAsync(resourceGroupName, workspaceName)
+ .flatMap(new Func1, Observable>() {
+ @Override
+ public Observable call(List innerList) {
+ return Observable.from(innerList);
+ }
+ })
+ .map(new Func1() {
+ @Override
+ public AvailableServiceTier call(AvailableServiceTierInner inner) {
+ return wrapModel(inner);
+ }
+ });
+ }
+
+}
diff --git a/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersInner.java b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersInner.java
new file mode 100644
index 000000000000..8e0980502d88
--- /dev/null
+++ b/sdk/loganalytics/mgmt-v2020_03_01_preview/src/main/java/com/microsoft/azure/management/loganalytics/v2020_03_01_preview/implementation/AvailableServiceTiersInner.java
@@ -0,0 +1,147 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.loganalytics.v2020_03_01_preview.implementation;
+
+import retrofit2.Retrofit;
+import com.google.common.reflect.TypeToken;
+import com.microsoft.azure.CloudException;
+import com.microsoft.rest.ServiceCallback;
+import com.microsoft.rest.ServiceFuture;
+import com.microsoft.rest.ServiceResponse;
+import java.io.IOException;
+import java.util.List;
+import okhttp3.ResponseBody;
+import retrofit2.http.GET;
+import retrofit2.http.Header;
+import retrofit2.http.Headers;
+import retrofit2.http.Path;
+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 AvailableServiceTiers.
+ */
+public class AvailableServiceTiersInner {
+ /** The Retrofit service to perform REST calls. */
+ private AvailableServiceTiersService service;
+ /** The service client containing this operation class. */
+ private OperationalInsightsManagementClientImpl client;
+
+ /**
+ * Initializes an instance of AvailableServiceTiersInner.
+ *
+ * @param retrofit the Retrofit instance built from a Retrofit Builder.
+ * @param client the instance of the service client containing this operation class.
+ */
+ public AvailableServiceTiersInner(Retrofit retrofit, OperationalInsightsManagementClientImpl client) {
+ this.service = retrofit.create(AvailableServiceTiersService.class);
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for AvailableServiceTiers to be
+ * used by Retrofit to perform actually REST calls.
+ */
+ interface AvailableServiceTiersService {
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.loganalytics.v2020_03_01_preview.AvailableServiceTiers listByWorkspace" })
+ @GET("subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/availableServiceTiers")
+ Observable> listByWorkspace(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("workspaceName") String workspaceName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ }
+
+ /**
+ * Gets the available service tiers for the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @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<AvailableServiceTierInner> object if successful.
+ */
+ public List listByWorkspace(String resourceGroupName, String workspaceName) {
+ return listByWorkspaceWithServiceResponseAsync(resourceGroupName, workspaceName).toBlocking().single().body();
+ }
+
+ /**
+ * Gets the available service tiers for the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @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> listByWorkspaceAsync(String resourceGroupName, String workspaceName, final ServiceCallback> serviceCallback) {
+ return ServiceFuture.fromResponse(listByWorkspaceWithServiceResponseAsync(resourceGroupName, workspaceName), serviceCallback);
+ }
+
+ /**
+ * Gets the available service tiers for the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the List<AvailableServiceTierInner> object
+ */
+ public Observable> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
+ return listByWorkspaceWithServiceResponseAsync(resourceGroupName, workspaceName).map(new Func1>, List>() {
+ @Override
+ public List call(ServiceResponse> response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Gets the available service tiers for the workspace.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the List<AvailableServiceTierInner> object
+ */
+ public Observable>> listByWorkspaceWithServiceResponseAsync(String resourceGroupName, String workspaceName) {
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (workspaceName == null) {
+ throw new IllegalArgumentException("Parameter workspaceName 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.listByWorkspace(this.client.subscriptionId(), resourceGroupName, workspaceName, this.client.apiVersion(), this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>>() {
+ @Override
+ public Observable