diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/CHANGELOG.md b/sdk/datafactory/azure-resourcemanager-datafactory/CHANGELOG.md index 10e8c167fc69..f802ef948f8c 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/CHANGELOG.md +++ b/sdk/datafactory/azure-resourcemanager-datafactory/CHANGELOG.md @@ -1,7 +1,8 @@ # Release History -## 1.0.0-beta.3 (Unreleased) +## 1.0.0-beta.1 (2021-07-28) +- Azure Resource Manager DataFactory client library for Java. This package contains Microsoft Azure SDK for DataFactory Management SDK. The Azure Data Factory V2 management API provides a RESTful set of web services that interact with Azure Data Factory V2 services. Package tag package-2018-06. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt). ## 1.0.0-beta.2 (2021-06-16) diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/README.md b/sdk/datafactory/azure-resourcemanager-datafactory/README.md index 389462b99427..f05402d87c49 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/README.md +++ b/sdk/datafactory/azure-resourcemanager-datafactory/README.md @@ -32,7 +32,7 @@ Various documentation is available to help you get started com.azure.resourcemanager azure-resourcemanager-datafactory - 1.0.0-beta.2 + 1.0.0-beta.3 ``` [//]: # ({x-version-update-end}) diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/DataFactoryManager.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/DataFactoryManager.java index e04fe9eb8643..99fccd16ee3f 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/DataFactoryManager.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/DataFactoryManager.java @@ -249,7 +249,7 @@ public DataFactoryManager authenticate(TokenCredential credential, AzureProfile .append("-") .append("com.azure.resourcemanager.datafactory") .append("/") - .append("1.0.0-beta.2"); + .append("1.0.0-beta.1"); if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) { userAgentBuilder .append(" (") diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroCompressionCodec.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroCompressionCodec.java deleted file mode 100644 index 27bae592c68e..000000000000 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroCompressionCodec.java +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. -// Code generated by Microsoft (R) AutoRest Code Generator. - -package com.azure.resourcemanager.datafactory.models; - -import com.azure.core.util.ExpandableStringEnum; -import com.fasterxml.jackson.annotation.JsonCreator; -import java.util.Collection; - -/** Defines values for AvroCompressionCodec. */ -public final class AvroCompressionCodec extends ExpandableStringEnum { - /** Static value none for AvroCompressionCodec. */ - public static final AvroCompressionCodec NONE = fromString("none"); - - /** Static value deflate for AvroCompressionCodec. */ - public static final AvroCompressionCodec DEFLATE = fromString("deflate"); - - /** Static value snappy for AvroCompressionCodec. */ - public static final AvroCompressionCodec SNAPPY = fromString("snappy"); - - /** Static value xz for AvroCompressionCodec. */ - public static final AvroCompressionCodec XZ = fromString("xz"); - - /** Static value bzip2 for AvroCompressionCodec. */ - public static final AvroCompressionCodec BZIP2 = fromString("bzip2"); - - /** - * Creates or finds a AvroCompressionCodec from its string representation. - * - * @param name a name to look for. - * @return the corresponding AvroCompressionCodec. - */ - @JsonCreator - public static AvroCompressionCodec fromString(String name) { - return fromString(name, AvroCompressionCodec.class); - } - - /** @return known AvroCompressionCodec values. */ - public static Collection values() { - return values(AvroCompressionCodec.class); - } -} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroDataset.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroDataset.java index 7d1c7549c331..3895aedcd332 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroDataset.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroDataset.java @@ -29,10 +29,11 @@ public class AvroDataset extends Dataset { private DatasetLocation location; /* - * The avroCompressionCodec property. + * The data avroCompressionCodec. Type: string (or Expression with + * resultType string). */ @JsonProperty(value = "typeProperties.avroCompressionCodec") - private AvroCompressionCodec avroCompressionCodec; + private Object avroCompressionCodec; /* * The avroCompressionLevel property. @@ -61,21 +62,23 @@ public AvroDataset withLocation(DatasetLocation location) { } /** - * Get the avroCompressionCodec property: The avroCompressionCodec property. + * Get the avroCompressionCodec property: The data avroCompressionCodec. Type: string (or Expression with resultType + * string). * * @return the avroCompressionCodec value. */ - public AvroCompressionCodec avroCompressionCodec() { + public Object avroCompressionCodec() { return this.avroCompressionCodec; } /** - * Set the avroCompressionCodec property: The avroCompressionCodec property. + * Set the avroCompressionCodec property: The data avroCompressionCodec. Type: string (or Expression with resultType + * string). * * @param avroCompressionCodec the avroCompressionCodec value to set. * @return the AvroDataset object itself. */ - public AvroDataset withAvroCompressionCodec(AvroCompressionCodec avroCompressionCodec) { + public AvroDataset withAvroCompressionCodec(Object avroCompressionCodec) { this.avroCompressionCodec = avroCompressionCodec; return this; } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroFormat.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroFormat.java index aa69b3288627..891d4a71ce50 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroFormat.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AvroFormat.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The data stored in Avro format. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("AvroFormat") -@Immutable +@Fluent public final class AvroFormat extends DatasetStorageFormat { @JsonIgnore private final ClientLogger logger = new ClientLogger(AvroFormat.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBatchLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBatchLinkedService.java index bf0e832b6ad9..0b1324e1cd19 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBatchLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBatchLinkedService.java @@ -63,6 +63,12 @@ public class AzureBatchLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the accountName property: The Azure Batch account name. Type: string (or Expression with resultType string). * @@ -185,6 +191,26 @@ public AzureBatchLinkedService withEncryptedCredential(Object encryptedCredentia return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureBatchLinkedService object itself. + */ + public AzureBatchLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureBatchLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -250,5 +276,8 @@ public void validate() { } else { linkedServiceName().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobFSLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobFSLinkedService.java index 26392245c2e1..1d51e10f42ae 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobFSLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobFSLinkedService.java @@ -75,6 +75,12 @@ public class AzureBlobFSLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the url property: Endpoint for the Azure Data Lake Storage Gen2 service. Type: string (or Expression with * resultType string). @@ -231,6 +237,26 @@ public AzureBlobFSLinkedService withEncryptedCredential(Object encryptedCredenti return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureBlobFSLinkedService object itself. + */ + public AzureBlobFSLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureBlobFSLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -275,5 +301,8 @@ public void validate() { if (servicePrincipalKey() != null) { servicePrincipalKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobStorageLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobStorageLinkedService.java index eb1a8fc9bab8..a8dfd9124617 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobStorageLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureBlobStorageLinkedService.java @@ -103,6 +103,12 @@ public class AzureBlobStorageLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private String encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the connectionString property: The connection string. It is mutually exclusive with sasUri, serviceEndpoint * property. Type: string, SecureString or AzureKeyVaultSecretReference. @@ -345,6 +351,26 @@ public AzureBlobStorageLinkedService withEncryptedCredential(String encryptedCre return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureBlobStorageLinkedService object itself. + */ + public AzureBlobStorageLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureBlobStorageLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -390,5 +416,8 @@ public void validate() { if (servicePrincipalKey() != null) { servicePrincipalKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataExplorerLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataExplorerLinkedService.java index 0f6ef563a13e..5b0cb16eee86 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataExplorerLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataExplorerLinkedService.java @@ -57,6 +57,12 @@ public class AzureDataExplorerLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.tenant") private Object tenant; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the endpoint property: The endpoint of Azure Data Explorer (the engine's endpoint). URL will be in the format * https://<clusterName>.<regionName>.kusto.windows.net. Type: string (or Expression with resultType @@ -165,6 +171,26 @@ public AzureDataExplorerLinkedService withTenant(Object tenant) { return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureDataExplorerLinkedService object itself. + */ + public AzureDataExplorerLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureDataExplorerLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -216,5 +242,8 @@ public void validate() { new IllegalArgumentException( "Missing required property database in model AzureDataExplorerLinkedService")); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLinkedService.java index 0771c8725a58..bed54ea4a05a 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLinkedService.java @@ -88,6 +88,12 @@ public class AzureDataLakeStoreLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the dataLakeStoreUri property: Data Lake Store service URI. Type: string (or Expression with resultType * string). @@ -286,6 +292,26 @@ public AzureDataLakeStoreLinkedService withEncryptedCredential(Object encryptedC return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureDataLakeStoreLinkedService object itself. + */ + public AzureDataLakeStoreLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureDataLakeStoreLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -331,5 +357,8 @@ public void validate() { if (servicePrincipalKey() != null) { servicePrincipalKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLocation.java index d050649caeb1..409d91c2ad8c 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDataLakeStoreLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of azure data lake store dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("AzureDataLakeStoreLocation") -@Immutable +@Fluent public final class AzureDataLakeStoreLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(AzureDataLakeStoreLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDatabricksLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDatabricksLinkedService.java index 273ee9f1460c..2c898dfbc282 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDatabricksLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureDatabricksLinkedService.java @@ -162,6 +162,12 @@ public class AzureDatabricksLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.policyId") private Object policyId; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the domain property: <REGION>.azuredatabricks.net, domain name of your Databricks deployment. Type: * string (or Expression with resultType string). @@ -570,6 +576,26 @@ public AzureDatabricksLinkedService withPolicyId(Object policyId) { return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureDatabricksLinkedService object itself. + */ + public AzureDatabricksLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureDatabricksLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -615,5 +641,8 @@ public void validate() { if (accessToken() != null) { accessToken().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageLocation.java index 2a9a5e05cdaf..59752a15f2ab 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of file server dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("AzureFileStorageLocation") -@Immutable +@Fluent public final class AzureFileStorageLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(AzureFileStorageLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageWriteSettings.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageWriteSettings.java index 4f4e479b752a..8f0888a6690b 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageWriteSettings.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFileStorageWriteSettings.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** Azure File Storage write settings. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("AzureFileStorageWriteSettings") -@Immutable +@Fluent public final class AzureFileStorageWriteSettings extends StoreWriteSettings { @JsonIgnore private final ClientLogger logger = new ClientLogger(AzureFileStorageWriteSettings.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFunctionLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFunctionLinkedService.java index 92f421e2ff43..ae772eef874e 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFunctionLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureFunctionLinkedService.java @@ -43,6 +43,25 @@ public class AzureFunctionLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + + /* + * Allowed token audiences for azure function. + */ + @JsonProperty(value = "typeProperties.resourceId") + private Object resourceId; + + /* + * Type of authentication (Required to specify MSI) used to connect to + * AzureFunction. Type: string (or Expression with resultType string). + */ + @JsonProperty(value = "typeProperties.authentication") + private Object authentication; + /** * Get the functionAppUrl property: The endpoint of the Azure Function App. URL will be in the format * https://<accountName>.azurewebsites.net. @@ -107,6 +126,68 @@ public AzureFunctionLinkedService withEncryptedCredential(Object encryptedCreden return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureFunctionLinkedService object itself. + */ + public AzureFunctionLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + + /** + * Get the resourceId property: Allowed token audiences for azure function. + * + * @return the resourceId value. + */ + public Object resourceId() { + return this.resourceId; + } + + /** + * Set the resourceId property: Allowed token audiences for azure function. + * + * @param resourceId the resourceId value to set. + * @return the AzureFunctionLinkedService object itself. + */ + public AzureFunctionLinkedService withResourceId(Object resourceId) { + this.resourceId = resourceId; + return this; + } + + /** + * Get the authentication property: Type of authentication (Required to specify MSI) used to connect to + * AzureFunction. Type: string (or Expression with resultType string). + * + * @return the authentication value. + */ + public Object authentication() { + return this.authentication; + } + + /** + * Set the authentication property: Type of authentication (Required to specify MSI) used to connect to + * AzureFunction. Type: string (or Expression with resultType string). + * + * @param authentication the authentication value to set. + * @return the AzureFunctionLinkedService object itself. + */ + public AzureFunctionLinkedService withAuthentication(Object authentication) { + this.authentication = authentication; + return this; + } + /** {@inheritDoc} */ @Override public AzureFunctionLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -152,5 +233,8 @@ public void validate() { if (functionKey() != null) { functionKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureKeyVaultLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureKeyVaultLinkedService.java index 6c720459760e..39230bd4d114 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureKeyVaultLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureKeyVaultLinkedService.java @@ -29,6 +29,12 @@ public class AzureKeyVaultLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.baseUrl", required = true) private Object baseUrl; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the baseUrl property: The base URL of the Azure Key Vault. e.g. https://myakv.vault.azure.net Type: string * (or Expression with resultType string). @@ -51,6 +57,26 @@ public AzureKeyVaultLinkedService withBaseUrl(Object baseUrl) { return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureKeyVaultLinkedService object itself. + */ + public AzureKeyVaultLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureKeyVaultLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -93,5 +119,8 @@ public void validate() { new IllegalArgumentException( "Missing required property baseUrl in model AzureKeyVaultLinkedService")); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureMLLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureMLLinkedService.java index 5988257bd3b1..ce222a0a9e1f 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureMLLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureMLLinkedService.java @@ -72,6 +72,13 @@ public class AzureMLLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * Type of authentication (Required to specify MSI) used to connect to + * AzureML. Type: string (or Expression with resultType string). + */ + @JsonProperty(value = "typeProperties.authentication") + private Object authentication; + /** * Get the mlEndpoint property: The Batch Execution REST URL for an Azure ML Studio Web Service endpoint. Type: * string (or Expression with resultType string). @@ -224,6 +231,28 @@ public AzureMLLinkedService withEncryptedCredential(Object encryptedCredential) return this; } + /** + * Get the authentication property: Type of authentication (Required to specify MSI) used to connect to AzureML. + * Type: string (or Expression with resultType string). + * + * @return the authentication value. + */ + public Object authentication() { + return this.authentication; + } + + /** + * Set the authentication property: Type of authentication (Required to specify MSI) used to connect to AzureML. + * Type: string (or Expression with resultType string). + * + * @param authentication the authentication value to set. + * @return the AzureMLLinkedService object itself. + */ + public AzureMLLinkedService withAuthentication(Object authentication) { + this.authentication = authentication; + return this; + } + /** {@inheritDoc} */ @Override public AzureMLLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureQueueSink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureQueueSink.java index c7d1accb89a8..dd44de1b9188 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureQueueSink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureQueueSink.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** A copy activity Azure Queue sink. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("AzureQueueSink") -@Immutable +@Fluent public final class AzureQueueSink extends CopySink { @JsonIgnore private final ClientLogger logger = new ClientLogger(AzureQueueSink.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDWLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDWLinkedService.java index 570bf0c3a362..d9d947143139 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDWLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDWLinkedService.java @@ -74,6 +74,12 @@ public class AzureSqlDWLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the connectionString property: The connection string. Type: string, SecureString or * AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference. @@ -228,6 +234,26 @@ public AzureSqlDWLinkedService withEncryptedCredential(Object encryptedCredentia return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureSqlDWLinkedService object itself. + */ + public AzureSqlDWLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureSqlDWLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -276,5 +302,8 @@ public void validate() { if (servicePrincipalKey() != null) { servicePrincipalKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDatabaseLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDatabaseLinkedService.java index c4132a14ad16..6b17812559c3 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDatabaseLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlDatabaseLinkedService.java @@ -79,6 +79,12 @@ public class AzureSqlDatabaseLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.alwaysEncryptedSettings") private SqlAlwaysEncryptedProperties alwaysEncryptedSettings; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the connectionString property: The connection string. Type: string, SecureString or * AzureKeyVaultSecretReference. @@ -254,6 +260,26 @@ public AzureSqlDatabaseLinkedService withAlwaysEncryptedSettings( return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureSqlDatabaseLinkedService object itself. + */ + public AzureSqlDatabaseLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureSqlDatabaseLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -305,5 +331,8 @@ public void validate() { if (alwaysEncryptedSettings() != null) { alwaysEncryptedSettings().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlMILinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlMILinkedService.java index ac3af7ccf5f4..78f0592ae9cc 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlMILinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlMILinkedService.java @@ -79,6 +79,12 @@ public class AzureSqlMILinkedService extends LinkedService { @JsonProperty(value = "typeProperties.alwaysEncryptedSettings") private SqlAlwaysEncryptedProperties alwaysEncryptedSettings; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the connectionString property: The connection string. Type: string, SecureString or * AzureKeyVaultSecretReference. @@ -253,6 +259,26 @@ public AzureSqlMILinkedService withAlwaysEncryptedSettings(SqlAlwaysEncryptedPro return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the AzureSqlMILinkedService object itself. + */ + public AzureSqlMILinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public AzureSqlMILinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -304,5 +330,8 @@ public void validate() { if (alwaysEncryptedSettings() != null) { alwaysEncryptedSettings().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlSink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlSink.java index 5897f0e723ca..379ab835ec06 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlSink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/AzureSqlSink.java @@ -61,6 +61,27 @@ public final class AzureSqlSink extends CopySink { @JsonProperty(value = "tableOption") private Object tableOption; + /* + * Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + */ + @JsonProperty(value = "sqlWriterUseTableLock") + private Object sqlWriterUseTableLock; + + /* + * Write behavior when copying data into Azure SQL. Type: + * SqlWriteBehaviorEnum (or Expression with resultType + * SqlWriteBehaviorEnum) + */ + @JsonProperty(value = "writeBehavior") + private Object writeBehavior; + + /* + * SQL upsert settings. + */ + @JsonProperty(value = "upsertSettings") + private SqlUpsertSettings upsertSettings; + /** * Get the sqlWriterStoredProcedureName property: SQL writer stored procedure name. Type: string (or Expression with * resultType string). @@ -187,6 +208,70 @@ public AzureSqlSink withTableOption(Object tableOption) { return this; } + /** + * Get the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @return the sqlWriterUseTableLock value. + */ + public Object sqlWriterUseTableLock() { + return this.sqlWriterUseTableLock; + } + + /** + * Set the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @param sqlWriterUseTableLock the sqlWriterUseTableLock value to set. + * @return the AzureSqlSink object itself. + */ + public AzureSqlSink withSqlWriterUseTableLock(Object sqlWriterUseTableLock) { + this.sqlWriterUseTableLock = sqlWriterUseTableLock; + return this; + } + + /** + * Get the writeBehavior property: Write behavior when copying data into Azure SQL. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @return the writeBehavior value. + */ + public Object writeBehavior() { + return this.writeBehavior; + } + + /** + * Set the writeBehavior property: Write behavior when copying data into Azure SQL. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @param writeBehavior the writeBehavior value to set. + * @return the AzureSqlSink object itself. + */ + public AzureSqlSink withWriteBehavior(Object writeBehavior) { + this.writeBehavior = writeBehavior; + return this; + } + + /** + * Get the upsertSettings property: SQL upsert settings. + * + * @return the upsertSettings value. + */ + public SqlUpsertSettings upsertSettings() { + return this.upsertSettings; + } + + /** + * Set the upsertSettings property: SQL upsert settings. + * + * @param upsertSettings the upsertSettings value to set. + * @return the AzureSqlSink object itself. + */ + public AzureSqlSink withUpsertSettings(SqlUpsertSettings upsertSettings) { + this.upsertSettings = upsertSettings; + return this; + } + /** {@inheritDoc} */ @Override public AzureSqlSink withWriteBatchSize(Object writeBatchSize) { @@ -247,5 +332,8 @@ public void validate() { } }); } + if (upsertSettings() != null) { + upsertSettings().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ControlActivity.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ControlActivity.java index 5347ac37007f..5c3778b1dde1 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ControlActivity.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ControlActivity.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonSubTypes; @@ -32,7 +32,7 @@ @JsonSubTypes.Type(name = "AppendVariable", value = AppendVariableActivity.class), @JsonSubTypes.Type(name = "WebHook", value = WebhookActivity.class) }) -@Immutable +@Fluent public class ControlActivity extends Activity { @JsonIgnore private final ClientLogger logger = new ClientLogger(ControlActivity.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CosmosDbMongoDbApiLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CosmosDbMongoDbApiLinkedService.java index e79979c39f41..fcd75b4c5771 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CosmosDbMongoDbApiLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CosmosDbMongoDbApiLinkedService.java @@ -22,6 +22,14 @@ public class CosmosDbMongoDbApiLinkedService extends LinkedService { @JsonIgnore private final ClientLogger logger = new ClientLogger(CosmosDbMongoDbApiLinkedService.class); + /* + * Whether the CosmosDB (MongoDB API) server version is higher than 3.2. + * The default value is false. Type: boolean (or Expression with resultType + * boolean). + */ + @JsonProperty(value = "typeProperties.isServerVersionAbove32") + private Object isServerVersionAbove32; + /* * The CosmosDB (MongoDB API) connection string. Type: string, SecureString * or AzureKeyVaultSecretReference. Type: string, SecureString or @@ -37,6 +45,28 @@ public class CosmosDbMongoDbApiLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.database", required = true) private Object database; + /** + * Get the isServerVersionAbove32 property: Whether the CosmosDB (MongoDB API) server version is higher than 3.2. + * The default value is false. Type: boolean (or Expression with resultType boolean). + * + * @return the isServerVersionAbove32 value. + */ + public Object isServerVersionAbove32() { + return this.isServerVersionAbove32; + } + + /** + * Set the isServerVersionAbove32 property: Whether the CosmosDB (MongoDB API) server version is higher than 3.2. + * The default value is false. Type: boolean (or Expression with resultType boolean). + * + * @param isServerVersionAbove32 the isServerVersionAbove32 value to set. + * @return the CosmosDbMongoDbApiLinkedService object itself. + */ + public CosmosDbMongoDbApiLinkedService withIsServerVersionAbove32(Object isServerVersionAbove32) { + this.isServerVersionAbove32 = isServerVersionAbove32; + return this; + } + /** * Get the connectionString property: The CosmosDB (MongoDB API) connection string. Type: string, SecureString or * AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference. diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/Credential.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/Credential.java new file mode 100644 index 000000000000..a4693d0ee912 --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/Credential.java @@ -0,0 +1,135 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.annotation.JsonTypeName; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * The Azure Data Factory nested object which contains the information and credential which can be used to connect with + * related store or compute resource. + */ +@JsonTypeInfo( + use = JsonTypeInfo.Id.NAME, + include = JsonTypeInfo.As.PROPERTY, + property = "type", + defaultImpl = Credential.class) +@JsonTypeName("Credential") +@JsonSubTypes({ + @JsonSubTypes.Type(name = "ServicePrincipal", value = ServicePrincipalCredential.class), + @JsonSubTypes.Type(name = "ManagedIdentity", value = ManagedIdentityCredential.class) +}) +@Fluent +public class Credential { + @JsonIgnore private final ClientLogger logger = new ClientLogger(Credential.class); + + /* + * Credential description. + */ + @JsonProperty(value = "description") + private String description; + + /* + * List of tags that can be used for describing the Credential. + */ + @JsonProperty(value = "annotations") + private List annotations; + + /* + * The Azure Data Factory nested object which contains the information and + * credential which can be used to connect with related store or compute + * resource. + */ + @JsonIgnore private Map additionalProperties; + + /** + * Get the description property: Credential description. + * + * @return the description value. + */ + public String description() { + return this.description; + } + + /** + * Set the description property: Credential description. + * + * @param description the description value to set. + * @return the Credential object itself. + */ + public Credential withDescription(String description) { + this.description = description; + return this; + } + + /** + * Get the annotations property: List of tags that can be used for describing the Credential. + * + * @return the annotations value. + */ + public List annotations() { + return this.annotations; + } + + /** + * Set the annotations property: List of tags that can be used for describing the Credential. + * + * @param annotations the annotations value to set. + * @return the Credential object itself. + */ + public Credential withAnnotations(List annotations) { + this.annotations = annotations; + return this; + } + + /** + * Get the additionalProperties property: The Azure Data Factory nested object which contains the information and + * credential which can be used to connect with related store or compute resource. + * + * @return the additionalProperties value. + */ + @JsonAnyGetter + public Map additionalProperties() { + return this.additionalProperties; + } + + /** + * Set the additionalProperties property: The Azure Data Factory nested object which contains the information and + * credential which can be used to connect with related store or compute resource. + * + * @param additionalProperties the additionalProperties value to set. + * @return the Credential object itself. + */ + public Credential withAdditionalProperties(Map additionalProperties) { + this.additionalProperties = additionalProperties; + return this; + } + + @JsonAnySetter + void withAdditionalProperties(String key, Object value) { + if (additionalProperties == null) { + additionalProperties = new HashMap<>(); + } + additionalProperties.put(key, value); + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + public void validate() { + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CredentialReference.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CredentialReference.java new file mode 100644 index 000000000000..aebbb2950347 --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/CredentialReference.java @@ -0,0 +1,125 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.HashMap; +import java.util.Map; + +/** Credential reference type. */ +@Fluent +public final class CredentialReference { + @JsonIgnore private final ClientLogger logger = new ClientLogger(CredentialReference.class); + + /* + * Credential reference type. + */ + @JsonProperty(value = "type", required = true) + private String type; + + /* + * Reference credential name. + */ + @JsonProperty(value = "referenceName", required = true) + private String referenceName; + + /* + * Credential reference type. + */ + @JsonIgnore private Map additionalProperties; + + /** Creates an instance of CredentialReference class. */ + public CredentialReference() { + type = "CredentialReference"; + } + + /** + * Get the type property: Credential reference type. + * + * @return the type value. + */ + public String type() { + return this.type; + } + + /** + * Set the type property: Credential reference type. + * + * @param type the type value to set. + * @return the CredentialReference object itself. + */ + public CredentialReference withType(String type) { + this.type = type; + return this; + } + + /** + * Get the referenceName property: Reference credential name. + * + * @return the referenceName value. + */ + public String referenceName() { + return this.referenceName; + } + + /** + * Set the referenceName property: Reference credential name. + * + * @param referenceName the referenceName value to set. + * @return the CredentialReference object itself. + */ + public CredentialReference withReferenceName(String referenceName) { + this.referenceName = referenceName; + return this; + } + + /** + * Get the additionalProperties property: Credential reference type. + * + * @return the additionalProperties value. + */ + @JsonAnyGetter + public Map additionalProperties() { + return this.additionalProperties; + } + + /** + * Set the additionalProperties property: Credential reference type. + * + * @param additionalProperties the additionalProperties value to set. + * @return the CredentialReference object itself. + */ + public CredentialReference withAdditionalProperties(Map additionalProperties) { + this.additionalProperties = additionalProperties; + return this; + } + + @JsonAnySetter + void withAdditionalProperties(String key, Object value) { + if (additionalProperties == null) { + additionalProperties = new HashMap<>(); + } + additionalProperties.put(key, value); + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + public void validate() { + if (referenceName() == null) { + throw logger + .logExceptionAsError( + new IllegalArgumentException( + "Missing required property referenceName in model CredentialReference")); + } + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerLocation.java index 90c547c5a4cc..8c19fba9d7ab 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of file server dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("FileServerLocation") -@Immutable +@Fluent public final class FileServerLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(FileServerLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerWriteSettings.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerWriteSettings.java index 036957450afd..0918e97f3766 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerWriteSettings.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FileServerWriteSettings.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** File server write settings. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("FileServerWriteSettings") -@Immutable +@Fluent public final class FileServerWriteSettings extends StoreWriteSettings { @JsonIgnore private final ClientLogger logger = new ClientLogger(FileServerWriteSettings.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FtpServerLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FtpServerLocation.java index 8a398ae65d8f..c69c4705355d 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FtpServerLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/FtpServerLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of ftp server dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("FtpServerLocation") -@Immutable +@Fluent public final class FtpServerLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(FtpServerLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubAccessTokenRequest.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubAccessTokenRequest.java index 26f1881c1b4a..4fc5b5759943 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubAccessTokenRequest.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubAccessTokenRequest.java @@ -26,6 +26,12 @@ public final class GitHubAccessTokenRequest { @JsonProperty(value = "gitHubClientId") private String gitHubClientId; + /* + * GitHub bring your own app client secret information. + */ + @JsonProperty(value = "gitHubClientSecret") + private GitHubClientSecret gitHubClientSecret; + /* * GitHub access token base URL. */ @@ -72,6 +78,26 @@ public GitHubAccessTokenRequest withGitHubClientId(String gitHubClientId) { return this; } + /** + * Get the gitHubClientSecret property: GitHub bring your own app client secret information. + * + * @return the gitHubClientSecret value. + */ + public GitHubClientSecret gitHubClientSecret() { + return this.gitHubClientSecret; + } + + /** + * Set the gitHubClientSecret property: GitHub bring your own app client secret information. + * + * @param gitHubClientSecret the gitHubClientSecret value to set. + * @return the GitHubAccessTokenRequest object itself. + */ + public GitHubAccessTokenRequest withGitHubClientSecret(GitHubClientSecret gitHubClientSecret) { + this.gitHubClientSecret = gitHubClientSecret; + return this; + } + /** * Get the gitHubAccessTokenBaseUrl property: GitHub access token base URL. * @@ -104,6 +130,9 @@ public void validate() { new IllegalArgumentException( "Missing required property gitHubAccessCode in model GitHubAccessTokenRequest")); } + if (gitHubClientSecret() != null) { + gitHubClientSecret().validate(); + } if (gitHubAccessTokenBaseUrl() == null) { throw logger .logExceptionAsError( diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubClientSecret.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubClientSecret.java new file mode 100644 index 000000000000..a1b9a99dcb90 --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/GitHubClientSecret.java @@ -0,0 +1,76 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** Client secret information for factory's bring your own app repository configuration. */ +@Fluent +public final class GitHubClientSecret { + @JsonIgnore private final ClientLogger logger = new ClientLogger(GitHubClientSecret.class); + + /* + * Bring your own app client secret AKV URL. + */ + @JsonProperty(value = "byoaSecretAkvUrl") + private String byoaSecretAkvUrl; + + /* + * Bring your own app client secret name in AKV. + */ + @JsonProperty(value = "byoaSecretName") + private String byoaSecretName; + + /** + * Get the byoaSecretAkvUrl property: Bring your own app client secret AKV URL. + * + * @return the byoaSecretAkvUrl value. + */ + public String byoaSecretAkvUrl() { + return this.byoaSecretAkvUrl; + } + + /** + * Set the byoaSecretAkvUrl property: Bring your own app client secret AKV URL. + * + * @param byoaSecretAkvUrl the byoaSecretAkvUrl value to set. + * @return the GitHubClientSecret object itself. + */ + public GitHubClientSecret withByoaSecretAkvUrl(String byoaSecretAkvUrl) { + this.byoaSecretAkvUrl = byoaSecretAkvUrl; + return this; + } + + /** + * Get the byoaSecretName property: Bring your own app client secret name in AKV. + * + * @return the byoaSecretName value. + */ + public String byoaSecretName() { + return this.byoaSecretName; + } + + /** + * Set the byoaSecretName property: Bring your own app client secret name in AKV. + * + * @param byoaSecretName the byoaSecretName value to set. + * @return the GitHubClientSecret object itself. + */ + public GitHubClientSecret withByoaSecretName(String byoaSecretName) { + this.byoaSecretName = byoaSecretName; + return this; + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + public void validate() { + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HDInsightOnDemandLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HDInsightOnDemandLinkedService.java index da2351fc9704..05ef126eb2c2 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HDInsightOnDemandLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HDInsightOnDemandLinkedService.java @@ -253,6 +253,12 @@ public class HDInsightOnDemandLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.subnetName") private Object subnetName; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the clusterSize property: Number of worker/data nodes in the cluster. Suggestion value: 4. Type: string (or * Expression with resultType string). @@ -969,6 +975,26 @@ public HDInsightOnDemandLinkedService withSubnetName(Object subnetName) { return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the HDInsightOnDemandLinkedService object itself. + */ + public HDInsightOnDemandLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public HDInsightOnDemandLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -1067,5 +1093,8 @@ public void validate() { if (scriptActions() != null) { scriptActions().forEach(e -> e.validate()); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HdfsLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HdfsLocation.java index f86523d940e5..5f99a8db31ef 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HdfsLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/HdfsLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of HDFS. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("HdfsLocation") -@Immutable +@Fluent public final class HdfsLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(HdfsLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeEntityReferenceType.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeEntityReferenceType.java index f5d1fb25dbfc..916383fc04b4 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeEntityReferenceType.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeEntityReferenceType.java @@ -19,9 +19,6 @@ public final class IntegrationRuntimeEntityReferenceType public static final IntegrationRuntimeEntityReferenceType LINKED_SERVICE_REFERENCE = fromString("LinkedServiceReference"); - /** Static value CredentialReference for IntegrationRuntimeEntityReferenceType. */ - public static final IntegrationRuntimeEntityReferenceType CREDENTIAL_REFERENCE = fromString("CredentialReference"); - /** * Creates or finds a IntegrationRuntimeEntityReferenceType from its string representation. * diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeSsisProperties.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeSsisProperties.java index 6240223b2f66..fa3abc00b537 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeSsisProperties.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/IntegrationRuntimeSsisProperties.java @@ -63,10 +63,10 @@ public final class IntegrationRuntimeSsisProperties { private List packageStores; /* - * The user-assigned managed identity reference. + * The credential reference containing authentication information. */ - @JsonProperty(value = "managedCredential") - private EntityReference managedCredential; + @JsonProperty(value = "credential") + private CredentialReference credential; /* * SSIS properties for managed integration runtime. @@ -221,22 +221,22 @@ public IntegrationRuntimeSsisProperties withPackageStores(List pac } /** - * Get the managedCredential property: The user-assigned managed identity reference. + * Get the credential property: The credential reference containing authentication information. * - * @return the managedCredential value. + * @return the credential value. */ - public EntityReference managedCredential() { - return this.managedCredential; + public CredentialReference credential() { + return this.credential; } /** - * Set the managedCredential property: The user-assigned managed identity reference. + * Set the credential property: The credential reference containing authentication information. * - * @param managedCredential the managedCredential value to set. + * @param credential the credential value to set. * @return the IntegrationRuntimeSsisProperties object itself. */ - public IntegrationRuntimeSsisProperties withManagedCredential(EntityReference managedCredential) { - this.managedCredential = managedCredential; + public IntegrationRuntimeSsisProperties withCredential(CredentialReference credential) { + this.credential = credential; return this; } @@ -290,8 +290,8 @@ public void validate() { if (packageStores() != null) { packageStores().forEach(e -> e.validate()); } - if (managedCredential() != null) { - managedCredential().validate(); + if (credential() != null) { + credential().validate(); } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ManagedIdentityCredential.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ManagedIdentityCredential.java new file mode 100644 index 000000000000..8852db0f43c7 --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ManagedIdentityCredential.java @@ -0,0 +1,73 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.annotation.JsonFlatten; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.annotation.JsonTypeName; +import java.util.List; + +/** Managed identity credential. */ +@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") +@JsonTypeName("ManagedIdentity") +@JsonFlatten +@Fluent +public class ManagedIdentityCredential extends Credential { + @JsonIgnore private final ClientLogger logger = new ClientLogger(ManagedIdentityCredential.class); + + /* + * The resource id of user assigned managed identity + */ + @JsonProperty(value = "typeProperties.resourceId") + private String resourceId; + + /** + * Get the resourceId property: The resource id of user assigned managed identity. + * + * @return the resourceId value. + */ + public String resourceId() { + return this.resourceId; + } + + /** + * Set the resourceId property: The resource id of user assigned managed identity. + * + * @param resourceId the resourceId value to set. + * @return the ManagedIdentityCredential object itself. + */ + public ManagedIdentityCredential withResourceId(String resourceId) { + this.resourceId = resourceId; + return this; + } + + /** {@inheritDoc} */ + @Override + public ManagedIdentityCredential withDescription(String description) { + super.withDescription(description); + return this; + } + + /** {@inheritDoc} */ + @Override + public ManagedIdentityCredential withAnnotations(List annotations) { + super.withAnnotations(annotations); + return this; + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + @Override + public void validate() { + super.validate(); + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcCompressionCodec.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcCompressionCodec.java deleted file mode 100644 index 4e4391286143..000000000000 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcCompressionCodec.java +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. -// Code generated by Microsoft (R) AutoRest Code Generator. - -package com.azure.resourcemanager.datafactory.models; - -import com.azure.core.util.ExpandableStringEnum; -import com.fasterxml.jackson.annotation.JsonCreator; -import java.util.Collection; - -/** Defines values for OrcCompressionCodec. */ -public final class OrcCompressionCodec extends ExpandableStringEnum { - /** Static value none for OrcCompressionCodec. */ - public static final OrcCompressionCodec NONE = fromString("none"); - - /** Static value zlib for OrcCompressionCodec. */ - public static final OrcCompressionCodec ZLIB = fromString("zlib"); - - /** Static value snappy for OrcCompressionCodec. */ - public static final OrcCompressionCodec SNAPPY = fromString("snappy"); - - /** Static value lzo for OrcCompressionCodec. */ - public static final OrcCompressionCodec LZO = fromString("lzo"); - - /** - * Creates or finds a OrcCompressionCodec from its string representation. - * - * @param name a name to look for. - * @return the corresponding OrcCompressionCodec. - */ - @JsonCreator - public static OrcCompressionCodec fromString(String name) { - return fromString(name, OrcCompressionCodec.class); - } - - /** @return known OrcCompressionCodec values. */ - public static Collection values() { - return values(OrcCompressionCodec.class); - } -} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcDataset.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcDataset.java index d884027666c0..39dc80ac5600 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcDataset.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcDataset.java @@ -29,10 +29,11 @@ public class OrcDataset extends Dataset { private DatasetLocation location; /* - * The orcCompressionCodec property. + * The data orcCompressionCodec. Type: string (or Expression with + * resultType string). */ @JsonProperty(value = "typeProperties.orcCompressionCodec") - private OrcCompressionCodec orcCompressionCodec; + private Object orcCompressionCodec; /** * Get the location property: The location of the ORC data storage. @@ -55,21 +56,23 @@ public OrcDataset withLocation(DatasetLocation location) { } /** - * Get the orcCompressionCodec property: The orcCompressionCodec property. + * Get the orcCompressionCodec property: The data orcCompressionCodec. Type: string (or Expression with resultType + * string). * * @return the orcCompressionCodec value. */ - public OrcCompressionCodec orcCompressionCodec() { + public Object orcCompressionCodec() { return this.orcCompressionCodec; } /** - * Set the orcCompressionCodec property: The orcCompressionCodec property. + * Set the orcCompressionCodec property: The data orcCompressionCodec. Type: string (or Expression with resultType + * string). * * @param orcCompressionCodec the orcCompressionCodec value to set. * @return the OrcDataset object itself. */ - public OrcDataset withOrcCompressionCodec(OrcCompressionCodec orcCompressionCodec) { + public OrcDataset withOrcCompressionCodec(Object orcCompressionCodec) { this.orcCompressionCodec = orcCompressionCodec; return this; } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcFormat.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcFormat.java index 4a4666204fc2..5fe8c8c7c472 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcFormat.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/OrcFormat.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The data stored in Optimized Row Columnar (ORC) format. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("OrcFormat") -@Immutable +@Fluent public final class OrcFormat extends DatasetStorageFormat { @JsonIgnore private final ClientLogger logger = new ClientLogger(OrcFormat.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ParquetFormat.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ParquetFormat.java index 6e9658cf4339..6ff28caff4c7 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ParquetFormat.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ParquetFormat.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The data stored in Parquet format. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("ParquetFormat") -@Immutable +@Fluent public final class ParquetFormat extends DatasetStorageFormat { @JsonIgnore private final ClientLogger logger = new ClientLogger(ParquetFormat.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/PipelineRunInvokedBy.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/PipelineRunInvokedBy.java index bb1b168455c1..021242584c75 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/PipelineRunInvokedBy.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/PipelineRunInvokedBy.java @@ -32,6 +32,18 @@ public final class PipelineRunInvokedBy { @JsonProperty(value = "invokedByType", access = JsonProperty.Access.WRITE_ONLY) private String invokedByType; + /* + * The name of the pipeline that triggered the run, if any. + */ + @JsonProperty(value = "pipelineName", access = JsonProperty.Access.WRITE_ONLY) + private String pipelineName; + + /* + * The run id of the pipeline that triggered the run, if any. + */ + @JsonProperty(value = "pipelineRunId", access = JsonProperty.Access.WRITE_ONLY) + private String pipelineRunId; + /** * Get the name property: Name of the entity that started the pipeline run. * @@ -59,6 +71,24 @@ public String invokedByType() { return this.invokedByType; } + /** + * Get the pipelineName property: The name of the pipeline that triggered the run, if any. + * + * @return the pipelineName value. + */ + public String pipelineName() { + return this.pipelineName; + } + + /** + * Get the pipelineRunId property: The run id of the pipeline that triggered the run, if any. + * + * @return the pipelineRunId value. + */ + public String pipelineRunId() { + return this.pipelineRunId; + } + /** * Validates the instance. * diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/RestServiceLinkedService.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/RestServiceLinkedService.java index 905de23c7245..c77e13660db3 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/RestServiceLinkedService.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/RestServiceLinkedService.java @@ -105,6 +105,12 @@ public class RestServiceLinkedService extends LinkedService { @JsonProperty(value = "typeProperties.encryptedCredential") private Object encryptedCredential; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "typeProperties.credential") + private CredentialReference credential; + /** * Get the url property: The base URL of the REST service. * @@ -357,6 +363,26 @@ public RestServiceLinkedService withEncryptedCredential(Object encryptedCredenti return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the RestServiceLinkedService object itself. + */ + public RestServiceLinkedService withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** {@inheritDoc} */ @Override public RestServiceLinkedService withConnectVia(IntegrationRuntimeReference connectVia) { @@ -410,5 +436,8 @@ public void validate() { if (servicePrincipalKey() != null) { servicePrincipalKey().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SapBwCubeDataset.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SapBwCubeDataset.java index 1e4dc8576436..ff67c2a50f8c 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SapBwCubeDataset.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SapBwCubeDataset.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -15,7 +15,7 @@ /** The SAP BW cube dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("SapBwCube") -@Immutable +@Fluent public final class SapBwCubeDataset extends Dataset { @JsonIgnore private final ClientLogger logger = new ClientLogger(SapBwCubeDataset.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ServicePrincipalCredential.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ServicePrincipalCredential.java new file mode 100644 index 000000000000..3c00763e225c --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/ServicePrincipalCredential.java @@ -0,0 +1,128 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.annotation.JsonFlatten; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.annotation.JsonTypeName; +import java.util.List; + +/** Service principal credential. */ +@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") +@JsonTypeName("ServicePrincipal") +@JsonFlatten +@Fluent +public class ServicePrincipalCredential extends Credential { + @JsonIgnore private final ClientLogger logger = new ClientLogger(ServicePrincipalCredential.class); + + /* + * The app ID of the service principal used to authenticate + */ + @JsonProperty(value = "typeProperties.servicePrincipalId") + private Object servicePrincipalId; + + /* + * The key of the service principal used to authenticate. + */ + @JsonProperty(value = "typeProperties.servicePrincipalKey") + private AzureKeyVaultSecretReference servicePrincipalKey; + + /* + * The ID of the tenant to which the service principal belongs + */ + @JsonProperty(value = "typeProperties.tenant") + private Object tenant; + + /** + * Get the servicePrincipalId property: The app ID of the service principal used to authenticate. + * + * @return the servicePrincipalId value. + */ + public Object servicePrincipalId() { + return this.servicePrincipalId; + } + + /** + * Set the servicePrincipalId property: The app ID of the service principal used to authenticate. + * + * @param servicePrincipalId the servicePrincipalId value to set. + * @return the ServicePrincipalCredential object itself. + */ + public ServicePrincipalCredential withServicePrincipalId(Object servicePrincipalId) { + this.servicePrincipalId = servicePrincipalId; + return this; + } + + /** + * Get the servicePrincipalKey property: The key of the service principal used to authenticate. + * + * @return the servicePrincipalKey value. + */ + public AzureKeyVaultSecretReference servicePrincipalKey() { + return this.servicePrincipalKey; + } + + /** + * Set the servicePrincipalKey property: The key of the service principal used to authenticate. + * + * @param servicePrincipalKey the servicePrincipalKey value to set. + * @return the ServicePrincipalCredential object itself. + */ + public ServicePrincipalCredential withServicePrincipalKey(AzureKeyVaultSecretReference servicePrincipalKey) { + this.servicePrincipalKey = servicePrincipalKey; + return this; + } + + /** + * Get the tenant property: The ID of the tenant to which the service principal belongs. + * + * @return the tenant value. + */ + public Object tenant() { + return this.tenant; + } + + /** + * Set the tenant property: The ID of the tenant to which the service principal belongs. + * + * @param tenant the tenant value to set. + * @return the ServicePrincipalCredential object itself. + */ + public ServicePrincipalCredential withTenant(Object tenant) { + this.tenant = tenant; + return this; + } + + /** {@inheritDoc} */ + @Override + public ServicePrincipalCredential withDescription(String description) { + super.withDescription(description); + return this; + } + + /** {@inheritDoc} */ + @Override + public ServicePrincipalCredential withAnnotations(List annotations) { + super.withAnnotations(annotations); + return this; + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + @Override + public void validate() { + super.validate(); + if (servicePrincipalKey() != null) { + servicePrincipalKey().validate(); + } + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SftpLocation.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SftpLocation.java index d71821b70665..7f32e2be1ac4 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SftpLocation.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SftpLocation.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** The location of SFTP dataset. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("SftpLocation") -@Immutable +@Fluent public final class SftpLocation extends DatasetLocation { @JsonIgnore private final ClientLogger logger = new ClientLogger(SftpLocation.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWSink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWSink.java index dd396a405f00..257580261501 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWSink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWSink.java @@ -59,6 +59,27 @@ public final class SqlDWSink extends CopySink { @JsonProperty(value = "tableOption") private Object tableOption; + /* + * Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + */ + @JsonProperty(value = "sqlWriterUseTableLock") + private Object sqlWriterUseTableLock; + + /* + * Write behavior when copying data into azure SQL DW. Type: + * SqlDWWriteBehaviorEnum (or Expression with resultType + * SqlDWWriteBehaviorEnum) + */ + @JsonProperty(value = "writeBehavior") + private Object writeBehavior; + + /* + * SQL DW upsert settings. + */ + @JsonProperty(value = "upsertSettings") + private SqlDWUpsertSettings upsertSettings; + /** * Get the preCopyScript property: SQL pre-copy script. Type: string (or Expression with resultType string). * @@ -185,6 +206,70 @@ public SqlDWSink withTableOption(Object tableOption) { return this; } + /** + * Get the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @return the sqlWriterUseTableLock value. + */ + public Object sqlWriterUseTableLock() { + return this.sqlWriterUseTableLock; + } + + /** + * Set the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @param sqlWriterUseTableLock the sqlWriterUseTableLock value to set. + * @return the SqlDWSink object itself. + */ + public SqlDWSink withSqlWriterUseTableLock(Object sqlWriterUseTableLock) { + this.sqlWriterUseTableLock = sqlWriterUseTableLock; + return this; + } + + /** + * Get the writeBehavior property: Write behavior when copying data into azure SQL DW. Type: SqlDWWriteBehaviorEnum + * (or Expression with resultType SqlDWWriteBehaviorEnum). + * + * @return the writeBehavior value. + */ + public Object writeBehavior() { + return this.writeBehavior; + } + + /** + * Set the writeBehavior property: Write behavior when copying data into azure SQL DW. Type: SqlDWWriteBehaviorEnum + * (or Expression with resultType SqlDWWriteBehaviorEnum). + * + * @param writeBehavior the writeBehavior value to set. + * @return the SqlDWSink object itself. + */ + public SqlDWSink withWriteBehavior(Object writeBehavior) { + this.writeBehavior = writeBehavior; + return this; + } + + /** + * Get the upsertSettings property: SQL DW upsert settings. + * + * @return the upsertSettings value. + */ + public SqlDWUpsertSettings upsertSettings() { + return this.upsertSettings; + } + + /** + * Set the upsertSettings property: SQL DW upsert settings. + * + * @param upsertSettings the upsertSettings value to set. + * @return the SqlDWSink object itself. + */ + public SqlDWSink withUpsertSettings(SqlDWUpsertSettings upsertSettings) { + this.upsertSettings = upsertSettings; + return this; + } + /** {@inheritDoc} */ @Override public SqlDWSink withWriteBatchSize(Object writeBatchSize) { @@ -241,5 +326,8 @@ public void validate() { if (copyCommandSettings() != null) { copyCommandSettings().validate(); } + if (upsertSettings() != null) { + upsertSettings().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWUpsertSettings.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWUpsertSettings.java new file mode 100644 index 000000000000..ec73e21e15cd --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlDWUpsertSettings.java @@ -0,0 +1,82 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** Sql DW upsert option settings. */ +@Fluent +public final class SqlDWUpsertSettings { + @JsonIgnore private final ClientLogger logger = new ClientLogger(SqlDWUpsertSettings.class); + + /* + * Schema name for interim table. Type: string (or Expression with + * resultType string). + */ + @JsonProperty(value = "interimSchemaName") + private Object interimSchemaName; + + /* + * Key column names for unique row identification. Type: array of strings + * (or Expression with resultType array of strings). + */ + @JsonProperty(value = "keys") + private Object keys; + + /** + * Get the interimSchemaName property: Schema name for interim table. Type: string (or Expression with resultType + * string). + * + * @return the interimSchemaName value. + */ + public Object interimSchemaName() { + return this.interimSchemaName; + } + + /** + * Set the interimSchemaName property: Schema name for interim table. Type: string (or Expression with resultType + * string). + * + * @param interimSchemaName the interimSchemaName value to set. + * @return the SqlDWUpsertSettings object itself. + */ + public SqlDWUpsertSettings withInterimSchemaName(Object interimSchemaName) { + this.interimSchemaName = interimSchemaName; + return this; + } + + /** + * Get the keys property: Key column names for unique row identification. Type: array of strings (or Expression with + * resultType array of strings). + * + * @return the keys value. + */ + public Object keys() { + return this.keys; + } + + /** + * Set the keys property: Key column names for unique row identification. Type: array of strings (or Expression with + * resultType array of strings). + * + * @param keys the keys value to set. + * @return the SqlDWUpsertSettings object itself. + */ + public SqlDWUpsertSettings withKeys(Object keys) { + this.keys = keys; + return this; + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + public void validate() { + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlMISink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlMISink.java index a4a4eb44f19a..5ff0e94cf599 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlMISink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlMISink.java @@ -61,6 +61,27 @@ public final class SqlMISink extends CopySink { @JsonProperty(value = "tableOption") private Object tableOption; + /* + * Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + */ + @JsonProperty(value = "sqlWriterUseTableLock") + private Object sqlWriterUseTableLock; + + /* + * White behavior when copying data into azure SQL MI. Type: + * SqlWriteBehaviorEnum (or Expression with resultType + * SqlWriteBehaviorEnum) + */ + @JsonProperty(value = "writeBehavior") + private Object writeBehavior; + + /* + * SQL upsert settings. + */ + @JsonProperty(value = "upsertSettings") + private SqlUpsertSettings upsertSettings; + /** * Get the sqlWriterStoredProcedureName property: SQL writer stored procedure name. Type: string (or Expression with * resultType string). @@ -187,6 +208,70 @@ public SqlMISink withTableOption(Object tableOption) { return this; } + /** + * Get the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @return the sqlWriterUseTableLock value. + */ + public Object sqlWriterUseTableLock() { + return this.sqlWriterUseTableLock; + } + + /** + * Set the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @param sqlWriterUseTableLock the sqlWriterUseTableLock value to set. + * @return the SqlMISink object itself. + */ + public SqlMISink withSqlWriterUseTableLock(Object sqlWriterUseTableLock) { + this.sqlWriterUseTableLock = sqlWriterUseTableLock; + return this; + } + + /** + * Get the writeBehavior property: White behavior when copying data into azure SQL MI. Type: SqlWriteBehaviorEnum + * (or Expression with resultType SqlWriteBehaviorEnum). + * + * @return the writeBehavior value. + */ + public Object writeBehavior() { + return this.writeBehavior; + } + + /** + * Set the writeBehavior property: White behavior when copying data into azure SQL MI. Type: SqlWriteBehaviorEnum + * (or Expression with resultType SqlWriteBehaviorEnum). + * + * @param writeBehavior the writeBehavior value to set. + * @return the SqlMISink object itself. + */ + public SqlMISink withWriteBehavior(Object writeBehavior) { + this.writeBehavior = writeBehavior; + return this; + } + + /** + * Get the upsertSettings property: SQL upsert settings. + * + * @return the upsertSettings value. + */ + public SqlUpsertSettings upsertSettings() { + return this.upsertSettings; + } + + /** + * Set the upsertSettings property: SQL upsert settings. + * + * @param upsertSettings the upsertSettings value to set. + * @return the SqlMISink object itself. + */ + public SqlMISink withUpsertSettings(SqlUpsertSettings upsertSettings) { + this.upsertSettings = upsertSettings; + return this; + } + /** {@inheritDoc} */ @Override public SqlMISink withWriteBatchSize(Object writeBatchSize) { @@ -247,5 +332,8 @@ public void validate() { } }); } + if (upsertSettings() != null) { + upsertSettings().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlServerSink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlServerSink.java index 6bc5fa8f7f2b..2703038626c5 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlServerSink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlServerSink.java @@ -61,6 +61,27 @@ public final class SqlServerSink extends CopySink { @JsonProperty(value = "tableOption") private Object tableOption; + /* + * Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + */ + @JsonProperty(value = "sqlWriterUseTableLock") + private Object sqlWriterUseTableLock; + + /* + * Write behavior when copying data into sql server. Type: + * SqlWriteBehaviorEnum (or Expression with resultType + * SqlWriteBehaviorEnum) + */ + @JsonProperty(value = "writeBehavior") + private Object writeBehavior; + + /* + * SQL upsert settings. + */ + @JsonProperty(value = "upsertSettings") + private SqlUpsertSettings upsertSettings; + /** * Get the sqlWriterStoredProcedureName property: SQL writer stored procedure name. Type: string (or Expression with * resultType string). @@ -188,6 +209,70 @@ public SqlServerSink withTableOption(Object tableOption) { return this; } + /** + * Get the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @return the sqlWriterUseTableLock value. + */ + public Object sqlWriterUseTableLock() { + return this.sqlWriterUseTableLock; + } + + /** + * Set the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @param sqlWriterUseTableLock the sqlWriterUseTableLock value to set. + * @return the SqlServerSink object itself. + */ + public SqlServerSink withSqlWriterUseTableLock(Object sqlWriterUseTableLock) { + this.sqlWriterUseTableLock = sqlWriterUseTableLock; + return this; + } + + /** + * Get the writeBehavior property: Write behavior when copying data into sql server. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @return the writeBehavior value. + */ + public Object writeBehavior() { + return this.writeBehavior; + } + + /** + * Set the writeBehavior property: Write behavior when copying data into sql server. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @param writeBehavior the writeBehavior value to set. + * @return the SqlServerSink object itself. + */ + public SqlServerSink withWriteBehavior(Object writeBehavior) { + this.writeBehavior = writeBehavior; + return this; + } + + /** + * Get the upsertSettings property: SQL upsert settings. + * + * @return the upsertSettings value. + */ + public SqlUpsertSettings upsertSettings() { + return this.upsertSettings; + } + + /** + * Set the upsertSettings property: SQL upsert settings. + * + * @param upsertSettings the upsertSettings value to set. + * @return the SqlServerSink object itself. + */ + public SqlServerSink withUpsertSettings(SqlUpsertSettings upsertSettings) { + this.upsertSettings = upsertSettings; + return this; + } + /** {@inheritDoc} */ @Override public SqlServerSink withWriteBatchSize(Object writeBatchSize) { @@ -248,5 +333,8 @@ public void validate() { } }); } + if (upsertSettings() != null) { + upsertSettings().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlSink.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlSink.java index 8bb016615604..d01d56f5e94a 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlSink.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlSink.java @@ -61,6 +61,26 @@ public final class SqlSink extends CopySink { @JsonProperty(value = "tableOption") private Object tableOption; + /* + * Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + */ + @JsonProperty(value = "sqlWriterUseTableLock") + private Object sqlWriterUseTableLock; + + /* + * Write behavior when copying data into sql. Type: SqlWriteBehaviorEnum + * (or Expression with resultType SqlWriteBehaviorEnum) + */ + @JsonProperty(value = "writeBehavior") + private Object writeBehavior; + + /* + * SQL upsert settings. + */ + @JsonProperty(value = "upsertSettings") + private SqlUpsertSettings upsertSettings; + /** * Get the sqlWriterStoredProcedureName property: SQL writer stored procedure name. Type: string (or Expression with * resultType string). @@ -187,6 +207,70 @@ public SqlSink withTableOption(Object tableOption) { return this; } + /** + * Get the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @return the sqlWriterUseTableLock value. + */ + public Object sqlWriterUseTableLock() { + return this.sqlWriterUseTableLock; + } + + /** + * Set the sqlWriterUseTableLock property: Whether to use table lock during bulk copy. Type: boolean (or Expression + * with resultType boolean). + * + * @param sqlWriterUseTableLock the sqlWriterUseTableLock value to set. + * @return the SqlSink object itself. + */ + public SqlSink withSqlWriterUseTableLock(Object sqlWriterUseTableLock) { + this.sqlWriterUseTableLock = sqlWriterUseTableLock; + return this; + } + + /** + * Get the writeBehavior property: Write behavior when copying data into sql. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @return the writeBehavior value. + */ + public Object writeBehavior() { + return this.writeBehavior; + } + + /** + * Set the writeBehavior property: Write behavior when copying data into sql. Type: SqlWriteBehaviorEnum (or + * Expression with resultType SqlWriteBehaviorEnum). + * + * @param writeBehavior the writeBehavior value to set. + * @return the SqlSink object itself. + */ + public SqlSink withWriteBehavior(Object writeBehavior) { + this.writeBehavior = writeBehavior; + return this; + } + + /** + * Get the upsertSettings property: SQL upsert settings. + * + * @return the upsertSettings value. + */ + public SqlUpsertSettings upsertSettings() { + return this.upsertSettings; + } + + /** + * Set the upsertSettings property: SQL upsert settings. + * + * @param upsertSettings the upsertSettings value to set. + * @return the SqlSink object itself. + */ + public SqlSink withUpsertSettings(SqlUpsertSettings upsertSettings) { + this.upsertSettings = upsertSettings; + return this; + } + /** {@inheritDoc} */ @Override public SqlSink withWriteBatchSize(Object writeBatchSize) { @@ -247,5 +331,8 @@ public void validate() { } }); } + if (upsertSettings() != null) { + upsertSettings().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlUpsertSettings.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlUpsertSettings.java new file mode 100644 index 000000000000..7c5f806f296b --- /dev/null +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SqlUpsertSettings.java @@ -0,0 +1,111 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) AutoRest Code Generator. + +package com.azure.resourcemanager.datafactory.models; + +import com.azure.core.annotation.Fluent; +import com.azure.core.util.logging.ClientLogger; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** Sql upsert option settings. */ +@Fluent +public final class SqlUpsertSettings { + @JsonIgnore private final ClientLogger logger = new ClientLogger(SqlUpsertSettings.class); + + /* + * Specifies whether to use temp db for upsert interim table. Type: boolean + * (or Expression with resultType boolean). + */ + @JsonProperty(value = "useTempDB") + private Object useTempDB; + + /* + * Schema name for interim table. Type: string (or Expression with + * resultType string). + */ + @JsonProperty(value = "interimSchemaName") + private Object interimSchemaName; + + /* + * Key column names for unique row identification. Type: array of strings + * (or Expression with resultType array of strings). + */ + @JsonProperty(value = "keys") + private Object keys; + + /** + * Get the useTempDB property: Specifies whether to use temp db for upsert interim table. Type: boolean (or + * Expression with resultType boolean). + * + * @return the useTempDB value. + */ + public Object useTempDB() { + return this.useTempDB; + } + + /** + * Set the useTempDB property: Specifies whether to use temp db for upsert interim table. Type: boolean (or + * Expression with resultType boolean). + * + * @param useTempDB the useTempDB value to set. + * @return the SqlUpsertSettings object itself. + */ + public SqlUpsertSettings withUseTempDB(Object useTempDB) { + this.useTempDB = useTempDB; + return this; + } + + /** + * Get the interimSchemaName property: Schema name for interim table. Type: string (or Expression with resultType + * string). + * + * @return the interimSchemaName value. + */ + public Object interimSchemaName() { + return this.interimSchemaName; + } + + /** + * Set the interimSchemaName property: Schema name for interim table. Type: string (or Expression with resultType + * string). + * + * @param interimSchemaName the interimSchemaName value to set. + * @return the SqlUpsertSettings object itself. + */ + public SqlUpsertSettings withInterimSchemaName(Object interimSchemaName) { + this.interimSchemaName = interimSchemaName; + return this; + } + + /** + * Get the keys property: Key column names for unique row identification. Type: array of strings (or Expression with + * resultType array of strings). + * + * @return the keys value. + */ + public Object keys() { + return this.keys; + } + + /** + * Set the keys property: Key column names for unique row identification. Type: array of strings (or Expression with + * resultType array of strings). + * + * @param keys the keys value to set. + * @return the SqlUpsertSettings object itself. + */ + public SqlUpsertSettings withKeys(Object keys) { + this.keys = keys; + return this; + } + + /** + * Validates the instance. + * + * @throws IllegalArgumentException thrown if the instance is not valid. + */ + public void validate() { + } +} diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SsisFolder.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SsisFolder.java index 2c93dea205ab..d68858ab499f 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SsisFolder.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/SsisFolder.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** Ssis folder. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonTypeName("Folder") -@Immutable +@Fluent public final class SsisFolder extends SsisObjectMetadata { @JsonIgnore private final ClientLogger logger = new ClientLogger(SsisFolder.class); diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebActivityAuthentication.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebActivityAuthentication.java index a9e133a25ac7..a2a02a0bf911 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebActivityAuthentication.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebActivityAuthentication.java @@ -18,7 +18,7 @@ public final class WebActivityAuthentication { * Web activity authentication * (Basic/ClientCertificate/MSI/ServicePrincipal) */ - @JsonProperty(value = "type", required = true) + @JsonProperty(value = "type") private String type; /* @@ -58,6 +58,12 @@ public final class WebActivityAuthentication { @JsonProperty(value = "userTenant") private Object userTenant; + /* + * The credential reference containing authentication information. + */ + @JsonProperty(value = "credential") + private CredentialReference credential; + /** * Get the type property: Web activity authentication (Basic/ClientCertificate/MSI/ServicePrincipal). * @@ -186,22 +192,40 @@ public WebActivityAuthentication withUserTenant(Object userTenant) { return this; } + /** + * Get the credential property: The credential reference containing authentication information. + * + * @return the credential value. + */ + public CredentialReference credential() { + return this.credential; + } + + /** + * Set the credential property: The credential reference containing authentication information. + * + * @param credential the credential value to set. + * @return the WebActivityAuthentication object itself. + */ + public WebActivityAuthentication withCredential(CredentialReference credential) { + this.credential = credential; + return this; + } + /** * Validates the instance. * * @throws IllegalArgumentException thrown if the instance is not valid. */ public void validate() { - if (type() == null) { - throw logger - .logExceptionAsError( - new IllegalArgumentException("Missing required property type in model WebActivityAuthentication")); - } if (pfx() != null) { pfx().validate(); } if (password() != null) { password().validate(); } + if (credential() != null) { + credential().validate(); + } } } diff --git a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebAnonymousAuthentication.java b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebAnonymousAuthentication.java index 6b034fb6014c..919bd007e614 100644 --- a/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebAnonymousAuthentication.java +++ b/sdk/datafactory/azure-resourcemanager-datafactory/src/main/java/com/azure/resourcemanager/datafactory/models/WebAnonymousAuthentication.java @@ -4,7 +4,7 @@ package com.azure.resourcemanager.datafactory.models; -import com.azure.core.annotation.Immutable; +import com.azure.core.annotation.Fluent; import com.azure.core.util.logging.ClientLogger; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -13,7 +13,7 @@ /** A WebLinkedService that uses anonymous authentication to communicate with an HTTP endpoint. */ @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "authenticationType") @JsonTypeName("Anonymous") -@Immutable +@Fluent public final class WebAnonymousAuthentication extends WebLinkedServiceTypeProperties { @JsonIgnore private final ClientLogger logger = new ClientLogger(WebAnonymousAuthentication.class);