in sdk/resourcemanager/datafactory/armdatafactory/polymorphic_helpers.go [155:264]
func unmarshalCopySinkClassification(rawMsg json.RawMessage) (CopySinkClassification, error) {
if rawMsg == nil || string(rawMsg) == "null" {
return nil, nil
}
var m map[string]any
if err := json.Unmarshal(rawMsg, &m); err != nil {
return nil, err
}
var b CopySinkClassification
switch m["type"] {
case "AvroSink":
b = &AvroSink{}
case "AzureBlobFSSink":
b = &AzureBlobFSSink{}
case "AzureDataExplorerSink":
b = &AzureDataExplorerSink{}
case "AzureDataLakeStoreSink":
b = &AzureDataLakeStoreSink{}
case "AzureDatabricksDeltaLakeSink":
b = &AzureDatabricksDeltaLakeSink{}
case "AzureMySqlSink":
b = &AzureMySQLSink{}
case "AzurePostgreSqlSink":
b = &AzurePostgreSQLSink{}
case "AzureQueueSink":
b = &AzureQueueSink{}
case "AzureSearchIndexSink":
b = &AzureSearchIndexSink{}
case "AzureSqlSink":
b = &AzureSQLSink{}
case "AzureTableSink":
b = &AzureTableSink{}
case "BinarySink":
b = &BinarySink{}
case "BlobSink":
b = &BlobSink{}
case "CommonDataServiceForAppsSink":
b = &CommonDataServiceForAppsSink{}
case "CosmosDbMongoDbApiSink":
b = &CosmosDbMongoDbAPISink{}
case "CosmosDbSqlApiSink":
b = &CosmosDbSQLAPISink{}
case "DelimitedTextSink":
b = &DelimitedTextSink{}
case "DocumentDbCollectionSink":
b = &DocumentDbCollectionSink{}
case "DynamicsCrmSink":
b = &DynamicsCrmSink{}
case "DynamicsSink":
b = &DynamicsSink{}
case "FileSystemSink":
b = &FileSystemSink{}
case "IcebergSink":
b = &IcebergSink{}
case "InformixSink":
b = &InformixSink{}
case "JsonSink":
b = &JSONSink{}
case "LakeHouseTableSink":
b = &LakeHouseTableSink{}
case "MicrosoftAccessSink":
b = &MicrosoftAccessSink{}
case "MongoDbAtlasSink":
b = &MongoDbAtlasSink{}
case "MongoDbV2Sink":
b = &MongoDbV2Sink{}
case "OdbcSink":
b = &OdbcSink{}
case "OracleSink":
b = &OracleSink{}
case "OrcSink":
b = &OrcSink{}
case "ParquetSink":
b = &ParquetSink{}
case "RestSink":
b = &RestSink{}
case "SalesforceServiceCloudSink":
b = &SalesforceServiceCloudSink{}
case "SalesforceServiceCloudV2Sink":
b = &SalesforceServiceCloudV2Sink{}
case "SalesforceSink":
b = &SalesforceSink{}
case "SalesforceV2Sink":
b = &SalesforceV2Sink{}
case "SapCloudForCustomerSink":
b = &SapCloudForCustomerSink{}
case "SnowflakeSink":
b = &SnowflakeSink{}
case "SnowflakeV2Sink":
b = &SnowflakeV2Sink{}
case "SqlDWSink":
b = &SQLDWSink{}
case "SqlMISink":
b = &SQLMISink{}
case "SqlServerSink":
b = &SQLServerSink{}
case "SqlSink":
b = &SQLSink{}
case "TeradataSink":
b = &TeradataSink{}
case "WarehouseSink":
b = &WarehouseSink{}
default:
b = &CopySink{}
}
if err := json.Unmarshal(rawMsg, b); err != nil {
return nil, err
}
return b, nil
}