1// +build go1.13
2
3// Copyright (c) Microsoft Corporation. All rights reserved.
4// Licensed under the MIT License. See License.txt in the project root for license information.
5// Code generated by Microsoft (R) AutoRest Code Generator.
6// Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
8package azartifacts
9
10import "encoding/json"
11
12func unmarshalActivityClassification(rawMsg json.RawMessage) (ActivityClassification, error) {
13	if rawMsg == nil {
14		return nil, nil
15	}
16	var m map[string]interface{}
17	if err := json.Unmarshal(rawMsg, &m); err != nil {
18		return nil, err
19	}
20	var b ActivityClassification
21	switch m["type"] {
22	case "AppendVariable":
23		b = &AppendVariableActivity{}
24	case "AzureDataExplorerCommand":
25		b = &AzureDataExplorerCommandActivity{}
26	case "AzureFunctionActivity":
27		b = &AzureFunctionActivity{}
28	case "AzureMLBatchExecution":
29		b = &AzureMLBatchExecutionActivity{}
30	case "AzureMLExecutePipeline":
31		b = &AzureMLExecutePipelineActivity{}
32	case "AzureMLUpdateResource":
33		b = &AzureMLUpdateResourceActivity{}
34	case "Container":
35		b = &ControlActivity{}
36	case "Copy":
37		b = &CopyActivity{}
38	case "Custom":
39		b = &CustomActivity{}
40	case "DataLakeAnalyticsU-SQL":
41		b = &DataLakeAnalyticsUSQLActivity{}
42	case "DatabricksNotebook":
43		b = &DatabricksNotebookActivity{}
44	case "DatabricksSparkJar":
45		b = &DatabricksSparkJarActivity{}
46	case "DatabricksSparkPython":
47		b = &DatabricksSparkPythonActivity{}
48	case "Delete":
49		b = &DeleteActivity{}
50	case "ExecuteDataFlow":
51		b = &ExecuteDataFlowActivity{}
52	case "ExecutePipeline":
53		b = &ExecutePipelineActivity{}
54	case "ExecuteSSISPackage":
55		b = &ExecuteSSISPackageActivity{}
56	case "Execution":
57		b = &ExecutionActivity{}
58	case "Filter":
59		b = &FilterActivity{}
60	case "ForEach":
61		b = &ForEachActivity{}
62	case "GetMetadata":
63		b = &GetMetadataActivity{}
64	case "HDInsightHive":
65		b = &HDInsightHiveActivity{}
66	case "HDInsightMapReduce":
67		b = &HDInsightMapReduceActivity{}
68	case "HDInsightPig":
69		b = &HDInsightPigActivity{}
70	case "HDInsightSpark":
71		b = &HDInsightSparkActivity{}
72	case "HDInsightStreaming":
73		b = &HDInsightStreamingActivity{}
74	case "IfCondition":
75		b = &IfConditionActivity{}
76	case "Lookup":
77		b = &LookupActivity{}
78	case "SetVariable":
79		b = &SetVariableActivity{}
80	case "SparkJob":
81		b = &SynapseSparkJobDefinitionActivity{}
82	case "SqlPoolStoredProcedure":
83		b = &SQLPoolStoredProcedureActivity{}
84	case "SqlServerStoredProcedure":
85		b = &SQLServerStoredProcedureActivity{}
86	case "Switch":
87		b = &SwitchActivity{}
88	case "SynapseNotebook":
89		b = &SynapseNotebookActivity{}
90	case "Until":
91		b = &UntilActivity{}
92	case "Validation":
93		b = &ValidationActivity{}
94	case "Wait":
95		b = &WaitActivity{}
96	case "WebActivity":
97		b = &WebActivity{}
98	case "WebHook":
99		b = &WebHookActivity{}
100	default:
101		b = &Activity{}
102	}
103	return b, json.Unmarshal(rawMsg, b)
104}
105
106func unmarshalActivityClassificationArray(rawMsg json.RawMessage) ([]ActivityClassification, error) {
107	if rawMsg == nil {
108		return nil, nil
109	}
110	var rawMessages []json.RawMessage
111	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
112		return nil, err
113	}
114	fArray := make([]ActivityClassification, len(rawMessages))
115	for index, rawMessage := range rawMessages {
116		f, err := unmarshalActivityClassification(rawMessage)
117		if err != nil {
118			return nil, err
119		}
120		fArray[index] = f
121	}
122	return fArray, nil
123}
124
125func unmarshalCompressionReadSettingsClassification(rawMsg json.RawMessage) (CompressionReadSettingsClassification, error) {
126	if rawMsg == nil {
127		return nil, nil
128	}
129	var m map[string]interface{}
130	if err := json.Unmarshal(rawMsg, &m); err != nil {
131		return nil, err
132	}
133	var b CompressionReadSettingsClassification
134	switch m["type"] {
135	case "TarGZipReadSettings":
136		b = &TarGZipReadSettings{}
137	case "TarReadSettings":
138		b = &TarReadSettings{}
139	case "ZipDeflateReadSettings":
140		b = &ZipDeflateReadSettings{}
141	default:
142		b = &CompressionReadSettings{}
143	}
144	return b, json.Unmarshal(rawMsg, b)
145}
146
147func unmarshalCompressionReadSettingsClassificationArray(rawMsg json.RawMessage) ([]CompressionReadSettingsClassification, error) {
148	if rawMsg == nil {
149		return nil, nil
150	}
151	var rawMessages []json.RawMessage
152	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
153		return nil, err
154	}
155	fArray := make([]CompressionReadSettingsClassification, len(rawMessages))
156	for index, rawMessage := range rawMessages {
157		f, err := unmarshalCompressionReadSettingsClassification(rawMessage)
158		if err != nil {
159			return nil, err
160		}
161		fArray[index] = f
162	}
163	return fArray, nil
164}
165
166func unmarshalControlActivityClassification(rawMsg json.RawMessage) (ControlActivityClassification, error) {
167	if rawMsg == nil {
168		return nil, nil
169	}
170	var m map[string]interface{}
171	if err := json.Unmarshal(rawMsg, &m); err != nil {
172		return nil, err
173	}
174	var b ControlActivityClassification
175	switch m["type"] {
176	case "AppendVariable":
177		b = &AppendVariableActivity{}
178	case "ExecutePipeline":
179		b = &ExecutePipelineActivity{}
180	case "Filter":
181		b = &FilterActivity{}
182	case "ForEach":
183		b = &ForEachActivity{}
184	case "IfCondition":
185		b = &IfConditionActivity{}
186	case "SetVariable":
187		b = &SetVariableActivity{}
188	case "Switch":
189		b = &SwitchActivity{}
190	case "Until":
191		b = &UntilActivity{}
192	case "Validation":
193		b = &ValidationActivity{}
194	case "Wait":
195		b = &WaitActivity{}
196	case "WebHook":
197		b = &WebHookActivity{}
198	default:
199		b = &ControlActivity{}
200	}
201	return b, json.Unmarshal(rawMsg, b)
202}
203
204func unmarshalControlActivityClassificationArray(rawMsg json.RawMessage) ([]ControlActivityClassification, error) {
205	if rawMsg == nil {
206		return nil, nil
207	}
208	var rawMessages []json.RawMessage
209	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
210		return nil, err
211	}
212	fArray := make([]ControlActivityClassification, len(rawMessages))
213	for index, rawMessage := range rawMessages {
214		f, err := unmarshalControlActivityClassification(rawMessage)
215		if err != nil {
216			return nil, err
217		}
218		fArray[index] = f
219	}
220	return fArray, nil
221}
222
223func unmarshalCopySinkClassification(rawMsg json.RawMessage) (CopySinkClassification, error) {
224	if rawMsg == nil {
225		return nil, nil
226	}
227	var m map[string]interface{}
228	if err := json.Unmarshal(rawMsg, &m); err != nil {
229		return nil, err
230	}
231	var b CopySinkClassification
232	switch m["type"] {
233	case "AvroSink":
234		b = &AvroSink{}
235	case "AzureBlobFSSink":
236		b = &AzureBlobFSSink{}
237	case "AzureDataExplorerSink":
238		b = &AzureDataExplorerSink{}
239	case "AzureDataLakeStoreSink":
240		b = &AzureDataLakeStoreSink{}
241	case "AzureDatabricksDeltaLakeSink":
242		b = &AzureDatabricksDeltaLakeSink{}
243	case "AzureMySqlSink":
244		b = &AzureMySQLSink{}
245	case "AzurePostgreSqlSink":
246		b = &AzurePostgreSQLSink{}
247	case "AzureQueueSink":
248		b = &AzureQueueSink{}
249	case "AzureSearchIndexSink":
250		b = &AzureSearchIndexSink{}
251	case "AzureSqlSink":
252		b = &AzureSQLSink{}
253	case "AzureTableSink":
254		b = &AzureTableSink{}
255	case "BinarySink":
256		b = &BinarySink{}
257	case "BlobSink":
258		b = &BlobSink{}
259	case "CommonDataServiceForAppsSink":
260		b = &CommonDataServiceForAppsSink{}
261	case "CosmosDbMongoDbApiSink":
262		b = &CosmosDbMongoDbAPISink{}
263	case "CosmosDbSqlApiSink":
264		b = &CosmosDbSQLAPISink{}
265	case "DelimitedTextSink":
266		b = &DelimitedTextSink{}
267	case "DocumentDbCollectionSink":
268		b = &DocumentDbCollectionSink{}
269	case "DynamicsCrmSink":
270		b = &DynamicsCrmSink{}
271	case "DynamicsSink":
272		b = &DynamicsSink{}
273	case "FileSystemSink":
274		b = &FileSystemSink{}
275	case "InformixSink":
276		b = &InformixSink{}
277	case "JsonSink":
278		b = &JSONSink{}
279	case "MicrosoftAccessSink":
280		b = &MicrosoftAccessSink{}
281	case "OdbcSink":
282		b = &OdbcSink{}
283	case "OracleSink":
284		b = &OracleSink{}
285	case "OrcSink":
286		b = &OrcSink{}
287	case "ParquetSink":
288		b = &ParquetSink{}
289	case "RestSink":
290		b = &RestSink{}
291	case "SalesforceServiceCloudSink":
292		b = &SalesforceServiceCloudSink{}
293	case "SalesforceSink":
294		b = &SalesforceSink{}
295	case "SapCloudForCustomerSink":
296		b = &SapCloudForCustomerSink{}
297	case "SnowflakeSink":
298		b = &SnowflakeSink{}
299	case "SqlDWSink":
300		b = &SQLDWSink{}
301	case "SqlMISink":
302		b = &SQLMISink{}
303	case "SqlServerSink":
304		b = &SQLServerSink{}
305	case "SqlSink":
306		b = &SQLSink{}
307	default:
308		b = &CopySink{}
309	}
310	return b, json.Unmarshal(rawMsg, b)
311}
312
313func unmarshalCopySinkClassificationArray(rawMsg json.RawMessage) ([]CopySinkClassification, error) {
314	if rawMsg == nil {
315		return nil, nil
316	}
317	var rawMessages []json.RawMessage
318	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
319		return nil, err
320	}
321	fArray := make([]CopySinkClassification, len(rawMessages))
322	for index, rawMessage := range rawMessages {
323		f, err := unmarshalCopySinkClassification(rawMessage)
324		if err != nil {
325			return nil, err
326		}
327		fArray[index] = f
328	}
329	return fArray, nil
330}
331
332func unmarshalCopySourceClassification(rawMsg json.RawMessage) (CopySourceClassification, error) {
333	if rawMsg == nil {
334		return nil, nil
335	}
336	var m map[string]interface{}
337	if err := json.Unmarshal(rawMsg, &m); err != nil {
338		return nil, err
339	}
340	var b CopySourceClassification
341	switch m["type"] {
342	case "AmazonMWSSource":
343		b = &AmazonMWSSource{}
344	case "AmazonRedshiftSource":
345		b = &AmazonRedshiftSource{}
346	case "AvroSource":
347		b = &AvroSource{}
348	case "AzureBlobFSSource":
349		b = &AzureBlobFSSource{}
350	case "AzureDataExplorerSource":
351		b = &AzureDataExplorerSource{}
352	case "AzureDataLakeStoreSource":
353		b = &AzureDataLakeStoreSource{}
354	case "AzureDatabricksDeltaLakeSource":
355		b = &AzureDatabricksDeltaLakeSource{}
356	case "AzureMariaDBSource":
357		b = &AzureMariaDBSource{}
358	case "AzureMySqlSource":
359		b = &AzureMySQLSource{}
360	case "AzurePostgreSqlSource":
361		b = &AzurePostgreSQLSource{}
362	case "AzureSqlSource":
363		b = &AzureSQLSource{}
364	case "AzureTableSource":
365		b = &AzureTableSource{}
366	case "BinarySource":
367		b = &BinarySource{}
368	case "BlobSource":
369		b = &BlobSource{}
370	case "CassandraSource":
371		b = &CassandraSource{}
372	case "CommonDataServiceForAppsSource":
373		b = &CommonDataServiceForAppsSource{}
374	case "ConcurSource":
375		b = &ConcurSource{}
376	case "CosmosDbMongoDbApiSource":
377		b = &CosmosDbMongoDbAPISource{}
378	case "CosmosDbSqlApiSource":
379		b = &CosmosDbSQLAPISource{}
380	case "CouchbaseSource":
381		b = &CouchbaseSource{}
382	case "Db2Source":
383		b = &Db2Source{}
384	case "DelimitedTextSource":
385		b = &DelimitedTextSource{}
386	case "DocumentDbCollectionSource":
387		b = &DocumentDbCollectionSource{}
388	case "DrillSource":
389		b = &DrillSource{}
390	case "DynamicsAXSource":
391		b = &DynamicsAXSource{}
392	case "DynamicsCrmSource":
393		b = &DynamicsCrmSource{}
394	case "DynamicsSource":
395		b = &DynamicsSource{}
396	case "EloquaSource":
397		b = &EloquaSource{}
398	case "ExcelSource":
399		b = &ExcelSource{}
400	case "FileSystemSource":
401		b = &FileSystemSource{}
402	case "GoogleAdWordsSource":
403		b = &GoogleAdWordsSource{}
404	case "GoogleBigQuerySource":
405		b = &GoogleBigQuerySource{}
406	case "GreenplumSource":
407		b = &GreenplumSource{}
408	case "HBaseSource":
409		b = &HBaseSource{}
410	case "HdfsSource":
411		b = &HdfsSource{}
412	case "HiveSource":
413		b = &HiveSource{}
414	case "HttpSource":
415		b = &HTTPSource{}
416	case "HubspotSource":
417		b = &HubspotSource{}
418	case "ImpalaSource":
419		b = &ImpalaSource{}
420	case "InformixSource":
421		b = &InformixSource{}
422	case "JiraSource":
423		b = &JiraSource{}
424	case "JsonSource":
425		b = &JSONSource{}
426	case "MagentoSource":
427		b = &MagentoSource{}
428	case "MariaDBSource":
429		b = &MariaDBSource{}
430	case "MarketoSource":
431		b = &MarketoSource{}
432	case "MicrosoftAccessSource":
433		b = &MicrosoftAccessSource{}
434	case "MongoDbAtlasSource":
435		b = &MongoDbAtlasSource{}
436	case "MongoDbSource":
437		b = &MongoDbSource{}
438	case "MongoDbV2Source":
439		b = &MongoDbV2Source{}
440	case "MySqlSource":
441		b = &MySQLSource{}
442	case "NetezzaSource":
443		b = &NetezzaSource{}
444	case "ODataSource":
445		b = &ODataSource{}
446	case "OdbcSource":
447		b = &OdbcSource{}
448	case "Office365Source":
449		b = &Office365Source{}
450	case "OracleServiceCloudSource":
451		b = &OracleServiceCloudSource{}
452	case "OracleSource":
453		b = &OracleSource{}
454	case "OrcSource":
455		b = &OrcSource{}
456	case "ParquetSource":
457		b = &ParquetSource{}
458	case "PaypalSource":
459		b = &PaypalSource{}
460	case "PhoenixSource":
461		b = &PhoenixSource{}
462	case "PostgreSqlSource":
463		b = &PostgreSQLSource{}
464	case "PrestoSource":
465		b = &PrestoSource{}
466	case "QuickBooksSource":
467		b = &QuickBooksSource{}
468	case "RelationalSource":
469		b = &RelationalSource{}
470	case "ResponsysSource":
471		b = &ResponsysSource{}
472	case "RestSource":
473		b = &RestSource{}
474	case "SalesforceMarketingCloudSource":
475		b = &SalesforceMarketingCloudSource{}
476	case "SalesforceServiceCloudSource":
477		b = &SalesforceServiceCloudSource{}
478	case "SalesforceSource":
479		b = &SalesforceSource{}
480	case "SapBwSource":
481		b = &SapBwSource{}
482	case "SapCloudForCustomerSource":
483		b = &SapCloudForCustomerSource{}
484	case "SapEccSource":
485		b = &SapEccSource{}
486	case "SapHanaSource":
487		b = &SapHanaSource{}
488	case "SapOpenHubSource":
489		b = &SapOpenHubSource{}
490	case "SapTableSource":
491		b = &SapTableSource{}
492	case "ServiceNowSource":
493		b = &ServiceNowSource{}
494	case "SharePointOnlineListSource":
495		b = &SharePointOnlineListSource{}
496	case "ShopifySource":
497		b = &ShopifySource{}
498	case "SnowflakeSource":
499		b = &SnowflakeSource{}
500	case "SparkSource":
501		b = &SparkSource{}
502	case "SqlDWSource":
503		b = &SQLDWSource{}
504	case "SqlMISource":
505		b = &SQLMISource{}
506	case "SqlServerSource":
507		b = &SQLServerSource{}
508	case "SqlSource":
509		b = &SQLSource{}
510	case "SquareSource":
511		b = &SquareSource{}
512	case "SybaseSource":
513		b = &SybaseSource{}
514	case "TabularSource":
515		b = &TabularSource{}
516	case "TeradataSource":
517		b = &TeradataSource{}
518	case "VerticaSource":
519		b = &VerticaSource{}
520	case "WebSource":
521		b = &WebSource{}
522	case "XeroSource":
523		b = &XeroSource{}
524	case "XmlSource":
525		b = &XMLSource{}
526	case "ZohoSource":
527		b = &ZohoSource{}
528	default:
529		b = &CopySource{}
530	}
531	return b, json.Unmarshal(rawMsg, b)
532}
533
534func unmarshalCopySourceClassificationArray(rawMsg json.RawMessage) ([]CopySourceClassification, error) {
535	if rawMsg == nil {
536		return nil, nil
537	}
538	var rawMessages []json.RawMessage
539	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
540		return nil, err
541	}
542	fArray := make([]CopySourceClassification, len(rawMessages))
543	for index, rawMessage := range rawMessages {
544		f, err := unmarshalCopySourceClassification(rawMessage)
545		if err != nil {
546			return nil, err
547		}
548		fArray[index] = f
549	}
550	return fArray, nil
551}
552
553func unmarshalCopyTranslatorClassification(rawMsg json.RawMessage) (CopyTranslatorClassification, error) {
554	if rawMsg == nil {
555		return nil, nil
556	}
557	var m map[string]interface{}
558	if err := json.Unmarshal(rawMsg, &m); err != nil {
559		return nil, err
560	}
561	var b CopyTranslatorClassification
562	switch m["type"] {
563	case "TabularTranslator":
564		b = &TabularTranslator{}
565	default:
566		b = &CopyTranslator{}
567	}
568	return b, json.Unmarshal(rawMsg, b)
569}
570
571func unmarshalCopyTranslatorClassificationArray(rawMsg json.RawMessage) ([]CopyTranslatorClassification, error) {
572	if rawMsg == nil {
573		return nil, nil
574	}
575	var rawMessages []json.RawMessage
576	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
577		return nil, err
578	}
579	fArray := make([]CopyTranslatorClassification, len(rawMessages))
580	for index, rawMessage := range rawMessages {
581		f, err := unmarshalCopyTranslatorClassification(rawMessage)
582		if err != nil {
583			return nil, err
584		}
585		fArray[index] = f
586	}
587	return fArray, nil
588}
589
590func unmarshalCustomSetupBaseClassification(rawMsg json.RawMessage) (CustomSetupBaseClassification, error) {
591	if rawMsg == nil {
592		return nil, nil
593	}
594	var m map[string]interface{}
595	if err := json.Unmarshal(rawMsg, &m); err != nil {
596		return nil, err
597	}
598	var b CustomSetupBaseClassification
599	switch m["type"] {
600	default:
601		b = &CustomSetupBase{}
602	}
603	return b, json.Unmarshal(rawMsg, b)
604}
605
606func unmarshalCustomSetupBaseClassificationArray(rawMsg json.RawMessage) ([]CustomSetupBaseClassification, error) {
607	if rawMsg == nil {
608		return nil, nil
609	}
610	var rawMessages []json.RawMessage
611	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
612		return nil, err
613	}
614	fArray := make([]CustomSetupBaseClassification, len(rawMessages))
615	for index, rawMessage := range rawMessages {
616		f, err := unmarshalCustomSetupBaseClassification(rawMessage)
617		if err != nil {
618			return nil, err
619		}
620		fArray[index] = f
621	}
622	return fArray, nil
623}
624
625func unmarshalDataFlowClassification(rawMsg json.RawMessage) (DataFlowClassification, error) {
626	if rawMsg == nil {
627		return nil, nil
628	}
629	var m map[string]interface{}
630	if err := json.Unmarshal(rawMsg, &m); err != nil {
631		return nil, err
632	}
633	var b DataFlowClassification
634	switch m["type"] {
635	case "MappingDataFlow":
636		b = &MappingDataFlow{}
637	default:
638		b = &DataFlow{}
639	}
640	return b, json.Unmarshal(rawMsg, b)
641}
642
643func unmarshalDataFlowClassificationArray(rawMsg json.RawMessage) ([]DataFlowClassification, error) {
644	if rawMsg == nil {
645		return nil, nil
646	}
647	var rawMessages []json.RawMessage
648	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
649		return nil, err
650	}
651	fArray := make([]DataFlowClassification, len(rawMessages))
652	for index, rawMessage := range rawMessages {
653		f, err := unmarshalDataFlowClassification(rawMessage)
654		if err != nil {
655			return nil, err
656		}
657		fArray[index] = f
658	}
659	return fArray, nil
660}
661
662func unmarshalDatasetClassification(rawMsg json.RawMessage) (DatasetClassification, error) {
663	if rawMsg == nil {
664		return nil, nil
665	}
666	var m map[string]interface{}
667	if err := json.Unmarshal(rawMsg, &m); err != nil {
668		return nil, err
669	}
670	var b DatasetClassification
671	switch m["type"] {
672	case "AmazonMWSObject":
673		b = &AmazonMWSObjectDataset{}
674	case "AmazonRedshiftTable":
675		b = &AmazonRedshiftTableDataset{}
676	case "AmazonS3Object":
677		b = &AmazonS3Dataset{}
678	case "Avro":
679		b = &AvroDataset{}
680	case "AzureBlob":
681		b = &AzureBlobDataset{}
682	case "AzureBlobFSFile":
683		b = &AzureBlobFSDataset{}
684	case "AzureDataExplorerTable":
685		b = &AzureDataExplorerTableDataset{}
686	case "AzureDataLakeStoreFile":
687		b = &AzureDataLakeStoreDataset{}
688	case "AzureDatabricksDeltaLakeDataset":
689		b = &AzureDatabricksDeltaLakeDataset{}
690	case "AzureMariaDBTable":
691		b = &AzureMariaDBTableDataset{}
692	case "AzureMySqlTable":
693		b = &AzureMySQLTableDataset{}
694	case "AzurePostgreSqlTable":
695		b = &AzurePostgreSQLTableDataset{}
696	case "AzureSearchIndex":
697		b = &AzureSearchIndexDataset{}
698	case "AzureSqlDWTable":
699		b = &AzureSQLDWTableDataset{}
700	case "AzureSqlMITable":
701		b = &AzureSQLMITableDataset{}
702	case "AzureSqlTable":
703		b = &AzureSQLTableDataset{}
704	case "AzureTable":
705		b = &AzureTableDataset{}
706	case "Binary":
707		b = &BinaryDataset{}
708	case "CassandraTable":
709		b = &CassandraTableDataset{}
710	case "CommonDataServiceForAppsEntity":
711		b = &CommonDataServiceForAppsEntityDataset{}
712	case "ConcurObject":
713		b = &ConcurObjectDataset{}
714	case "CosmosDbMongoDbApiCollection":
715		b = &CosmosDbMongoDbAPICollectionDataset{}
716	case "CosmosDbSqlApiCollection":
717		b = &CosmosDbSQLAPICollectionDataset{}
718	case "CouchbaseTable":
719		b = &CouchbaseTableDataset{}
720	case "CustomDataset":
721		b = &CustomDataset{}
722	case "Db2Table":
723		b = &Db2TableDataset{}
724	case "DelimitedText":
725		b = &DelimitedTextDataset{}
726	case "DocumentDbCollection":
727		b = &DocumentDbCollectionDataset{}
728	case "DrillTable":
729		b = &DrillTableDataset{}
730	case "DynamicsAXResource":
731		b = &DynamicsAXResourceDataset{}
732	case "DynamicsCrmEntity":
733		b = &DynamicsCrmEntityDataset{}
734	case "DynamicsEntity":
735		b = &DynamicsEntityDataset{}
736	case "EloquaObject":
737		b = &EloquaObjectDataset{}
738	case "Excel":
739		b = &ExcelDataset{}
740	case "FileShare":
741		b = &FileShareDataset{}
742	case "GoogleAdWordsObject":
743		b = &GoogleAdWordsObjectDataset{}
744	case "GoogleBigQueryObject":
745		b = &GoogleBigQueryObjectDataset{}
746	case "GreenplumTable":
747		b = &GreenplumTableDataset{}
748	case "HBaseObject":
749		b = &HBaseObjectDataset{}
750	case "HiveObject":
751		b = &HiveObjectDataset{}
752	case "HttpFile":
753		b = &HTTPDataset{}
754	case "HubspotObject":
755		b = &HubspotObjectDataset{}
756	case "ImpalaObject":
757		b = &ImpalaObjectDataset{}
758	case "InformixTable":
759		b = &InformixTableDataset{}
760	case "JiraObject":
761		b = &JiraObjectDataset{}
762	case "Json":
763		b = &JSONDataset{}
764	case "MagentoObject":
765		b = &MagentoObjectDataset{}
766	case "MariaDBTable":
767		b = &MariaDBTableDataset{}
768	case "MarketoObject":
769		b = &MarketoObjectDataset{}
770	case "MicrosoftAccessTable":
771		b = &MicrosoftAccessTableDataset{}
772	case "MongoDbAtlasCollection":
773		b = &MongoDbAtlasCollectionDataset{}
774	case "MongoDbCollection":
775		b = &MongoDbCollectionDataset{}
776	case "MongoDbV2Collection":
777		b = &MongoDbV2CollectionDataset{}
778	case "MySqlTable":
779		b = &MySQLTableDataset{}
780	case "NetezzaTable":
781		b = &NetezzaTableDataset{}
782	case "ODataResource":
783		b = &ODataResourceDataset{}
784	case "OdbcTable":
785		b = &OdbcTableDataset{}
786	case "Office365Table":
787		b = &Office365Dataset{}
788	case "OracleServiceCloudObject":
789		b = &OracleServiceCloudObjectDataset{}
790	case "OracleTable":
791		b = &OracleTableDataset{}
792	case "Orc":
793		b = &OrcDataset{}
794	case "Parquet":
795		b = &ParquetDataset{}
796	case "PaypalObject":
797		b = &PaypalObjectDataset{}
798	case "PhoenixObject":
799		b = &PhoenixObjectDataset{}
800	case "PostgreSqlTable":
801		b = &PostgreSQLTableDataset{}
802	case "PrestoObject":
803		b = &PrestoObjectDataset{}
804	case "QuickBooksObject":
805		b = &QuickBooksObjectDataset{}
806	case "RelationalTable":
807		b = &RelationalTableDataset{}
808	case "ResponsysObject":
809		b = &ResponsysObjectDataset{}
810	case "RestResource":
811		b = &RestResourceDataset{}
812	case "SalesforceMarketingCloudObject":
813		b = &SalesforceMarketingCloudObjectDataset{}
814	case "SalesforceObject":
815		b = &SalesforceObjectDataset{}
816	case "SalesforceServiceCloudObject":
817		b = &SalesforceServiceCloudObjectDataset{}
818	case "SapBwCube":
819		b = &SapBwCubeDataset{}
820	case "SapCloudForCustomerResource":
821		b = &SapCloudForCustomerResourceDataset{}
822	case "SapEccResource":
823		b = &SapEccResourceDataset{}
824	case "SapHanaTable":
825		b = &SapHanaTableDataset{}
826	case "SapOpenHubTable":
827		b = &SapOpenHubTableDataset{}
828	case "SapTableResource":
829		b = &SapTableResourceDataset{}
830	case "ServiceNowObject":
831		b = &ServiceNowObjectDataset{}
832	case "SharePointOnlineListResource":
833		b = &SharePointOnlineListResourceDataset{}
834	case "ShopifyObject":
835		b = &ShopifyObjectDataset{}
836	case "SnowflakeTable":
837		b = &SnowflakeDataset{}
838	case "SparkObject":
839		b = &SparkObjectDataset{}
840	case "SqlServerTable":
841		b = &SQLServerTableDataset{}
842	case "SquareObject":
843		b = &SquareObjectDataset{}
844	case "SybaseTable":
845		b = &SybaseTableDataset{}
846	case "TeradataTable":
847		b = &TeradataTableDataset{}
848	case "VerticaTable":
849		b = &VerticaTableDataset{}
850	case "WebTable":
851		b = &WebTableDataset{}
852	case "XeroObject":
853		b = &XeroObjectDataset{}
854	case "Xml":
855		b = &XMLDataset{}
856	case "ZohoObject":
857		b = &ZohoObjectDataset{}
858	default:
859		b = &Dataset{}
860	}
861	return b, json.Unmarshal(rawMsg, b)
862}
863
864func unmarshalDatasetClassificationArray(rawMsg json.RawMessage) ([]DatasetClassification, error) {
865	if rawMsg == nil {
866		return nil, nil
867	}
868	var rawMessages []json.RawMessage
869	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
870		return nil, err
871	}
872	fArray := make([]DatasetClassification, len(rawMessages))
873	for index, rawMessage := range rawMessages {
874		f, err := unmarshalDatasetClassification(rawMessage)
875		if err != nil {
876			return nil, err
877		}
878		fArray[index] = f
879	}
880	return fArray, nil
881}
882
883func unmarshalDatasetCompressionClassification(rawMsg json.RawMessage) (DatasetCompressionClassification, error) {
884	if rawMsg == nil {
885		return nil, nil
886	}
887	var m map[string]interface{}
888	if err := json.Unmarshal(rawMsg, &m); err != nil {
889		return nil, err
890	}
891	var b DatasetCompressionClassification
892	switch m["type"] {
893	case "BZip2":
894		b = &DatasetBZip2Compression{}
895	case "Deflate":
896		b = &DatasetDeflateCompression{}
897	case "GZip":
898		b = &DatasetGZipCompression{}
899	case "Tar":
900		b = &DatasetTarCompression{}
901	case "TarGZip":
902		b = &DatasetTarGZipCompression{}
903	case "ZipDeflate":
904		b = &DatasetZipDeflateCompression{}
905	default:
906		b = &DatasetCompression{}
907	}
908	return b, json.Unmarshal(rawMsg, b)
909}
910
911func unmarshalDatasetCompressionClassificationArray(rawMsg json.RawMessage) ([]DatasetCompressionClassification, error) {
912	if rawMsg == nil {
913		return nil, nil
914	}
915	var rawMessages []json.RawMessage
916	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
917		return nil, err
918	}
919	fArray := make([]DatasetCompressionClassification, len(rawMessages))
920	for index, rawMessage := range rawMessages {
921		f, err := unmarshalDatasetCompressionClassification(rawMessage)
922		if err != nil {
923			return nil, err
924		}
925		fArray[index] = f
926	}
927	return fArray, nil
928}
929
930func unmarshalDatasetLocationClassification(rawMsg json.RawMessage) (DatasetLocationClassification, error) {
931	if rawMsg == nil {
932		return nil, nil
933	}
934	var m map[string]interface{}
935	if err := json.Unmarshal(rawMsg, &m); err != nil {
936		return nil, err
937	}
938	var b DatasetLocationClassification
939	switch m["type"] {
940	case "AmazonS3Location":
941		b = &AmazonS3Location{}
942	case "AzureBlobFSLocation":
943		b = &AzureBlobFSLocation{}
944	case "AzureBlobStorageLocation":
945		b = &AzureBlobStorageLocation{}
946	case "AzureDataLakeStoreLocation":
947		b = &AzureDataLakeStoreLocation{}
948	case "AzureFileStorageLocation":
949		b = &AzureFileStorageLocation{}
950	case "FileServerLocation":
951		b = &FileServerLocation{}
952	case "FtpServerLocation":
953		b = &FtpServerLocation{}
954	case "GoogleCloudStorageLocation":
955		b = &GoogleCloudStorageLocation{}
956	case "HdfsLocation":
957		b = &HdfsLocation{}
958	case "HttpServerLocation":
959		b = &HTTPServerLocation{}
960	case "SftpLocation":
961		b = &SftpLocation{}
962	default:
963		b = &DatasetLocation{}
964	}
965	return b, json.Unmarshal(rawMsg, b)
966}
967
968func unmarshalDatasetLocationClassificationArray(rawMsg json.RawMessage) ([]DatasetLocationClassification, error) {
969	if rawMsg == nil {
970		return nil, nil
971	}
972	var rawMessages []json.RawMessage
973	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
974		return nil, err
975	}
976	fArray := make([]DatasetLocationClassification, len(rawMessages))
977	for index, rawMessage := range rawMessages {
978		f, err := unmarshalDatasetLocationClassification(rawMessage)
979		if err != nil {
980			return nil, err
981		}
982		fArray[index] = f
983	}
984	return fArray, nil
985}
986
987func unmarshalDatasetStorageFormatClassification(rawMsg json.RawMessage) (DatasetStorageFormatClassification, error) {
988	if rawMsg == nil {
989		return nil, nil
990	}
991	var m map[string]interface{}
992	if err := json.Unmarshal(rawMsg, &m); err != nil {
993		return nil, err
994	}
995	var b DatasetStorageFormatClassification
996	switch m["type"] {
997	case "AvroFormat":
998		b = &AvroFormat{}
999	case "JsonFormat":
1000		b = &JSONFormat{}
1001	case "OrcFormat":
1002		b = &OrcFormat{}
1003	case "ParquetFormat":
1004		b = &ParquetFormat{}
1005	case "TextFormat":
1006		b = &TextFormat{}
1007	default:
1008		b = &DatasetStorageFormat{}
1009	}
1010	return b, json.Unmarshal(rawMsg, b)
1011}
1012
1013func unmarshalDatasetStorageFormatClassificationArray(rawMsg json.RawMessage) ([]DatasetStorageFormatClassification, error) {
1014	if rawMsg == nil {
1015		return nil, nil
1016	}
1017	var rawMessages []json.RawMessage
1018	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1019		return nil, err
1020	}
1021	fArray := make([]DatasetStorageFormatClassification, len(rawMessages))
1022	for index, rawMessage := range rawMessages {
1023		f, err := unmarshalDatasetStorageFormatClassification(rawMessage)
1024		if err != nil {
1025			return nil, err
1026		}
1027		fArray[index] = f
1028	}
1029	return fArray, nil
1030}
1031
1032func unmarshalDependencyReferenceClassification(rawMsg json.RawMessage) (DependencyReferenceClassification, error) {
1033	if rawMsg == nil {
1034		return nil, nil
1035	}
1036	var m map[string]interface{}
1037	if err := json.Unmarshal(rawMsg, &m); err != nil {
1038		return nil, err
1039	}
1040	var b DependencyReferenceClassification
1041	switch m["type"] {
1042	case "SelfDependencyTumblingWindowTriggerReference":
1043		b = &SelfDependencyTumblingWindowTriggerReference{}
1044	case "TriggerDependencyReference":
1045		b = &TriggerDependencyReference{}
1046	case "TumblingWindowTriggerDependencyReference":
1047		b = &TumblingWindowTriggerDependencyReference{}
1048	default:
1049		b = &DependencyReference{}
1050	}
1051	return b, json.Unmarshal(rawMsg, b)
1052}
1053
1054func unmarshalDependencyReferenceClassificationArray(rawMsg json.RawMessage) ([]DependencyReferenceClassification, error) {
1055	if rawMsg == nil {
1056		return nil, nil
1057	}
1058	var rawMessages []json.RawMessage
1059	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1060		return nil, err
1061	}
1062	fArray := make([]DependencyReferenceClassification, len(rawMessages))
1063	for index, rawMessage := range rawMessages {
1064		f, err := unmarshalDependencyReferenceClassification(rawMessage)
1065		if err != nil {
1066			return nil, err
1067		}
1068		fArray[index] = f
1069	}
1070	return fArray, nil
1071}
1072
1073func unmarshalExecutionActivityClassification(rawMsg json.RawMessage) (ExecutionActivityClassification, error) {
1074	if rawMsg == nil {
1075		return nil, nil
1076	}
1077	var m map[string]interface{}
1078	if err := json.Unmarshal(rawMsg, &m); err != nil {
1079		return nil, err
1080	}
1081	var b ExecutionActivityClassification
1082	switch m["type"] {
1083	case "AzureDataExplorerCommand":
1084		b = &AzureDataExplorerCommandActivity{}
1085	case "AzureFunctionActivity":
1086		b = &AzureFunctionActivity{}
1087	case "AzureMLBatchExecution":
1088		b = &AzureMLBatchExecutionActivity{}
1089	case "AzureMLExecutePipeline":
1090		b = &AzureMLExecutePipelineActivity{}
1091	case "AzureMLUpdateResource":
1092		b = &AzureMLUpdateResourceActivity{}
1093	case "Copy":
1094		b = &CopyActivity{}
1095	case "Custom":
1096		b = &CustomActivity{}
1097	case "DataLakeAnalyticsU-SQL":
1098		b = &DataLakeAnalyticsUSQLActivity{}
1099	case "DatabricksNotebook":
1100		b = &DatabricksNotebookActivity{}
1101	case "DatabricksSparkJar":
1102		b = &DatabricksSparkJarActivity{}
1103	case "DatabricksSparkPython":
1104		b = &DatabricksSparkPythonActivity{}
1105	case "Delete":
1106		b = &DeleteActivity{}
1107	case "ExecuteDataFlow":
1108		b = &ExecuteDataFlowActivity{}
1109	case "ExecuteSSISPackage":
1110		b = &ExecuteSSISPackageActivity{}
1111	case "GetMetadata":
1112		b = &GetMetadataActivity{}
1113	case "HDInsightHive":
1114		b = &HDInsightHiveActivity{}
1115	case "HDInsightMapReduce":
1116		b = &HDInsightMapReduceActivity{}
1117	case "HDInsightPig":
1118		b = &HDInsightPigActivity{}
1119	case "HDInsightSpark":
1120		b = &HDInsightSparkActivity{}
1121	case "HDInsightStreaming":
1122		b = &HDInsightStreamingActivity{}
1123	case "Lookup":
1124		b = &LookupActivity{}
1125	case "SparkJob":
1126		b = &SynapseSparkJobDefinitionActivity{}
1127	case "SqlServerStoredProcedure":
1128		b = &SQLServerStoredProcedureActivity{}
1129	case "SynapseNotebook":
1130		b = &SynapseNotebookActivity{}
1131	case "WebActivity":
1132		b = &WebActivity{}
1133	default:
1134		b = &ExecutionActivity{}
1135	}
1136	return b, json.Unmarshal(rawMsg, b)
1137}
1138
1139func unmarshalExecutionActivityClassificationArray(rawMsg json.RawMessage) ([]ExecutionActivityClassification, error) {
1140	if rawMsg == nil {
1141		return nil, nil
1142	}
1143	var rawMessages []json.RawMessage
1144	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1145		return nil, err
1146	}
1147	fArray := make([]ExecutionActivityClassification, len(rawMessages))
1148	for index, rawMessage := range rawMessages {
1149		f, err := unmarshalExecutionActivityClassification(rawMessage)
1150		if err != nil {
1151			return nil, err
1152		}
1153		fArray[index] = f
1154	}
1155	return fArray, nil
1156}
1157
1158func unmarshalExportSettingsClassification(rawMsg json.RawMessage) (ExportSettingsClassification, error) {
1159	if rawMsg == nil {
1160		return nil, nil
1161	}
1162	var m map[string]interface{}
1163	if err := json.Unmarshal(rawMsg, &m); err != nil {
1164		return nil, err
1165	}
1166	var b ExportSettingsClassification
1167	switch m["type"] {
1168	case "AzureDatabricksDeltaLakeExportCommand":
1169		b = &AzureDatabricksDeltaLakeExportCommand{}
1170	case "SnowflakeExportCopyCommand":
1171		b = &SnowflakeExportCopyCommand{}
1172	default:
1173		b = &ExportSettings{}
1174	}
1175	return b, json.Unmarshal(rawMsg, b)
1176}
1177
1178func unmarshalExportSettingsClassificationArray(rawMsg json.RawMessage) ([]ExportSettingsClassification, error) {
1179	if rawMsg == nil {
1180		return nil, nil
1181	}
1182	var rawMessages []json.RawMessage
1183	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1184		return nil, err
1185	}
1186	fArray := make([]ExportSettingsClassification, len(rawMessages))
1187	for index, rawMessage := range rawMessages {
1188		f, err := unmarshalExportSettingsClassification(rawMessage)
1189		if err != nil {
1190			return nil, err
1191		}
1192		fArray[index] = f
1193	}
1194	return fArray, nil
1195}
1196
1197func unmarshalFormatReadSettingsClassification(rawMsg json.RawMessage) (FormatReadSettingsClassification, error) {
1198	if rawMsg == nil {
1199		return nil, nil
1200	}
1201	var m map[string]interface{}
1202	if err := json.Unmarshal(rawMsg, &m); err != nil {
1203		return nil, err
1204	}
1205	var b FormatReadSettingsClassification
1206	switch m["type"] {
1207	case "BinaryReadSettings":
1208		b = &BinaryReadSettings{}
1209	case "DelimitedTextReadSettings":
1210		b = &DelimitedTextReadSettings{}
1211	case "JsonReadSettings":
1212		b = &JSONReadSettings{}
1213	case "XmlReadSettings":
1214		b = &XMLReadSettings{}
1215	default:
1216		b = &FormatReadSettings{}
1217	}
1218	return b, json.Unmarshal(rawMsg, b)
1219}
1220
1221func unmarshalFormatReadSettingsClassificationArray(rawMsg json.RawMessage) ([]FormatReadSettingsClassification, error) {
1222	if rawMsg == nil {
1223		return nil, nil
1224	}
1225	var rawMessages []json.RawMessage
1226	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1227		return nil, err
1228	}
1229	fArray := make([]FormatReadSettingsClassification, len(rawMessages))
1230	for index, rawMessage := range rawMessages {
1231		f, err := unmarshalFormatReadSettingsClassification(rawMessage)
1232		if err != nil {
1233			return nil, err
1234		}
1235		fArray[index] = f
1236	}
1237	return fArray, nil
1238}
1239
1240func unmarshalFormatWriteSettingsClassification(rawMsg json.RawMessage) (FormatWriteSettingsClassification, error) {
1241	if rawMsg == nil {
1242		return nil, nil
1243	}
1244	var m map[string]interface{}
1245	if err := json.Unmarshal(rawMsg, &m); err != nil {
1246		return nil, err
1247	}
1248	var b FormatWriteSettingsClassification
1249	switch m["type"] {
1250	case "AvroWriteSettings":
1251		b = &AvroWriteSettings{}
1252	case "DelimitedTextWriteSettings":
1253		b = &DelimitedTextWriteSettings{}
1254	case "JsonWriteSettings":
1255		b = &JSONWriteSettings{}
1256	case "OrcWriteSettings":
1257		b = &OrcWriteSettings{}
1258	case "ParquetWriteSettings":
1259		b = &ParquetWriteSettings{}
1260	default:
1261		b = &FormatWriteSettings{}
1262	}
1263	return b, json.Unmarshal(rawMsg, b)
1264}
1265
1266func unmarshalFormatWriteSettingsClassificationArray(rawMsg json.RawMessage) ([]FormatWriteSettingsClassification, error) {
1267	if rawMsg == nil {
1268		return nil, nil
1269	}
1270	var rawMessages []json.RawMessage
1271	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1272		return nil, err
1273	}
1274	fArray := make([]FormatWriteSettingsClassification, len(rawMessages))
1275	for index, rawMessage := range rawMessages {
1276		f, err := unmarshalFormatWriteSettingsClassification(rawMessage)
1277		if err != nil {
1278			return nil, err
1279		}
1280		fArray[index] = f
1281	}
1282	return fArray, nil
1283}
1284
1285func unmarshalImportSettingsClassification(rawMsg json.RawMessage) (ImportSettingsClassification, error) {
1286	if rawMsg == nil {
1287		return nil, nil
1288	}
1289	var m map[string]interface{}
1290	if err := json.Unmarshal(rawMsg, &m); err != nil {
1291		return nil, err
1292	}
1293	var b ImportSettingsClassification
1294	switch m["type"] {
1295	case "AzureDatabricksDeltaLakeImportCommand":
1296		b = &AzureDatabricksDeltaLakeImportCommand{}
1297	case "SnowflakeImportCopyCommand":
1298		b = &SnowflakeImportCopyCommand{}
1299	default:
1300		b = &ImportSettings{}
1301	}
1302	return b, json.Unmarshal(rawMsg, b)
1303}
1304
1305func unmarshalImportSettingsClassificationArray(rawMsg json.RawMessage) ([]ImportSettingsClassification, error) {
1306	if rawMsg == nil {
1307		return nil, nil
1308	}
1309	var rawMessages []json.RawMessage
1310	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1311		return nil, err
1312	}
1313	fArray := make([]ImportSettingsClassification, len(rawMessages))
1314	for index, rawMessage := range rawMessages {
1315		f, err := unmarshalImportSettingsClassification(rawMessage)
1316		if err != nil {
1317			return nil, err
1318		}
1319		fArray[index] = f
1320	}
1321	return fArray, nil
1322}
1323
1324func unmarshalIntegrationRuntimeClassification(rawMsg json.RawMessage) (IntegrationRuntimeClassification, error) {
1325	if rawMsg == nil {
1326		return nil, nil
1327	}
1328	var m map[string]interface{}
1329	if err := json.Unmarshal(rawMsg, &m); err != nil {
1330		return nil, err
1331	}
1332	var b IntegrationRuntimeClassification
1333	switch m["type"] {
1334	case string(IntegrationRuntimeTypeManaged):
1335		b = &ManagedIntegrationRuntime{}
1336	case string(IntegrationRuntimeTypeSelfHosted):
1337		b = &SelfHostedIntegrationRuntime{}
1338	default:
1339		b = &IntegrationRuntime{}
1340	}
1341	return b, json.Unmarshal(rawMsg, b)
1342}
1343
1344func unmarshalIntegrationRuntimeClassificationArray(rawMsg json.RawMessage) ([]IntegrationRuntimeClassification, error) {
1345	if rawMsg == nil {
1346		return nil, nil
1347	}
1348	var rawMessages []json.RawMessage
1349	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1350		return nil, err
1351	}
1352	fArray := make([]IntegrationRuntimeClassification, len(rawMessages))
1353	for index, rawMessage := range rawMessages {
1354		f, err := unmarshalIntegrationRuntimeClassification(rawMessage)
1355		if err != nil {
1356			return nil, err
1357		}
1358		fArray[index] = f
1359	}
1360	return fArray, nil
1361}
1362
1363func unmarshalLinkedIntegrationRuntimeTypeClassification(rawMsg json.RawMessage) (LinkedIntegrationRuntimeTypeClassification, error) {
1364	if rawMsg == nil {
1365		return nil, nil
1366	}
1367	var m map[string]interface{}
1368	if err := json.Unmarshal(rawMsg, &m); err != nil {
1369		return nil, err
1370	}
1371	var b LinkedIntegrationRuntimeTypeClassification
1372	switch m["authorizationType"] {
1373	case "Key":
1374		b = &LinkedIntegrationRuntimeKeyAuthorization{}
1375	case "RBAC":
1376		b = &LinkedIntegrationRuntimeRbacAuthorization{}
1377	default:
1378		b = &LinkedIntegrationRuntimeType{}
1379	}
1380	return b, json.Unmarshal(rawMsg, b)
1381}
1382
1383func unmarshalLinkedIntegrationRuntimeTypeClassificationArray(rawMsg json.RawMessage) ([]LinkedIntegrationRuntimeTypeClassification, error) {
1384	if rawMsg == nil {
1385		return nil, nil
1386	}
1387	var rawMessages []json.RawMessage
1388	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1389		return nil, err
1390	}
1391	fArray := make([]LinkedIntegrationRuntimeTypeClassification, len(rawMessages))
1392	for index, rawMessage := range rawMessages {
1393		f, err := unmarshalLinkedIntegrationRuntimeTypeClassification(rawMessage)
1394		if err != nil {
1395			return nil, err
1396		}
1397		fArray[index] = f
1398	}
1399	return fArray, nil
1400}
1401
1402func unmarshalLinkedServiceClassification(rawMsg json.RawMessage) (LinkedServiceClassification, error) {
1403	if rawMsg == nil {
1404		return nil, nil
1405	}
1406	var m map[string]interface{}
1407	if err := json.Unmarshal(rawMsg, &m); err != nil {
1408		return nil, err
1409	}
1410	var b LinkedServiceClassification
1411	switch m["type"] {
1412	case "AmazonMWS":
1413		b = &AmazonMWSLinkedService{}
1414	case "AmazonRedshift":
1415		b = &AmazonRedshiftLinkedService{}
1416	case "AmazonS3":
1417		b = &AmazonS3LinkedService{}
1418	case "AzureBatch":
1419		b = &AzureBatchLinkedService{}
1420	case "AzureBlobFS":
1421		b = &AzureBlobFSLinkedService{}
1422	case "AzureBlobStorage":
1423		b = &AzureBlobStorageLinkedService{}
1424	case "AzureDataExplorer":
1425		b = &AzureDataExplorerLinkedService{}
1426	case "AzureDataLakeAnalytics":
1427		b = &AzureDataLakeAnalyticsLinkedService{}
1428	case "AzureDataLakeStore":
1429		b = &AzureDataLakeStoreLinkedService{}
1430	case "AzureDatabricks":
1431		b = &AzureDatabricksLinkedService{}
1432	case "AzureDatabricksDeltaLake":
1433		b = &AzureDatabricksDeltaLakeLinkedService{}
1434	case "AzureFileStorage":
1435		b = &AzureFileStorageLinkedService{}
1436	case "AzureFunction":
1437		b = &AzureFunctionLinkedService{}
1438	case "AzureKeyVault":
1439		b = &AzureKeyVaultLinkedService{}
1440	case "AzureML":
1441		b = &AzureMLLinkedService{}
1442	case "AzureMLService":
1443		b = &AzureMLServiceLinkedService{}
1444	case "AzureMariaDB":
1445		b = &AzureMariaDBLinkedService{}
1446	case "AzureMySql":
1447		b = &AzureMySQLLinkedService{}
1448	case "AzurePostgreSql":
1449		b = &AzurePostgreSQLLinkedService{}
1450	case "AzureSearch":
1451		b = &AzureSearchLinkedService{}
1452	case "AzureSqlDW":
1453		b = &AzureSQLDWLinkedService{}
1454	case "AzureSqlDatabase":
1455		b = &AzureSQLDatabaseLinkedService{}
1456	case "AzureSqlMI":
1457		b = &AzureSQLMILinkedService{}
1458	case "AzureStorage":
1459		b = &AzureStorageLinkedService{}
1460	case "AzureTableStorage":
1461		b = &AzureTableStorageLinkedService{}
1462	case "Cassandra":
1463		b = &CassandraLinkedService{}
1464	case "CommonDataServiceForApps":
1465		b = &CommonDataServiceForAppsLinkedService{}
1466	case "Concur":
1467		b = &ConcurLinkedService{}
1468	case "CosmosDb":
1469		b = &CosmosDbLinkedService{}
1470	case "CosmosDbMongoDbApi":
1471		b = &CosmosDbMongoDbAPILinkedService{}
1472	case "Couchbase":
1473		b = &CouchbaseLinkedService{}
1474	case "CustomDataSource":
1475		b = &CustomDataSourceLinkedService{}
1476	case "Db2":
1477		b = &Db2LinkedService{}
1478	case "Drill":
1479		b = &DrillLinkedService{}
1480	case "Dynamics":
1481		b = &DynamicsLinkedService{}
1482	case "DynamicsAX":
1483		b = &DynamicsAXLinkedService{}
1484	case "DynamicsCrm":
1485		b = &DynamicsCrmLinkedService{}
1486	case "Eloqua":
1487		b = &EloquaLinkedService{}
1488	case "FileServer":
1489		b = &FileServerLinkedService{}
1490	case "FtpServer":
1491		b = &FtpServerLinkedService{}
1492	case "GoogleAdWords":
1493		b = &GoogleAdWordsLinkedService{}
1494	case "GoogleBigQuery":
1495		b = &GoogleBigQueryLinkedService{}
1496	case "GoogleCloudStorage":
1497		b = &GoogleCloudStorageLinkedService{}
1498	case "Greenplum":
1499		b = &GreenplumLinkedService{}
1500	case "HBase":
1501		b = &HBaseLinkedService{}
1502	case "HDInsight":
1503		b = &HDInsightLinkedService{}
1504	case "HDInsightOnDemand":
1505		b = &HDInsightOnDemandLinkedService{}
1506	case "Hdfs":
1507		b = &HdfsLinkedService{}
1508	case "Hive":
1509		b = &HiveLinkedService{}
1510	case "HttpServer":
1511		b = &HTTPLinkedService{}
1512	case "Hubspot":
1513		b = &HubspotLinkedService{}
1514	case "Impala":
1515		b = &ImpalaLinkedService{}
1516	case "Informix":
1517		b = &InformixLinkedService{}
1518	case "Jira":
1519		b = &JiraLinkedService{}
1520	case "Magento":
1521		b = &MagentoLinkedService{}
1522	case "MariaDB":
1523		b = &MariaDBLinkedService{}
1524	case "Marketo":
1525		b = &MarketoLinkedService{}
1526	case "MicrosoftAccess":
1527		b = &MicrosoftAccessLinkedService{}
1528	case "MongoDb":
1529		b = &MongoDbLinkedService{}
1530	case "MongoDbAtlas":
1531		b = &MongoDbAtlasLinkedService{}
1532	case "MongoDbV2":
1533		b = &MongoDbV2LinkedService{}
1534	case "MySql":
1535		b = &MySQLLinkedService{}
1536	case "Netezza":
1537		b = &NetezzaLinkedService{}
1538	case "OData":
1539		b = &ODataLinkedService{}
1540	case "Odbc":
1541		b = &OdbcLinkedService{}
1542	case "Office365":
1543		b = &Office365LinkedService{}
1544	case "Oracle":
1545		b = &OracleLinkedService{}
1546	case "OracleServiceCloud":
1547		b = &OracleServiceCloudLinkedService{}
1548	case "Paypal":
1549		b = &PaypalLinkedService{}
1550	case "Phoenix":
1551		b = &PhoenixLinkedService{}
1552	case "PostgreSql":
1553		b = &PostgreSQLLinkedService{}
1554	case "Presto":
1555		b = &PrestoLinkedService{}
1556	case "QuickBooks":
1557		b = &QuickBooksLinkedService{}
1558	case "Responsys":
1559		b = &ResponsysLinkedService{}
1560	case "RestService":
1561		b = &RestServiceLinkedService{}
1562	case "Salesforce":
1563		b = &SalesforceLinkedService{}
1564	case "SalesforceMarketingCloud":
1565		b = &SalesforceMarketingCloudLinkedService{}
1566	case "SalesforceServiceCloud":
1567		b = &SalesforceServiceCloudLinkedService{}
1568	case "SapBW":
1569		b = &SapBWLinkedService{}
1570	case "SapCloudForCustomer":
1571		b = &SapCloudForCustomerLinkedService{}
1572	case "SapEcc":
1573		b = &SapEccLinkedService{}
1574	case "SapHana":
1575		b = &SapHanaLinkedService{}
1576	case "SapOpenHub":
1577		b = &SapOpenHubLinkedService{}
1578	case "SapTable":
1579		b = &SapTableLinkedService{}
1580	case "ServiceNow":
1581		b = &ServiceNowLinkedService{}
1582	case "Sftp":
1583		b = &SftpServerLinkedService{}
1584	case "SharePointOnlineList":
1585		b = &SharePointOnlineListLinkedService{}
1586	case "Shopify":
1587		b = &ShopifyLinkedService{}
1588	case "Snowflake":
1589		b = &SnowflakeLinkedService{}
1590	case "Spark":
1591		b = &SparkLinkedService{}
1592	case "SqlServer":
1593		b = &SQLServerLinkedService{}
1594	case "Square":
1595		b = &SquareLinkedService{}
1596	case "Sybase":
1597		b = &SybaseLinkedService{}
1598	case "Teradata":
1599		b = &TeradataLinkedService{}
1600	case "Vertica":
1601		b = &VerticaLinkedService{}
1602	case "Web":
1603		b = &WebLinkedService{}
1604	case "Xero":
1605		b = &XeroLinkedService{}
1606	case "Zoho":
1607		b = &ZohoLinkedService{}
1608	default:
1609		b = &LinkedService{}
1610	}
1611	return b, json.Unmarshal(rawMsg, b)
1612}
1613
1614func unmarshalLinkedServiceClassificationArray(rawMsg json.RawMessage) ([]LinkedServiceClassification, error) {
1615	if rawMsg == nil {
1616		return nil, nil
1617	}
1618	var rawMessages []json.RawMessage
1619	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1620		return nil, err
1621	}
1622	fArray := make([]LinkedServiceClassification, len(rawMessages))
1623	for index, rawMessage := range rawMessages {
1624		f, err := unmarshalLinkedServiceClassification(rawMessage)
1625		if err != nil {
1626			return nil, err
1627		}
1628		fArray[index] = f
1629	}
1630	return fArray, nil
1631}
1632
1633func unmarshalMultiplePipelineTriggerClassification(rawMsg json.RawMessage) (MultiplePipelineTriggerClassification, error) {
1634	if rawMsg == nil {
1635		return nil, nil
1636	}
1637	var m map[string]interface{}
1638	if err := json.Unmarshal(rawMsg, &m); err != nil {
1639		return nil, err
1640	}
1641	var b MultiplePipelineTriggerClassification
1642	switch m["type"] {
1643	case "BlobEventsTrigger":
1644		b = &BlobEventsTrigger{}
1645	case "BlobTrigger":
1646		b = &BlobTrigger{}
1647	case "CustomEventsTrigger":
1648		b = &CustomEventsTrigger{}
1649	case "ScheduleTrigger":
1650		b = &ScheduleTrigger{}
1651	default:
1652		b = &MultiplePipelineTrigger{}
1653	}
1654	return b, json.Unmarshal(rawMsg, b)
1655}
1656
1657func unmarshalMultiplePipelineTriggerClassificationArray(rawMsg json.RawMessage) ([]MultiplePipelineTriggerClassification, error) {
1658	if rawMsg == nil {
1659		return nil, nil
1660	}
1661	var rawMessages []json.RawMessage
1662	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1663		return nil, err
1664	}
1665	fArray := make([]MultiplePipelineTriggerClassification, len(rawMessages))
1666	for index, rawMessage := range rawMessages {
1667		f, err := unmarshalMultiplePipelineTriggerClassification(rawMessage)
1668		if err != nil {
1669			return nil, err
1670		}
1671		fArray[index] = f
1672	}
1673	return fArray, nil
1674}
1675
1676func unmarshalSecretBaseClassification(rawMsg json.RawMessage) (SecretBaseClassification, error) {
1677	if rawMsg == nil {
1678		return nil, nil
1679	}
1680	var m map[string]interface{}
1681	if err := json.Unmarshal(rawMsg, &m); err != nil {
1682		return nil, err
1683	}
1684	var b SecretBaseClassification
1685	switch m["type"] {
1686	case "AzureKeyVaultSecret":
1687		b = &AzureKeyVaultSecretReference{}
1688	case "SecureString":
1689		b = &SecureString{}
1690	default:
1691		b = &SecretBase{}
1692	}
1693	return b, json.Unmarshal(rawMsg, b)
1694}
1695
1696func unmarshalSecretBaseClassificationArray(rawMsg json.RawMessage) ([]SecretBaseClassification, error) {
1697	if rawMsg == nil {
1698		return nil, nil
1699	}
1700	var rawMessages []json.RawMessage
1701	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1702		return nil, err
1703	}
1704	fArray := make([]SecretBaseClassification, len(rawMessages))
1705	for index, rawMessage := range rawMessages {
1706		f, err := unmarshalSecretBaseClassification(rawMessage)
1707		if err != nil {
1708			return nil, err
1709		}
1710		fArray[index] = f
1711	}
1712	return fArray, nil
1713}
1714
1715func unmarshalStoreReadSettingsClassification(rawMsg json.RawMessage) (StoreReadSettingsClassification, error) {
1716	if rawMsg == nil {
1717		return nil, nil
1718	}
1719	var m map[string]interface{}
1720	if err := json.Unmarshal(rawMsg, &m); err != nil {
1721		return nil, err
1722	}
1723	var b StoreReadSettingsClassification
1724	switch m["type"] {
1725	case "AmazonS3ReadSettings":
1726		b = &AmazonS3ReadSettings{}
1727	case "AzureBlobFSReadSettings":
1728		b = &AzureBlobFSReadSettings{}
1729	case "AzureBlobStorageReadSettings":
1730		b = &AzureBlobStorageReadSettings{}
1731	case "AzureDataLakeStoreReadSettings":
1732		b = &AzureDataLakeStoreReadSettings{}
1733	case "AzureFileStorageReadSettings":
1734		b = &AzureFileStorageReadSettings{}
1735	case "FileServerReadSettings":
1736		b = &FileServerReadSettings{}
1737	case "FtpReadSettings":
1738		b = &FtpReadSettings{}
1739	case "GoogleCloudStorageReadSettings":
1740		b = &GoogleCloudStorageReadSettings{}
1741	case "HdfsReadSettings":
1742		b = &HdfsReadSettings{}
1743	case "HttpReadSettings":
1744		b = &HTTPReadSettings{}
1745	case "SftpReadSettings":
1746		b = &SftpReadSettings{}
1747	default:
1748		b = &StoreReadSettings{}
1749	}
1750	return b, json.Unmarshal(rawMsg, b)
1751}
1752
1753func unmarshalStoreReadSettingsClassificationArray(rawMsg json.RawMessage) ([]StoreReadSettingsClassification, error) {
1754	if rawMsg == nil {
1755		return nil, nil
1756	}
1757	var rawMessages []json.RawMessage
1758	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1759		return nil, err
1760	}
1761	fArray := make([]StoreReadSettingsClassification, len(rawMessages))
1762	for index, rawMessage := range rawMessages {
1763		f, err := unmarshalStoreReadSettingsClassification(rawMessage)
1764		if err != nil {
1765			return nil, err
1766		}
1767		fArray[index] = f
1768	}
1769	return fArray, nil
1770}
1771
1772func unmarshalStoreWriteSettingsClassification(rawMsg json.RawMessage) (StoreWriteSettingsClassification, error) {
1773	if rawMsg == nil {
1774		return nil, nil
1775	}
1776	var m map[string]interface{}
1777	if err := json.Unmarshal(rawMsg, &m); err != nil {
1778		return nil, err
1779	}
1780	var b StoreWriteSettingsClassification
1781	switch m["type"] {
1782	case "AzureBlobFSWriteSettings":
1783		b = &AzureBlobFSWriteSettings{}
1784	case "AzureBlobStorageWriteSettings":
1785		b = &AzureBlobStorageWriteSettings{}
1786	case "AzureDataLakeStoreWriteSettings":
1787		b = &AzureDataLakeStoreWriteSettings{}
1788	case "AzureFileStorageWriteSettings":
1789		b = &AzureFileStorageWriteSettings{}
1790	case "FileServerWriteSettings":
1791		b = &FileServerWriteSettings{}
1792	case "SftpWriteSettings":
1793		b = &SftpWriteSettings{}
1794	default:
1795		b = &StoreWriteSettings{}
1796	}
1797	return b, json.Unmarshal(rawMsg, b)
1798}
1799
1800func unmarshalStoreWriteSettingsClassificationArray(rawMsg json.RawMessage) ([]StoreWriteSettingsClassification, error) {
1801	if rawMsg == nil {
1802		return nil, nil
1803	}
1804	var rawMessages []json.RawMessage
1805	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1806		return nil, err
1807	}
1808	fArray := make([]StoreWriteSettingsClassification, len(rawMessages))
1809	for index, rawMessage := range rawMessages {
1810		f, err := unmarshalStoreWriteSettingsClassification(rawMessage)
1811		if err != nil {
1812			return nil, err
1813		}
1814		fArray[index] = f
1815	}
1816	return fArray, nil
1817}
1818
1819func unmarshalTabularSourceClassification(rawMsg json.RawMessage) (TabularSourceClassification, error) {
1820	if rawMsg == nil {
1821		return nil, nil
1822	}
1823	var m map[string]interface{}
1824	if err := json.Unmarshal(rawMsg, &m); err != nil {
1825		return nil, err
1826	}
1827	var b TabularSourceClassification
1828	switch m["type"] {
1829	case "AmazonMWSSource":
1830		b = &AmazonMWSSource{}
1831	case "AmazonRedshiftSource":
1832		b = &AmazonRedshiftSource{}
1833	case "AzureMariaDBSource":
1834		b = &AzureMariaDBSource{}
1835	case "AzureMySqlSource":
1836		b = &AzureMySQLSource{}
1837	case "AzurePostgreSqlSource":
1838		b = &AzurePostgreSQLSource{}
1839	case "AzureSqlSource":
1840		b = &AzureSQLSource{}
1841	case "AzureTableSource":
1842		b = &AzureTableSource{}
1843	case "CassandraSource":
1844		b = &CassandraSource{}
1845	case "ConcurSource":
1846		b = &ConcurSource{}
1847	case "CouchbaseSource":
1848		b = &CouchbaseSource{}
1849	case "Db2Source":
1850		b = &Db2Source{}
1851	case "DrillSource":
1852		b = &DrillSource{}
1853	case "DynamicsAXSource":
1854		b = &DynamicsAXSource{}
1855	case "EloquaSource":
1856		b = &EloquaSource{}
1857	case "GoogleAdWordsSource":
1858		b = &GoogleAdWordsSource{}
1859	case "GoogleBigQuerySource":
1860		b = &GoogleBigQuerySource{}
1861	case "GreenplumSource":
1862		b = &GreenplumSource{}
1863	case "HBaseSource":
1864		b = &HBaseSource{}
1865	case "HiveSource":
1866		b = &HiveSource{}
1867	case "HubspotSource":
1868		b = &HubspotSource{}
1869	case "ImpalaSource":
1870		b = &ImpalaSource{}
1871	case "InformixSource":
1872		b = &InformixSource{}
1873	case "JiraSource":
1874		b = &JiraSource{}
1875	case "MagentoSource":
1876		b = &MagentoSource{}
1877	case "MariaDBSource":
1878		b = &MariaDBSource{}
1879	case "MarketoSource":
1880		b = &MarketoSource{}
1881	case "MySqlSource":
1882		b = &MySQLSource{}
1883	case "NetezzaSource":
1884		b = &NetezzaSource{}
1885	case "OdbcSource":
1886		b = &OdbcSource{}
1887	case "OracleServiceCloudSource":
1888		b = &OracleServiceCloudSource{}
1889	case "PaypalSource":
1890		b = &PaypalSource{}
1891	case "PhoenixSource":
1892		b = &PhoenixSource{}
1893	case "PostgreSqlSource":
1894		b = &PostgreSQLSource{}
1895	case "PrestoSource":
1896		b = &PrestoSource{}
1897	case "QuickBooksSource":
1898		b = &QuickBooksSource{}
1899	case "ResponsysSource":
1900		b = &ResponsysSource{}
1901	case "SalesforceMarketingCloudSource":
1902		b = &SalesforceMarketingCloudSource{}
1903	case "SalesforceSource":
1904		b = &SalesforceSource{}
1905	case "SapBwSource":
1906		b = &SapBwSource{}
1907	case "SapCloudForCustomerSource":
1908		b = &SapCloudForCustomerSource{}
1909	case "SapEccSource":
1910		b = &SapEccSource{}
1911	case "SapHanaSource":
1912		b = &SapHanaSource{}
1913	case "SapOpenHubSource":
1914		b = &SapOpenHubSource{}
1915	case "SapTableSource":
1916		b = &SapTableSource{}
1917	case "ServiceNowSource":
1918		b = &ServiceNowSource{}
1919	case "ShopifySource":
1920		b = &ShopifySource{}
1921	case "SparkSource":
1922		b = &SparkSource{}
1923	case "SqlDWSource":
1924		b = &SQLDWSource{}
1925	case "SqlMISource":
1926		b = &SQLMISource{}
1927	case "SqlServerSource":
1928		b = &SQLServerSource{}
1929	case "SqlSource":
1930		b = &SQLSource{}
1931	case "SquareSource":
1932		b = &SquareSource{}
1933	case "SybaseSource":
1934		b = &SybaseSource{}
1935	case "TeradataSource":
1936		b = &TeradataSource{}
1937	case "VerticaSource":
1938		b = &VerticaSource{}
1939	case "XeroSource":
1940		b = &XeroSource{}
1941	case "ZohoSource":
1942		b = &ZohoSource{}
1943	default:
1944		b = &TabularSource{}
1945	}
1946	return b, json.Unmarshal(rawMsg, b)
1947}
1948
1949func unmarshalTabularSourceClassificationArray(rawMsg json.RawMessage) ([]TabularSourceClassification, error) {
1950	if rawMsg == nil {
1951		return nil, nil
1952	}
1953	var rawMessages []json.RawMessage
1954	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
1955		return nil, err
1956	}
1957	fArray := make([]TabularSourceClassification, len(rawMessages))
1958	for index, rawMessage := range rawMessages {
1959		f, err := unmarshalTabularSourceClassification(rawMessage)
1960		if err != nil {
1961			return nil, err
1962		}
1963		fArray[index] = f
1964	}
1965	return fArray, nil
1966}
1967
1968func unmarshalTriggerClassification(rawMsg json.RawMessage) (TriggerClassification, error) {
1969	if rawMsg == nil {
1970		return nil, nil
1971	}
1972	var m map[string]interface{}
1973	if err := json.Unmarshal(rawMsg, &m); err != nil {
1974		return nil, err
1975	}
1976	var b TriggerClassification
1977	switch m["type"] {
1978	case "BlobEventsTrigger":
1979		b = &BlobEventsTrigger{}
1980	case "BlobTrigger":
1981		b = &BlobTrigger{}
1982	case "ChainingTrigger":
1983		b = &ChainingTrigger{}
1984	case "CustomEventsTrigger":
1985		b = &CustomEventsTrigger{}
1986	case "MultiplePipelineTrigger":
1987		b = &MultiplePipelineTrigger{}
1988	case "RerunTumblingWindowTrigger":
1989		b = &RerunTumblingWindowTrigger{}
1990	case "ScheduleTrigger":
1991		b = &ScheduleTrigger{}
1992	case "TumblingWindowTrigger":
1993		b = &TumblingWindowTrigger{}
1994	default:
1995		b = &Trigger{}
1996	}
1997	return b, json.Unmarshal(rawMsg, b)
1998}
1999
2000func unmarshalTriggerClassificationArray(rawMsg json.RawMessage) ([]TriggerClassification, error) {
2001	if rawMsg == nil {
2002		return nil, nil
2003	}
2004	var rawMessages []json.RawMessage
2005	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
2006		return nil, err
2007	}
2008	fArray := make([]TriggerClassification, len(rawMessages))
2009	for index, rawMessage := range rawMessages {
2010		f, err := unmarshalTriggerClassification(rawMessage)
2011		if err != nil {
2012			return nil, err
2013		}
2014		fArray[index] = f
2015	}
2016	return fArray, nil
2017}
2018
2019func unmarshalTriggerDependencyReferenceClassification(rawMsg json.RawMessage) (TriggerDependencyReferenceClassification, error) {
2020	if rawMsg == nil {
2021		return nil, nil
2022	}
2023	var m map[string]interface{}
2024	if err := json.Unmarshal(rawMsg, &m); err != nil {
2025		return nil, err
2026	}
2027	var b TriggerDependencyReferenceClassification
2028	switch m["type"] {
2029	case "TumblingWindowTriggerDependencyReference":
2030		b = &TumblingWindowTriggerDependencyReference{}
2031	default:
2032		b = &TriggerDependencyReference{}
2033	}
2034	return b, json.Unmarshal(rawMsg, b)
2035}
2036
2037func unmarshalTriggerDependencyReferenceClassificationArray(rawMsg json.RawMessage) ([]TriggerDependencyReferenceClassification, error) {
2038	if rawMsg == nil {
2039		return nil, nil
2040	}
2041	var rawMessages []json.RawMessage
2042	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
2043		return nil, err
2044	}
2045	fArray := make([]TriggerDependencyReferenceClassification, len(rawMessages))
2046	for index, rawMessage := range rawMessages {
2047		f, err := unmarshalTriggerDependencyReferenceClassification(rawMessage)
2048		if err != nil {
2049			return nil, err
2050		}
2051		fArray[index] = f
2052	}
2053	return fArray, nil
2054}
2055
2056func unmarshalWebLinkedServiceTypePropertiesClassification(rawMsg json.RawMessage) (WebLinkedServiceTypePropertiesClassification, error) {
2057	if rawMsg == nil {
2058		return nil, nil
2059	}
2060	var m map[string]interface{}
2061	if err := json.Unmarshal(rawMsg, &m); err != nil {
2062		return nil, err
2063	}
2064	var b WebLinkedServiceTypePropertiesClassification
2065	switch m["authenticationType"] {
2066	case string(WebAuthenticationTypeAnonymous):
2067		b = &WebAnonymousAuthentication{}
2068	case string(WebAuthenticationTypeBasic):
2069		b = &WebBasicAuthentication{}
2070	case string(WebAuthenticationTypeClientCertificate):
2071		b = &WebClientCertificateAuthentication{}
2072	default:
2073		b = &WebLinkedServiceTypeProperties{}
2074	}
2075	return b, json.Unmarshal(rawMsg, b)
2076}
2077
2078func unmarshalWebLinkedServiceTypePropertiesClassificationArray(rawMsg json.RawMessage) ([]WebLinkedServiceTypePropertiesClassification, error) {
2079	if rawMsg == nil {
2080		return nil, nil
2081	}
2082	var rawMessages []json.RawMessage
2083	if err := json.Unmarshal(rawMsg, &rawMessages); err != nil {
2084		return nil, err
2085	}
2086	fArray := make([]WebLinkedServiceTypePropertiesClassification, len(rawMessages))
2087	for index, rawMessage := range rawMessages {
2088		f, err := unmarshalWebLinkedServiceTypePropertiesClassification(rawMessage)
2089		if err != nil {
2090			return nil, err
2091		}
2092		fArray[index] = f
2093	}
2094	return fArray, nil
2095}
2096