1package datafactory
2
3// Copyright (c) Microsoft and contributors.  All rights reserved.
4//
5// Licensed under the Apache License, Version 2.0 (the "License");
6// you may not use this file except in compliance with the License.
7// You may obtain a copy of the License at
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13//
14// See the License for the specific language governing permissions and
15// limitations under the License.
16//
17// Code generated by Microsoft (R) AutoRest Code Generator.
18// Changes may cause incorrect behavior and will be lost if the code is regenerated.
19
20import (
21	"encoding/json"
22	"github.com/Azure/go-autorest/autorest"
23	"github.com/Azure/go-autorest/autorest/azure"
24	"github.com/Azure/go-autorest/autorest/date"
25	"github.com/Azure/go-autorest/autorest/to"
26	"github.com/satori/go.uuid"
27	"net/http"
28)
29
30// AuthenticationType enumerates the values for authentication type.
31type AuthenticationType string
32
33const (
34	// AuthenticationTypeAnonymous ...
35	AuthenticationTypeAnonymous AuthenticationType = "Anonymous"
36	// AuthenticationTypeBasic ...
37	AuthenticationTypeBasic AuthenticationType = "Basic"
38	// AuthenticationTypeClientCertificate ...
39	AuthenticationTypeClientCertificate AuthenticationType = "ClientCertificate"
40	// AuthenticationTypeWebLinkedServiceTypeProperties ...
41	AuthenticationTypeWebLinkedServiceTypeProperties AuthenticationType = "WebLinkedServiceTypeProperties"
42)
43
44// PossibleAuthenticationTypeValues returns an array of possible values for the AuthenticationType const type.
45func PossibleAuthenticationTypeValues() []AuthenticationType {
46	return []AuthenticationType{AuthenticationTypeAnonymous, AuthenticationTypeBasic, AuthenticationTypeClientCertificate, AuthenticationTypeWebLinkedServiceTypeProperties}
47}
48
49// AuthorizationType enumerates the values for authorization type.
50type AuthorizationType string
51
52const (
53	// AuthorizationTypeKey ...
54	AuthorizationTypeKey AuthorizationType = "Key"
55	// AuthorizationTypeLinkedIntegrationRuntimeProperties ...
56	AuthorizationTypeLinkedIntegrationRuntimeProperties AuthorizationType = "LinkedIntegrationRuntimeProperties"
57	// AuthorizationTypeRBAC ...
58	AuthorizationTypeRBAC AuthorizationType = "RBAC"
59)
60
61// PossibleAuthorizationTypeValues returns an array of possible values for the AuthorizationType const type.
62func PossibleAuthorizationTypeValues() []AuthorizationType {
63	return []AuthorizationType{AuthorizationTypeKey, AuthorizationTypeLinkedIntegrationRuntimeProperties, AuthorizationTypeRBAC}
64}
65
66// AzureSearchIndexWriteBehaviorType enumerates the values for azure search index write behavior type.
67type AzureSearchIndexWriteBehaviorType string
68
69const (
70	// Merge ...
71	Merge AzureSearchIndexWriteBehaviorType = "Merge"
72	// Upload ...
73	Upload AzureSearchIndexWriteBehaviorType = "Upload"
74)
75
76// PossibleAzureSearchIndexWriteBehaviorTypeValues returns an array of possible values for the AzureSearchIndexWriteBehaviorType const type.
77func PossibleAzureSearchIndexWriteBehaviorTypeValues() []AzureSearchIndexWriteBehaviorType {
78	return []AzureSearchIndexWriteBehaviorType{Merge, Upload}
79}
80
81// CassandraSourceReadConsistencyLevels enumerates the values for cassandra source read consistency levels.
82type CassandraSourceReadConsistencyLevels string
83
84const (
85	// ALL ...
86	ALL CassandraSourceReadConsistencyLevels = "ALL"
87	// EACHQUORUM ...
88	EACHQUORUM CassandraSourceReadConsistencyLevels = "EACH_QUORUM"
89	// LOCALONE ...
90	LOCALONE CassandraSourceReadConsistencyLevels = "LOCAL_ONE"
91	// LOCALQUORUM ...
92	LOCALQUORUM CassandraSourceReadConsistencyLevels = "LOCAL_QUORUM"
93	// LOCALSERIAL ...
94	LOCALSERIAL CassandraSourceReadConsistencyLevels = "LOCAL_SERIAL"
95	// ONE ...
96	ONE CassandraSourceReadConsistencyLevels = "ONE"
97	// QUORUM ...
98	QUORUM CassandraSourceReadConsistencyLevels = "QUORUM"
99	// SERIAL ...
100	SERIAL CassandraSourceReadConsistencyLevels = "SERIAL"
101	// THREE ...
102	THREE CassandraSourceReadConsistencyLevels = "THREE"
103	// TWO ...
104	TWO CassandraSourceReadConsistencyLevels = "TWO"
105)
106
107// PossibleCassandraSourceReadConsistencyLevelsValues returns an array of possible values for the CassandraSourceReadConsistencyLevels const type.
108func PossibleCassandraSourceReadConsistencyLevelsValues() []CassandraSourceReadConsistencyLevels {
109	return []CassandraSourceReadConsistencyLevels{ALL, EACHQUORUM, LOCALONE, LOCALQUORUM, LOCALSERIAL, ONE, QUORUM, SERIAL, THREE, TWO}
110}
111
112// CopyBehaviorType enumerates the values for copy behavior type.
113type CopyBehaviorType string
114
115const (
116	// FlattenHierarchy ...
117	FlattenHierarchy CopyBehaviorType = "FlattenHierarchy"
118	// MergeFiles ...
119	MergeFiles CopyBehaviorType = "MergeFiles"
120	// PreserveHierarchy ...
121	PreserveHierarchy CopyBehaviorType = "PreserveHierarchy"
122)
123
124// PossibleCopyBehaviorTypeValues returns an array of possible values for the CopyBehaviorType const type.
125func PossibleCopyBehaviorTypeValues() []CopyBehaviorType {
126	return []CopyBehaviorType{FlattenHierarchy, MergeFiles, PreserveHierarchy}
127}
128
129// DatasetCompressionLevel enumerates the values for dataset compression level.
130type DatasetCompressionLevel string
131
132const (
133	// Fastest ...
134	Fastest DatasetCompressionLevel = "Fastest"
135	// Optimal ...
136	Optimal DatasetCompressionLevel = "Optimal"
137)
138
139// PossibleDatasetCompressionLevelValues returns an array of possible values for the DatasetCompressionLevel const type.
140func PossibleDatasetCompressionLevelValues() []DatasetCompressionLevel {
141	return []DatasetCompressionLevel{Fastest, Optimal}
142}
143
144// DayOfWeek enumerates the values for day of week.
145type DayOfWeek string
146
147const (
148	// Friday ...
149	Friday DayOfWeek = "Friday"
150	// Monday ...
151	Monday DayOfWeek = "Monday"
152	// Saturday ...
153	Saturday DayOfWeek = "Saturday"
154	// Sunday ...
155	Sunday DayOfWeek = "Sunday"
156	// Thursday ...
157	Thursday DayOfWeek = "Thursday"
158	// Tuesday ...
159	Tuesday DayOfWeek = "Tuesday"
160	// Wednesday ...
161	Wednesday DayOfWeek = "Wednesday"
162)
163
164// PossibleDayOfWeekValues returns an array of possible values for the DayOfWeek const type.
165func PossibleDayOfWeekValues() []DayOfWeek {
166	return []DayOfWeek{Friday, Monday, Saturday, Sunday, Thursday, Tuesday, Wednesday}
167}
168
169// DaysOfWeek enumerates the values for days of week.
170type DaysOfWeek string
171
172const (
173	// DaysOfWeekFriday ...
174	DaysOfWeekFriday DaysOfWeek = "Friday"
175	// DaysOfWeekMonday ...
176	DaysOfWeekMonday DaysOfWeek = "Monday"
177	// DaysOfWeekSaturday ...
178	DaysOfWeekSaturday DaysOfWeek = "Saturday"
179	// DaysOfWeekSunday ...
180	DaysOfWeekSunday DaysOfWeek = "Sunday"
181	// DaysOfWeekThursday ...
182	DaysOfWeekThursday DaysOfWeek = "Thursday"
183	// DaysOfWeekTuesday ...
184	DaysOfWeekTuesday DaysOfWeek = "Tuesday"
185	// DaysOfWeekWednesday ...
186	DaysOfWeekWednesday DaysOfWeek = "Wednesday"
187)
188
189// PossibleDaysOfWeekValues returns an array of possible values for the DaysOfWeek const type.
190func PossibleDaysOfWeekValues() []DaysOfWeek {
191	return []DaysOfWeek{DaysOfWeekFriday, DaysOfWeekMonday, DaysOfWeekSaturday, DaysOfWeekSunday, DaysOfWeekThursday, DaysOfWeekTuesday, DaysOfWeekWednesday}
192}
193
194// Db2AuthenticationType enumerates the values for db 2 authentication type.
195type Db2AuthenticationType string
196
197const (
198	// Basic ...
199	Basic Db2AuthenticationType = "Basic"
200)
201
202// PossibleDb2AuthenticationTypeValues returns an array of possible values for the Db2AuthenticationType const type.
203func PossibleDb2AuthenticationTypeValues() []Db2AuthenticationType {
204	return []Db2AuthenticationType{Basic}
205}
206
207// DependencyCondition enumerates the values for dependency condition.
208type DependencyCondition string
209
210const (
211	// Completed ...
212	Completed DependencyCondition = "Completed"
213	// Failed ...
214	Failed DependencyCondition = "Failed"
215	// Skipped ...
216	Skipped DependencyCondition = "Skipped"
217	// Succeeded ...
218	Succeeded DependencyCondition = "Succeeded"
219)
220
221// PossibleDependencyConditionValues returns an array of possible values for the DependencyCondition const type.
222func PossibleDependencyConditionValues() []DependencyCondition {
223	return []DependencyCondition{Completed, Failed, Skipped, Succeeded}
224}
225
226// FtpAuthenticationType enumerates the values for ftp authentication type.
227type FtpAuthenticationType string
228
229const (
230	// FtpAuthenticationTypeAnonymous ...
231	FtpAuthenticationTypeAnonymous FtpAuthenticationType = "Anonymous"
232	// FtpAuthenticationTypeBasic ...
233	FtpAuthenticationTypeBasic FtpAuthenticationType = "Basic"
234)
235
236// PossibleFtpAuthenticationTypeValues returns an array of possible values for the FtpAuthenticationType const type.
237func PossibleFtpAuthenticationTypeValues() []FtpAuthenticationType {
238	return []FtpAuthenticationType{FtpAuthenticationTypeAnonymous, FtpAuthenticationTypeBasic}
239}
240
241// GoogleBigQueryAuthenticationType enumerates the values for google big query authentication type.
242type GoogleBigQueryAuthenticationType string
243
244const (
245	// ServiceAuthentication ...
246	ServiceAuthentication GoogleBigQueryAuthenticationType = "ServiceAuthentication"
247	// UserAuthentication ...
248	UserAuthentication GoogleBigQueryAuthenticationType = "UserAuthentication"
249)
250
251// PossibleGoogleBigQueryAuthenticationTypeValues returns an array of possible values for the GoogleBigQueryAuthenticationType const type.
252func PossibleGoogleBigQueryAuthenticationTypeValues() []GoogleBigQueryAuthenticationType {
253	return []GoogleBigQueryAuthenticationType{ServiceAuthentication, UserAuthentication}
254}
255
256// HBaseAuthenticationType enumerates the values for h base authentication type.
257type HBaseAuthenticationType string
258
259const (
260	// HBaseAuthenticationTypeAnonymous ...
261	HBaseAuthenticationTypeAnonymous HBaseAuthenticationType = "Anonymous"
262	// HBaseAuthenticationTypeBasic ...
263	HBaseAuthenticationTypeBasic HBaseAuthenticationType = "Basic"
264)
265
266// PossibleHBaseAuthenticationTypeValues returns an array of possible values for the HBaseAuthenticationType const type.
267func PossibleHBaseAuthenticationTypeValues() []HBaseAuthenticationType {
268	return []HBaseAuthenticationType{HBaseAuthenticationTypeAnonymous, HBaseAuthenticationTypeBasic}
269}
270
271// HDInsightActivityDebugInfoOption enumerates the values for hd insight activity debug info option.
272type HDInsightActivityDebugInfoOption string
273
274const (
275	// Always ...
276	Always HDInsightActivityDebugInfoOption = "Always"
277	// Failure ...
278	Failure HDInsightActivityDebugInfoOption = "Failure"
279	// None ...
280	None HDInsightActivityDebugInfoOption = "None"
281)
282
283// PossibleHDInsightActivityDebugInfoOptionValues returns an array of possible values for the HDInsightActivityDebugInfoOption const type.
284func PossibleHDInsightActivityDebugInfoOptionValues() []HDInsightActivityDebugInfoOption {
285	return []HDInsightActivityDebugInfoOption{Always, Failure, None}
286}
287
288// HiveAuthenticationType enumerates the values for hive authentication type.
289type HiveAuthenticationType string
290
291const (
292	// Anonymous ...
293	Anonymous HiveAuthenticationType = "Anonymous"
294	// Username ...
295	Username HiveAuthenticationType = "Username"
296	// UsernameAndPassword ...
297	UsernameAndPassword HiveAuthenticationType = "UsernameAndPassword"
298	// WindowsAzureHDInsightService ...
299	WindowsAzureHDInsightService HiveAuthenticationType = "WindowsAzureHDInsightService"
300)
301
302// PossibleHiveAuthenticationTypeValues returns an array of possible values for the HiveAuthenticationType const type.
303func PossibleHiveAuthenticationTypeValues() []HiveAuthenticationType {
304	return []HiveAuthenticationType{Anonymous, Username, UsernameAndPassword, WindowsAzureHDInsightService}
305}
306
307// HiveServerType enumerates the values for hive server type.
308type HiveServerType string
309
310const (
311	// HiveServer1 ...
312	HiveServer1 HiveServerType = "HiveServer1"
313	// HiveServer2 ...
314	HiveServer2 HiveServerType = "HiveServer2"
315	// HiveThriftServer ...
316	HiveThriftServer HiveServerType = "HiveThriftServer"
317)
318
319// PossibleHiveServerTypeValues returns an array of possible values for the HiveServerType const type.
320func PossibleHiveServerTypeValues() []HiveServerType {
321	return []HiveServerType{HiveServer1, HiveServer2, HiveThriftServer}
322}
323
324// HiveThriftTransportProtocol enumerates the values for hive thrift transport protocol.
325type HiveThriftTransportProtocol string
326
327const (
328	// Binary ...
329	Binary HiveThriftTransportProtocol = "Binary"
330	// HTTP ...
331	HTTP HiveThriftTransportProtocol = "HTTP "
332	// SASL ...
333	SASL HiveThriftTransportProtocol = "SASL"
334)
335
336// PossibleHiveThriftTransportProtocolValues returns an array of possible values for the HiveThriftTransportProtocol const type.
337func PossibleHiveThriftTransportProtocolValues() []HiveThriftTransportProtocol {
338	return []HiveThriftTransportProtocol{Binary, HTTP, SASL}
339}
340
341// HTTPAuthenticationType enumerates the values for http authentication type.
342type HTTPAuthenticationType string
343
344const (
345	// HTTPAuthenticationTypeAnonymous ...
346	HTTPAuthenticationTypeAnonymous HTTPAuthenticationType = "Anonymous"
347	// HTTPAuthenticationTypeBasic ...
348	HTTPAuthenticationTypeBasic HTTPAuthenticationType = "Basic"
349	// HTTPAuthenticationTypeClientCertificate ...
350	HTTPAuthenticationTypeClientCertificate HTTPAuthenticationType = "ClientCertificate"
351	// HTTPAuthenticationTypeDigest ...
352	HTTPAuthenticationTypeDigest HTTPAuthenticationType = "Digest"
353	// HTTPAuthenticationTypeWindows ...
354	HTTPAuthenticationTypeWindows HTTPAuthenticationType = "Windows"
355)
356
357// PossibleHTTPAuthenticationTypeValues returns an array of possible values for the HTTPAuthenticationType const type.
358func PossibleHTTPAuthenticationTypeValues() []HTTPAuthenticationType {
359	return []HTTPAuthenticationType{HTTPAuthenticationTypeAnonymous, HTTPAuthenticationTypeBasic, HTTPAuthenticationTypeClientCertificate, HTTPAuthenticationTypeDigest, HTTPAuthenticationTypeWindows}
360}
361
362// ImpalaAuthenticationType enumerates the values for impala authentication type.
363type ImpalaAuthenticationType string
364
365const (
366	// ImpalaAuthenticationTypeAnonymous ...
367	ImpalaAuthenticationTypeAnonymous ImpalaAuthenticationType = "Anonymous"
368	// ImpalaAuthenticationTypeSASLUsername ...
369	ImpalaAuthenticationTypeSASLUsername ImpalaAuthenticationType = "SASLUsername"
370	// ImpalaAuthenticationTypeUsernameAndPassword ...
371	ImpalaAuthenticationTypeUsernameAndPassword ImpalaAuthenticationType = "UsernameAndPassword"
372)
373
374// PossibleImpalaAuthenticationTypeValues returns an array of possible values for the ImpalaAuthenticationType const type.
375func PossibleImpalaAuthenticationTypeValues() []ImpalaAuthenticationType {
376	return []ImpalaAuthenticationType{ImpalaAuthenticationTypeAnonymous, ImpalaAuthenticationTypeSASLUsername, ImpalaAuthenticationTypeUsernameAndPassword}
377}
378
379// IntegrationRuntimeAuthKeyName enumerates the values for integration runtime auth key name.
380type IntegrationRuntimeAuthKeyName string
381
382const (
383	// AuthKey1 ...
384	AuthKey1 IntegrationRuntimeAuthKeyName = "authKey1"
385	// AuthKey2 ...
386	AuthKey2 IntegrationRuntimeAuthKeyName = "authKey2"
387)
388
389// PossibleIntegrationRuntimeAuthKeyNameValues returns an array of possible values for the IntegrationRuntimeAuthKeyName const type.
390func PossibleIntegrationRuntimeAuthKeyNameValues() []IntegrationRuntimeAuthKeyName {
391	return []IntegrationRuntimeAuthKeyName{AuthKey1, AuthKey2}
392}
393
394// IntegrationRuntimeAutoUpdate enumerates the values for integration runtime auto update.
395type IntegrationRuntimeAutoUpdate string
396
397const (
398	// Off ...
399	Off IntegrationRuntimeAutoUpdate = "Off"
400	// On ...
401	On IntegrationRuntimeAutoUpdate = "On"
402)
403
404// PossibleIntegrationRuntimeAutoUpdateValues returns an array of possible values for the IntegrationRuntimeAutoUpdate const type.
405func PossibleIntegrationRuntimeAutoUpdateValues() []IntegrationRuntimeAutoUpdate {
406	return []IntegrationRuntimeAutoUpdate{Off, On}
407}
408
409// IntegrationRuntimeEdition enumerates the values for integration runtime edition.
410type IntegrationRuntimeEdition string
411
412const (
413	// Enterprise ...
414	Enterprise IntegrationRuntimeEdition = "Enterprise"
415	// Standard ...
416	Standard IntegrationRuntimeEdition = "Standard"
417)
418
419// PossibleIntegrationRuntimeEditionValues returns an array of possible values for the IntegrationRuntimeEdition const type.
420func PossibleIntegrationRuntimeEditionValues() []IntegrationRuntimeEdition {
421	return []IntegrationRuntimeEdition{Enterprise, Standard}
422}
423
424// IntegrationRuntimeInternalChannelEncryptionMode enumerates the values for integration runtime internal
425// channel encryption mode.
426type IntegrationRuntimeInternalChannelEncryptionMode string
427
428const (
429	// NotEncrypted ...
430	NotEncrypted IntegrationRuntimeInternalChannelEncryptionMode = "NotEncrypted"
431	// NotSet ...
432	NotSet IntegrationRuntimeInternalChannelEncryptionMode = "NotSet"
433	// SslEncrypted ...
434	SslEncrypted IntegrationRuntimeInternalChannelEncryptionMode = "SslEncrypted"
435)
436
437// PossibleIntegrationRuntimeInternalChannelEncryptionModeValues returns an array of possible values for the IntegrationRuntimeInternalChannelEncryptionMode const type.
438func PossibleIntegrationRuntimeInternalChannelEncryptionModeValues() []IntegrationRuntimeInternalChannelEncryptionMode {
439	return []IntegrationRuntimeInternalChannelEncryptionMode{NotEncrypted, NotSet, SslEncrypted}
440}
441
442// IntegrationRuntimeLicenseType enumerates the values for integration runtime license type.
443type IntegrationRuntimeLicenseType string
444
445const (
446	// BasePrice ...
447	BasePrice IntegrationRuntimeLicenseType = "BasePrice"
448	// LicenseIncluded ...
449	LicenseIncluded IntegrationRuntimeLicenseType = "LicenseIncluded"
450)
451
452// PossibleIntegrationRuntimeLicenseTypeValues returns an array of possible values for the IntegrationRuntimeLicenseType const type.
453func PossibleIntegrationRuntimeLicenseTypeValues() []IntegrationRuntimeLicenseType {
454	return []IntegrationRuntimeLicenseType{BasePrice, LicenseIncluded}
455}
456
457// IntegrationRuntimeSsisCatalogPricingTier enumerates the values for integration runtime ssis catalog pricing
458// tier.
459type IntegrationRuntimeSsisCatalogPricingTier string
460
461const (
462	// IntegrationRuntimeSsisCatalogPricingTierBasic ...
463	IntegrationRuntimeSsisCatalogPricingTierBasic IntegrationRuntimeSsisCatalogPricingTier = "Basic"
464	// IntegrationRuntimeSsisCatalogPricingTierPremium ...
465	IntegrationRuntimeSsisCatalogPricingTierPremium IntegrationRuntimeSsisCatalogPricingTier = "Premium"
466	// IntegrationRuntimeSsisCatalogPricingTierPremiumRS ...
467	IntegrationRuntimeSsisCatalogPricingTierPremiumRS IntegrationRuntimeSsisCatalogPricingTier = "PremiumRS"
468	// IntegrationRuntimeSsisCatalogPricingTierStandard ...
469	IntegrationRuntimeSsisCatalogPricingTierStandard IntegrationRuntimeSsisCatalogPricingTier = "Standard"
470)
471
472// PossibleIntegrationRuntimeSsisCatalogPricingTierValues returns an array of possible values for the IntegrationRuntimeSsisCatalogPricingTier const type.
473func PossibleIntegrationRuntimeSsisCatalogPricingTierValues() []IntegrationRuntimeSsisCatalogPricingTier {
474	return []IntegrationRuntimeSsisCatalogPricingTier{IntegrationRuntimeSsisCatalogPricingTierBasic, IntegrationRuntimeSsisCatalogPricingTierPremium, IntegrationRuntimeSsisCatalogPricingTierPremiumRS, IntegrationRuntimeSsisCatalogPricingTierStandard}
475}
476
477// IntegrationRuntimeState enumerates the values for integration runtime state.
478type IntegrationRuntimeState string
479
480const (
481	// Initial ...
482	Initial IntegrationRuntimeState = "Initial"
483	// Limited ...
484	Limited IntegrationRuntimeState = "Limited"
485	// NeedRegistration ...
486	NeedRegistration IntegrationRuntimeState = "NeedRegistration"
487	// Offline ...
488	Offline IntegrationRuntimeState = "Offline"
489	// Online ...
490	Online IntegrationRuntimeState = "Online"
491	// Started ...
492	Started IntegrationRuntimeState = "Started"
493	// Starting ...
494	Starting IntegrationRuntimeState = "Starting"
495	// Stopped ...
496	Stopped IntegrationRuntimeState = "Stopped"
497	// Stopping ...
498	Stopping IntegrationRuntimeState = "Stopping"
499)
500
501// PossibleIntegrationRuntimeStateValues returns an array of possible values for the IntegrationRuntimeState const type.
502func PossibleIntegrationRuntimeStateValues() []IntegrationRuntimeState {
503	return []IntegrationRuntimeState{Initial, Limited, NeedRegistration, Offline, Online, Started, Starting, Stopped, Stopping}
504}
505
506// IntegrationRuntimeType enumerates the values for integration runtime type.
507type IntegrationRuntimeType string
508
509const (
510	// Managed ...
511	Managed IntegrationRuntimeType = "Managed"
512	// SelfHosted ...
513	SelfHosted IntegrationRuntimeType = "SelfHosted"
514)
515
516// PossibleIntegrationRuntimeTypeValues returns an array of possible values for the IntegrationRuntimeType const type.
517func PossibleIntegrationRuntimeTypeValues() []IntegrationRuntimeType {
518	return []IntegrationRuntimeType{Managed, SelfHosted}
519}
520
521// IntegrationRuntimeUpdateResult enumerates the values for integration runtime update result.
522type IntegrationRuntimeUpdateResult string
523
524const (
525	// Fail ...
526	Fail IntegrationRuntimeUpdateResult = "Fail"
527	// Succeed ...
528	Succeed IntegrationRuntimeUpdateResult = "Succeed"
529)
530
531// PossibleIntegrationRuntimeUpdateResultValues returns an array of possible values for the IntegrationRuntimeUpdateResult const type.
532func PossibleIntegrationRuntimeUpdateResultValues() []IntegrationRuntimeUpdateResult {
533	return []IntegrationRuntimeUpdateResult{Fail, Succeed}
534}
535
536// JSONFormatFilePattern enumerates the values for json format file pattern.
537type JSONFormatFilePattern string
538
539const (
540	// ArrayOfObjects ...
541	ArrayOfObjects JSONFormatFilePattern = "arrayOfObjects"
542	// SetOfObjects ...
543	SetOfObjects JSONFormatFilePattern = "setOfObjects"
544)
545
546// PossibleJSONFormatFilePatternValues returns an array of possible values for the JSONFormatFilePattern const type.
547func PossibleJSONFormatFilePatternValues() []JSONFormatFilePattern {
548	return []JSONFormatFilePattern{ArrayOfObjects, SetOfObjects}
549}
550
551// ManagedIntegrationRuntimeNodeStatus enumerates the values for managed integration runtime node status.
552type ManagedIntegrationRuntimeNodeStatus string
553
554const (
555	// ManagedIntegrationRuntimeNodeStatusAvailable ...
556	ManagedIntegrationRuntimeNodeStatusAvailable ManagedIntegrationRuntimeNodeStatus = "Available"
557	// ManagedIntegrationRuntimeNodeStatusRecycling ...
558	ManagedIntegrationRuntimeNodeStatusRecycling ManagedIntegrationRuntimeNodeStatus = "Recycling"
559	// ManagedIntegrationRuntimeNodeStatusStarting ...
560	ManagedIntegrationRuntimeNodeStatusStarting ManagedIntegrationRuntimeNodeStatus = "Starting"
561	// ManagedIntegrationRuntimeNodeStatusUnavailable ...
562	ManagedIntegrationRuntimeNodeStatusUnavailable ManagedIntegrationRuntimeNodeStatus = "Unavailable"
563)
564
565// PossibleManagedIntegrationRuntimeNodeStatusValues returns an array of possible values for the ManagedIntegrationRuntimeNodeStatus const type.
566func PossibleManagedIntegrationRuntimeNodeStatusValues() []ManagedIntegrationRuntimeNodeStatus {
567	return []ManagedIntegrationRuntimeNodeStatus{ManagedIntegrationRuntimeNodeStatusAvailable, ManagedIntegrationRuntimeNodeStatusRecycling, ManagedIntegrationRuntimeNodeStatusStarting, ManagedIntegrationRuntimeNodeStatusUnavailable}
568}
569
570// MongoDbAuthenticationType enumerates the values for mongo db authentication type.
571type MongoDbAuthenticationType string
572
573const (
574	// MongoDbAuthenticationTypeAnonymous ...
575	MongoDbAuthenticationTypeAnonymous MongoDbAuthenticationType = "Anonymous"
576	// MongoDbAuthenticationTypeBasic ...
577	MongoDbAuthenticationTypeBasic MongoDbAuthenticationType = "Basic"
578)
579
580// PossibleMongoDbAuthenticationTypeValues returns an array of possible values for the MongoDbAuthenticationType const type.
581func PossibleMongoDbAuthenticationTypeValues() []MongoDbAuthenticationType {
582	return []MongoDbAuthenticationType{MongoDbAuthenticationTypeAnonymous, MongoDbAuthenticationTypeBasic}
583}
584
585// ODataAuthenticationType enumerates the values for o data authentication type.
586type ODataAuthenticationType string
587
588const (
589	// ODataAuthenticationTypeAnonymous ...
590	ODataAuthenticationTypeAnonymous ODataAuthenticationType = "Anonymous"
591	// ODataAuthenticationTypeBasic ...
592	ODataAuthenticationTypeBasic ODataAuthenticationType = "Basic"
593)
594
595// PossibleODataAuthenticationTypeValues returns an array of possible values for the ODataAuthenticationType const type.
596func PossibleODataAuthenticationTypeValues() []ODataAuthenticationType {
597	return []ODataAuthenticationType{ODataAuthenticationTypeAnonymous, ODataAuthenticationTypeBasic}
598}
599
600// ParameterType enumerates the values for parameter type.
601type ParameterType string
602
603const (
604	// ParameterTypeArray ...
605	ParameterTypeArray ParameterType = "Array"
606	// ParameterTypeBool ...
607	ParameterTypeBool ParameterType = "Bool"
608	// ParameterTypeFloat ...
609	ParameterTypeFloat ParameterType = "Float"
610	// ParameterTypeInt ...
611	ParameterTypeInt ParameterType = "Int"
612	// ParameterTypeObject ...
613	ParameterTypeObject ParameterType = "Object"
614	// ParameterTypeSecureString ...
615	ParameterTypeSecureString ParameterType = "SecureString"
616	// ParameterTypeString ...
617	ParameterTypeString ParameterType = "String"
618)
619
620// PossibleParameterTypeValues returns an array of possible values for the ParameterType const type.
621func PossibleParameterTypeValues() []ParameterType {
622	return []ParameterType{ParameterTypeArray, ParameterTypeBool, ParameterTypeFloat, ParameterTypeInt, ParameterTypeObject, ParameterTypeSecureString, ParameterTypeString}
623}
624
625// PhoenixAuthenticationType enumerates the values for phoenix authentication type.
626type PhoenixAuthenticationType string
627
628const (
629	// PhoenixAuthenticationTypeAnonymous ...
630	PhoenixAuthenticationTypeAnonymous PhoenixAuthenticationType = "Anonymous"
631	// PhoenixAuthenticationTypeUsernameAndPassword ...
632	PhoenixAuthenticationTypeUsernameAndPassword PhoenixAuthenticationType = "UsernameAndPassword"
633	// PhoenixAuthenticationTypeWindowsAzureHDInsightService ...
634	PhoenixAuthenticationTypeWindowsAzureHDInsightService PhoenixAuthenticationType = "WindowsAzureHDInsightService"
635)
636
637// PossiblePhoenixAuthenticationTypeValues returns an array of possible values for the PhoenixAuthenticationType const type.
638func PossiblePhoenixAuthenticationTypeValues() []PhoenixAuthenticationType {
639	return []PhoenixAuthenticationType{PhoenixAuthenticationTypeAnonymous, PhoenixAuthenticationTypeUsernameAndPassword, PhoenixAuthenticationTypeWindowsAzureHDInsightService}
640}
641
642// PipelineRunQueryFilterOperand enumerates the values for pipeline run query filter operand.
643type PipelineRunQueryFilterOperand string
644
645const (
646	// PipelineName ...
647	PipelineName PipelineRunQueryFilterOperand = "PipelineName"
648	// RunEnd ...
649	RunEnd PipelineRunQueryFilterOperand = "RunEnd"
650	// RunStart ...
651	RunStart PipelineRunQueryFilterOperand = "RunStart"
652	// Status ...
653	Status PipelineRunQueryFilterOperand = "Status"
654)
655
656// PossiblePipelineRunQueryFilterOperandValues returns an array of possible values for the PipelineRunQueryFilterOperand const type.
657func PossiblePipelineRunQueryFilterOperandValues() []PipelineRunQueryFilterOperand {
658	return []PipelineRunQueryFilterOperand{PipelineName, RunEnd, RunStart, Status}
659}
660
661// PipelineRunQueryFilterOperator enumerates the values for pipeline run query filter operator.
662type PipelineRunQueryFilterOperator string
663
664const (
665	// Equals ...
666	Equals PipelineRunQueryFilterOperator = "Equals"
667	// In ...
668	In PipelineRunQueryFilterOperator = "In"
669	// NotEquals ...
670	NotEquals PipelineRunQueryFilterOperator = "NotEquals"
671	// NotIn ...
672	NotIn PipelineRunQueryFilterOperator = "NotIn"
673)
674
675// PossiblePipelineRunQueryFilterOperatorValues returns an array of possible values for the PipelineRunQueryFilterOperator const type.
676func PossiblePipelineRunQueryFilterOperatorValues() []PipelineRunQueryFilterOperator {
677	return []PipelineRunQueryFilterOperator{Equals, In, NotEquals, NotIn}
678}
679
680// PipelineRunQueryOrder enumerates the values for pipeline run query order.
681type PipelineRunQueryOrder string
682
683const (
684	// ASC ...
685	ASC PipelineRunQueryOrder = "ASC"
686	// DESC ...
687	DESC PipelineRunQueryOrder = "DESC"
688)
689
690// PossiblePipelineRunQueryOrderValues returns an array of possible values for the PipelineRunQueryOrder const type.
691func PossiblePipelineRunQueryOrderValues() []PipelineRunQueryOrder {
692	return []PipelineRunQueryOrder{ASC, DESC}
693}
694
695// PipelineRunQueryOrderByField enumerates the values for pipeline run query order by field.
696type PipelineRunQueryOrderByField string
697
698const (
699	// PipelineRunQueryOrderByFieldRunEnd ...
700	PipelineRunQueryOrderByFieldRunEnd PipelineRunQueryOrderByField = "RunEnd"
701	// PipelineRunQueryOrderByFieldRunStart ...
702	PipelineRunQueryOrderByFieldRunStart PipelineRunQueryOrderByField = "RunStart"
703)
704
705// PossiblePipelineRunQueryOrderByFieldValues returns an array of possible values for the PipelineRunQueryOrderByField const type.
706func PossiblePipelineRunQueryOrderByFieldValues() []PipelineRunQueryOrderByField {
707	return []PipelineRunQueryOrderByField{PipelineRunQueryOrderByFieldRunEnd, PipelineRunQueryOrderByFieldRunStart}
708}
709
710// PolybaseSettingsRejectType enumerates the values for polybase settings reject type.
711type PolybaseSettingsRejectType string
712
713const (
714	// Percentage ...
715	Percentage PolybaseSettingsRejectType = "percentage"
716	// Value ...
717	Value PolybaseSettingsRejectType = "value"
718)
719
720// PossiblePolybaseSettingsRejectTypeValues returns an array of possible values for the PolybaseSettingsRejectType const type.
721func PossiblePolybaseSettingsRejectTypeValues() []PolybaseSettingsRejectType {
722	return []PolybaseSettingsRejectType{Percentage, Value}
723}
724
725// PrestoAuthenticationType enumerates the values for presto authentication type.
726type PrestoAuthenticationType string
727
728const (
729	// PrestoAuthenticationTypeAnonymous ...
730	PrestoAuthenticationTypeAnonymous PrestoAuthenticationType = "Anonymous"
731	// PrestoAuthenticationTypeLDAP ...
732	PrestoAuthenticationTypeLDAP PrestoAuthenticationType = "LDAP"
733)
734
735// PossiblePrestoAuthenticationTypeValues returns an array of possible values for the PrestoAuthenticationType const type.
736func PossiblePrestoAuthenticationTypeValues() []PrestoAuthenticationType {
737	return []PrestoAuthenticationType{PrestoAuthenticationTypeAnonymous, PrestoAuthenticationTypeLDAP}
738}
739
740// RecurrenceFrequency enumerates the values for recurrence frequency.
741type RecurrenceFrequency string
742
743const (
744	// Day ...
745	Day RecurrenceFrequency = "Day"
746	// Hour ...
747	Hour RecurrenceFrequency = "Hour"
748	// Minute ...
749	Minute RecurrenceFrequency = "Minute"
750	// Month ...
751	Month RecurrenceFrequency = "Month"
752	// NotSpecified ...
753	NotSpecified RecurrenceFrequency = "NotSpecified"
754	// Week ...
755	Week RecurrenceFrequency = "Week"
756	// Year ...
757	Year RecurrenceFrequency = "Year"
758)
759
760// PossibleRecurrenceFrequencyValues returns an array of possible values for the RecurrenceFrequency const type.
761func PossibleRecurrenceFrequencyValues() []RecurrenceFrequency {
762	return []RecurrenceFrequency{Day, Hour, Minute, Month, NotSpecified, Week, Year}
763}
764
765// SalesforceSinkWriteBehavior enumerates the values for salesforce sink write behavior.
766type SalesforceSinkWriteBehavior string
767
768const (
769	// Insert ...
770	Insert SalesforceSinkWriteBehavior = "Insert"
771	// Upsert ...
772	Upsert SalesforceSinkWriteBehavior = "Upsert"
773)
774
775// PossibleSalesforceSinkWriteBehaviorValues returns an array of possible values for the SalesforceSinkWriteBehavior const type.
776func PossibleSalesforceSinkWriteBehaviorValues() []SalesforceSinkWriteBehavior {
777	return []SalesforceSinkWriteBehavior{Insert, Upsert}
778}
779
780// SalesforceSourceReadBehavior enumerates the values for salesforce source read behavior.
781type SalesforceSourceReadBehavior string
782
783const (
784	// Query ...
785	Query SalesforceSourceReadBehavior = "Query"
786	// QueryAll ...
787	QueryAll SalesforceSourceReadBehavior = "QueryAll"
788)
789
790// PossibleSalesforceSourceReadBehaviorValues returns an array of possible values for the SalesforceSourceReadBehavior const type.
791func PossibleSalesforceSourceReadBehaviorValues() []SalesforceSourceReadBehavior {
792	return []SalesforceSourceReadBehavior{Query, QueryAll}
793}
794
795// SapCloudForCustomerSinkWriteBehavior enumerates the values for sap cloud for customer sink write behavior.
796type SapCloudForCustomerSinkWriteBehavior string
797
798const (
799	// SapCloudForCustomerSinkWriteBehaviorInsert ...
800	SapCloudForCustomerSinkWriteBehaviorInsert SapCloudForCustomerSinkWriteBehavior = "Insert"
801	// SapCloudForCustomerSinkWriteBehaviorUpdate ...
802	SapCloudForCustomerSinkWriteBehaviorUpdate SapCloudForCustomerSinkWriteBehavior = "Update"
803)
804
805// PossibleSapCloudForCustomerSinkWriteBehaviorValues returns an array of possible values for the SapCloudForCustomerSinkWriteBehavior const type.
806func PossibleSapCloudForCustomerSinkWriteBehaviorValues() []SapCloudForCustomerSinkWriteBehavior {
807	return []SapCloudForCustomerSinkWriteBehavior{SapCloudForCustomerSinkWriteBehaviorInsert, SapCloudForCustomerSinkWriteBehaviorUpdate}
808}
809
810// SapHanaAuthenticationType enumerates the values for sap hana authentication type.
811type SapHanaAuthenticationType string
812
813const (
814	// SapHanaAuthenticationTypeBasic ...
815	SapHanaAuthenticationTypeBasic SapHanaAuthenticationType = "Basic"
816	// SapHanaAuthenticationTypeWindows ...
817	SapHanaAuthenticationTypeWindows SapHanaAuthenticationType = "Windows"
818)
819
820// PossibleSapHanaAuthenticationTypeValues returns an array of possible values for the SapHanaAuthenticationType const type.
821func PossibleSapHanaAuthenticationTypeValues() []SapHanaAuthenticationType {
822	return []SapHanaAuthenticationType{SapHanaAuthenticationTypeBasic, SapHanaAuthenticationTypeWindows}
823}
824
825// SelfHostedIntegrationRuntimeNodeStatus enumerates the values for self hosted integration runtime node
826// status.
827type SelfHostedIntegrationRuntimeNodeStatus string
828
829const (
830	// SelfHostedIntegrationRuntimeNodeStatusInitializeFailed ...
831	SelfHostedIntegrationRuntimeNodeStatusInitializeFailed SelfHostedIntegrationRuntimeNodeStatus = "InitializeFailed"
832	// SelfHostedIntegrationRuntimeNodeStatusInitializing ...
833	SelfHostedIntegrationRuntimeNodeStatusInitializing SelfHostedIntegrationRuntimeNodeStatus = "Initializing"
834	// SelfHostedIntegrationRuntimeNodeStatusLimited ...
835	SelfHostedIntegrationRuntimeNodeStatusLimited SelfHostedIntegrationRuntimeNodeStatus = "Limited"
836	// SelfHostedIntegrationRuntimeNodeStatusNeedRegistration ...
837	SelfHostedIntegrationRuntimeNodeStatusNeedRegistration SelfHostedIntegrationRuntimeNodeStatus = "NeedRegistration"
838	// SelfHostedIntegrationRuntimeNodeStatusOffline ...
839	SelfHostedIntegrationRuntimeNodeStatusOffline SelfHostedIntegrationRuntimeNodeStatus = "Offline"
840	// SelfHostedIntegrationRuntimeNodeStatusOnline ...
841	SelfHostedIntegrationRuntimeNodeStatusOnline SelfHostedIntegrationRuntimeNodeStatus = "Online"
842	// SelfHostedIntegrationRuntimeNodeStatusUpgrading ...
843	SelfHostedIntegrationRuntimeNodeStatusUpgrading SelfHostedIntegrationRuntimeNodeStatus = "Upgrading"
844)
845
846// PossibleSelfHostedIntegrationRuntimeNodeStatusValues returns an array of possible values for the SelfHostedIntegrationRuntimeNodeStatus const type.
847func PossibleSelfHostedIntegrationRuntimeNodeStatusValues() []SelfHostedIntegrationRuntimeNodeStatus {
848	return []SelfHostedIntegrationRuntimeNodeStatus{SelfHostedIntegrationRuntimeNodeStatusInitializeFailed, SelfHostedIntegrationRuntimeNodeStatusInitializing, SelfHostedIntegrationRuntimeNodeStatusLimited, SelfHostedIntegrationRuntimeNodeStatusNeedRegistration, SelfHostedIntegrationRuntimeNodeStatusOffline, SelfHostedIntegrationRuntimeNodeStatusOnline, SelfHostedIntegrationRuntimeNodeStatusUpgrading}
849}
850
851// ServiceNowAuthenticationType enumerates the values for service now authentication type.
852type ServiceNowAuthenticationType string
853
854const (
855	// ServiceNowAuthenticationTypeBasic ...
856	ServiceNowAuthenticationTypeBasic ServiceNowAuthenticationType = "Basic"
857	// ServiceNowAuthenticationTypeOAuth2 ...
858	ServiceNowAuthenticationTypeOAuth2 ServiceNowAuthenticationType = "OAuth2"
859)
860
861// PossibleServiceNowAuthenticationTypeValues returns an array of possible values for the ServiceNowAuthenticationType const type.
862func PossibleServiceNowAuthenticationTypeValues() []ServiceNowAuthenticationType {
863	return []ServiceNowAuthenticationType{ServiceNowAuthenticationTypeBasic, ServiceNowAuthenticationTypeOAuth2}
864}
865
866// SftpAuthenticationType enumerates the values for sftp authentication type.
867type SftpAuthenticationType string
868
869const (
870	// SftpAuthenticationTypeBasic ...
871	SftpAuthenticationTypeBasic SftpAuthenticationType = "Basic"
872	// SftpAuthenticationTypeSSHPublicKey ...
873	SftpAuthenticationTypeSSHPublicKey SftpAuthenticationType = "SshPublicKey"
874)
875
876// PossibleSftpAuthenticationTypeValues returns an array of possible values for the SftpAuthenticationType const type.
877func PossibleSftpAuthenticationTypeValues() []SftpAuthenticationType {
878	return []SftpAuthenticationType{SftpAuthenticationTypeBasic, SftpAuthenticationTypeSSHPublicKey}
879}
880
881// SparkAuthenticationType enumerates the values for spark authentication type.
882type SparkAuthenticationType string
883
884const (
885	// SparkAuthenticationTypeAnonymous ...
886	SparkAuthenticationTypeAnonymous SparkAuthenticationType = "Anonymous"
887	// SparkAuthenticationTypeUsername ...
888	SparkAuthenticationTypeUsername SparkAuthenticationType = "Username"
889	// SparkAuthenticationTypeUsernameAndPassword ...
890	SparkAuthenticationTypeUsernameAndPassword SparkAuthenticationType = "UsernameAndPassword"
891	// SparkAuthenticationTypeWindowsAzureHDInsightService ...
892	SparkAuthenticationTypeWindowsAzureHDInsightService SparkAuthenticationType = "WindowsAzureHDInsightService"
893)
894
895// PossibleSparkAuthenticationTypeValues returns an array of possible values for the SparkAuthenticationType const type.
896func PossibleSparkAuthenticationTypeValues() []SparkAuthenticationType {
897	return []SparkAuthenticationType{SparkAuthenticationTypeAnonymous, SparkAuthenticationTypeUsername, SparkAuthenticationTypeUsernameAndPassword, SparkAuthenticationTypeWindowsAzureHDInsightService}
898}
899
900// SparkServerType enumerates the values for spark server type.
901type SparkServerType string
902
903const (
904	// SharkServer ...
905	SharkServer SparkServerType = "SharkServer"
906	// SharkServer2 ...
907	SharkServer2 SparkServerType = "SharkServer2"
908	// SparkThriftServer ...
909	SparkThriftServer SparkServerType = "SparkThriftServer"
910)
911
912// PossibleSparkServerTypeValues returns an array of possible values for the SparkServerType const type.
913func PossibleSparkServerTypeValues() []SparkServerType {
914	return []SparkServerType{SharkServer, SharkServer2, SparkThriftServer}
915}
916
917// SparkThriftTransportProtocol enumerates the values for spark thrift transport protocol.
918type SparkThriftTransportProtocol string
919
920const (
921	// SparkThriftTransportProtocolBinary ...
922	SparkThriftTransportProtocolBinary SparkThriftTransportProtocol = "Binary"
923	// SparkThriftTransportProtocolHTTP ...
924	SparkThriftTransportProtocolHTTP SparkThriftTransportProtocol = "HTTP "
925	// SparkThriftTransportProtocolSASL ...
926	SparkThriftTransportProtocolSASL SparkThriftTransportProtocol = "SASL"
927)
928
929// PossibleSparkThriftTransportProtocolValues returns an array of possible values for the SparkThriftTransportProtocol const type.
930func PossibleSparkThriftTransportProtocolValues() []SparkThriftTransportProtocol {
931	return []SparkThriftTransportProtocol{SparkThriftTransportProtocolBinary, SparkThriftTransportProtocolHTTP, SparkThriftTransportProtocolSASL}
932}
933
934// SSISExecutionRuntime enumerates the values for ssis execution runtime.
935type SSISExecutionRuntime string
936
937const (
938	// X64 ...
939	X64 SSISExecutionRuntime = "x64"
940	// X86 ...
941	X86 SSISExecutionRuntime = "x86"
942)
943
944// PossibleSSISExecutionRuntimeValues returns an array of possible values for the SSISExecutionRuntime const type.
945func PossibleSSISExecutionRuntimeValues() []SSISExecutionRuntime {
946	return []SSISExecutionRuntime{X64, X86}
947}
948
949// StoredProcedureParameterType enumerates the values for stored procedure parameter type.
950type StoredProcedureParameterType string
951
952const (
953	// Boolean ...
954	Boolean StoredProcedureParameterType = "Boolean"
955	// Date ...
956	Date StoredProcedureParameterType = "Date"
957	// Decimal ...
958	Decimal StoredProcedureParameterType = "Decimal"
959	// GUID ...
960	GUID StoredProcedureParameterType = "Guid"
961	// Int ...
962	Int StoredProcedureParameterType = "Int"
963	// String ...
964	String StoredProcedureParameterType = "String"
965)
966
967// PossibleStoredProcedureParameterTypeValues returns an array of possible values for the StoredProcedureParameterType const type.
968func PossibleStoredProcedureParameterTypeValues() []StoredProcedureParameterType {
969	return []StoredProcedureParameterType{Boolean, Date, Decimal, GUID, Int, String}
970}
971
972// SybaseAuthenticationType enumerates the values for sybase authentication type.
973type SybaseAuthenticationType string
974
975const (
976	// SybaseAuthenticationTypeBasic ...
977	SybaseAuthenticationTypeBasic SybaseAuthenticationType = "Basic"
978	// SybaseAuthenticationTypeWindows ...
979	SybaseAuthenticationTypeWindows SybaseAuthenticationType = "Windows"
980)
981
982// PossibleSybaseAuthenticationTypeValues returns an array of possible values for the SybaseAuthenticationType const type.
983func PossibleSybaseAuthenticationTypeValues() []SybaseAuthenticationType {
984	return []SybaseAuthenticationType{SybaseAuthenticationTypeBasic, SybaseAuthenticationTypeWindows}
985}
986
987// TeradataAuthenticationType enumerates the values for teradata authentication type.
988type TeradataAuthenticationType string
989
990const (
991	// TeradataAuthenticationTypeBasic ...
992	TeradataAuthenticationTypeBasic TeradataAuthenticationType = "Basic"
993	// TeradataAuthenticationTypeWindows ...
994	TeradataAuthenticationTypeWindows TeradataAuthenticationType = "Windows"
995)
996
997// PossibleTeradataAuthenticationTypeValues returns an array of possible values for the TeradataAuthenticationType const type.
998func PossibleTeradataAuthenticationTypeValues() []TeradataAuthenticationType {
999	return []TeradataAuthenticationType{TeradataAuthenticationTypeBasic, TeradataAuthenticationTypeWindows}
1000}
1001
1002// TriggerRunStatus enumerates the values for trigger run status.
1003type TriggerRunStatus string
1004
1005const (
1006	// TriggerRunStatusFailed ...
1007	TriggerRunStatusFailed TriggerRunStatus = "Failed"
1008	// TriggerRunStatusInprogress ...
1009	TriggerRunStatusInprogress TriggerRunStatus = "Inprogress"
1010	// TriggerRunStatusSucceeded ...
1011	TriggerRunStatusSucceeded TriggerRunStatus = "Succeeded"
1012)
1013
1014// PossibleTriggerRunStatusValues returns an array of possible values for the TriggerRunStatus const type.
1015func PossibleTriggerRunStatusValues() []TriggerRunStatus {
1016	return []TriggerRunStatus{TriggerRunStatusFailed, TriggerRunStatusInprogress, TriggerRunStatusSucceeded}
1017}
1018
1019// TriggerRuntimeState enumerates the values for trigger runtime state.
1020type TriggerRuntimeState string
1021
1022const (
1023	// TriggerRuntimeStateDisabled ...
1024	TriggerRuntimeStateDisabled TriggerRuntimeState = "Disabled"
1025	// TriggerRuntimeStateStarted ...
1026	TriggerRuntimeStateStarted TriggerRuntimeState = "Started"
1027	// TriggerRuntimeStateStopped ...
1028	TriggerRuntimeStateStopped TriggerRuntimeState = "Stopped"
1029)
1030
1031// PossibleTriggerRuntimeStateValues returns an array of possible values for the TriggerRuntimeState const type.
1032func PossibleTriggerRuntimeStateValues() []TriggerRuntimeState {
1033	return []TriggerRuntimeState{TriggerRuntimeStateDisabled, TriggerRuntimeStateStarted, TriggerRuntimeStateStopped}
1034}
1035
1036// TumblingWindowFrequency enumerates the values for tumbling window frequency.
1037type TumblingWindowFrequency string
1038
1039const (
1040	// TumblingWindowFrequencyHour ...
1041	TumblingWindowFrequencyHour TumblingWindowFrequency = "Hour"
1042	// TumblingWindowFrequencyMinute ...
1043	TumblingWindowFrequencyMinute TumblingWindowFrequency = "Minute"
1044)
1045
1046// PossibleTumblingWindowFrequencyValues returns an array of possible values for the TumblingWindowFrequency const type.
1047func PossibleTumblingWindowFrequencyValues() []TumblingWindowFrequency {
1048	return []TumblingWindowFrequency{TumblingWindowFrequencyHour, TumblingWindowFrequencyMinute}
1049}
1050
1051// Type enumerates the values for type.
1052type Type string
1053
1054const (
1055	// TypeAzureKeyVaultSecret ...
1056	TypeAzureKeyVaultSecret Type = "AzureKeyVaultSecret"
1057	// TypeSecretBase ...
1058	TypeSecretBase Type = "SecretBase"
1059	// TypeSecureString ...
1060	TypeSecureString Type = "SecureString"
1061)
1062
1063// PossibleTypeValues returns an array of possible values for the Type const type.
1064func PossibleTypeValues() []Type {
1065	return []Type{TypeAzureKeyVaultSecret, TypeSecretBase, TypeSecureString}
1066}
1067
1068// TypeBasicActivity enumerates the values for type basic activity.
1069type TypeBasicActivity string
1070
1071const (
1072	// TypeActivity ...
1073	TypeActivity TypeBasicActivity = "Activity"
1074	// TypeAzureMLBatchExecution ...
1075	TypeAzureMLBatchExecution TypeBasicActivity = "AzureMLBatchExecution"
1076	// TypeAzureMLUpdateResource ...
1077	TypeAzureMLUpdateResource TypeBasicActivity = "AzureMLUpdateResource"
1078	// TypeContainer ...
1079	TypeContainer TypeBasicActivity = "Container"
1080	// TypeCopy ...
1081	TypeCopy TypeBasicActivity = "Copy"
1082	// TypeCustom ...
1083	TypeCustom TypeBasicActivity = "Custom"
1084	// TypeDatabricksNotebook ...
1085	TypeDatabricksNotebook TypeBasicActivity = "DatabricksNotebook"
1086	// TypeDataLakeAnalyticsUSQL ...
1087	TypeDataLakeAnalyticsUSQL TypeBasicActivity = "DataLakeAnalyticsU-SQL"
1088	// TypeExecutePipeline ...
1089	TypeExecutePipeline TypeBasicActivity = "ExecutePipeline"
1090	// TypeExecuteSSISPackage ...
1091	TypeExecuteSSISPackage TypeBasicActivity = "ExecuteSSISPackage"
1092	// TypeExecution ...
1093	TypeExecution TypeBasicActivity = "Execution"
1094	// TypeFilter ...
1095	TypeFilter TypeBasicActivity = "Filter"
1096	// TypeForEach ...
1097	TypeForEach TypeBasicActivity = "ForEach"
1098	// TypeGetMetadata ...
1099	TypeGetMetadata TypeBasicActivity = "GetMetadata"
1100	// TypeHDInsightHive ...
1101	TypeHDInsightHive TypeBasicActivity = "HDInsightHive"
1102	// TypeHDInsightMapReduce ...
1103	TypeHDInsightMapReduce TypeBasicActivity = "HDInsightMapReduce"
1104	// TypeHDInsightPig ...
1105	TypeHDInsightPig TypeBasicActivity = "HDInsightPig"
1106	// TypeHDInsightSpark ...
1107	TypeHDInsightSpark TypeBasicActivity = "HDInsightSpark"
1108	// TypeHDInsightStreaming ...
1109	TypeHDInsightStreaming TypeBasicActivity = "HDInsightStreaming"
1110	// TypeIfCondition ...
1111	TypeIfCondition TypeBasicActivity = "IfCondition"
1112	// TypeLookup ...
1113	TypeLookup TypeBasicActivity = "Lookup"
1114	// TypeSQLServerStoredProcedure ...
1115	TypeSQLServerStoredProcedure TypeBasicActivity = "SqlServerStoredProcedure"
1116	// TypeUntil ...
1117	TypeUntil TypeBasicActivity = "Until"
1118	// TypeWait ...
1119	TypeWait TypeBasicActivity = "Wait"
1120	// TypeWebActivity ...
1121	TypeWebActivity TypeBasicActivity = "WebActivity"
1122)
1123
1124// PossibleTypeBasicActivityValues returns an array of possible values for the TypeBasicActivity const type.
1125func PossibleTypeBasicActivityValues() []TypeBasicActivity {
1126	return []TypeBasicActivity{TypeActivity, TypeAzureMLBatchExecution, TypeAzureMLUpdateResource, TypeContainer, TypeCopy, TypeCustom, TypeDatabricksNotebook, TypeDataLakeAnalyticsUSQL, TypeExecutePipeline, TypeExecuteSSISPackage, TypeExecution, TypeFilter, TypeForEach, TypeGetMetadata, TypeHDInsightHive, TypeHDInsightMapReduce, TypeHDInsightPig, TypeHDInsightSpark, TypeHDInsightStreaming, TypeIfCondition, TypeLookup, TypeSQLServerStoredProcedure, TypeUntil, TypeWait, TypeWebActivity}
1127}
1128
1129// TypeBasicCopySink enumerates the values for type basic copy sink.
1130type TypeBasicCopySink string
1131
1132const (
1133	// TypeAzureDataLakeStoreSink ...
1134	TypeAzureDataLakeStoreSink TypeBasicCopySink = "AzureDataLakeStoreSink"
1135	// TypeAzureQueueSink ...
1136	TypeAzureQueueSink TypeBasicCopySink = "AzureQueueSink"
1137	// TypeAzureSearchIndexSink ...
1138	TypeAzureSearchIndexSink TypeBasicCopySink = "AzureSearchIndexSink"
1139	// TypeAzureTableSink ...
1140	TypeAzureTableSink TypeBasicCopySink = "AzureTableSink"
1141	// TypeBlobSink ...
1142	TypeBlobSink TypeBasicCopySink = "BlobSink"
1143	// TypeCopySink ...
1144	TypeCopySink TypeBasicCopySink = "CopySink"
1145	// TypeDocumentDbCollectionSink ...
1146	TypeDocumentDbCollectionSink TypeBasicCopySink = "DocumentDbCollectionSink"
1147	// TypeDynamicsSink ...
1148	TypeDynamicsSink TypeBasicCopySink = "DynamicsSink"
1149	// TypeFileSystemSink ...
1150	TypeFileSystemSink TypeBasicCopySink = "FileSystemSink"
1151	// TypeOdbcSink ...
1152	TypeOdbcSink TypeBasicCopySink = "OdbcSink"
1153	// TypeOracleSink ...
1154	TypeOracleSink TypeBasicCopySink = "OracleSink"
1155	// TypeSalesforceSink ...
1156	TypeSalesforceSink TypeBasicCopySink = "SalesforceSink"
1157	// TypeSapCloudForCustomerSink ...
1158	TypeSapCloudForCustomerSink TypeBasicCopySink = "SapCloudForCustomerSink"
1159	// TypeSQLDWSink ...
1160	TypeSQLDWSink TypeBasicCopySink = "SqlDWSink"
1161	// TypeSQLSink ...
1162	TypeSQLSink TypeBasicCopySink = "SqlSink"
1163)
1164
1165// PossibleTypeBasicCopySinkValues returns an array of possible values for the TypeBasicCopySink const type.
1166func PossibleTypeBasicCopySinkValues() []TypeBasicCopySink {
1167	return []TypeBasicCopySink{TypeAzureDataLakeStoreSink, TypeAzureQueueSink, TypeAzureSearchIndexSink, TypeAzureTableSink, TypeBlobSink, TypeCopySink, TypeDocumentDbCollectionSink, TypeDynamicsSink, TypeFileSystemSink, TypeOdbcSink, TypeOracleSink, TypeSalesforceSink, TypeSapCloudForCustomerSink, TypeSQLDWSink, TypeSQLSink}
1168}
1169
1170// TypeBasicCopySource enumerates the values for type basic copy source.
1171type TypeBasicCopySource string
1172
1173const (
1174	// TypeAmazonMWSSource ...
1175	TypeAmazonMWSSource TypeBasicCopySource = "AmazonMWSSource"
1176	// TypeAmazonRedshiftSource ...
1177	TypeAmazonRedshiftSource TypeBasicCopySource = "AmazonRedshiftSource"
1178	// TypeAzureDataLakeStoreSource ...
1179	TypeAzureDataLakeStoreSource TypeBasicCopySource = "AzureDataLakeStoreSource"
1180	// TypeAzureMySQLSource ...
1181	TypeAzureMySQLSource TypeBasicCopySource = "AzureMySqlSource"
1182	// TypeAzurePostgreSQLSource ...
1183	TypeAzurePostgreSQLSource TypeBasicCopySource = "AzurePostgreSqlSource"
1184	// TypeAzureTableSource ...
1185	TypeAzureTableSource TypeBasicCopySource = "AzureTableSource"
1186	// TypeBlobSource ...
1187	TypeBlobSource TypeBasicCopySource = "BlobSource"
1188	// TypeCassandraSource ...
1189	TypeCassandraSource TypeBasicCopySource = "CassandraSource"
1190	// TypeConcurSource ...
1191	TypeConcurSource TypeBasicCopySource = "ConcurSource"
1192	// TypeCopySource ...
1193	TypeCopySource TypeBasicCopySource = "CopySource"
1194	// TypeCouchbaseSource ...
1195	TypeCouchbaseSource TypeBasicCopySource = "CouchbaseSource"
1196	// TypeDocumentDbCollectionSource ...
1197	TypeDocumentDbCollectionSource TypeBasicCopySource = "DocumentDbCollectionSource"
1198	// TypeDrillSource ...
1199	TypeDrillSource TypeBasicCopySource = "DrillSource"
1200	// TypeDynamicsSource ...
1201	TypeDynamicsSource TypeBasicCopySource = "DynamicsSource"
1202	// TypeEloquaSource ...
1203	TypeEloquaSource TypeBasicCopySource = "EloquaSource"
1204	// TypeFileSystemSource ...
1205	TypeFileSystemSource TypeBasicCopySource = "FileSystemSource"
1206	// TypeGoogleBigQuerySource ...
1207	TypeGoogleBigQuerySource TypeBasicCopySource = "GoogleBigQuerySource"
1208	// TypeGreenplumSource ...
1209	TypeGreenplumSource TypeBasicCopySource = "GreenplumSource"
1210	// TypeHBaseSource ...
1211	TypeHBaseSource TypeBasicCopySource = "HBaseSource"
1212	// TypeHdfsSource ...
1213	TypeHdfsSource TypeBasicCopySource = "HdfsSource"
1214	// TypeHiveSource ...
1215	TypeHiveSource TypeBasicCopySource = "HiveSource"
1216	// TypeHTTPSource ...
1217	TypeHTTPSource TypeBasicCopySource = "HttpSource"
1218	// TypeHubspotSource ...
1219	TypeHubspotSource TypeBasicCopySource = "HubspotSource"
1220	// TypeImpalaSource ...
1221	TypeImpalaSource TypeBasicCopySource = "ImpalaSource"
1222	// TypeJiraSource ...
1223	TypeJiraSource TypeBasicCopySource = "JiraSource"
1224	// TypeMagentoSource ...
1225	TypeMagentoSource TypeBasicCopySource = "MagentoSource"
1226	// TypeMariaDBSource ...
1227	TypeMariaDBSource TypeBasicCopySource = "MariaDBSource"
1228	// TypeMarketoSource ...
1229	TypeMarketoSource TypeBasicCopySource = "MarketoSource"
1230	// TypeMongoDbSource ...
1231	TypeMongoDbSource TypeBasicCopySource = "MongoDbSource"
1232	// TypeNetezzaSource ...
1233	TypeNetezzaSource TypeBasicCopySource = "NetezzaSource"
1234	// TypeOracleSource ...
1235	TypeOracleSource TypeBasicCopySource = "OracleSource"
1236	// TypePaypalSource ...
1237	TypePaypalSource TypeBasicCopySource = "PaypalSource"
1238	// TypePhoenixSource ...
1239	TypePhoenixSource TypeBasicCopySource = "PhoenixSource"
1240	// TypePrestoSource ...
1241	TypePrestoSource TypeBasicCopySource = "PrestoSource"
1242	// TypeQuickBooksSource ...
1243	TypeQuickBooksSource TypeBasicCopySource = "QuickBooksSource"
1244	// TypeRelationalSource ...
1245	TypeRelationalSource TypeBasicCopySource = "RelationalSource"
1246	// TypeResponsysSource ...
1247	TypeResponsysSource TypeBasicCopySource = "ResponsysSource"
1248	// TypeSalesforceMarketingCloudSource ...
1249	TypeSalesforceMarketingCloudSource TypeBasicCopySource = "SalesforceMarketingCloudSource"
1250	// TypeSalesforceSource ...
1251	TypeSalesforceSource TypeBasicCopySource = "SalesforceSource"
1252	// TypeSapCloudForCustomerSource ...
1253	TypeSapCloudForCustomerSource TypeBasicCopySource = "SapCloudForCustomerSource"
1254	// TypeSapEccSource ...
1255	TypeSapEccSource TypeBasicCopySource = "SapEccSource"
1256	// TypeServiceNowSource ...
1257	TypeServiceNowSource TypeBasicCopySource = "ServiceNowSource"
1258	// TypeShopifySource ...
1259	TypeShopifySource TypeBasicCopySource = "ShopifySource"
1260	// TypeSparkSource ...
1261	TypeSparkSource TypeBasicCopySource = "SparkSource"
1262	// TypeSQLDWSource ...
1263	TypeSQLDWSource TypeBasicCopySource = "SqlDWSource"
1264	// TypeSQLSource ...
1265	TypeSQLSource TypeBasicCopySource = "SqlSource"
1266	// TypeSquareSource ...
1267	TypeSquareSource TypeBasicCopySource = "SquareSource"
1268	// TypeVerticaSource ...
1269	TypeVerticaSource TypeBasicCopySource = "VerticaSource"
1270	// TypeWebSource ...
1271	TypeWebSource TypeBasicCopySource = "WebSource"
1272	// TypeXeroSource ...
1273	TypeXeroSource TypeBasicCopySource = "XeroSource"
1274	// TypeZohoSource ...
1275	TypeZohoSource TypeBasicCopySource = "ZohoSource"
1276)
1277
1278// PossibleTypeBasicCopySourceValues returns an array of possible values for the TypeBasicCopySource const type.
1279func PossibleTypeBasicCopySourceValues() []TypeBasicCopySource {
1280	return []TypeBasicCopySource{TypeAmazonMWSSource, TypeAmazonRedshiftSource, TypeAzureDataLakeStoreSource, TypeAzureMySQLSource, TypeAzurePostgreSQLSource, TypeAzureTableSource, TypeBlobSource, TypeCassandraSource, TypeConcurSource, TypeCopySource, TypeCouchbaseSource, TypeDocumentDbCollectionSource, TypeDrillSource, TypeDynamicsSource, TypeEloquaSource, TypeFileSystemSource, TypeGoogleBigQuerySource, TypeGreenplumSource, TypeHBaseSource, TypeHdfsSource, TypeHiveSource, TypeHTTPSource, TypeHubspotSource, TypeImpalaSource, TypeJiraSource, TypeMagentoSource, TypeMariaDBSource, TypeMarketoSource, TypeMongoDbSource, TypeNetezzaSource, TypeOracleSource, TypePaypalSource, TypePhoenixSource, TypePrestoSource, TypeQuickBooksSource, TypeRelationalSource, TypeResponsysSource, TypeSalesforceMarketingCloudSource, TypeSalesforceSource, TypeSapCloudForCustomerSource, TypeSapEccSource, TypeServiceNowSource, TypeShopifySource, TypeSparkSource, TypeSQLDWSource, TypeSQLSource, TypeSquareSource, TypeVerticaSource, TypeWebSource, TypeXeroSource, TypeZohoSource}
1281}
1282
1283// TypeBasicCopyTranslator enumerates the values for type basic copy translator.
1284type TypeBasicCopyTranslator string
1285
1286const (
1287	// TypeCopyTranslator ...
1288	TypeCopyTranslator TypeBasicCopyTranslator = "CopyTranslator"
1289	// TypeTabularTranslator ...
1290	TypeTabularTranslator TypeBasicCopyTranslator = "TabularTranslator"
1291)
1292
1293// PossibleTypeBasicCopyTranslatorValues returns an array of possible values for the TypeBasicCopyTranslator const type.
1294func PossibleTypeBasicCopyTranslatorValues() []TypeBasicCopyTranslator {
1295	return []TypeBasicCopyTranslator{TypeCopyTranslator, TypeTabularTranslator}
1296}
1297
1298// TypeBasicDataset enumerates the values for type basic dataset.
1299type TypeBasicDataset string
1300
1301const (
1302	// TypeAmazonMWSObject ...
1303	TypeAmazonMWSObject TypeBasicDataset = "AmazonMWSObject"
1304	// TypeAmazonS3Object ...
1305	TypeAmazonS3Object TypeBasicDataset = "AmazonS3Object"
1306	// TypeAzureBlob ...
1307	TypeAzureBlob TypeBasicDataset = "AzureBlob"
1308	// TypeAzureDataLakeStoreFile ...
1309	TypeAzureDataLakeStoreFile TypeBasicDataset = "AzureDataLakeStoreFile"
1310	// TypeAzureMySQLTable ...
1311	TypeAzureMySQLTable TypeBasicDataset = "AzureMySqlTable"
1312	// TypeAzurePostgreSQLTable ...
1313	TypeAzurePostgreSQLTable TypeBasicDataset = "AzurePostgreSqlTable"
1314	// TypeAzureSearchIndex ...
1315	TypeAzureSearchIndex TypeBasicDataset = "AzureSearchIndex"
1316	// TypeAzureSQLDWTable ...
1317	TypeAzureSQLDWTable TypeBasicDataset = "AzureSqlDWTable"
1318	// TypeAzureSQLTable ...
1319	TypeAzureSQLTable TypeBasicDataset = "AzureSqlTable"
1320	// TypeAzureTable ...
1321	TypeAzureTable TypeBasicDataset = "AzureTable"
1322	// TypeCassandraTable ...
1323	TypeCassandraTable TypeBasicDataset = "CassandraTable"
1324	// TypeConcurObject ...
1325	TypeConcurObject TypeBasicDataset = "ConcurObject"
1326	// TypeCouchbaseTable ...
1327	TypeCouchbaseTable TypeBasicDataset = "CouchbaseTable"
1328	// TypeCustomDataset ...
1329	TypeCustomDataset TypeBasicDataset = "CustomDataset"
1330	// TypeDataset ...
1331	TypeDataset TypeBasicDataset = "Dataset"
1332	// TypeDocumentDbCollection ...
1333	TypeDocumentDbCollection TypeBasicDataset = "DocumentDbCollection"
1334	// TypeDrillTable ...
1335	TypeDrillTable TypeBasicDataset = "DrillTable"
1336	// TypeDynamicsEntity ...
1337	TypeDynamicsEntity TypeBasicDataset = "DynamicsEntity"
1338	// TypeEloquaObject ...
1339	TypeEloquaObject TypeBasicDataset = "EloquaObject"
1340	// TypeFileShare ...
1341	TypeFileShare TypeBasicDataset = "FileShare"
1342	// TypeGoogleBigQueryObject ...
1343	TypeGoogleBigQueryObject TypeBasicDataset = "GoogleBigQueryObject"
1344	// TypeGreenplumTable ...
1345	TypeGreenplumTable TypeBasicDataset = "GreenplumTable"
1346	// TypeHBaseObject ...
1347	TypeHBaseObject TypeBasicDataset = "HBaseObject"
1348	// TypeHiveObject ...
1349	TypeHiveObject TypeBasicDataset = "HiveObject"
1350	// TypeHTTPFile ...
1351	TypeHTTPFile TypeBasicDataset = "HttpFile"
1352	// TypeHubspotObject ...
1353	TypeHubspotObject TypeBasicDataset = "HubspotObject"
1354	// TypeImpalaObject ...
1355	TypeImpalaObject TypeBasicDataset = "ImpalaObject"
1356	// TypeJiraObject ...
1357	TypeJiraObject TypeBasicDataset = "JiraObject"
1358	// TypeMagentoObject ...
1359	TypeMagentoObject TypeBasicDataset = "MagentoObject"
1360	// TypeMariaDBTable ...
1361	TypeMariaDBTable TypeBasicDataset = "MariaDBTable"
1362	// TypeMarketoObject ...
1363	TypeMarketoObject TypeBasicDataset = "MarketoObject"
1364	// TypeMongoDbCollection ...
1365	TypeMongoDbCollection TypeBasicDataset = "MongoDbCollection"
1366	// TypeNetezzaTable ...
1367	TypeNetezzaTable TypeBasicDataset = "NetezzaTable"
1368	// TypeODataResource ...
1369	TypeODataResource TypeBasicDataset = "ODataResource"
1370	// TypeOracleTable ...
1371	TypeOracleTable TypeBasicDataset = "OracleTable"
1372	// TypePaypalObject ...
1373	TypePaypalObject TypeBasicDataset = "PaypalObject"
1374	// TypePhoenixObject ...
1375	TypePhoenixObject TypeBasicDataset = "PhoenixObject"
1376	// TypePrestoObject ...
1377	TypePrestoObject TypeBasicDataset = "PrestoObject"
1378	// TypeQuickBooksObject ...
1379	TypeQuickBooksObject TypeBasicDataset = "QuickBooksObject"
1380	// TypeRelationalTable ...
1381	TypeRelationalTable TypeBasicDataset = "RelationalTable"
1382	// TypeResponsysObject ...
1383	TypeResponsysObject TypeBasicDataset = "ResponsysObject"
1384	// TypeSalesforceMarketingCloudObject ...
1385	TypeSalesforceMarketingCloudObject TypeBasicDataset = "SalesforceMarketingCloudObject"
1386	// TypeSalesforceObject ...
1387	TypeSalesforceObject TypeBasicDataset = "SalesforceObject"
1388	// TypeSapCloudForCustomerResource ...
1389	TypeSapCloudForCustomerResource TypeBasicDataset = "SapCloudForCustomerResource"
1390	// TypeSapEccResource ...
1391	TypeSapEccResource TypeBasicDataset = "SapEccResource"
1392	// TypeServiceNowObject ...
1393	TypeServiceNowObject TypeBasicDataset = "ServiceNowObject"
1394	// TypeShopifyObject ...
1395	TypeShopifyObject TypeBasicDataset = "ShopifyObject"
1396	// TypeSparkObject ...
1397	TypeSparkObject TypeBasicDataset = "SparkObject"
1398	// TypeSQLServerTable ...
1399	TypeSQLServerTable TypeBasicDataset = "SqlServerTable"
1400	// TypeSquareObject ...
1401	TypeSquareObject TypeBasicDataset = "SquareObject"
1402	// TypeVerticaTable ...
1403	TypeVerticaTable TypeBasicDataset = "VerticaTable"
1404	// TypeWebTable ...
1405	TypeWebTable TypeBasicDataset = "WebTable"
1406	// TypeXeroObject ...
1407	TypeXeroObject TypeBasicDataset = "XeroObject"
1408	// TypeZohoObject ...
1409	TypeZohoObject TypeBasicDataset = "ZohoObject"
1410)
1411
1412// PossibleTypeBasicDatasetValues returns an array of possible values for the TypeBasicDataset const type.
1413func PossibleTypeBasicDatasetValues() []TypeBasicDataset {
1414	return []TypeBasicDataset{TypeAmazonMWSObject, TypeAmazonS3Object, TypeAzureBlob, TypeAzureDataLakeStoreFile, TypeAzureMySQLTable, TypeAzurePostgreSQLTable, TypeAzureSearchIndex, TypeAzureSQLDWTable, TypeAzureSQLTable, TypeAzureTable, TypeCassandraTable, TypeConcurObject, TypeCouchbaseTable, TypeCustomDataset, TypeDataset, TypeDocumentDbCollection, TypeDrillTable, TypeDynamicsEntity, TypeEloquaObject, TypeFileShare, TypeGoogleBigQueryObject, TypeGreenplumTable, TypeHBaseObject, TypeHiveObject, TypeHTTPFile, TypeHubspotObject, TypeImpalaObject, TypeJiraObject, TypeMagentoObject, TypeMariaDBTable, TypeMarketoObject, TypeMongoDbCollection, TypeNetezzaTable, TypeODataResource, TypeOracleTable, TypePaypalObject, TypePhoenixObject, TypePrestoObject, TypeQuickBooksObject, TypeRelationalTable, TypeResponsysObject, TypeSalesforceMarketingCloudObject, TypeSalesforceObject, TypeSapCloudForCustomerResource, TypeSapEccResource, TypeServiceNowObject, TypeShopifyObject, TypeSparkObject, TypeSQLServerTable, TypeSquareObject, TypeVerticaTable, TypeWebTable, TypeXeroObject, TypeZohoObject}
1415}
1416
1417// TypeBasicDatasetCompression enumerates the values for type basic dataset compression.
1418type TypeBasicDatasetCompression string
1419
1420const (
1421	// TypeBZip2 ...
1422	TypeBZip2 TypeBasicDatasetCompression = "BZip2"
1423	// TypeDatasetCompression ...
1424	TypeDatasetCompression TypeBasicDatasetCompression = "DatasetCompression"
1425	// TypeDeflate ...
1426	TypeDeflate TypeBasicDatasetCompression = "Deflate"
1427	// TypeGZip ...
1428	TypeGZip TypeBasicDatasetCompression = "GZip"
1429	// TypeZipDeflate ...
1430	TypeZipDeflate TypeBasicDatasetCompression = "ZipDeflate"
1431)
1432
1433// PossibleTypeBasicDatasetCompressionValues returns an array of possible values for the TypeBasicDatasetCompression const type.
1434func PossibleTypeBasicDatasetCompressionValues() []TypeBasicDatasetCompression {
1435	return []TypeBasicDatasetCompression{TypeBZip2, TypeDatasetCompression, TypeDeflate, TypeGZip, TypeZipDeflate}
1436}
1437
1438// TypeBasicDatasetStorageFormat enumerates the values for type basic dataset storage format.
1439type TypeBasicDatasetStorageFormat string
1440
1441const (
1442	// TypeAvroFormat ...
1443	TypeAvroFormat TypeBasicDatasetStorageFormat = "AvroFormat"
1444	// TypeDatasetStorageFormat ...
1445	TypeDatasetStorageFormat TypeBasicDatasetStorageFormat = "DatasetStorageFormat"
1446	// TypeJSONFormat ...
1447	TypeJSONFormat TypeBasicDatasetStorageFormat = "JsonFormat"
1448	// TypeOrcFormat ...
1449	TypeOrcFormat TypeBasicDatasetStorageFormat = "OrcFormat"
1450	// TypeParquetFormat ...
1451	TypeParquetFormat TypeBasicDatasetStorageFormat = "ParquetFormat"
1452	// TypeTextFormat ...
1453	TypeTextFormat TypeBasicDatasetStorageFormat = "TextFormat"
1454)
1455
1456// PossibleTypeBasicDatasetStorageFormatValues returns an array of possible values for the TypeBasicDatasetStorageFormat const type.
1457func PossibleTypeBasicDatasetStorageFormatValues() []TypeBasicDatasetStorageFormat {
1458	return []TypeBasicDatasetStorageFormat{TypeAvroFormat, TypeDatasetStorageFormat, TypeJSONFormat, TypeOrcFormat, TypeParquetFormat, TypeTextFormat}
1459}
1460
1461// TypeBasicIntegrationRuntime enumerates the values for type basic integration runtime.
1462type TypeBasicIntegrationRuntime string
1463
1464const (
1465	// TypeIntegrationRuntime ...
1466	TypeIntegrationRuntime TypeBasicIntegrationRuntime = "IntegrationRuntime"
1467	// TypeManaged ...
1468	TypeManaged TypeBasicIntegrationRuntime = "Managed"
1469	// TypeSelfHosted ...
1470	TypeSelfHosted TypeBasicIntegrationRuntime = "SelfHosted"
1471)
1472
1473// PossibleTypeBasicIntegrationRuntimeValues returns an array of possible values for the TypeBasicIntegrationRuntime const type.
1474func PossibleTypeBasicIntegrationRuntimeValues() []TypeBasicIntegrationRuntime {
1475	return []TypeBasicIntegrationRuntime{TypeIntegrationRuntime, TypeManaged, TypeSelfHosted}
1476}
1477
1478// TypeBasicIntegrationRuntimeStatus enumerates the values for type basic integration runtime status.
1479type TypeBasicIntegrationRuntimeStatus string
1480
1481const (
1482	// TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus ...
1483	TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus TypeBasicIntegrationRuntimeStatus = "IntegrationRuntimeStatus"
1484	// TypeBasicIntegrationRuntimeStatusTypeManaged ...
1485	TypeBasicIntegrationRuntimeStatusTypeManaged TypeBasicIntegrationRuntimeStatus = "Managed"
1486	// TypeBasicIntegrationRuntimeStatusTypeSelfHosted ...
1487	TypeBasicIntegrationRuntimeStatusTypeSelfHosted TypeBasicIntegrationRuntimeStatus = "SelfHosted"
1488)
1489
1490// PossibleTypeBasicIntegrationRuntimeStatusValues returns an array of possible values for the TypeBasicIntegrationRuntimeStatus const type.
1491func PossibleTypeBasicIntegrationRuntimeStatusValues() []TypeBasicIntegrationRuntimeStatus {
1492	return []TypeBasicIntegrationRuntimeStatus{TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus, TypeBasicIntegrationRuntimeStatusTypeManaged, TypeBasicIntegrationRuntimeStatusTypeSelfHosted}
1493}
1494
1495// TypeBasicLinkedService enumerates the values for type basic linked service.
1496type TypeBasicLinkedService string
1497
1498const (
1499	// TypeAmazonMWS ...
1500	TypeAmazonMWS TypeBasicLinkedService = "AmazonMWS"
1501	// TypeAmazonRedshift ...
1502	TypeAmazonRedshift TypeBasicLinkedService = "AmazonRedshift"
1503	// TypeAmazonS3 ...
1504	TypeAmazonS3 TypeBasicLinkedService = "AmazonS3"
1505	// TypeAzureBatch ...
1506	TypeAzureBatch TypeBasicLinkedService = "AzureBatch"
1507	// TypeAzureDatabricks ...
1508	TypeAzureDatabricks TypeBasicLinkedService = "AzureDatabricks"
1509	// TypeAzureDataLakeAnalytics ...
1510	TypeAzureDataLakeAnalytics TypeBasicLinkedService = "AzureDataLakeAnalytics"
1511	// TypeAzureDataLakeStore ...
1512	TypeAzureDataLakeStore TypeBasicLinkedService = "AzureDataLakeStore"
1513	// TypeAzureKeyVault ...
1514	TypeAzureKeyVault TypeBasicLinkedService = "AzureKeyVault"
1515	// TypeAzureML ...
1516	TypeAzureML TypeBasicLinkedService = "AzureML"
1517	// TypeAzureMySQL ...
1518	TypeAzureMySQL TypeBasicLinkedService = "AzureMySql"
1519	// TypeAzurePostgreSQL ...
1520	TypeAzurePostgreSQL TypeBasicLinkedService = "AzurePostgreSql"
1521	// TypeAzureSearch ...
1522	TypeAzureSearch TypeBasicLinkedService = "AzureSearch"
1523	// TypeAzureSQLDatabase ...
1524	TypeAzureSQLDatabase TypeBasicLinkedService = "AzureSqlDatabase"
1525	// TypeAzureSQLDW ...
1526	TypeAzureSQLDW TypeBasicLinkedService = "AzureSqlDW"
1527	// TypeAzureStorage ...
1528	TypeAzureStorage TypeBasicLinkedService = "AzureStorage"
1529	// TypeCassandra ...
1530	TypeCassandra TypeBasicLinkedService = "Cassandra"
1531	// TypeConcur ...
1532	TypeConcur TypeBasicLinkedService = "Concur"
1533	// TypeCosmosDb ...
1534	TypeCosmosDb TypeBasicLinkedService = "CosmosDb"
1535	// TypeCouchbase ...
1536	TypeCouchbase TypeBasicLinkedService = "Couchbase"
1537	// TypeCustomDataSource ...
1538	TypeCustomDataSource TypeBasicLinkedService = "CustomDataSource"
1539	// TypeDb2 ...
1540	TypeDb2 TypeBasicLinkedService = "Db2"
1541	// TypeDrill ...
1542	TypeDrill TypeBasicLinkedService = "Drill"
1543	// TypeDynamics ...
1544	TypeDynamics TypeBasicLinkedService = "Dynamics"
1545	// TypeEloqua ...
1546	TypeEloqua TypeBasicLinkedService = "Eloqua"
1547	// TypeFileServer ...
1548	TypeFileServer TypeBasicLinkedService = "FileServer"
1549	// TypeFtpServer ...
1550	TypeFtpServer TypeBasicLinkedService = "FtpServer"
1551	// TypeGoogleBigQuery ...
1552	TypeGoogleBigQuery TypeBasicLinkedService = "GoogleBigQuery"
1553	// TypeGreenplum ...
1554	TypeGreenplum TypeBasicLinkedService = "Greenplum"
1555	// TypeHBase ...
1556	TypeHBase TypeBasicLinkedService = "HBase"
1557	// TypeHdfs ...
1558	TypeHdfs TypeBasicLinkedService = "Hdfs"
1559	// TypeHDInsight ...
1560	TypeHDInsight TypeBasicLinkedService = "HDInsight"
1561	// TypeHDInsightOnDemand ...
1562	TypeHDInsightOnDemand TypeBasicLinkedService = "HDInsightOnDemand"
1563	// TypeHive ...
1564	TypeHive TypeBasicLinkedService = "Hive"
1565	// TypeHTTPServer ...
1566	TypeHTTPServer TypeBasicLinkedService = "HttpServer"
1567	// TypeHubspot ...
1568	TypeHubspot TypeBasicLinkedService = "Hubspot"
1569	// TypeImpala ...
1570	TypeImpala TypeBasicLinkedService = "Impala"
1571	// TypeJira ...
1572	TypeJira TypeBasicLinkedService = "Jira"
1573	// TypeLinkedService ...
1574	TypeLinkedService TypeBasicLinkedService = "LinkedService"
1575	// TypeMagento ...
1576	TypeMagento TypeBasicLinkedService = "Magento"
1577	// TypeMariaDB ...
1578	TypeMariaDB TypeBasicLinkedService = "MariaDB"
1579	// TypeMarketo ...
1580	TypeMarketo TypeBasicLinkedService = "Marketo"
1581	// TypeMongoDb ...
1582	TypeMongoDb TypeBasicLinkedService = "MongoDb"
1583	// TypeMySQL ...
1584	TypeMySQL TypeBasicLinkedService = "MySql"
1585	// TypeNetezza ...
1586	TypeNetezza TypeBasicLinkedService = "Netezza"
1587	// TypeOData ...
1588	TypeOData TypeBasicLinkedService = "OData"
1589	// TypeOdbc ...
1590	TypeOdbc TypeBasicLinkedService = "Odbc"
1591	// TypeOracle ...
1592	TypeOracle TypeBasicLinkedService = "Oracle"
1593	// TypePaypal ...
1594	TypePaypal TypeBasicLinkedService = "Paypal"
1595	// TypePhoenix ...
1596	TypePhoenix TypeBasicLinkedService = "Phoenix"
1597	// TypePostgreSQL ...
1598	TypePostgreSQL TypeBasicLinkedService = "PostgreSql"
1599	// TypePresto ...
1600	TypePresto TypeBasicLinkedService = "Presto"
1601	// TypeQuickBooks ...
1602	TypeQuickBooks TypeBasicLinkedService = "QuickBooks"
1603	// TypeResponsys ...
1604	TypeResponsys TypeBasicLinkedService = "Responsys"
1605	// TypeSalesforce ...
1606	TypeSalesforce TypeBasicLinkedService = "Salesforce"
1607	// TypeSalesforceMarketingCloud ...
1608	TypeSalesforceMarketingCloud TypeBasicLinkedService = "SalesforceMarketingCloud"
1609	// TypeSapBW ...
1610	TypeSapBW TypeBasicLinkedService = "SapBW"
1611	// TypeSapCloudForCustomer ...
1612	TypeSapCloudForCustomer TypeBasicLinkedService = "SapCloudForCustomer"
1613	// TypeSapEcc ...
1614	TypeSapEcc TypeBasicLinkedService = "SapEcc"
1615	// TypeSapHana ...
1616	TypeSapHana TypeBasicLinkedService = "SapHana"
1617	// TypeServiceNow ...
1618	TypeServiceNow TypeBasicLinkedService = "ServiceNow"
1619	// TypeSftp ...
1620	TypeSftp TypeBasicLinkedService = "Sftp"
1621	// TypeShopify ...
1622	TypeShopify TypeBasicLinkedService = "Shopify"
1623	// TypeSpark ...
1624	TypeSpark TypeBasicLinkedService = "Spark"
1625	// TypeSQLServer ...
1626	TypeSQLServer TypeBasicLinkedService = "SqlServer"
1627	// TypeSquare ...
1628	TypeSquare TypeBasicLinkedService = "Square"
1629	// TypeSybase ...
1630	TypeSybase TypeBasicLinkedService = "Sybase"
1631	// TypeTeradata ...
1632	TypeTeradata TypeBasicLinkedService = "Teradata"
1633	// TypeVertica ...
1634	TypeVertica TypeBasicLinkedService = "Vertica"
1635	// TypeWeb ...
1636	TypeWeb TypeBasicLinkedService = "Web"
1637	// TypeXero ...
1638	TypeXero TypeBasicLinkedService = "Xero"
1639	// TypeZoho ...
1640	TypeZoho TypeBasicLinkedService = "Zoho"
1641)
1642
1643// PossibleTypeBasicLinkedServiceValues returns an array of possible values for the TypeBasicLinkedService const type.
1644func PossibleTypeBasicLinkedServiceValues() []TypeBasicLinkedService {
1645	return []TypeBasicLinkedService{TypeAmazonMWS, TypeAmazonRedshift, TypeAmazonS3, TypeAzureBatch, TypeAzureDatabricks, TypeAzureDataLakeAnalytics, TypeAzureDataLakeStore, TypeAzureKeyVault, TypeAzureML, TypeAzureMySQL, TypeAzurePostgreSQL, TypeAzureSearch, TypeAzureSQLDatabase, TypeAzureSQLDW, TypeAzureStorage, TypeCassandra, TypeConcur, TypeCosmosDb, TypeCouchbase, TypeCustomDataSource, TypeDb2, TypeDrill, TypeDynamics, TypeEloqua, TypeFileServer, TypeFtpServer, TypeGoogleBigQuery, TypeGreenplum, TypeHBase, TypeHdfs, TypeHDInsight, TypeHDInsightOnDemand, TypeHive, TypeHTTPServer, TypeHubspot, TypeImpala, TypeJira, TypeLinkedService, TypeMagento, TypeMariaDB, TypeMarketo, TypeMongoDb, TypeMySQL, TypeNetezza, TypeOData, TypeOdbc, TypeOracle, TypePaypal, TypePhoenix, TypePostgreSQL, TypePresto, TypeQuickBooks, TypeResponsys, TypeSalesforce, TypeSalesforceMarketingCloud, TypeSapBW, TypeSapCloudForCustomer, TypeSapEcc, TypeSapHana, TypeServiceNow, TypeSftp, TypeShopify, TypeSpark, TypeSQLServer, TypeSquare, TypeSybase, TypeTeradata, TypeVertica, TypeWeb, TypeXero, TypeZoho}
1646}
1647
1648// TypeBasicTrigger enumerates the values for type basic trigger.
1649type TypeBasicTrigger string
1650
1651const (
1652	// TypeBlobTrigger ...
1653	TypeBlobTrigger TypeBasicTrigger = "BlobTrigger"
1654	// TypeMultiplePipelineTrigger ...
1655	TypeMultiplePipelineTrigger TypeBasicTrigger = "MultiplePipelineTrigger"
1656	// TypeScheduleTrigger ...
1657	TypeScheduleTrigger TypeBasicTrigger = "ScheduleTrigger"
1658	// TypeTrigger ...
1659	TypeTrigger TypeBasicTrigger = "Trigger"
1660	// TypeTumblingWindowTrigger ...
1661	TypeTumblingWindowTrigger TypeBasicTrigger = "TumblingWindowTrigger"
1662)
1663
1664// PossibleTypeBasicTriggerValues returns an array of possible values for the TypeBasicTrigger const type.
1665func PossibleTypeBasicTriggerValues() []TypeBasicTrigger {
1666	return []TypeBasicTrigger{TypeBlobTrigger, TypeMultiplePipelineTrigger, TypeScheduleTrigger, TypeTrigger, TypeTumblingWindowTrigger}
1667}
1668
1669// WebActivityMethod enumerates the values for web activity method.
1670type WebActivityMethod string
1671
1672const (
1673	// DELETE ...
1674	DELETE WebActivityMethod = "DELETE"
1675	// GET ...
1676	GET WebActivityMethod = "GET"
1677	// POST ...
1678	POST WebActivityMethod = "POST"
1679	// PUT ...
1680	PUT WebActivityMethod = "PUT"
1681)
1682
1683// PossibleWebActivityMethodValues returns an array of possible values for the WebActivityMethod const type.
1684func PossibleWebActivityMethodValues() []WebActivityMethod {
1685	return []WebActivityMethod{DELETE, GET, POST, PUT}
1686}
1687
1688// BasicActivity a pipeline activity.
1689type BasicActivity interface {
1690	AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool)
1691	AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool)
1692	AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool)
1693	AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool)
1694	AsGetMetadataActivity() (*GetMetadataActivity, bool)
1695	AsWebActivity() (*WebActivity, bool)
1696	AsLookupActivity() (*LookupActivity, bool)
1697	AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool)
1698	AsCustomActivity() (*CustomActivity, bool)
1699	AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool)
1700	AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool)
1701	AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool)
1702	AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool)
1703	AsHDInsightPigActivity() (*HDInsightPigActivity, bool)
1704	AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool)
1705	AsCopyActivity() (*CopyActivity, bool)
1706	AsExecutionActivity() (*ExecutionActivity, bool)
1707	AsBasicExecutionActivity() (BasicExecutionActivity, bool)
1708	AsFilterActivity() (*FilterActivity, bool)
1709	AsUntilActivity() (*UntilActivity, bool)
1710	AsWaitActivity() (*WaitActivity, bool)
1711	AsForEachActivity() (*ForEachActivity, bool)
1712	AsIfConditionActivity() (*IfConditionActivity, bool)
1713	AsExecutePipelineActivity() (*ExecutePipelineActivity, bool)
1714	AsControlActivity() (*ControlActivity, bool)
1715	AsBasicControlActivity() (BasicControlActivity, bool)
1716	AsActivity() (*Activity, bool)
1717}
1718
1719// Activity a pipeline activity.
1720type Activity struct {
1721	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
1722	AdditionalProperties map[string]interface{} `json:""`
1723	// Name - Activity name.
1724	Name *string `json:"name,omitempty"`
1725	// Description - Activity description.
1726	Description *string `json:"description,omitempty"`
1727	// DependsOn - Activity depends on condition.
1728	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
1729	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
1730	Type TypeBasicActivity `json:"type,omitempty"`
1731}
1732
1733func unmarshalBasicActivity(body []byte) (BasicActivity, error) {
1734	var m map[string]interface{}
1735	err := json.Unmarshal(body, &m)
1736	if err != nil {
1737		return nil, err
1738	}
1739
1740	switch m["type"] {
1741	case string(TypeDatabricksNotebook):
1742		var dna DatabricksNotebookActivity
1743		err := json.Unmarshal(body, &dna)
1744		return dna, err
1745	case string(TypeDataLakeAnalyticsUSQL):
1746		var dlaua DataLakeAnalyticsUSQLActivity
1747		err := json.Unmarshal(body, &dlaua)
1748		return dlaua, err
1749	case string(TypeAzureMLUpdateResource):
1750		var amura AzureMLUpdateResourceActivity
1751		err := json.Unmarshal(body, &amura)
1752		return amura, err
1753	case string(TypeAzureMLBatchExecution):
1754		var ambea AzureMLBatchExecutionActivity
1755		err := json.Unmarshal(body, &ambea)
1756		return ambea, err
1757	case string(TypeGetMetadata):
1758		var gma GetMetadataActivity
1759		err := json.Unmarshal(body, &gma)
1760		return gma, err
1761	case string(TypeWebActivity):
1762		var wa WebActivity
1763		err := json.Unmarshal(body, &wa)
1764		return wa, err
1765	case string(TypeLookup):
1766		var la LookupActivity
1767		err := json.Unmarshal(body, &la)
1768		return la, err
1769	case string(TypeSQLServerStoredProcedure):
1770		var ssspa SQLServerStoredProcedureActivity
1771		err := json.Unmarshal(body, &ssspa)
1772		return ssspa, err
1773	case string(TypeCustom):
1774		var ca CustomActivity
1775		err := json.Unmarshal(body, &ca)
1776		return ca, err
1777	case string(TypeExecuteSSISPackage):
1778		var espa ExecuteSSISPackageActivity
1779		err := json.Unmarshal(body, &espa)
1780		return espa, err
1781	case string(TypeHDInsightSpark):
1782		var hisa HDInsightSparkActivity
1783		err := json.Unmarshal(body, &hisa)
1784		return hisa, err
1785	case string(TypeHDInsightStreaming):
1786		var hisa HDInsightStreamingActivity
1787		err := json.Unmarshal(body, &hisa)
1788		return hisa, err
1789	case string(TypeHDInsightMapReduce):
1790		var himra HDInsightMapReduceActivity
1791		err := json.Unmarshal(body, &himra)
1792		return himra, err
1793	case string(TypeHDInsightPig):
1794		var hipa HDInsightPigActivity
1795		err := json.Unmarshal(body, &hipa)
1796		return hipa, err
1797	case string(TypeHDInsightHive):
1798		var hiha HDInsightHiveActivity
1799		err := json.Unmarshal(body, &hiha)
1800		return hiha, err
1801	case string(TypeCopy):
1802		var ca CopyActivity
1803		err := json.Unmarshal(body, &ca)
1804		return ca, err
1805	case string(TypeExecution):
1806		var ea ExecutionActivity
1807		err := json.Unmarshal(body, &ea)
1808		return ea, err
1809	case string(TypeFilter):
1810		var fa FilterActivity
1811		err := json.Unmarshal(body, &fa)
1812		return fa, err
1813	case string(TypeUntil):
1814		var ua UntilActivity
1815		err := json.Unmarshal(body, &ua)
1816		return ua, err
1817	case string(TypeWait):
1818		var wa WaitActivity
1819		err := json.Unmarshal(body, &wa)
1820		return wa, err
1821	case string(TypeForEach):
1822		var fea ForEachActivity
1823		err := json.Unmarshal(body, &fea)
1824		return fea, err
1825	case string(TypeIfCondition):
1826		var ica IfConditionActivity
1827		err := json.Unmarshal(body, &ica)
1828		return ica, err
1829	case string(TypeExecutePipeline):
1830		var epa ExecutePipelineActivity
1831		err := json.Unmarshal(body, &epa)
1832		return epa, err
1833	case string(TypeContainer):
1834		var ca ControlActivity
1835		err := json.Unmarshal(body, &ca)
1836		return ca, err
1837	default:
1838		var a Activity
1839		err := json.Unmarshal(body, &a)
1840		return a, err
1841	}
1842}
1843func unmarshalBasicActivityArray(body []byte) ([]BasicActivity, error) {
1844	var rawMessages []*json.RawMessage
1845	err := json.Unmarshal(body, &rawMessages)
1846	if err != nil {
1847		return nil, err
1848	}
1849
1850	aArray := make([]BasicActivity, len(rawMessages))
1851
1852	for index, rawMessage := range rawMessages {
1853		a, err := unmarshalBasicActivity(*rawMessage)
1854		if err != nil {
1855			return nil, err
1856		}
1857		aArray[index] = a
1858	}
1859	return aArray, nil
1860}
1861
1862// MarshalJSON is the custom marshaler for Activity.
1863func (a Activity) MarshalJSON() ([]byte, error) {
1864	a.Type = TypeActivity
1865	objectMap := make(map[string]interface{})
1866	if a.Name != nil {
1867		objectMap["name"] = a.Name
1868	}
1869	if a.Description != nil {
1870		objectMap["description"] = a.Description
1871	}
1872	if a.DependsOn != nil {
1873		objectMap["dependsOn"] = a.DependsOn
1874	}
1875	if a.Type != "" {
1876		objectMap["type"] = a.Type
1877	}
1878	for k, v := range a.AdditionalProperties {
1879		objectMap[k] = v
1880	}
1881	return json.Marshal(objectMap)
1882}
1883
1884// AsDatabricksNotebookActivity is the BasicActivity implementation for Activity.
1885func (a Activity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
1886	return nil, false
1887}
1888
1889// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for Activity.
1890func (a Activity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
1891	return nil, false
1892}
1893
1894// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for Activity.
1895func (a Activity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
1896	return nil, false
1897}
1898
1899// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for Activity.
1900func (a Activity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
1901	return nil, false
1902}
1903
1904// AsGetMetadataActivity is the BasicActivity implementation for Activity.
1905func (a Activity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
1906	return nil, false
1907}
1908
1909// AsWebActivity is the BasicActivity implementation for Activity.
1910func (a Activity) AsWebActivity() (*WebActivity, bool) {
1911	return nil, false
1912}
1913
1914// AsLookupActivity is the BasicActivity implementation for Activity.
1915func (a Activity) AsLookupActivity() (*LookupActivity, bool) {
1916	return nil, false
1917}
1918
1919// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for Activity.
1920func (a Activity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
1921	return nil, false
1922}
1923
1924// AsCustomActivity is the BasicActivity implementation for Activity.
1925func (a Activity) AsCustomActivity() (*CustomActivity, bool) {
1926	return nil, false
1927}
1928
1929// AsExecuteSSISPackageActivity is the BasicActivity implementation for Activity.
1930func (a Activity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
1931	return nil, false
1932}
1933
1934// AsHDInsightSparkActivity is the BasicActivity implementation for Activity.
1935func (a Activity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
1936	return nil, false
1937}
1938
1939// AsHDInsightStreamingActivity is the BasicActivity implementation for Activity.
1940func (a Activity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
1941	return nil, false
1942}
1943
1944// AsHDInsightMapReduceActivity is the BasicActivity implementation for Activity.
1945func (a Activity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
1946	return nil, false
1947}
1948
1949// AsHDInsightPigActivity is the BasicActivity implementation for Activity.
1950func (a Activity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
1951	return nil, false
1952}
1953
1954// AsHDInsightHiveActivity is the BasicActivity implementation for Activity.
1955func (a Activity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
1956	return nil, false
1957}
1958
1959// AsCopyActivity is the BasicActivity implementation for Activity.
1960func (a Activity) AsCopyActivity() (*CopyActivity, bool) {
1961	return nil, false
1962}
1963
1964// AsExecutionActivity is the BasicActivity implementation for Activity.
1965func (a Activity) AsExecutionActivity() (*ExecutionActivity, bool) {
1966	return nil, false
1967}
1968
1969// AsBasicExecutionActivity is the BasicActivity implementation for Activity.
1970func (a Activity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
1971	return nil, false
1972}
1973
1974// AsFilterActivity is the BasicActivity implementation for Activity.
1975func (a Activity) AsFilterActivity() (*FilterActivity, bool) {
1976	return nil, false
1977}
1978
1979// AsUntilActivity is the BasicActivity implementation for Activity.
1980func (a Activity) AsUntilActivity() (*UntilActivity, bool) {
1981	return nil, false
1982}
1983
1984// AsWaitActivity is the BasicActivity implementation for Activity.
1985func (a Activity) AsWaitActivity() (*WaitActivity, bool) {
1986	return nil, false
1987}
1988
1989// AsForEachActivity is the BasicActivity implementation for Activity.
1990func (a Activity) AsForEachActivity() (*ForEachActivity, bool) {
1991	return nil, false
1992}
1993
1994// AsIfConditionActivity is the BasicActivity implementation for Activity.
1995func (a Activity) AsIfConditionActivity() (*IfConditionActivity, bool) {
1996	return nil, false
1997}
1998
1999// AsExecutePipelineActivity is the BasicActivity implementation for Activity.
2000func (a Activity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
2001	return nil, false
2002}
2003
2004// AsControlActivity is the BasicActivity implementation for Activity.
2005func (a Activity) AsControlActivity() (*ControlActivity, bool) {
2006	return nil, false
2007}
2008
2009// AsBasicControlActivity is the BasicActivity implementation for Activity.
2010func (a Activity) AsBasicControlActivity() (BasicControlActivity, bool) {
2011	return nil, false
2012}
2013
2014// AsActivity is the BasicActivity implementation for Activity.
2015func (a Activity) AsActivity() (*Activity, bool) {
2016	return &a, true
2017}
2018
2019// AsBasicActivity is the BasicActivity implementation for Activity.
2020func (a Activity) AsBasicActivity() (BasicActivity, bool) {
2021	return &a, true
2022}
2023
2024// ActivityDependency activity dependency information.
2025type ActivityDependency struct {
2026	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
2027	AdditionalProperties map[string]interface{} `json:""`
2028	// Activity - Activity name.
2029	Activity *string `json:"activity,omitempty"`
2030	// DependencyConditions - Match-Condition for the dependency.
2031	DependencyConditions *[]DependencyCondition `json:"dependencyConditions,omitempty"`
2032}
2033
2034// MarshalJSON is the custom marshaler for ActivityDependency.
2035func (ad ActivityDependency) MarshalJSON() ([]byte, error) {
2036	objectMap := make(map[string]interface{})
2037	if ad.Activity != nil {
2038		objectMap["activity"] = ad.Activity
2039	}
2040	if ad.DependencyConditions != nil {
2041		objectMap["dependencyConditions"] = ad.DependencyConditions
2042	}
2043	for k, v := range ad.AdditionalProperties {
2044		objectMap[k] = v
2045	}
2046	return json.Marshal(objectMap)
2047}
2048
2049// ActivityPolicy execution policy for an activity.
2050type ActivityPolicy struct {
2051	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
2052	AdditionalProperties map[string]interface{} `json:""`
2053	// Timeout - Specifies the timeout for the activity to run. The default timeout is 7 days. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
2054	Timeout interface{} `json:"timeout,omitempty"`
2055	// Retry - Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0.
2056	Retry interface{} `json:"retry,omitempty"`
2057	// RetryIntervalInSeconds - Interval between each retry attempt (in seconds). The default is 30 sec.
2058	RetryIntervalInSeconds *int32 `json:"retryIntervalInSeconds,omitempty"`
2059	// SecureOutput - When set to true, Output from activity is considered as secure and will not be logged to monitoring.
2060	SecureOutput *bool `json:"secureOutput,omitempty"`
2061}
2062
2063// MarshalJSON is the custom marshaler for ActivityPolicy.
2064func (ap ActivityPolicy) MarshalJSON() ([]byte, error) {
2065	objectMap := make(map[string]interface{})
2066	objectMap["timeout"] = ap.Timeout
2067	objectMap["retry"] = ap.Retry
2068	if ap.RetryIntervalInSeconds != nil {
2069		objectMap["retryIntervalInSeconds"] = ap.RetryIntervalInSeconds
2070	}
2071	if ap.SecureOutput != nil {
2072		objectMap["secureOutput"] = ap.SecureOutput
2073	}
2074	for k, v := range ap.AdditionalProperties {
2075		objectMap[k] = v
2076	}
2077	return json.Marshal(objectMap)
2078}
2079
2080// ActivityRun information about an activity run in a pipeline.
2081type ActivityRun struct {
2082	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
2083	AdditionalProperties map[string]interface{} `json:""`
2084	// PipelineName - The name of the pipeline.
2085	PipelineName *string `json:"pipelineName,omitempty"`
2086	// PipelineRunID - The id of the pipeline run.
2087	PipelineRunID *string `json:"pipelineRunId,omitempty"`
2088	// ActivityName - The name of the activity.
2089	ActivityName *string `json:"activityName,omitempty"`
2090	// ActivityType - The type of the activity.
2091	ActivityType *string `json:"activityType,omitempty"`
2092	// ActivityRunID - The id of the activity run.
2093	ActivityRunID *string `json:"activityRunId,omitempty"`
2094	// LinkedServiceName - The name of the compute linked service.
2095	LinkedServiceName *string `json:"linkedServiceName,omitempty"`
2096	// Status - The status of the activity run.
2097	Status *string `json:"status,omitempty"`
2098	// ActivityRunStart - The start time of the activity run in 'ISO 8601' format.
2099	ActivityRunStart *date.Time `json:"activityRunStart,omitempty"`
2100	// ActivityRunEnd - The end time of the activity run in 'ISO 8601' format.
2101	ActivityRunEnd *date.Time `json:"activityRunEnd,omitempty"`
2102	// DurationInMs - The duration of the activity run.
2103	DurationInMs *int32 `json:"durationInMs,omitempty"`
2104	// Input - The input for the activity.
2105	Input interface{} `json:"input,omitempty"`
2106	// Output - The output for the activity.
2107	Output interface{} `json:"output,omitempty"`
2108	// Error - The error if any from the activity run.
2109	Error interface{} `json:"error,omitempty"`
2110}
2111
2112// MarshalJSON is the custom marshaler for ActivityRun.
2113func (ar ActivityRun) MarshalJSON() ([]byte, error) {
2114	objectMap := make(map[string]interface{})
2115	if ar.PipelineName != nil {
2116		objectMap["pipelineName"] = ar.PipelineName
2117	}
2118	if ar.PipelineRunID != nil {
2119		objectMap["pipelineRunId"] = ar.PipelineRunID
2120	}
2121	if ar.ActivityName != nil {
2122		objectMap["activityName"] = ar.ActivityName
2123	}
2124	if ar.ActivityType != nil {
2125		objectMap["activityType"] = ar.ActivityType
2126	}
2127	if ar.ActivityRunID != nil {
2128		objectMap["activityRunId"] = ar.ActivityRunID
2129	}
2130	if ar.LinkedServiceName != nil {
2131		objectMap["linkedServiceName"] = ar.LinkedServiceName
2132	}
2133	if ar.Status != nil {
2134		objectMap["status"] = ar.Status
2135	}
2136	if ar.ActivityRunStart != nil {
2137		objectMap["activityRunStart"] = ar.ActivityRunStart
2138	}
2139	if ar.ActivityRunEnd != nil {
2140		objectMap["activityRunEnd"] = ar.ActivityRunEnd
2141	}
2142	if ar.DurationInMs != nil {
2143		objectMap["durationInMs"] = ar.DurationInMs
2144	}
2145	objectMap["input"] = ar.Input
2146	objectMap["output"] = ar.Output
2147	objectMap["error"] = ar.Error
2148	for k, v := range ar.AdditionalProperties {
2149		objectMap[k] = v
2150	}
2151	return json.Marshal(objectMap)
2152}
2153
2154// ActivityRunsListResponse a list activity runs.
2155type ActivityRunsListResponse struct {
2156	autorest.Response `json:"-"`
2157	// Value - List of activity runs.
2158	Value *[]ActivityRun `json:"value,omitempty"`
2159	// NextLink - The link to the next page of results, if any remaining results exist.
2160	NextLink *string `json:"nextLink,omitempty"`
2161}
2162
2163// ActivityRunsListResponseIterator provides access to a complete listing of ActivityRun values.
2164type ActivityRunsListResponseIterator struct {
2165	i    int
2166	page ActivityRunsListResponsePage
2167}
2168
2169// Next advances to the next value.  If there was an error making
2170// the request the iterator does not advance and the error is returned.
2171func (iter *ActivityRunsListResponseIterator) Next() error {
2172	iter.i++
2173	if iter.i < len(iter.page.Values()) {
2174		return nil
2175	}
2176	err := iter.page.Next()
2177	if err != nil {
2178		iter.i--
2179		return err
2180	}
2181	iter.i = 0
2182	return nil
2183}
2184
2185// NotDone returns true if the enumeration should be started or is not yet complete.
2186func (iter ActivityRunsListResponseIterator) NotDone() bool {
2187	return iter.page.NotDone() && iter.i < len(iter.page.Values())
2188}
2189
2190// Response returns the raw server response from the last page request.
2191func (iter ActivityRunsListResponseIterator) Response() ActivityRunsListResponse {
2192	return iter.page.Response()
2193}
2194
2195// Value returns the current value or a zero-initialized value if the
2196// iterator has advanced beyond the end of the collection.
2197func (iter ActivityRunsListResponseIterator) Value() ActivityRun {
2198	if !iter.page.NotDone() {
2199		return ActivityRun{}
2200	}
2201	return iter.page.Values()[iter.i]
2202}
2203
2204// IsEmpty returns true if the ListResult contains no values.
2205func (arlr ActivityRunsListResponse) IsEmpty() bool {
2206	return arlr.Value == nil || len(*arlr.Value) == 0
2207}
2208
2209// activityRunsListResponsePreparer prepares a request to retrieve the next set of results.
2210// It returns nil if no more results exist.
2211func (arlr ActivityRunsListResponse) activityRunsListResponsePreparer() (*http.Request, error) {
2212	if arlr.NextLink == nil || len(to.String(arlr.NextLink)) < 1 {
2213		return nil, nil
2214	}
2215	return autorest.Prepare(&http.Request{},
2216		autorest.AsJSON(),
2217		autorest.AsGet(),
2218		autorest.WithBaseURL(to.String(arlr.NextLink)))
2219}
2220
2221// ActivityRunsListResponsePage contains a page of ActivityRun values.
2222type ActivityRunsListResponsePage struct {
2223	fn   func(ActivityRunsListResponse) (ActivityRunsListResponse, error)
2224	arlr ActivityRunsListResponse
2225}
2226
2227// Next advances to the next page of values.  If there was an error making
2228// the request the page does not advance and the error is returned.
2229func (page *ActivityRunsListResponsePage) Next() error {
2230	next, err := page.fn(page.arlr)
2231	if err != nil {
2232		return err
2233	}
2234	page.arlr = next
2235	return nil
2236}
2237
2238// NotDone returns true if the page enumeration should be started or is not yet complete.
2239func (page ActivityRunsListResponsePage) NotDone() bool {
2240	return !page.arlr.IsEmpty()
2241}
2242
2243// Response returns the raw server response from the last page request.
2244func (page ActivityRunsListResponsePage) Response() ActivityRunsListResponse {
2245	return page.arlr
2246}
2247
2248// Values returns the slice of values for the current page or nil if there are no values.
2249func (page ActivityRunsListResponsePage) Values() []ActivityRun {
2250	if page.arlr.IsEmpty() {
2251		return nil
2252	}
2253	return *page.arlr.Value
2254}
2255
2256// AmazonMWSLinkedService amazon Marketplace Web Service linked service.
2257type AmazonMWSLinkedService struct {
2258	// AmazonMWSLinkedServiceTypeProperties - Amazon Marketplace Web Service linked service properties.
2259	*AmazonMWSLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
2260	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
2261	AdditionalProperties map[string]interface{} `json:""`
2262	// ConnectVia - The integration runtime reference.
2263	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
2264	// Description - Linked service description.
2265	Description *string `json:"description,omitempty"`
2266	// Parameters - Parameters for linked service.
2267	Parameters map[string]*ParameterSpecification `json:"parameters"`
2268	// Annotations - List of tags that can be used for describing the Dataset.
2269	Annotations *[]interface{} `json:"annotations,omitempty"`
2270	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
2271	Type TypeBasicLinkedService `json:"type,omitempty"`
2272}
2273
2274// MarshalJSON is the custom marshaler for AmazonMWSLinkedService.
2275func (amls AmazonMWSLinkedService) MarshalJSON() ([]byte, error) {
2276	amls.Type = TypeAmazonMWS
2277	objectMap := make(map[string]interface{})
2278	if amls.AmazonMWSLinkedServiceTypeProperties != nil {
2279		objectMap["typeProperties"] = amls.AmazonMWSLinkedServiceTypeProperties
2280	}
2281	if amls.ConnectVia != nil {
2282		objectMap["connectVia"] = amls.ConnectVia
2283	}
2284	if amls.Description != nil {
2285		objectMap["description"] = amls.Description
2286	}
2287	if amls.Parameters != nil {
2288		objectMap["parameters"] = amls.Parameters
2289	}
2290	if amls.Annotations != nil {
2291		objectMap["annotations"] = amls.Annotations
2292	}
2293	if amls.Type != "" {
2294		objectMap["type"] = amls.Type
2295	}
2296	for k, v := range amls.AdditionalProperties {
2297		objectMap[k] = v
2298	}
2299	return json.Marshal(objectMap)
2300}
2301
2302// AsResponsysLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2303func (amls AmazonMWSLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
2304	return nil, false
2305}
2306
2307// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2308func (amls AmazonMWSLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
2309	return nil, false
2310}
2311
2312// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2313func (amls AmazonMWSLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
2314	return nil, false
2315}
2316
2317// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2318func (amls AmazonMWSLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
2319	return nil, false
2320}
2321
2322// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2323func (amls AmazonMWSLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
2324	return nil, false
2325}
2326
2327// AsNetezzaLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2328func (amls AmazonMWSLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
2329	return nil, false
2330}
2331
2332// AsVerticaLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2333func (amls AmazonMWSLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
2334	return nil, false
2335}
2336
2337// AsZohoLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2338func (amls AmazonMWSLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
2339	return nil, false
2340}
2341
2342// AsXeroLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2343func (amls AmazonMWSLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
2344	return nil, false
2345}
2346
2347// AsSquareLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2348func (amls AmazonMWSLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
2349	return nil, false
2350}
2351
2352// AsSparkLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2353func (amls AmazonMWSLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
2354	return nil, false
2355}
2356
2357// AsShopifyLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2358func (amls AmazonMWSLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
2359	return nil, false
2360}
2361
2362// AsServiceNowLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2363func (amls AmazonMWSLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
2364	return nil, false
2365}
2366
2367// AsQuickBooksLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2368func (amls AmazonMWSLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
2369	return nil, false
2370}
2371
2372// AsPrestoLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2373func (amls AmazonMWSLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
2374	return nil, false
2375}
2376
2377// AsPhoenixLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2378func (amls AmazonMWSLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
2379	return nil, false
2380}
2381
2382// AsPaypalLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2383func (amls AmazonMWSLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
2384	return nil, false
2385}
2386
2387// AsMarketoLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2388func (amls AmazonMWSLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
2389	return nil, false
2390}
2391
2392// AsMariaDBLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2393func (amls AmazonMWSLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
2394	return nil, false
2395}
2396
2397// AsMagentoLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2398func (amls AmazonMWSLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
2399	return nil, false
2400}
2401
2402// AsJiraLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2403func (amls AmazonMWSLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
2404	return nil, false
2405}
2406
2407// AsImpalaLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2408func (amls AmazonMWSLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
2409	return nil, false
2410}
2411
2412// AsHubspotLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2413func (amls AmazonMWSLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
2414	return nil, false
2415}
2416
2417// AsHiveLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2418func (amls AmazonMWSLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
2419	return nil, false
2420}
2421
2422// AsHBaseLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2423func (amls AmazonMWSLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
2424	return nil, false
2425}
2426
2427// AsGreenplumLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2428func (amls AmazonMWSLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
2429	return nil, false
2430}
2431
2432// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2433func (amls AmazonMWSLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
2434	return nil, false
2435}
2436
2437// AsEloquaLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2438func (amls AmazonMWSLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
2439	return nil, false
2440}
2441
2442// AsDrillLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2443func (amls AmazonMWSLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
2444	return nil, false
2445}
2446
2447// AsCouchbaseLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2448func (amls AmazonMWSLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
2449	return nil, false
2450}
2451
2452// AsConcurLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2453func (amls AmazonMWSLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
2454	return nil, false
2455}
2456
2457// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2458func (amls AmazonMWSLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
2459	return nil, false
2460}
2461
2462// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2463func (amls AmazonMWSLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
2464	return &amls, true
2465}
2466
2467// AsSapHanaLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2468func (amls AmazonMWSLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
2469	return nil, false
2470}
2471
2472// AsSapBWLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2473func (amls AmazonMWSLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
2474	return nil, false
2475}
2476
2477// AsSftpServerLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2478func (amls AmazonMWSLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
2479	return nil, false
2480}
2481
2482// AsFtpServerLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2483func (amls AmazonMWSLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
2484	return nil, false
2485}
2486
2487// AsHTTPLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2488func (amls AmazonMWSLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
2489	return nil, false
2490}
2491
2492// AsAzureSearchLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2493func (amls AmazonMWSLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
2494	return nil, false
2495}
2496
2497// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2498func (amls AmazonMWSLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
2499	return nil, false
2500}
2501
2502// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2503func (amls AmazonMWSLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
2504	return nil, false
2505}
2506
2507// AsAmazonS3LinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2508func (amls AmazonMWSLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
2509	return nil, false
2510}
2511
2512// AsSapEccLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2513func (amls AmazonMWSLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
2514	return nil, false
2515}
2516
2517// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2518func (amls AmazonMWSLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
2519	return nil, false
2520}
2521
2522// AsSalesforceLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2523func (amls AmazonMWSLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
2524	return nil, false
2525}
2526
2527// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2528func (amls AmazonMWSLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
2529	return nil, false
2530}
2531
2532// AsMongoDbLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2533func (amls AmazonMWSLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
2534	return nil, false
2535}
2536
2537// AsCassandraLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2538func (amls AmazonMWSLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
2539	return nil, false
2540}
2541
2542// AsWebLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2543func (amls AmazonMWSLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
2544	return nil, false
2545}
2546
2547// AsODataLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2548func (amls AmazonMWSLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
2549	return nil, false
2550}
2551
2552// AsHdfsLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2553func (amls AmazonMWSLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
2554	return nil, false
2555}
2556
2557// AsOdbcLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2558func (amls AmazonMWSLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
2559	return nil, false
2560}
2561
2562// AsAzureMLLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2563func (amls AmazonMWSLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
2564	return nil, false
2565}
2566
2567// AsTeradataLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2568func (amls AmazonMWSLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
2569	return nil, false
2570}
2571
2572// AsDb2LinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2573func (amls AmazonMWSLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
2574	return nil, false
2575}
2576
2577// AsSybaseLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2578func (amls AmazonMWSLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
2579	return nil, false
2580}
2581
2582// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2583func (amls AmazonMWSLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
2584	return nil, false
2585}
2586
2587// AsMySQLLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2588func (amls AmazonMWSLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
2589	return nil, false
2590}
2591
2592// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2593func (amls AmazonMWSLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
2594	return nil, false
2595}
2596
2597// AsOracleLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2598func (amls AmazonMWSLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
2599	return nil, false
2600}
2601
2602// AsFileServerLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2603func (amls AmazonMWSLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
2604	return nil, false
2605}
2606
2607// AsHDInsightLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2608func (amls AmazonMWSLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
2609	return nil, false
2610}
2611
2612// AsDynamicsLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2613func (amls AmazonMWSLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
2614	return nil, false
2615}
2616
2617// AsCosmosDbLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2618func (amls AmazonMWSLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
2619	return nil, false
2620}
2621
2622// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2623func (amls AmazonMWSLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
2624	return nil, false
2625}
2626
2627// AsAzureBatchLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2628func (amls AmazonMWSLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
2629	return nil, false
2630}
2631
2632// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2633func (amls AmazonMWSLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
2634	return nil, false
2635}
2636
2637// AsSQLServerLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2638func (amls AmazonMWSLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
2639	return nil, false
2640}
2641
2642// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2643func (amls AmazonMWSLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
2644	return nil, false
2645}
2646
2647// AsAzureStorageLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2648func (amls AmazonMWSLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
2649	return nil, false
2650}
2651
2652// AsLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2653func (amls AmazonMWSLinkedService) AsLinkedService() (*LinkedService, bool) {
2654	return nil, false
2655}
2656
2657// AsBasicLinkedService is the BasicLinkedService implementation for AmazonMWSLinkedService.
2658func (amls AmazonMWSLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
2659	return &amls, true
2660}
2661
2662// UnmarshalJSON is the custom unmarshaler for AmazonMWSLinkedService struct.
2663func (amls *AmazonMWSLinkedService) UnmarshalJSON(body []byte) error {
2664	var m map[string]*json.RawMessage
2665	err := json.Unmarshal(body, &m)
2666	if err != nil {
2667		return err
2668	}
2669	for k, v := range m {
2670		switch k {
2671		case "typeProperties":
2672			if v != nil {
2673				var amazonMWSLinkedServiceTypeProperties AmazonMWSLinkedServiceTypeProperties
2674				err = json.Unmarshal(*v, &amazonMWSLinkedServiceTypeProperties)
2675				if err != nil {
2676					return err
2677				}
2678				amls.AmazonMWSLinkedServiceTypeProperties = &amazonMWSLinkedServiceTypeProperties
2679			}
2680		default:
2681			if v != nil {
2682				var additionalProperties interface{}
2683				err = json.Unmarshal(*v, &additionalProperties)
2684				if err != nil {
2685					return err
2686				}
2687				if amls.AdditionalProperties == nil {
2688					amls.AdditionalProperties = make(map[string]interface{})
2689				}
2690				amls.AdditionalProperties[k] = additionalProperties
2691			}
2692		case "connectVia":
2693			if v != nil {
2694				var connectVia IntegrationRuntimeReference
2695				err = json.Unmarshal(*v, &connectVia)
2696				if err != nil {
2697					return err
2698				}
2699				amls.ConnectVia = &connectVia
2700			}
2701		case "description":
2702			if v != nil {
2703				var description string
2704				err = json.Unmarshal(*v, &description)
2705				if err != nil {
2706					return err
2707				}
2708				amls.Description = &description
2709			}
2710		case "parameters":
2711			if v != nil {
2712				var parameters map[string]*ParameterSpecification
2713				err = json.Unmarshal(*v, &parameters)
2714				if err != nil {
2715					return err
2716				}
2717				amls.Parameters = parameters
2718			}
2719		case "annotations":
2720			if v != nil {
2721				var annotations []interface{}
2722				err = json.Unmarshal(*v, &annotations)
2723				if err != nil {
2724					return err
2725				}
2726				amls.Annotations = &annotations
2727			}
2728		case "type":
2729			if v != nil {
2730				var typeVar TypeBasicLinkedService
2731				err = json.Unmarshal(*v, &typeVar)
2732				if err != nil {
2733					return err
2734				}
2735				amls.Type = typeVar
2736			}
2737		}
2738	}
2739
2740	return nil
2741}
2742
2743// AmazonMWSLinkedServiceTypeProperties amazon Marketplace Web Service linked service properties.
2744type AmazonMWSLinkedServiceTypeProperties struct {
2745	// Endpoint - The endpoint of the Amazon MWS server, (i.e. mws.amazonservices.com)
2746	Endpoint interface{} `json:"endpoint,omitempty"`
2747	// MarketplaceID - The Amazon Marketplace ID you want to retrieve data from. To retrive data from multiple Marketplace IDs, seperate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)
2748	MarketplaceID interface{} `json:"marketplaceID,omitempty"`
2749	// SellerID - The Amazon seller ID.
2750	SellerID interface{} `json:"sellerID,omitempty"`
2751	// MwsAuthToken - The Amazon MWS authentication token.
2752	MwsAuthToken BasicSecretBase `json:"mwsAuthToken,omitempty"`
2753	// AccessKeyID - The access key id used to access data.
2754	AccessKeyID interface{} `json:"accessKeyId,omitempty"`
2755	// SecretKey - The secret key used to access data.
2756	SecretKey BasicSecretBase `json:"secretKey,omitempty"`
2757	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
2758	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
2759	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
2760	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
2761	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
2762	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
2763	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
2764	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
2765}
2766
2767// UnmarshalJSON is the custom unmarshaler for AmazonMWSLinkedServiceTypeProperties struct.
2768func (amlstp *AmazonMWSLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
2769	var m map[string]*json.RawMessage
2770	err := json.Unmarshal(body, &m)
2771	if err != nil {
2772		return err
2773	}
2774	for k, v := range m {
2775		switch k {
2776		case "endpoint":
2777			if v != nil {
2778				var endpoint interface{}
2779				err = json.Unmarshal(*v, &endpoint)
2780				if err != nil {
2781					return err
2782				}
2783				amlstp.Endpoint = endpoint
2784			}
2785		case "marketplaceID":
2786			if v != nil {
2787				var marketplaceID interface{}
2788				err = json.Unmarshal(*v, &marketplaceID)
2789				if err != nil {
2790					return err
2791				}
2792				amlstp.MarketplaceID = marketplaceID
2793			}
2794		case "sellerID":
2795			if v != nil {
2796				var sellerID interface{}
2797				err = json.Unmarshal(*v, &sellerID)
2798				if err != nil {
2799					return err
2800				}
2801				amlstp.SellerID = sellerID
2802			}
2803		case "mwsAuthToken":
2804			if v != nil {
2805				mwsAuthToken, err := unmarshalBasicSecretBase(*v)
2806				if err != nil {
2807					return err
2808				}
2809				amlstp.MwsAuthToken = mwsAuthToken
2810			}
2811		case "accessKeyId":
2812			if v != nil {
2813				var accessKeyID interface{}
2814				err = json.Unmarshal(*v, &accessKeyID)
2815				if err != nil {
2816					return err
2817				}
2818				amlstp.AccessKeyID = accessKeyID
2819			}
2820		case "secretKey":
2821			if v != nil {
2822				secretKey, err := unmarshalBasicSecretBase(*v)
2823				if err != nil {
2824					return err
2825				}
2826				amlstp.SecretKey = secretKey
2827			}
2828		case "useEncryptedEndpoints":
2829			if v != nil {
2830				var useEncryptedEndpoints interface{}
2831				err = json.Unmarshal(*v, &useEncryptedEndpoints)
2832				if err != nil {
2833					return err
2834				}
2835				amlstp.UseEncryptedEndpoints = useEncryptedEndpoints
2836			}
2837		case "useHostVerification":
2838			if v != nil {
2839				var useHostVerification interface{}
2840				err = json.Unmarshal(*v, &useHostVerification)
2841				if err != nil {
2842					return err
2843				}
2844				amlstp.UseHostVerification = useHostVerification
2845			}
2846		case "usePeerVerification":
2847			if v != nil {
2848				var usePeerVerification interface{}
2849				err = json.Unmarshal(*v, &usePeerVerification)
2850				if err != nil {
2851					return err
2852				}
2853				amlstp.UsePeerVerification = usePeerVerification
2854			}
2855		case "encryptedCredential":
2856			if v != nil {
2857				var encryptedCredential interface{}
2858				err = json.Unmarshal(*v, &encryptedCredential)
2859				if err != nil {
2860					return err
2861				}
2862				amlstp.EncryptedCredential = encryptedCredential
2863			}
2864		}
2865	}
2866
2867	return nil
2868}
2869
2870// AmazonMWSObjectDataset amazon Marketplace Web Service dataset.
2871type AmazonMWSObjectDataset struct {
2872	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
2873	AdditionalProperties map[string]interface{} `json:""`
2874	// Description - Dataset description.
2875	Description *string `json:"description,omitempty"`
2876	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
2877	Structure interface{} `json:"structure,omitempty"`
2878	// LinkedServiceName - Linked service reference.
2879	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
2880	// Parameters - Parameters for dataset.
2881	Parameters map[string]*ParameterSpecification `json:"parameters"`
2882	// Annotations - List of tags that can be used for describing the Dataset.
2883	Annotations *[]interface{} `json:"annotations,omitempty"`
2884	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
2885	Type TypeBasicDataset `json:"type,omitempty"`
2886}
2887
2888// MarshalJSON is the custom marshaler for AmazonMWSObjectDataset.
2889func (amod AmazonMWSObjectDataset) MarshalJSON() ([]byte, error) {
2890	amod.Type = TypeAmazonMWSObject
2891	objectMap := make(map[string]interface{})
2892	if amod.Description != nil {
2893		objectMap["description"] = amod.Description
2894	}
2895	objectMap["structure"] = amod.Structure
2896	if amod.LinkedServiceName != nil {
2897		objectMap["linkedServiceName"] = amod.LinkedServiceName
2898	}
2899	if amod.Parameters != nil {
2900		objectMap["parameters"] = amod.Parameters
2901	}
2902	if amod.Annotations != nil {
2903		objectMap["annotations"] = amod.Annotations
2904	}
2905	if amod.Type != "" {
2906		objectMap["type"] = amod.Type
2907	}
2908	for k, v := range amod.AdditionalProperties {
2909		objectMap[k] = v
2910	}
2911	return json.Marshal(objectMap)
2912}
2913
2914// AsResponsysObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2915func (amod AmazonMWSObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
2916	return nil, false
2917}
2918
2919// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2920func (amod AmazonMWSObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
2921	return nil, false
2922}
2923
2924// AsVerticaTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2925func (amod AmazonMWSObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
2926	return nil, false
2927}
2928
2929// AsNetezzaTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2930func (amod AmazonMWSObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
2931	return nil, false
2932}
2933
2934// AsZohoObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2935func (amod AmazonMWSObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
2936	return nil, false
2937}
2938
2939// AsXeroObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2940func (amod AmazonMWSObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
2941	return nil, false
2942}
2943
2944// AsSquareObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2945func (amod AmazonMWSObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
2946	return nil, false
2947}
2948
2949// AsSparkObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2950func (amod AmazonMWSObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
2951	return nil, false
2952}
2953
2954// AsShopifyObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2955func (amod AmazonMWSObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
2956	return nil, false
2957}
2958
2959// AsServiceNowObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2960func (amod AmazonMWSObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
2961	return nil, false
2962}
2963
2964// AsQuickBooksObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2965func (amod AmazonMWSObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
2966	return nil, false
2967}
2968
2969// AsPrestoObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2970func (amod AmazonMWSObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
2971	return nil, false
2972}
2973
2974// AsPhoenixObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2975func (amod AmazonMWSObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
2976	return nil, false
2977}
2978
2979// AsPaypalObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2980func (amod AmazonMWSObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
2981	return nil, false
2982}
2983
2984// AsMarketoObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2985func (amod AmazonMWSObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
2986	return nil, false
2987}
2988
2989// AsMariaDBTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2990func (amod AmazonMWSObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
2991	return nil, false
2992}
2993
2994// AsMagentoObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
2995func (amod AmazonMWSObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
2996	return nil, false
2997}
2998
2999// AsJiraObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3000func (amod AmazonMWSObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
3001	return nil, false
3002}
3003
3004// AsImpalaObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3005func (amod AmazonMWSObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
3006	return nil, false
3007}
3008
3009// AsHubspotObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3010func (amod AmazonMWSObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
3011	return nil, false
3012}
3013
3014// AsHiveObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3015func (amod AmazonMWSObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
3016	return nil, false
3017}
3018
3019// AsHBaseObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3020func (amod AmazonMWSObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
3021	return nil, false
3022}
3023
3024// AsGreenplumTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3025func (amod AmazonMWSObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
3026	return nil, false
3027}
3028
3029// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3030func (amod AmazonMWSObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
3031	return nil, false
3032}
3033
3034// AsEloquaObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3035func (amod AmazonMWSObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
3036	return nil, false
3037}
3038
3039// AsDrillTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3040func (amod AmazonMWSObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
3041	return nil, false
3042}
3043
3044// AsCouchbaseTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3045func (amod AmazonMWSObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
3046	return nil, false
3047}
3048
3049// AsConcurObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3050func (amod AmazonMWSObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
3051	return nil, false
3052}
3053
3054// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3055func (amod AmazonMWSObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
3056	return nil, false
3057}
3058
3059// AsAmazonMWSObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3060func (amod AmazonMWSObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
3061	return &amod, true
3062}
3063
3064// AsHTTPDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3065func (amod AmazonMWSObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
3066	return nil, false
3067}
3068
3069// AsAzureSearchIndexDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3070func (amod AmazonMWSObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
3071	return nil, false
3072}
3073
3074// AsWebTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3075func (amod AmazonMWSObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
3076	return nil, false
3077}
3078
3079// AsSQLServerTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3080func (amod AmazonMWSObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
3081	return nil, false
3082}
3083
3084// AsSapEccResourceDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3085func (amod AmazonMWSObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
3086	return nil, false
3087}
3088
3089// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3090func (amod AmazonMWSObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
3091	return nil, false
3092}
3093
3094// AsSalesforceObjectDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3095func (amod AmazonMWSObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
3096	return nil, false
3097}
3098
3099// AsRelationalTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3100func (amod AmazonMWSObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
3101	return nil, false
3102}
3103
3104// AsAzureMySQLTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3105func (amod AmazonMWSObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
3106	return nil, false
3107}
3108
3109// AsOracleTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3110func (amod AmazonMWSObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
3111	return nil, false
3112}
3113
3114// AsODataResourceDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3115func (amod AmazonMWSObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
3116	return nil, false
3117}
3118
3119// AsMongoDbCollectionDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3120func (amod AmazonMWSObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
3121	return nil, false
3122}
3123
3124// AsFileShareDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3125func (amod AmazonMWSObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
3126	return nil, false
3127}
3128
3129// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3130func (amod AmazonMWSObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
3131	return nil, false
3132}
3133
3134// AsDynamicsEntityDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3135func (amod AmazonMWSObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
3136	return nil, false
3137}
3138
3139// AsDocumentDbCollectionDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3140func (amod AmazonMWSObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
3141	return nil, false
3142}
3143
3144// AsCustomDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3145func (amod AmazonMWSObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
3146	return nil, false
3147}
3148
3149// AsCassandraTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3150func (amod AmazonMWSObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
3151	return nil, false
3152}
3153
3154// AsAzureSQLDWTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3155func (amod AmazonMWSObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
3156	return nil, false
3157}
3158
3159// AsAzureSQLTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3160func (amod AmazonMWSObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
3161	return nil, false
3162}
3163
3164// AsAzureTableDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3165func (amod AmazonMWSObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
3166	return nil, false
3167}
3168
3169// AsAzureBlobDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3170func (amod AmazonMWSObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
3171	return nil, false
3172}
3173
3174// AsAmazonS3Dataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3175func (amod AmazonMWSObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
3176	return nil, false
3177}
3178
3179// AsDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3180func (amod AmazonMWSObjectDataset) AsDataset() (*Dataset, bool) {
3181	return nil, false
3182}
3183
3184// AsBasicDataset is the BasicDataset implementation for AmazonMWSObjectDataset.
3185func (amod AmazonMWSObjectDataset) AsBasicDataset() (BasicDataset, bool) {
3186	return &amod, true
3187}
3188
3189// AmazonMWSSource a copy activity Amazon Marketplace Web Service source.
3190type AmazonMWSSource struct {
3191	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
3192	Query interface{} `json:"query,omitempty"`
3193	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
3194	AdditionalProperties map[string]interface{} `json:""`
3195	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
3196	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
3197	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
3198	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
3199	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
3200	Type TypeBasicCopySource `json:"type,omitempty"`
3201}
3202
3203// MarshalJSON is the custom marshaler for AmazonMWSSource.
3204func (ams AmazonMWSSource) MarshalJSON() ([]byte, error) {
3205	ams.Type = TypeAmazonMWSSource
3206	objectMap := make(map[string]interface{})
3207	objectMap["query"] = ams.Query
3208	objectMap["sourceRetryCount"] = ams.SourceRetryCount
3209	objectMap["sourceRetryWait"] = ams.SourceRetryWait
3210	if ams.Type != "" {
3211		objectMap["type"] = ams.Type
3212	}
3213	for k, v := range ams.AdditionalProperties {
3214		objectMap[k] = v
3215	}
3216	return json.Marshal(objectMap)
3217}
3218
3219// AsAmazonRedshiftSource is the BasicCopySource implementation for AmazonMWSSource.
3220func (ams AmazonMWSSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
3221	return nil, false
3222}
3223
3224// AsResponsysSource is the BasicCopySource implementation for AmazonMWSSource.
3225func (ams AmazonMWSSource) AsResponsysSource() (*ResponsysSource, bool) {
3226	return nil, false
3227}
3228
3229// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AmazonMWSSource.
3230func (ams AmazonMWSSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
3231	return nil, false
3232}
3233
3234// AsVerticaSource is the BasicCopySource implementation for AmazonMWSSource.
3235func (ams AmazonMWSSource) AsVerticaSource() (*VerticaSource, bool) {
3236	return nil, false
3237}
3238
3239// AsNetezzaSource is the BasicCopySource implementation for AmazonMWSSource.
3240func (ams AmazonMWSSource) AsNetezzaSource() (*NetezzaSource, bool) {
3241	return nil, false
3242}
3243
3244// AsZohoSource is the BasicCopySource implementation for AmazonMWSSource.
3245func (ams AmazonMWSSource) AsZohoSource() (*ZohoSource, bool) {
3246	return nil, false
3247}
3248
3249// AsXeroSource is the BasicCopySource implementation for AmazonMWSSource.
3250func (ams AmazonMWSSource) AsXeroSource() (*XeroSource, bool) {
3251	return nil, false
3252}
3253
3254// AsSquareSource is the BasicCopySource implementation for AmazonMWSSource.
3255func (ams AmazonMWSSource) AsSquareSource() (*SquareSource, bool) {
3256	return nil, false
3257}
3258
3259// AsSparkSource is the BasicCopySource implementation for AmazonMWSSource.
3260func (ams AmazonMWSSource) AsSparkSource() (*SparkSource, bool) {
3261	return nil, false
3262}
3263
3264// AsShopifySource is the BasicCopySource implementation for AmazonMWSSource.
3265func (ams AmazonMWSSource) AsShopifySource() (*ShopifySource, bool) {
3266	return nil, false
3267}
3268
3269// AsServiceNowSource is the BasicCopySource implementation for AmazonMWSSource.
3270func (ams AmazonMWSSource) AsServiceNowSource() (*ServiceNowSource, bool) {
3271	return nil, false
3272}
3273
3274// AsQuickBooksSource is the BasicCopySource implementation for AmazonMWSSource.
3275func (ams AmazonMWSSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
3276	return nil, false
3277}
3278
3279// AsPrestoSource is the BasicCopySource implementation for AmazonMWSSource.
3280func (ams AmazonMWSSource) AsPrestoSource() (*PrestoSource, bool) {
3281	return nil, false
3282}
3283
3284// AsPhoenixSource is the BasicCopySource implementation for AmazonMWSSource.
3285func (ams AmazonMWSSource) AsPhoenixSource() (*PhoenixSource, bool) {
3286	return nil, false
3287}
3288
3289// AsPaypalSource is the BasicCopySource implementation for AmazonMWSSource.
3290func (ams AmazonMWSSource) AsPaypalSource() (*PaypalSource, bool) {
3291	return nil, false
3292}
3293
3294// AsMarketoSource is the BasicCopySource implementation for AmazonMWSSource.
3295func (ams AmazonMWSSource) AsMarketoSource() (*MarketoSource, bool) {
3296	return nil, false
3297}
3298
3299// AsMariaDBSource is the BasicCopySource implementation for AmazonMWSSource.
3300func (ams AmazonMWSSource) AsMariaDBSource() (*MariaDBSource, bool) {
3301	return nil, false
3302}
3303
3304// AsMagentoSource is the BasicCopySource implementation for AmazonMWSSource.
3305func (ams AmazonMWSSource) AsMagentoSource() (*MagentoSource, bool) {
3306	return nil, false
3307}
3308
3309// AsJiraSource is the BasicCopySource implementation for AmazonMWSSource.
3310func (ams AmazonMWSSource) AsJiraSource() (*JiraSource, bool) {
3311	return nil, false
3312}
3313
3314// AsImpalaSource is the BasicCopySource implementation for AmazonMWSSource.
3315func (ams AmazonMWSSource) AsImpalaSource() (*ImpalaSource, bool) {
3316	return nil, false
3317}
3318
3319// AsHubspotSource is the BasicCopySource implementation for AmazonMWSSource.
3320func (ams AmazonMWSSource) AsHubspotSource() (*HubspotSource, bool) {
3321	return nil, false
3322}
3323
3324// AsHiveSource is the BasicCopySource implementation for AmazonMWSSource.
3325func (ams AmazonMWSSource) AsHiveSource() (*HiveSource, bool) {
3326	return nil, false
3327}
3328
3329// AsHBaseSource is the BasicCopySource implementation for AmazonMWSSource.
3330func (ams AmazonMWSSource) AsHBaseSource() (*HBaseSource, bool) {
3331	return nil, false
3332}
3333
3334// AsGreenplumSource is the BasicCopySource implementation for AmazonMWSSource.
3335func (ams AmazonMWSSource) AsGreenplumSource() (*GreenplumSource, bool) {
3336	return nil, false
3337}
3338
3339// AsGoogleBigQuerySource is the BasicCopySource implementation for AmazonMWSSource.
3340func (ams AmazonMWSSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
3341	return nil, false
3342}
3343
3344// AsEloquaSource is the BasicCopySource implementation for AmazonMWSSource.
3345func (ams AmazonMWSSource) AsEloquaSource() (*EloquaSource, bool) {
3346	return nil, false
3347}
3348
3349// AsDrillSource is the BasicCopySource implementation for AmazonMWSSource.
3350func (ams AmazonMWSSource) AsDrillSource() (*DrillSource, bool) {
3351	return nil, false
3352}
3353
3354// AsCouchbaseSource is the BasicCopySource implementation for AmazonMWSSource.
3355func (ams AmazonMWSSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
3356	return nil, false
3357}
3358
3359// AsConcurSource is the BasicCopySource implementation for AmazonMWSSource.
3360func (ams AmazonMWSSource) AsConcurSource() (*ConcurSource, bool) {
3361	return nil, false
3362}
3363
3364// AsAzurePostgreSQLSource is the BasicCopySource implementation for AmazonMWSSource.
3365func (ams AmazonMWSSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
3366	return nil, false
3367}
3368
3369// AsAmazonMWSSource is the BasicCopySource implementation for AmazonMWSSource.
3370func (ams AmazonMWSSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
3371	return &ams, true
3372}
3373
3374// AsHTTPSource is the BasicCopySource implementation for AmazonMWSSource.
3375func (ams AmazonMWSSource) AsHTTPSource() (*HTTPSource, bool) {
3376	return nil, false
3377}
3378
3379// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AmazonMWSSource.
3380func (ams AmazonMWSSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
3381	return nil, false
3382}
3383
3384// AsMongoDbSource is the BasicCopySource implementation for AmazonMWSSource.
3385func (ams AmazonMWSSource) AsMongoDbSource() (*MongoDbSource, bool) {
3386	return nil, false
3387}
3388
3389// AsCassandraSource is the BasicCopySource implementation for AmazonMWSSource.
3390func (ams AmazonMWSSource) AsCassandraSource() (*CassandraSource, bool) {
3391	return nil, false
3392}
3393
3394// AsWebSource is the BasicCopySource implementation for AmazonMWSSource.
3395func (ams AmazonMWSSource) AsWebSource() (*WebSource, bool) {
3396	return nil, false
3397}
3398
3399// AsOracleSource is the BasicCopySource implementation for AmazonMWSSource.
3400func (ams AmazonMWSSource) AsOracleSource() (*OracleSource, bool) {
3401	return nil, false
3402}
3403
3404// AsAzureMySQLSource is the BasicCopySource implementation for AmazonMWSSource.
3405func (ams AmazonMWSSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
3406	return nil, false
3407}
3408
3409// AsHdfsSource is the BasicCopySource implementation for AmazonMWSSource.
3410func (ams AmazonMWSSource) AsHdfsSource() (*HdfsSource, bool) {
3411	return nil, false
3412}
3413
3414// AsFileSystemSource is the BasicCopySource implementation for AmazonMWSSource.
3415func (ams AmazonMWSSource) AsFileSystemSource() (*FileSystemSource, bool) {
3416	return nil, false
3417}
3418
3419// AsSQLDWSource is the BasicCopySource implementation for AmazonMWSSource.
3420func (ams AmazonMWSSource) AsSQLDWSource() (*SQLDWSource, bool) {
3421	return nil, false
3422}
3423
3424// AsSQLSource is the BasicCopySource implementation for AmazonMWSSource.
3425func (ams AmazonMWSSource) AsSQLSource() (*SQLSource, bool) {
3426	return nil, false
3427}
3428
3429// AsSapEccSource is the BasicCopySource implementation for AmazonMWSSource.
3430func (ams AmazonMWSSource) AsSapEccSource() (*SapEccSource, bool) {
3431	return nil, false
3432}
3433
3434// AsSapCloudForCustomerSource is the BasicCopySource implementation for AmazonMWSSource.
3435func (ams AmazonMWSSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
3436	return nil, false
3437}
3438
3439// AsSalesforceSource is the BasicCopySource implementation for AmazonMWSSource.
3440func (ams AmazonMWSSource) AsSalesforceSource() (*SalesforceSource, bool) {
3441	return nil, false
3442}
3443
3444// AsRelationalSource is the BasicCopySource implementation for AmazonMWSSource.
3445func (ams AmazonMWSSource) AsRelationalSource() (*RelationalSource, bool) {
3446	return nil, false
3447}
3448
3449// AsDynamicsSource is the BasicCopySource implementation for AmazonMWSSource.
3450func (ams AmazonMWSSource) AsDynamicsSource() (*DynamicsSource, bool) {
3451	return nil, false
3452}
3453
3454// AsDocumentDbCollectionSource is the BasicCopySource implementation for AmazonMWSSource.
3455func (ams AmazonMWSSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
3456	return nil, false
3457}
3458
3459// AsBlobSource is the BasicCopySource implementation for AmazonMWSSource.
3460func (ams AmazonMWSSource) AsBlobSource() (*BlobSource, bool) {
3461	return nil, false
3462}
3463
3464// AsAzureTableSource is the BasicCopySource implementation for AmazonMWSSource.
3465func (ams AmazonMWSSource) AsAzureTableSource() (*AzureTableSource, bool) {
3466	return nil, false
3467}
3468
3469// AsCopySource is the BasicCopySource implementation for AmazonMWSSource.
3470func (ams AmazonMWSSource) AsCopySource() (*CopySource, bool) {
3471	return nil, false
3472}
3473
3474// AsBasicCopySource is the BasicCopySource implementation for AmazonMWSSource.
3475func (ams AmazonMWSSource) AsBasicCopySource() (BasicCopySource, bool) {
3476	return &ams, true
3477}
3478
3479// AmazonRedshiftLinkedService linked service for Amazon Redshift.
3480type AmazonRedshiftLinkedService struct {
3481	// AmazonRedshiftLinkedServiceTypeProperties - Amazon Redshift linked service properties.
3482	*AmazonRedshiftLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
3483	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
3484	AdditionalProperties map[string]interface{} `json:""`
3485	// ConnectVia - The integration runtime reference.
3486	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
3487	// Description - Linked service description.
3488	Description *string `json:"description,omitempty"`
3489	// Parameters - Parameters for linked service.
3490	Parameters map[string]*ParameterSpecification `json:"parameters"`
3491	// Annotations - List of tags that can be used for describing the Dataset.
3492	Annotations *[]interface{} `json:"annotations,omitempty"`
3493	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
3494	Type TypeBasicLinkedService `json:"type,omitempty"`
3495}
3496
3497// MarshalJSON is the custom marshaler for AmazonRedshiftLinkedService.
3498func (arls AmazonRedshiftLinkedService) MarshalJSON() ([]byte, error) {
3499	arls.Type = TypeAmazonRedshift
3500	objectMap := make(map[string]interface{})
3501	if arls.AmazonRedshiftLinkedServiceTypeProperties != nil {
3502		objectMap["typeProperties"] = arls.AmazonRedshiftLinkedServiceTypeProperties
3503	}
3504	if arls.ConnectVia != nil {
3505		objectMap["connectVia"] = arls.ConnectVia
3506	}
3507	if arls.Description != nil {
3508		objectMap["description"] = arls.Description
3509	}
3510	if arls.Parameters != nil {
3511		objectMap["parameters"] = arls.Parameters
3512	}
3513	if arls.Annotations != nil {
3514		objectMap["annotations"] = arls.Annotations
3515	}
3516	if arls.Type != "" {
3517		objectMap["type"] = arls.Type
3518	}
3519	for k, v := range arls.AdditionalProperties {
3520		objectMap[k] = v
3521	}
3522	return json.Marshal(objectMap)
3523}
3524
3525// AsResponsysLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3526func (arls AmazonRedshiftLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
3527	return nil, false
3528}
3529
3530// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3531func (arls AmazonRedshiftLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
3532	return nil, false
3533}
3534
3535// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3536func (arls AmazonRedshiftLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
3537	return nil, false
3538}
3539
3540// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3541func (arls AmazonRedshiftLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
3542	return nil, false
3543}
3544
3545// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3546func (arls AmazonRedshiftLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
3547	return nil, false
3548}
3549
3550// AsNetezzaLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3551func (arls AmazonRedshiftLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
3552	return nil, false
3553}
3554
3555// AsVerticaLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3556func (arls AmazonRedshiftLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
3557	return nil, false
3558}
3559
3560// AsZohoLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3561func (arls AmazonRedshiftLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
3562	return nil, false
3563}
3564
3565// AsXeroLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3566func (arls AmazonRedshiftLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
3567	return nil, false
3568}
3569
3570// AsSquareLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3571func (arls AmazonRedshiftLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
3572	return nil, false
3573}
3574
3575// AsSparkLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3576func (arls AmazonRedshiftLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
3577	return nil, false
3578}
3579
3580// AsShopifyLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3581func (arls AmazonRedshiftLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
3582	return nil, false
3583}
3584
3585// AsServiceNowLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3586func (arls AmazonRedshiftLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
3587	return nil, false
3588}
3589
3590// AsQuickBooksLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3591func (arls AmazonRedshiftLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
3592	return nil, false
3593}
3594
3595// AsPrestoLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3596func (arls AmazonRedshiftLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
3597	return nil, false
3598}
3599
3600// AsPhoenixLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3601func (arls AmazonRedshiftLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
3602	return nil, false
3603}
3604
3605// AsPaypalLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3606func (arls AmazonRedshiftLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
3607	return nil, false
3608}
3609
3610// AsMarketoLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3611func (arls AmazonRedshiftLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
3612	return nil, false
3613}
3614
3615// AsMariaDBLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3616func (arls AmazonRedshiftLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
3617	return nil, false
3618}
3619
3620// AsMagentoLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3621func (arls AmazonRedshiftLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
3622	return nil, false
3623}
3624
3625// AsJiraLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3626func (arls AmazonRedshiftLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
3627	return nil, false
3628}
3629
3630// AsImpalaLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3631func (arls AmazonRedshiftLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
3632	return nil, false
3633}
3634
3635// AsHubspotLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3636func (arls AmazonRedshiftLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
3637	return nil, false
3638}
3639
3640// AsHiveLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3641func (arls AmazonRedshiftLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
3642	return nil, false
3643}
3644
3645// AsHBaseLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3646func (arls AmazonRedshiftLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
3647	return nil, false
3648}
3649
3650// AsGreenplumLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3651func (arls AmazonRedshiftLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
3652	return nil, false
3653}
3654
3655// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3656func (arls AmazonRedshiftLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
3657	return nil, false
3658}
3659
3660// AsEloquaLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3661func (arls AmazonRedshiftLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
3662	return nil, false
3663}
3664
3665// AsDrillLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3666func (arls AmazonRedshiftLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
3667	return nil, false
3668}
3669
3670// AsCouchbaseLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3671func (arls AmazonRedshiftLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
3672	return nil, false
3673}
3674
3675// AsConcurLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3676func (arls AmazonRedshiftLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
3677	return nil, false
3678}
3679
3680// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3681func (arls AmazonRedshiftLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
3682	return nil, false
3683}
3684
3685// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3686func (arls AmazonRedshiftLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
3687	return nil, false
3688}
3689
3690// AsSapHanaLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3691func (arls AmazonRedshiftLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
3692	return nil, false
3693}
3694
3695// AsSapBWLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3696func (arls AmazonRedshiftLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
3697	return nil, false
3698}
3699
3700// AsSftpServerLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3701func (arls AmazonRedshiftLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
3702	return nil, false
3703}
3704
3705// AsFtpServerLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3706func (arls AmazonRedshiftLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
3707	return nil, false
3708}
3709
3710// AsHTTPLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3711func (arls AmazonRedshiftLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
3712	return nil, false
3713}
3714
3715// AsAzureSearchLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3716func (arls AmazonRedshiftLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
3717	return nil, false
3718}
3719
3720// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3721func (arls AmazonRedshiftLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
3722	return nil, false
3723}
3724
3725// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3726func (arls AmazonRedshiftLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
3727	return &arls, true
3728}
3729
3730// AsAmazonS3LinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3731func (arls AmazonRedshiftLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
3732	return nil, false
3733}
3734
3735// AsSapEccLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3736func (arls AmazonRedshiftLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
3737	return nil, false
3738}
3739
3740// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3741func (arls AmazonRedshiftLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
3742	return nil, false
3743}
3744
3745// AsSalesforceLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3746func (arls AmazonRedshiftLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
3747	return nil, false
3748}
3749
3750// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3751func (arls AmazonRedshiftLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
3752	return nil, false
3753}
3754
3755// AsMongoDbLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3756func (arls AmazonRedshiftLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
3757	return nil, false
3758}
3759
3760// AsCassandraLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3761func (arls AmazonRedshiftLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
3762	return nil, false
3763}
3764
3765// AsWebLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3766func (arls AmazonRedshiftLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
3767	return nil, false
3768}
3769
3770// AsODataLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3771func (arls AmazonRedshiftLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
3772	return nil, false
3773}
3774
3775// AsHdfsLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3776func (arls AmazonRedshiftLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
3777	return nil, false
3778}
3779
3780// AsOdbcLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3781func (arls AmazonRedshiftLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
3782	return nil, false
3783}
3784
3785// AsAzureMLLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3786func (arls AmazonRedshiftLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
3787	return nil, false
3788}
3789
3790// AsTeradataLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3791func (arls AmazonRedshiftLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
3792	return nil, false
3793}
3794
3795// AsDb2LinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3796func (arls AmazonRedshiftLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
3797	return nil, false
3798}
3799
3800// AsSybaseLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3801func (arls AmazonRedshiftLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
3802	return nil, false
3803}
3804
3805// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3806func (arls AmazonRedshiftLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
3807	return nil, false
3808}
3809
3810// AsMySQLLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3811func (arls AmazonRedshiftLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
3812	return nil, false
3813}
3814
3815// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3816func (arls AmazonRedshiftLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
3817	return nil, false
3818}
3819
3820// AsOracleLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3821func (arls AmazonRedshiftLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
3822	return nil, false
3823}
3824
3825// AsFileServerLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3826func (arls AmazonRedshiftLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
3827	return nil, false
3828}
3829
3830// AsHDInsightLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3831func (arls AmazonRedshiftLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
3832	return nil, false
3833}
3834
3835// AsDynamicsLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3836func (arls AmazonRedshiftLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
3837	return nil, false
3838}
3839
3840// AsCosmosDbLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3841func (arls AmazonRedshiftLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
3842	return nil, false
3843}
3844
3845// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3846func (arls AmazonRedshiftLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
3847	return nil, false
3848}
3849
3850// AsAzureBatchLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3851func (arls AmazonRedshiftLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
3852	return nil, false
3853}
3854
3855// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3856func (arls AmazonRedshiftLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
3857	return nil, false
3858}
3859
3860// AsSQLServerLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3861func (arls AmazonRedshiftLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
3862	return nil, false
3863}
3864
3865// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3866func (arls AmazonRedshiftLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
3867	return nil, false
3868}
3869
3870// AsAzureStorageLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3871func (arls AmazonRedshiftLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
3872	return nil, false
3873}
3874
3875// AsLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3876func (arls AmazonRedshiftLinkedService) AsLinkedService() (*LinkedService, bool) {
3877	return nil, false
3878}
3879
3880// AsBasicLinkedService is the BasicLinkedService implementation for AmazonRedshiftLinkedService.
3881func (arls AmazonRedshiftLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
3882	return &arls, true
3883}
3884
3885// UnmarshalJSON is the custom unmarshaler for AmazonRedshiftLinkedService struct.
3886func (arls *AmazonRedshiftLinkedService) UnmarshalJSON(body []byte) error {
3887	var m map[string]*json.RawMessage
3888	err := json.Unmarshal(body, &m)
3889	if err != nil {
3890		return err
3891	}
3892	for k, v := range m {
3893		switch k {
3894		case "typeProperties":
3895			if v != nil {
3896				var amazonRedshiftLinkedServiceTypeProperties AmazonRedshiftLinkedServiceTypeProperties
3897				err = json.Unmarshal(*v, &amazonRedshiftLinkedServiceTypeProperties)
3898				if err != nil {
3899					return err
3900				}
3901				arls.AmazonRedshiftLinkedServiceTypeProperties = &amazonRedshiftLinkedServiceTypeProperties
3902			}
3903		default:
3904			if v != nil {
3905				var additionalProperties interface{}
3906				err = json.Unmarshal(*v, &additionalProperties)
3907				if err != nil {
3908					return err
3909				}
3910				if arls.AdditionalProperties == nil {
3911					arls.AdditionalProperties = make(map[string]interface{})
3912				}
3913				arls.AdditionalProperties[k] = additionalProperties
3914			}
3915		case "connectVia":
3916			if v != nil {
3917				var connectVia IntegrationRuntimeReference
3918				err = json.Unmarshal(*v, &connectVia)
3919				if err != nil {
3920					return err
3921				}
3922				arls.ConnectVia = &connectVia
3923			}
3924		case "description":
3925			if v != nil {
3926				var description string
3927				err = json.Unmarshal(*v, &description)
3928				if err != nil {
3929					return err
3930				}
3931				arls.Description = &description
3932			}
3933		case "parameters":
3934			if v != nil {
3935				var parameters map[string]*ParameterSpecification
3936				err = json.Unmarshal(*v, &parameters)
3937				if err != nil {
3938					return err
3939				}
3940				arls.Parameters = parameters
3941			}
3942		case "annotations":
3943			if v != nil {
3944				var annotations []interface{}
3945				err = json.Unmarshal(*v, &annotations)
3946				if err != nil {
3947					return err
3948				}
3949				arls.Annotations = &annotations
3950			}
3951		case "type":
3952			if v != nil {
3953				var typeVar TypeBasicLinkedService
3954				err = json.Unmarshal(*v, &typeVar)
3955				if err != nil {
3956					return err
3957				}
3958				arls.Type = typeVar
3959			}
3960		}
3961	}
3962
3963	return nil
3964}
3965
3966// AmazonRedshiftLinkedServiceTypeProperties amazon Redshift linked service properties.
3967type AmazonRedshiftLinkedServiceTypeProperties struct {
3968	// Server - The name of the Amazon Redshift server. Type: string (or Expression with resultType string).
3969	Server interface{} `json:"server,omitempty"`
3970	// Username - The username of the Amazon Redshift source. Type: string (or Expression with resultType string).
3971	Username interface{} `json:"username,omitempty"`
3972	// Password - The password of the Amazon Redshift source.
3973	Password BasicSecretBase `json:"password,omitempty"`
3974	// Database - The database name of the Amazon Redshift source. Type: string (or Expression with resultType string).
3975	Database interface{} `json:"database,omitempty"`
3976	// Port - The TCP port number that the Amazon Redshift server uses to listen for client connections. The default value is 5439. Type: integer (or Expression with resultType integer).
3977	Port interface{} `json:"port,omitempty"`
3978	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
3979	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
3980}
3981
3982// UnmarshalJSON is the custom unmarshaler for AmazonRedshiftLinkedServiceTypeProperties struct.
3983func (arlstp *AmazonRedshiftLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
3984	var m map[string]*json.RawMessage
3985	err := json.Unmarshal(body, &m)
3986	if err != nil {
3987		return err
3988	}
3989	for k, v := range m {
3990		switch k {
3991		case "server":
3992			if v != nil {
3993				var server interface{}
3994				err = json.Unmarshal(*v, &server)
3995				if err != nil {
3996					return err
3997				}
3998				arlstp.Server = server
3999			}
4000		case "username":
4001			if v != nil {
4002				var username interface{}
4003				err = json.Unmarshal(*v, &username)
4004				if err != nil {
4005					return err
4006				}
4007				arlstp.Username = username
4008			}
4009		case "password":
4010			if v != nil {
4011				password, err := unmarshalBasicSecretBase(*v)
4012				if err != nil {
4013					return err
4014				}
4015				arlstp.Password = password
4016			}
4017		case "database":
4018			if v != nil {
4019				var databaseVar interface{}
4020				err = json.Unmarshal(*v, &databaseVar)
4021				if err != nil {
4022					return err
4023				}
4024				arlstp.Database = databaseVar
4025			}
4026		case "port":
4027			if v != nil {
4028				var port interface{}
4029				err = json.Unmarshal(*v, &port)
4030				if err != nil {
4031					return err
4032				}
4033				arlstp.Port = port
4034			}
4035		case "encryptedCredential":
4036			if v != nil {
4037				var encryptedCredential interface{}
4038				err = json.Unmarshal(*v, &encryptedCredential)
4039				if err != nil {
4040					return err
4041				}
4042				arlstp.EncryptedCredential = encryptedCredential
4043			}
4044		}
4045	}
4046
4047	return nil
4048}
4049
4050// AmazonRedshiftSource a copy activity source for Amazon Redshift Source.
4051type AmazonRedshiftSource struct {
4052	// Query - Database query. Type: string (or Expression with resultType string).
4053	Query interface{} `json:"query,omitempty"`
4054	// RedshiftUnloadSettings - The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.
4055	RedshiftUnloadSettings *RedshiftUnloadSettings `json:"redshiftUnloadSettings,omitempty"`
4056	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
4057	AdditionalProperties map[string]interface{} `json:""`
4058	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
4059	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
4060	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
4061	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
4062	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
4063	Type TypeBasicCopySource `json:"type,omitempty"`
4064}
4065
4066// MarshalJSON is the custom marshaler for AmazonRedshiftSource.
4067func (ars AmazonRedshiftSource) MarshalJSON() ([]byte, error) {
4068	ars.Type = TypeAmazonRedshiftSource
4069	objectMap := make(map[string]interface{})
4070	objectMap["query"] = ars.Query
4071	if ars.RedshiftUnloadSettings != nil {
4072		objectMap["redshiftUnloadSettings"] = ars.RedshiftUnloadSettings
4073	}
4074	objectMap["sourceRetryCount"] = ars.SourceRetryCount
4075	objectMap["sourceRetryWait"] = ars.SourceRetryWait
4076	if ars.Type != "" {
4077		objectMap["type"] = ars.Type
4078	}
4079	for k, v := range ars.AdditionalProperties {
4080		objectMap[k] = v
4081	}
4082	return json.Marshal(objectMap)
4083}
4084
4085// AsAmazonRedshiftSource is the BasicCopySource implementation for AmazonRedshiftSource.
4086func (ars AmazonRedshiftSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
4087	return &ars, true
4088}
4089
4090// AsResponsysSource is the BasicCopySource implementation for AmazonRedshiftSource.
4091func (ars AmazonRedshiftSource) AsResponsysSource() (*ResponsysSource, bool) {
4092	return nil, false
4093}
4094
4095// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AmazonRedshiftSource.
4096func (ars AmazonRedshiftSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
4097	return nil, false
4098}
4099
4100// AsVerticaSource is the BasicCopySource implementation for AmazonRedshiftSource.
4101func (ars AmazonRedshiftSource) AsVerticaSource() (*VerticaSource, bool) {
4102	return nil, false
4103}
4104
4105// AsNetezzaSource is the BasicCopySource implementation for AmazonRedshiftSource.
4106func (ars AmazonRedshiftSource) AsNetezzaSource() (*NetezzaSource, bool) {
4107	return nil, false
4108}
4109
4110// AsZohoSource is the BasicCopySource implementation for AmazonRedshiftSource.
4111func (ars AmazonRedshiftSource) AsZohoSource() (*ZohoSource, bool) {
4112	return nil, false
4113}
4114
4115// AsXeroSource is the BasicCopySource implementation for AmazonRedshiftSource.
4116func (ars AmazonRedshiftSource) AsXeroSource() (*XeroSource, bool) {
4117	return nil, false
4118}
4119
4120// AsSquareSource is the BasicCopySource implementation for AmazonRedshiftSource.
4121func (ars AmazonRedshiftSource) AsSquareSource() (*SquareSource, bool) {
4122	return nil, false
4123}
4124
4125// AsSparkSource is the BasicCopySource implementation for AmazonRedshiftSource.
4126func (ars AmazonRedshiftSource) AsSparkSource() (*SparkSource, bool) {
4127	return nil, false
4128}
4129
4130// AsShopifySource is the BasicCopySource implementation for AmazonRedshiftSource.
4131func (ars AmazonRedshiftSource) AsShopifySource() (*ShopifySource, bool) {
4132	return nil, false
4133}
4134
4135// AsServiceNowSource is the BasicCopySource implementation for AmazonRedshiftSource.
4136func (ars AmazonRedshiftSource) AsServiceNowSource() (*ServiceNowSource, bool) {
4137	return nil, false
4138}
4139
4140// AsQuickBooksSource is the BasicCopySource implementation for AmazonRedshiftSource.
4141func (ars AmazonRedshiftSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
4142	return nil, false
4143}
4144
4145// AsPrestoSource is the BasicCopySource implementation for AmazonRedshiftSource.
4146func (ars AmazonRedshiftSource) AsPrestoSource() (*PrestoSource, bool) {
4147	return nil, false
4148}
4149
4150// AsPhoenixSource is the BasicCopySource implementation for AmazonRedshiftSource.
4151func (ars AmazonRedshiftSource) AsPhoenixSource() (*PhoenixSource, bool) {
4152	return nil, false
4153}
4154
4155// AsPaypalSource is the BasicCopySource implementation for AmazonRedshiftSource.
4156func (ars AmazonRedshiftSource) AsPaypalSource() (*PaypalSource, bool) {
4157	return nil, false
4158}
4159
4160// AsMarketoSource is the BasicCopySource implementation for AmazonRedshiftSource.
4161func (ars AmazonRedshiftSource) AsMarketoSource() (*MarketoSource, bool) {
4162	return nil, false
4163}
4164
4165// AsMariaDBSource is the BasicCopySource implementation for AmazonRedshiftSource.
4166func (ars AmazonRedshiftSource) AsMariaDBSource() (*MariaDBSource, bool) {
4167	return nil, false
4168}
4169
4170// AsMagentoSource is the BasicCopySource implementation for AmazonRedshiftSource.
4171func (ars AmazonRedshiftSource) AsMagentoSource() (*MagentoSource, bool) {
4172	return nil, false
4173}
4174
4175// AsJiraSource is the BasicCopySource implementation for AmazonRedshiftSource.
4176func (ars AmazonRedshiftSource) AsJiraSource() (*JiraSource, bool) {
4177	return nil, false
4178}
4179
4180// AsImpalaSource is the BasicCopySource implementation for AmazonRedshiftSource.
4181func (ars AmazonRedshiftSource) AsImpalaSource() (*ImpalaSource, bool) {
4182	return nil, false
4183}
4184
4185// AsHubspotSource is the BasicCopySource implementation for AmazonRedshiftSource.
4186func (ars AmazonRedshiftSource) AsHubspotSource() (*HubspotSource, bool) {
4187	return nil, false
4188}
4189
4190// AsHiveSource is the BasicCopySource implementation for AmazonRedshiftSource.
4191func (ars AmazonRedshiftSource) AsHiveSource() (*HiveSource, bool) {
4192	return nil, false
4193}
4194
4195// AsHBaseSource is the BasicCopySource implementation for AmazonRedshiftSource.
4196func (ars AmazonRedshiftSource) AsHBaseSource() (*HBaseSource, bool) {
4197	return nil, false
4198}
4199
4200// AsGreenplumSource is the BasicCopySource implementation for AmazonRedshiftSource.
4201func (ars AmazonRedshiftSource) AsGreenplumSource() (*GreenplumSource, bool) {
4202	return nil, false
4203}
4204
4205// AsGoogleBigQuerySource is the BasicCopySource implementation for AmazonRedshiftSource.
4206func (ars AmazonRedshiftSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
4207	return nil, false
4208}
4209
4210// AsEloquaSource is the BasicCopySource implementation for AmazonRedshiftSource.
4211func (ars AmazonRedshiftSource) AsEloquaSource() (*EloquaSource, bool) {
4212	return nil, false
4213}
4214
4215// AsDrillSource is the BasicCopySource implementation for AmazonRedshiftSource.
4216func (ars AmazonRedshiftSource) AsDrillSource() (*DrillSource, bool) {
4217	return nil, false
4218}
4219
4220// AsCouchbaseSource is the BasicCopySource implementation for AmazonRedshiftSource.
4221func (ars AmazonRedshiftSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
4222	return nil, false
4223}
4224
4225// AsConcurSource is the BasicCopySource implementation for AmazonRedshiftSource.
4226func (ars AmazonRedshiftSource) AsConcurSource() (*ConcurSource, bool) {
4227	return nil, false
4228}
4229
4230// AsAzurePostgreSQLSource is the BasicCopySource implementation for AmazonRedshiftSource.
4231func (ars AmazonRedshiftSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
4232	return nil, false
4233}
4234
4235// AsAmazonMWSSource is the BasicCopySource implementation for AmazonRedshiftSource.
4236func (ars AmazonRedshiftSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
4237	return nil, false
4238}
4239
4240// AsHTTPSource is the BasicCopySource implementation for AmazonRedshiftSource.
4241func (ars AmazonRedshiftSource) AsHTTPSource() (*HTTPSource, bool) {
4242	return nil, false
4243}
4244
4245// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AmazonRedshiftSource.
4246func (ars AmazonRedshiftSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
4247	return nil, false
4248}
4249
4250// AsMongoDbSource is the BasicCopySource implementation for AmazonRedshiftSource.
4251func (ars AmazonRedshiftSource) AsMongoDbSource() (*MongoDbSource, bool) {
4252	return nil, false
4253}
4254
4255// AsCassandraSource is the BasicCopySource implementation for AmazonRedshiftSource.
4256func (ars AmazonRedshiftSource) AsCassandraSource() (*CassandraSource, bool) {
4257	return nil, false
4258}
4259
4260// AsWebSource is the BasicCopySource implementation for AmazonRedshiftSource.
4261func (ars AmazonRedshiftSource) AsWebSource() (*WebSource, bool) {
4262	return nil, false
4263}
4264
4265// AsOracleSource is the BasicCopySource implementation for AmazonRedshiftSource.
4266func (ars AmazonRedshiftSource) AsOracleSource() (*OracleSource, bool) {
4267	return nil, false
4268}
4269
4270// AsAzureMySQLSource is the BasicCopySource implementation for AmazonRedshiftSource.
4271func (ars AmazonRedshiftSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
4272	return nil, false
4273}
4274
4275// AsHdfsSource is the BasicCopySource implementation for AmazonRedshiftSource.
4276func (ars AmazonRedshiftSource) AsHdfsSource() (*HdfsSource, bool) {
4277	return nil, false
4278}
4279
4280// AsFileSystemSource is the BasicCopySource implementation for AmazonRedshiftSource.
4281func (ars AmazonRedshiftSource) AsFileSystemSource() (*FileSystemSource, bool) {
4282	return nil, false
4283}
4284
4285// AsSQLDWSource is the BasicCopySource implementation for AmazonRedshiftSource.
4286func (ars AmazonRedshiftSource) AsSQLDWSource() (*SQLDWSource, bool) {
4287	return nil, false
4288}
4289
4290// AsSQLSource is the BasicCopySource implementation for AmazonRedshiftSource.
4291func (ars AmazonRedshiftSource) AsSQLSource() (*SQLSource, bool) {
4292	return nil, false
4293}
4294
4295// AsSapEccSource is the BasicCopySource implementation for AmazonRedshiftSource.
4296func (ars AmazonRedshiftSource) AsSapEccSource() (*SapEccSource, bool) {
4297	return nil, false
4298}
4299
4300// AsSapCloudForCustomerSource is the BasicCopySource implementation for AmazonRedshiftSource.
4301func (ars AmazonRedshiftSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
4302	return nil, false
4303}
4304
4305// AsSalesforceSource is the BasicCopySource implementation for AmazonRedshiftSource.
4306func (ars AmazonRedshiftSource) AsSalesforceSource() (*SalesforceSource, bool) {
4307	return nil, false
4308}
4309
4310// AsRelationalSource is the BasicCopySource implementation for AmazonRedshiftSource.
4311func (ars AmazonRedshiftSource) AsRelationalSource() (*RelationalSource, bool) {
4312	return nil, false
4313}
4314
4315// AsDynamicsSource is the BasicCopySource implementation for AmazonRedshiftSource.
4316func (ars AmazonRedshiftSource) AsDynamicsSource() (*DynamicsSource, bool) {
4317	return nil, false
4318}
4319
4320// AsDocumentDbCollectionSource is the BasicCopySource implementation for AmazonRedshiftSource.
4321func (ars AmazonRedshiftSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
4322	return nil, false
4323}
4324
4325// AsBlobSource is the BasicCopySource implementation for AmazonRedshiftSource.
4326func (ars AmazonRedshiftSource) AsBlobSource() (*BlobSource, bool) {
4327	return nil, false
4328}
4329
4330// AsAzureTableSource is the BasicCopySource implementation for AmazonRedshiftSource.
4331func (ars AmazonRedshiftSource) AsAzureTableSource() (*AzureTableSource, bool) {
4332	return nil, false
4333}
4334
4335// AsCopySource is the BasicCopySource implementation for AmazonRedshiftSource.
4336func (ars AmazonRedshiftSource) AsCopySource() (*CopySource, bool) {
4337	return nil, false
4338}
4339
4340// AsBasicCopySource is the BasicCopySource implementation for AmazonRedshiftSource.
4341func (ars AmazonRedshiftSource) AsBasicCopySource() (BasicCopySource, bool) {
4342	return &ars, true
4343}
4344
4345// AmazonS3Dataset a single Amazon Simple Storage Service (S3) object or a set of S3 objects.
4346type AmazonS3Dataset struct {
4347	// AmazonS3DatasetTypeProperties - Amazon S3 dataset properties.
4348	*AmazonS3DatasetTypeProperties `json:"typeProperties,omitempty"`
4349	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
4350	AdditionalProperties map[string]interface{} `json:""`
4351	// Description - Dataset description.
4352	Description *string `json:"description,omitempty"`
4353	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
4354	Structure interface{} `json:"structure,omitempty"`
4355	// LinkedServiceName - Linked service reference.
4356	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
4357	// Parameters - Parameters for dataset.
4358	Parameters map[string]*ParameterSpecification `json:"parameters"`
4359	// Annotations - List of tags that can be used for describing the Dataset.
4360	Annotations *[]interface{} `json:"annotations,omitempty"`
4361	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
4362	Type TypeBasicDataset `json:"type,omitempty"`
4363}
4364
4365// MarshalJSON is the custom marshaler for AmazonS3Dataset.
4366func (asd AmazonS3Dataset) MarshalJSON() ([]byte, error) {
4367	asd.Type = TypeAmazonS3Object
4368	objectMap := make(map[string]interface{})
4369	if asd.AmazonS3DatasetTypeProperties != nil {
4370		objectMap["typeProperties"] = asd.AmazonS3DatasetTypeProperties
4371	}
4372	if asd.Description != nil {
4373		objectMap["description"] = asd.Description
4374	}
4375	objectMap["structure"] = asd.Structure
4376	if asd.LinkedServiceName != nil {
4377		objectMap["linkedServiceName"] = asd.LinkedServiceName
4378	}
4379	if asd.Parameters != nil {
4380		objectMap["parameters"] = asd.Parameters
4381	}
4382	if asd.Annotations != nil {
4383		objectMap["annotations"] = asd.Annotations
4384	}
4385	if asd.Type != "" {
4386		objectMap["type"] = asd.Type
4387	}
4388	for k, v := range asd.AdditionalProperties {
4389		objectMap[k] = v
4390	}
4391	return json.Marshal(objectMap)
4392}
4393
4394// AsResponsysObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4395func (asd AmazonS3Dataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
4396	return nil, false
4397}
4398
4399// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4400func (asd AmazonS3Dataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
4401	return nil, false
4402}
4403
4404// AsVerticaTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4405func (asd AmazonS3Dataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
4406	return nil, false
4407}
4408
4409// AsNetezzaTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4410func (asd AmazonS3Dataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
4411	return nil, false
4412}
4413
4414// AsZohoObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4415func (asd AmazonS3Dataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
4416	return nil, false
4417}
4418
4419// AsXeroObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4420func (asd AmazonS3Dataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
4421	return nil, false
4422}
4423
4424// AsSquareObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4425func (asd AmazonS3Dataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
4426	return nil, false
4427}
4428
4429// AsSparkObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4430func (asd AmazonS3Dataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
4431	return nil, false
4432}
4433
4434// AsShopifyObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4435func (asd AmazonS3Dataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
4436	return nil, false
4437}
4438
4439// AsServiceNowObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4440func (asd AmazonS3Dataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
4441	return nil, false
4442}
4443
4444// AsQuickBooksObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4445func (asd AmazonS3Dataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
4446	return nil, false
4447}
4448
4449// AsPrestoObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4450func (asd AmazonS3Dataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
4451	return nil, false
4452}
4453
4454// AsPhoenixObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4455func (asd AmazonS3Dataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
4456	return nil, false
4457}
4458
4459// AsPaypalObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4460func (asd AmazonS3Dataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
4461	return nil, false
4462}
4463
4464// AsMarketoObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4465func (asd AmazonS3Dataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
4466	return nil, false
4467}
4468
4469// AsMariaDBTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4470func (asd AmazonS3Dataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
4471	return nil, false
4472}
4473
4474// AsMagentoObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4475func (asd AmazonS3Dataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
4476	return nil, false
4477}
4478
4479// AsJiraObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4480func (asd AmazonS3Dataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
4481	return nil, false
4482}
4483
4484// AsImpalaObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4485func (asd AmazonS3Dataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
4486	return nil, false
4487}
4488
4489// AsHubspotObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4490func (asd AmazonS3Dataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
4491	return nil, false
4492}
4493
4494// AsHiveObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4495func (asd AmazonS3Dataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
4496	return nil, false
4497}
4498
4499// AsHBaseObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4500func (asd AmazonS3Dataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
4501	return nil, false
4502}
4503
4504// AsGreenplumTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4505func (asd AmazonS3Dataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
4506	return nil, false
4507}
4508
4509// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4510func (asd AmazonS3Dataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
4511	return nil, false
4512}
4513
4514// AsEloquaObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4515func (asd AmazonS3Dataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
4516	return nil, false
4517}
4518
4519// AsDrillTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4520func (asd AmazonS3Dataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
4521	return nil, false
4522}
4523
4524// AsCouchbaseTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4525func (asd AmazonS3Dataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
4526	return nil, false
4527}
4528
4529// AsConcurObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4530func (asd AmazonS3Dataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
4531	return nil, false
4532}
4533
4534// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4535func (asd AmazonS3Dataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
4536	return nil, false
4537}
4538
4539// AsAmazonMWSObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4540func (asd AmazonS3Dataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
4541	return nil, false
4542}
4543
4544// AsHTTPDataset is the BasicDataset implementation for AmazonS3Dataset.
4545func (asd AmazonS3Dataset) AsHTTPDataset() (*HTTPDataset, bool) {
4546	return nil, false
4547}
4548
4549// AsAzureSearchIndexDataset is the BasicDataset implementation for AmazonS3Dataset.
4550func (asd AmazonS3Dataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
4551	return nil, false
4552}
4553
4554// AsWebTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4555func (asd AmazonS3Dataset) AsWebTableDataset() (*WebTableDataset, bool) {
4556	return nil, false
4557}
4558
4559// AsSQLServerTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4560func (asd AmazonS3Dataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
4561	return nil, false
4562}
4563
4564// AsSapEccResourceDataset is the BasicDataset implementation for AmazonS3Dataset.
4565func (asd AmazonS3Dataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
4566	return nil, false
4567}
4568
4569// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AmazonS3Dataset.
4570func (asd AmazonS3Dataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
4571	return nil, false
4572}
4573
4574// AsSalesforceObjectDataset is the BasicDataset implementation for AmazonS3Dataset.
4575func (asd AmazonS3Dataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
4576	return nil, false
4577}
4578
4579// AsRelationalTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4580func (asd AmazonS3Dataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
4581	return nil, false
4582}
4583
4584// AsAzureMySQLTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4585func (asd AmazonS3Dataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
4586	return nil, false
4587}
4588
4589// AsOracleTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4590func (asd AmazonS3Dataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
4591	return nil, false
4592}
4593
4594// AsODataResourceDataset is the BasicDataset implementation for AmazonS3Dataset.
4595func (asd AmazonS3Dataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
4596	return nil, false
4597}
4598
4599// AsMongoDbCollectionDataset is the BasicDataset implementation for AmazonS3Dataset.
4600func (asd AmazonS3Dataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
4601	return nil, false
4602}
4603
4604// AsFileShareDataset is the BasicDataset implementation for AmazonS3Dataset.
4605func (asd AmazonS3Dataset) AsFileShareDataset() (*FileShareDataset, bool) {
4606	return nil, false
4607}
4608
4609// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AmazonS3Dataset.
4610func (asd AmazonS3Dataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
4611	return nil, false
4612}
4613
4614// AsDynamicsEntityDataset is the BasicDataset implementation for AmazonS3Dataset.
4615func (asd AmazonS3Dataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
4616	return nil, false
4617}
4618
4619// AsDocumentDbCollectionDataset is the BasicDataset implementation for AmazonS3Dataset.
4620func (asd AmazonS3Dataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
4621	return nil, false
4622}
4623
4624// AsCustomDataset is the BasicDataset implementation for AmazonS3Dataset.
4625func (asd AmazonS3Dataset) AsCustomDataset() (*CustomDataset, bool) {
4626	return nil, false
4627}
4628
4629// AsCassandraTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4630func (asd AmazonS3Dataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
4631	return nil, false
4632}
4633
4634// AsAzureSQLDWTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4635func (asd AmazonS3Dataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
4636	return nil, false
4637}
4638
4639// AsAzureSQLTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4640func (asd AmazonS3Dataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
4641	return nil, false
4642}
4643
4644// AsAzureTableDataset is the BasicDataset implementation for AmazonS3Dataset.
4645func (asd AmazonS3Dataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
4646	return nil, false
4647}
4648
4649// AsAzureBlobDataset is the BasicDataset implementation for AmazonS3Dataset.
4650func (asd AmazonS3Dataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
4651	return nil, false
4652}
4653
4654// AsAmazonS3Dataset is the BasicDataset implementation for AmazonS3Dataset.
4655func (asd AmazonS3Dataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
4656	return &asd, true
4657}
4658
4659// AsDataset is the BasicDataset implementation for AmazonS3Dataset.
4660func (asd AmazonS3Dataset) AsDataset() (*Dataset, bool) {
4661	return nil, false
4662}
4663
4664// AsBasicDataset is the BasicDataset implementation for AmazonS3Dataset.
4665func (asd AmazonS3Dataset) AsBasicDataset() (BasicDataset, bool) {
4666	return &asd, true
4667}
4668
4669// UnmarshalJSON is the custom unmarshaler for AmazonS3Dataset struct.
4670func (asd *AmazonS3Dataset) UnmarshalJSON(body []byte) error {
4671	var m map[string]*json.RawMessage
4672	err := json.Unmarshal(body, &m)
4673	if err != nil {
4674		return err
4675	}
4676	for k, v := range m {
4677		switch k {
4678		case "typeProperties":
4679			if v != nil {
4680				var amazonS3DatasetTypeProperties AmazonS3DatasetTypeProperties
4681				err = json.Unmarshal(*v, &amazonS3DatasetTypeProperties)
4682				if err != nil {
4683					return err
4684				}
4685				asd.AmazonS3DatasetTypeProperties = &amazonS3DatasetTypeProperties
4686			}
4687		default:
4688			if v != nil {
4689				var additionalProperties interface{}
4690				err = json.Unmarshal(*v, &additionalProperties)
4691				if err != nil {
4692					return err
4693				}
4694				if asd.AdditionalProperties == nil {
4695					asd.AdditionalProperties = make(map[string]interface{})
4696				}
4697				asd.AdditionalProperties[k] = additionalProperties
4698			}
4699		case "description":
4700			if v != nil {
4701				var description string
4702				err = json.Unmarshal(*v, &description)
4703				if err != nil {
4704					return err
4705				}
4706				asd.Description = &description
4707			}
4708		case "structure":
4709			if v != nil {
4710				var structure interface{}
4711				err = json.Unmarshal(*v, &structure)
4712				if err != nil {
4713					return err
4714				}
4715				asd.Structure = structure
4716			}
4717		case "linkedServiceName":
4718			if v != nil {
4719				var linkedServiceName LinkedServiceReference
4720				err = json.Unmarshal(*v, &linkedServiceName)
4721				if err != nil {
4722					return err
4723				}
4724				asd.LinkedServiceName = &linkedServiceName
4725			}
4726		case "parameters":
4727			if v != nil {
4728				var parameters map[string]*ParameterSpecification
4729				err = json.Unmarshal(*v, &parameters)
4730				if err != nil {
4731					return err
4732				}
4733				asd.Parameters = parameters
4734			}
4735		case "annotations":
4736			if v != nil {
4737				var annotations []interface{}
4738				err = json.Unmarshal(*v, &annotations)
4739				if err != nil {
4740					return err
4741				}
4742				asd.Annotations = &annotations
4743			}
4744		case "type":
4745			if v != nil {
4746				var typeVar TypeBasicDataset
4747				err = json.Unmarshal(*v, &typeVar)
4748				if err != nil {
4749					return err
4750				}
4751				asd.Type = typeVar
4752			}
4753		}
4754	}
4755
4756	return nil
4757}
4758
4759// AmazonS3DatasetTypeProperties amazon S3 dataset properties.
4760type AmazonS3DatasetTypeProperties struct {
4761	// BucketName - The name of the Amazon S3 bucket. Type: string (or Expression with resultType string).
4762	BucketName interface{} `json:"bucketName,omitempty"`
4763	// Key - The key of the Amazon S3 object. Type: string (or Expression with resultType string).
4764	Key interface{} `json:"key,omitempty"`
4765	// Prefix - The prefix filter for the S3 object name. Type: string (or Expression with resultType string).
4766	Prefix interface{} `json:"prefix,omitempty"`
4767	// Version - The version for the S3 object. Type: string (or Expression with resultType string).
4768	Version interface{} `json:"version,omitempty"`
4769	// Format - The format of files.
4770	Format BasicDatasetStorageFormat `json:"format,omitempty"`
4771	// Compression - The data compression method used for the Amazon S3 object.
4772	Compression BasicDatasetCompression `json:"compression,omitempty"`
4773}
4774
4775// UnmarshalJSON is the custom unmarshaler for AmazonS3DatasetTypeProperties struct.
4776func (asdtp *AmazonS3DatasetTypeProperties) UnmarshalJSON(body []byte) error {
4777	var m map[string]*json.RawMessage
4778	err := json.Unmarshal(body, &m)
4779	if err != nil {
4780		return err
4781	}
4782	for k, v := range m {
4783		switch k {
4784		case "bucketName":
4785			if v != nil {
4786				var bucketName interface{}
4787				err = json.Unmarshal(*v, &bucketName)
4788				if err != nil {
4789					return err
4790				}
4791				asdtp.BucketName = bucketName
4792			}
4793		case "key":
4794			if v != nil {
4795				var key interface{}
4796				err = json.Unmarshal(*v, &key)
4797				if err != nil {
4798					return err
4799				}
4800				asdtp.Key = key
4801			}
4802		case "prefix":
4803			if v != nil {
4804				var prefix interface{}
4805				err = json.Unmarshal(*v, &prefix)
4806				if err != nil {
4807					return err
4808				}
4809				asdtp.Prefix = prefix
4810			}
4811		case "version":
4812			if v != nil {
4813				var version interface{}
4814				err = json.Unmarshal(*v, &version)
4815				if err != nil {
4816					return err
4817				}
4818				asdtp.Version = version
4819			}
4820		case "format":
4821			if v != nil {
4822				formatVar, err := unmarshalBasicDatasetStorageFormat(*v)
4823				if err != nil {
4824					return err
4825				}
4826				asdtp.Format = formatVar
4827			}
4828		case "compression":
4829			if v != nil {
4830				compression, err := unmarshalBasicDatasetCompression(*v)
4831				if err != nil {
4832					return err
4833				}
4834				asdtp.Compression = compression
4835			}
4836		}
4837	}
4838
4839	return nil
4840}
4841
4842// AmazonS3LinkedService linked service for Amazon S3.
4843type AmazonS3LinkedService struct {
4844	// AmazonS3LinkedServiceTypeProperties - Amazon S3 linked service properties.
4845	*AmazonS3LinkedServiceTypeProperties `json:"typeProperties,omitempty"`
4846	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
4847	AdditionalProperties map[string]interface{} `json:""`
4848	// ConnectVia - The integration runtime reference.
4849	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
4850	// Description - Linked service description.
4851	Description *string `json:"description,omitempty"`
4852	// Parameters - Parameters for linked service.
4853	Parameters map[string]*ParameterSpecification `json:"parameters"`
4854	// Annotations - List of tags that can be used for describing the Dataset.
4855	Annotations *[]interface{} `json:"annotations,omitempty"`
4856	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
4857	Type TypeBasicLinkedService `json:"type,omitempty"`
4858}
4859
4860// MarshalJSON is the custom marshaler for AmazonS3LinkedService.
4861func (asls AmazonS3LinkedService) MarshalJSON() ([]byte, error) {
4862	asls.Type = TypeAmazonS3
4863	objectMap := make(map[string]interface{})
4864	if asls.AmazonS3LinkedServiceTypeProperties != nil {
4865		objectMap["typeProperties"] = asls.AmazonS3LinkedServiceTypeProperties
4866	}
4867	if asls.ConnectVia != nil {
4868		objectMap["connectVia"] = asls.ConnectVia
4869	}
4870	if asls.Description != nil {
4871		objectMap["description"] = asls.Description
4872	}
4873	if asls.Parameters != nil {
4874		objectMap["parameters"] = asls.Parameters
4875	}
4876	if asls.Annotations != nil {
4877		objectMap["annotations"] = asls.Annotations
4878	}
4879	if asls.Type != "" {
4880		objectMap["type"] = asls.Type
4881	}
4882	for k, v := range asls.AdditionalProperties {
4883		objectMap[k] = v
4884	}
4885	return json.Marshal(objectMap)
4886}
4887
4888// AsResponsysLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4889func (asls AmazonS3LinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
4890	return nil, false
4891}
4892
4893// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4894func (asls AmazonS3LinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
4895	return nil, false
4896}
4897
4898// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4899func (asls AmazonS3LinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
4900	return nil, false
4901}
4902
4903// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4904func (asls AmazonS3LinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
4905	return nil, false
4906}
4907
4908// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4909func (asls AmazonS3LinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
4910	return nil, false
4911}
4912
4913// AsNetezzaLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4914func (asls AmazonS3LinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
4915	return nil, false
4916}
4917
4918// AsVerticaLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4919func (asls AmazonS3LinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
4920	return nil, false
4921}
4922
4923// AsZohoLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4924func (asls AmazonS3LinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
4925	return nil, false
4926}
4927
4928// AsXeroLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4929func (asls AmazonS3LinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
4930	return nil, false
4931}
4932
4933// AsSquareLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4934func (asls AmazonS3LinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
4935	return nil, false
4936}
4937
4938// AsSparkLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4939func (asls AmazonS3LinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
4940	return nil, false
4941}
4942
4943// AsShopifyLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4944func (asls AmazonS3LinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
4945	return nil, false
4946}
4947
4948// AsServiceNowLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4949func (asls AmazonS3LinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
4950	return nil, false
4951}
4952
4953// AsQuickBooksLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4954func (asls AmazonS3LinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
4955	return nil, false
4956}
4957
4958// AsPrestoLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4959func (asls AmazonS3LinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
4960	return nil, false
4961}
4962
4963// AsPhoenixLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4964func (asls AmazonS3LinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
4965	return nil, false
4966}
4967
4968// AsPaypalLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4969func (asls AmazonS3LinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
4970	return nil, false
4971}
4972
4973// AsMarketoLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4974func (asls AmazonS3LinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
4975	return nil, false
4976}
4977
4978// AsMariaDBLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4979func (asls AmazonS3LinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
4980	return nil, false
4981}
4982
4983// AsMagentoLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4984func (asls AmazonS3LinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
4985	return nil, false
4986}
4987
4988// AsJiraLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4989func (asls AmazonS3LinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
4990	return nil, false
4991}
4992
4993// AsImpalaLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4994func (asls AmazonS3LinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
4995	return nil, false
4996}
4997
4998// AsHubspotLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
4999func (asls AmazonS3LinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
5000	return nil, false
5001}
5002
5003// AsHiveLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5004func (asls AmazonS3LinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
5005	return nil, false
5006}
5007
5008// AsHBaseLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5009func (asls AmazonS3LinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
5010	return nil, false
5011}
5012
5013// AsGreenplumLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5014func (asls AmazonS3LinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
5015	return nil, false
5016}
5017
5018// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5019func (asls AmazonS3LinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
5020	return nil, false
5021}
5022
5023// AsEloquaLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5024func (asls AmazonS3LinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
5025	return nil, false
5026}
5027
5028// AsDrillLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5029func (asls AmazonS3LinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
5030	return nil, false
5031}
5032
5033// AsCouchbaseLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5034func (asls AmazonS3LinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
5035	return nil, false
5036}
5037
5038// AsConcurLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5039func (asls AmazonS3LinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
5040	return nil, false
5041}
5042
5043// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5044func (asls AmazonS3LinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
5045	return nil, false
5046}
5047
5048// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5049func (asls AmazonS3LinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
5050	return nil, false
5051}
5052
5053// AsSapHanaLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5054func (asls AmazonS3LinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
5055	return nil, false
5056}
5057
5058// AsSapBWLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5059func (asls AmazonS3LinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
5060	return nil, false
5061}
5062
5063// AsSftpServerLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5064func (asls AmazonS3LinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
5065	return nil, false
5066}
5067
5068// AsFtpServerLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5069func (asls AmazonS3LinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
5070	return nil, false
5071}
5072
5073// AsHTTPLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5074func (asls AmazonS3LinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
5075	return nil, false
5076}
5077
5078// AsAzureSearchLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5079func (asls AmazonS3LinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
5080	return nil, false
5081}
5082
5083// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5084func (asls AmazonS3LinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
5085	return nil, false
5086}
5087
5088// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5089func (asls AmazonS3LinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
5090	return nil, false
5091}
5092
5093// AsAmazonS3LinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5094func (asls AmazonS3LinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
5095	return &asls, true
5096}
5097
5098// AsSapEccLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5099func (asls AmazonS3LinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
5100	return nil, false
5101}
5102
5103// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5104func (asls AmazonS3LinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
5105	return nil, false
5106}
5107
5108// AsSalesforceLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5109func (asls AmazonS3LinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
5110	return nil, false
5111}
5112
5113// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5114func (asls AmazonS3LinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
5115	return nil, false
5116}
5117
5118// AsMongoDbLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5119func (asls AmazonS3LinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
5120	return nil, false
5121}
5122
5123// AsCassandraLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5124func (asls AmazonS3LinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
5125	return nil, false
5126}
5127
5128// AsWebLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5129func (asls AmazonS3LinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
5130	return nil, false
5131}
5132
5133// AsODataLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5134func (asls AmazonS3LinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
5135	return nil, false
5136}
5137
5138// AsHdfsLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5139func (asls AmazonS3LinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
5140	return nil, false
5141}
5142
5143// AsOdbcLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5144func (asls AmazonS3LinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
5145	return nil, false
5146}
5147
5148// AsAzureMLLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5149func (asls AmazonS3LinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
5150	return nil, false
5151}
5152
5153// AsTeradataLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5154func (asls AmazonS3LinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
5155	return nil, false
5156}
5157
5158// AsDb2LinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5159func (asls AmazonS3LinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
5160	return nil, false
5161}
5162
5163// AsSybaseLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5164func (asls AmazonS3LinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
5165	return nil, false
5166}
5167
5168// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5169func (asls AmazonS3LinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
5170	return nil, false
5171}
5172
5173// AsMySQLLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5174func (asls AmazonS3LinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
5175	return nil, false
5176}
5177
5178// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5179func (asls AmazonS3LinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
5180	return nil, false
5181}
5182
5183// AsOracleLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5184func (asls AmazonS3LinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
5185	return nil, false
5186}
5187
5188// AsFileServerLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5189func (asls AmazonS3LinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
5190	return nil, false
5191}
5192
5193// AsHDInsightLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5194func (asls AmazonS3LinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
5195	return nil, false
5196}
5197
5198// AsDynamicsLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5199func (asls AmazonS3LinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
5200	return nil, false
5201}
5202
5203// AsCosmosDbLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5204func (asls AmazonS3LinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
5205	return nil, false
5206}
5207
5208// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5209func (asls AmazonS3LinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
5210	return nil, false
5211}
5212
5213// AsAzureBatchLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5214func (asls AmazonS3LinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
5215	return nil, false
5216}
5217
5218// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5219func (asls AmazonS3LinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
5220	return nil, false
5221}
5222
5223// AsSQLServerLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5224func (asls AmazonS3LinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
5225	return nil, false
5226}
5227
5228// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5229func (asls AmazonS3LinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
5230	return nil, false
5231}
5232
5233// AsAzureStorageLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5234func (asls AmazonS3LinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
5235	return nil, false
5236}
5237
5238// AsLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5239func (asls AmazonS3LinkedService) AsLinkedService() (*LinkedService, bool) {
5240	return nil, false
5241}
5242
5243// AsBasicLinkedService is the BasicLinkedService implementation for AmazonS3LinkedService.
5244func (asls AmazonS3LinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
5245	return &asls, true
5246}
5247
5248// UnmarshalJSON is the custom unmarshaler for AmazonS3LinkedService struct.
5249func (asls *AmazonS3LinkedService) UnmarshalJSON(body []byte) error {
5250	var m map[string]*json.RawMessage
5251	err := json.Unmarshal(body, &m)
5252	if err != nil {
5253		return err
5254	}
5255	for k, v := range m {
5256		switch k {
5257		case "typeProperties":
5258			if v != nil {
5259				var amazonS3LinkedServiceTypeProperties AmazonS3LinkedServiceTypeProperties
5260				err = json.Unmarshal(*v, &amazonS3LinkedServiceTypeProperties)
5261				if err != nil {
5262					return err
5263				}
5264				asls.AmazonS3LinkedServiceTypeProperties = &amazonS3LinkedServiceTypeProperties
5265			}
5266		default:
5267			if v != nil {
5268				var additionalProperties interface{}
5269				err = json.Unmarshal(*v, &additionalProperties)
5270				if err != nil {
5271					return err
5272				}
5273				if asls.AdditionalProperties == nil {
5274					asls.AdditionalProperties = make(map[string]interface{})
5275				}
5276				asls.AdditionalProperties[k] = additionalProperties
5277			}
5278		case "connectVia":
5279			if v != nil {
5280				var connectVia IntegrationRuntimeReference
5281				err = json.Unmarshal(*v, &connectVia)
5282				if err != nil {
5283					return err
5284				}
5285				asls.ConnectVia = &connectVia
5286			}
5287		case "description":
5288			if v != nil {
5289				var description string
5290				err = json.Unmarshal(*v, &description)
5291				if err != nil {
5292					return err
5293				}
5294				asls.Description = &description
5295			}
5296		case "parameters":
5297			if v != nil {
5298				var parameters map[string]*ParameterSpecification
5299				err = json.Unmarshal(*v, &parameters)
5300				if err != nil {
5301					return err
5302				}
5303				asls.Parameters = parameters
5304			}
5305		case "annotations":
5306			if v != nil {
5307				var annotations []interface{}
5308				err = json.Unmarshal(*v, &annotations)
5309				if err != nil {
5310					return err
5311				}
5312				asls.Annotations = &annotations
5313			}
5314		case "type":
5315			if v != nil {
5316				var typeVar TypeBasicLinkedService
5317				err = json.Unmarshal(*v, &typeVar)
5318				if err != nil {
5319					return err
5320				}
5321				asls.Type = typeVar
5322			}
5323		}
5324	}
5325
5326	return nil
5327}
5328
5329// AmazonS3LinkedServiceTypeProperties amazon S3 linked service properties.
5330type AmazonS3LinkedServiceTypeProperties struct {
5331	// AccessKeyID - The access key identifier of the Amazon S3 Identity and Access Management (IAM) user. Type: string (or Expression with resultType string).
5332	AccessKeyID interface{} `json:"accessKeyId,omitempty"`
5333	// SecretAccessKey - The secret access key of the Amazon S3 Identity and Access Management (IAM) user.
5334	SecretAccessKey BasicSecretBase `json:"secretAccessKey,omitempty"`
5335	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
5336	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
5337}
5338
5339// UnmarshalJSON is the custom unmarshaler for AmazonS3LinkedServiceTypeProperties struct.
5340func (aslstp *AmazonS3LinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
5341	var m map[string]*json.RawMessage
5342	err := json.Unmarshal(body, &m)
5343	if err != nil {
5344		return err
5345	}
5346	for k, v := range m {
5347		switch k {
5348		case "accessKeyId":
5349			if v != nil {
5350				var accessKeyID interface{}
5351				err = json.Unmarshal(*v, &accessKeyID)
5352				if err != nil {
5353					return err
5354				}
5355				aslstp.AccessKeyID = accessKeyID
5356			}
5357		case "secretAccessKey":
5358			if v != nil {
5359				secretAccessKey, err := unmarshalBasicSecretBase(*v)
5360				if err != nil {
5361					return err
5362				}
5363				aslstp.SecretAccessKey = secretAccessKey
5364			}
5365		case "encryptedCredential":
5366			if v != nil {
5367				var encryptedCredential interface{}
5368				err = json.Unmarshal(*v, &encryptedCredential)
5369				if err != nil {
5370					return err
5371				}
5372				aslstp.EncryptedCredential = encryptedCredential
5373			}
5374		}
5375	}
5376
5377	return nil
5378}
5379
5380// AvroFormat the data stored in Avro format.
5381type AvroFormat struct {
5382	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
5383	AdditionalProperties map[string]interface{} `json:""`
5384	// Serializer - Serializer. Type: string (or Expression with resultType string).
5385	Serializer interface{} `json:"serializer,omitempty"`
5386	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
5387	Deserializer interface{} `json:"deserializer,omitempty"`
5388	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
5389	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
5390}
5391
5392// MarshalJSON is the custom marshaler for AvroFormat.
5393func (af AvroFormat) MarshalJSON() ([]byte, error) {
5394	af.Type = TypeAvroFormat
5395	objectMap := make(map[string]interface{})
5396	objectMap["serializer"] = af.Serializer
5397	objectMap["deserializer"] = af.Deserializer
5398	if af.Type != "" {
5399		objectMap["type"] = af.Type
5400	}
5401	for k, v := range af.AdditionalProperties {
5402		objectMap[k] = v
5403	}
5404	return json.Marshal(objectMap)
5405}
5406
5407// AsParquetFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5408func (af AvroFormat) AsParquetFormat() (*ParquetFormat, bool) {
5409	return nil, false
5410}
5411
5412// AsOrcFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5413func (af AvroFormat) AsOrcFormat() (*OrcFormat, bool) {
5414	return nil, false
5415}
5416
5417// AsAvroFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5418func (af AvroFormat) AsAvroFormat() (*AvroFormat, bool) {
5419	return &af, true
5420}
5421
5422// AsJSONFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5423func (af AvroFormat) AsJSONFormat() (*JSONFormat, bool) {
5424	return nil, false
5425}
5426
5427// AsTextFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5428func (af AvroFormat) AsTextFormat() (*TextFormat, bool) {
5429	return nil, false
5430}
5431
5432// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5433func (af AvroFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
5434	return nil, false
5435}
5436
5437// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for AvroFormat.
5438func (af AvroFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
5439	return &af, true
5440}
5441
5442// AzureBatchLinkedService azure Batch linked service.
5443type AzureBatchLinkedService struct {
5444	// AzureBatchLinkedServiceTypeProperties - Azure Batch linked service properties.
5445	*AzureBatchLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
5446	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
5447	AdditionalProperties map[string]interface{} `json:""`
5448	// ConnectVia - The integration runtime reference.
5449	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
5450	// Description - Linked service description.
5451	Description *string `json:"description,omitempty"`
5452	// Parameters - Parameters for linked service.
5453	Parameters map[string]*ParameterSpecification `json:"parameters"`
5454	// Annotations - List of tags that can be used for describing the Dataset.
5455	Annotations *[]interface{} `json:"annotations,omitempty"`
5456	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
5457	Type TypeBasicLinkedService `json:"type,omitempty"`
5458}
5459
5460// MarshalJSON is the custom marshaler for AzureBatchLinkedService.
5461func (abls AzureBatchLinkedService) MarshalJSON() ([]byte, error) {
5462	abls.Type = TypeAzureBatch
5463	objectMap := make(map[string]interface{})
5464	if abls.AzureBatchLinkedServiceTypeProperties != nil {
5465		objectMap["typeProperties"] = abls.AzureBatchLinkedServiceTypeProperties
5466	}
5467	if abls.ConnectVia != nil {
5468		objectMap["connectVia"] = abls.ConnectVia
5469	}
5470	if abls.Description != nil {
5471		objectMap["description"] = abls.Description
5472	}
5473	if abls.Parameters != nil {
5474		objectMap["parameters"] = abls.Parameters
5475	}
5476	if abls.Annotations != nil {
5477		objectMap["annotations"] = abls.Annotations
5478	}
5479	if abls.Type != "" {
5480		objectMap["type"] = abls.Type
5481	}
5482	for k, v := range abls.AdditionalProperties {
5483		objectMap[k] = v
5484	}
5485	return json.Marshal(objectMap)
5486}
5487
5488// AsResponsysLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5489func (abls AzureBatchLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
5490	return nil, false
5491}
5492
5493// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5494func (abls AzureBatchLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
5495	return nil, false
5496}
5497
5498// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5499func (abls AzureBatchLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
5500	return nil, false
5501}
5502
5503// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5504func (abls AzureBatchLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
5505	return nil, false
5506}
5507
5508// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5509func (abls AzureBatchLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
5510	return nil, false
5511}
5512
5513// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5514func (abls AzureBatchLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
5515	return nil, false
5516}
5517
5518// AsVerticaLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5519func (abls AzureBatchLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
5520	return nil, false
5521}
5522
5523// AsZohoLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5524func (abls AzureBatchLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
5525	return nil, false
5526}
5527
5528// AsXeroLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5529func (abls AzureBatchLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
5530	return nil, false
5531}
5532
5533// AsSquareLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5534func (abls AzureBatchLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
5535	return nil, false
5536}
5537
5538// AsSparkLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5539func (abls AzureBatchLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
5540	return nil, false
5541}
5542
5543// AsShopifyLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5544func (abls AzureBatchLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
5545	return nil, false
5546}
5547
5548// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5549func (abls AzureBatchLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
5550	return nil, false
5551}
5552
5553// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5554func (abls AzureBatchLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
5555	return nil, false
5556}
5557
5558// AsPrestoLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5559func (abls AzureBatchLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
5560	return nil, false
5561}
5562
5563// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5564func (abls AzureBatchLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
5565	return nil, false
5566}
5567
5568// AsPaypalLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5569func (abls AzureBatchLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
5570	return nil, false
5571}
5572
5573// AsMarketoLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5574func (abls AzureBatchLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
5575	return nil, false
5576}
5577
5578// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5579func (abls AzureBatchLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
5580	return nil, false
5581}
5582
5583// AsMagentoLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5584func (abls AzureBatchLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
5585	return nil, false
5586}
5587
5588// AsJiraLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5589func (abls AzureBatchLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
5590	return nil, false
5591}
5592
5593// AsImpalaLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5594func (abls AzureBatchLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
5595	return nil, false
5596}
5597
5598// AsHubspotLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5599func (abls AzureBatchLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
5600	return nil, false
5601}
5602
5603// AsHiveLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5604func (abls AzureBatchLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
5605	return nil, false
5606}
5607
5608// AsHBaseLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5609func (abls AzureBatchLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
5610	return nil, false
5611}
5612
5613// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5614func (abls AzureBatchLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
5615	return nil, false
5616}
5617
5618// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5619func (abls AzureBatchLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
5620	return nil, false
5621}
5622
5623// AsEloquaLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5624func (abls AzureBatchLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
5625	return nil, false
5626}
5627
5628// AsDrillLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5629func (abls AzureBatchLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
5630	return nil, false
5631}
5632
5633// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5634func (abls AzureBatchLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
5635	return nil, false
5636}
5637
5638// AsConcurLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5639func (abls AzureBatchLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
5640	return nil, false
5641}
5642
5643// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5644func (abls AzureBatchLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
5645	return nil, false
5646}
5647
5648// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5649func (abls AzureBatchLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
5650	return nil, false
5651}
5652
5653// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5654func (abls AzureBatchLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
5655	return nil, false
5656}
5657
5658// AsSapBWLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5659func (abls AzureBatchLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
5660	return nil, false
5661}
5662
5663// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5664func (abls AzureBatchLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
5665	return nil, false
5666}
5667
5668// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5669func (abls AzureBatchLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
5670	return nil, false
5671}
5672
5673// AsHTTPLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5674func (abls AzureBatchLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
5675	return nil, false
5676}
5677
5678// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5679func (abls AzureBatchLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
5680	return nil, false
5681}
5682
5683// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5684func (abls AzureBatchLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
5685	return nil, false
5686}
5687
5688// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5689func (abls AzureBatchLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
5690	return nil, false
5691}
5692
5693// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5694func (abls AzureBatchLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
5695	return nil, false
5696}
5697
5698// AsSapEccLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5699func (abls AzureBatchLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
5700	return nil, false
5701}
5702
5703// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5704func (abls AzureBatchLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
5705	return nil, false
5706}
5707
5708// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5709func (abls AzureBatchLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
5710	return nil, false
5711}
5712
5713// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5714func (abls AzureBatchLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
5715	return nil, false
5716}
5717
5718// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5719func (abls AzureBatchLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
5720	return nil, false
5721}
5722
5723// AsCassandraLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5724func (abls AzureBatchLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
5725	return nil, false
5726}
5727
5728// AsWebLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5729func (abls AzureBatchLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
5730	return nil, false
5731}
5732
5733// AsODataLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5734func (abls AzureBatchLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
5735	return nil, false
5736}
5737
5738// AsHdfsLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5739func (abls AzureBatchLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
5740	return nil, false
5741}
5742
5743// AsOdbcLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5744func (abls AzureBatchLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
5745	return nil, false
5746}
5747
5748// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5749func (abls AzureBatchLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
5750	return nil, false
5751}
5752
5753// AsTeradataLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5754func (abls AzureBatchLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
5755	return nil, false
5756}
5757
5758// AsDb2LinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5759func (abls AzureBatchLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
5760	return nil, false
5761}
5762
5763// AsSybaseLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5764func (abls AzureBatchLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
5765	return nil, false
5766}
5767
5768// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5769func (abls AzureBatchLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
5770	return nil, false
5771}
5772
5773// AsMySQLLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5774func (abls AzureBatchLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
5775	return nil, false
5776}
5777
5778// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5779func (abls AzureBatchLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
5780	return nil, false
5781}
5782
5783// AsOracleLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5784func (abls AzureBatchLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
5785	return nil, false
5786}
5787
5788// AsFileServerLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5789func (abls AzureBatchLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
5790	return nil, false
5791}
5792
5793// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5794func (abls AzureBatchLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
5795	return nil, false
5796}
5797
5798// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5799func (abls AzureBatchLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
5800	return nil, false
5801}
5802
5803// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5804func (abls AzureBatchLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
5805	return nil, false
5806}
5807
5808// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5809func (abls AzureBatchLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
5810	return nil, false
5811}
5812
5813// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5814func (abls AzureBatchLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
5815	return &abls, true
5816}
5817
5818// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5819func (abls AzureBatchLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
5820	return nil, false
5821}
5822
5823// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5824func (abls AzureBatchLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
5825	return nil, false
5826}
5827
5828// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5829func (abls AzureBatchLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
5830	return nil, false
5831}
5832
5833// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5834func (abls AzureBatchLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
5835	return nil, false
5836}
5837
5838// AsLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5839func (abls AzureBatchLinkedService) AsLinkedService() (*LinkedService, bool) {
5840	return nil, false
5841}
5842
5843// AsBasicLinkedService is the BasicLinkedService implementation for AzureBatchLinkedService.
5844func (abls AzureBatchLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
5845	return &abls, true
5846}
5847
5848// UnmarshalJSON is the custom unmarshaler for AzureBatchLinkedService struct.
5849func (abls *AzureBatchLinkedService) UnmarshalJSON(body []byte) error {
5850	var m map[string]*json.RawMessage
5851	err := json.Unmarshal(body, &m)
5852	if err != nil {
5853		return err
5854	}
5855	for k, v := range m {
5856		switch k {
5857		case "typeProperties":
5858			if v != nil {
5859				var azureBatchLinkedServiceTypeProperties AzureBatchLinkedServiceTypeProperties
5860				err = json.Unmarshal(*v, &azureBatchLinkedServiceTypeProperties)
5861				if err != nil {
5862					return err
5863				}
5864				abls.AzureBatchLinkedServiceTypeProperties = &azureBatchLinkedServiceTypeProperties
5865			}
5866		default:
5867			if v != nil {
5868				var additionalProperties interface{}
5869				err = json.Unmarshal(*v, &additionalProperties)
5870				if err != nil {
5871					return err
5872				}
5873				if abls.AdditionalProperties == nil {
5874					abls.AdditionalProperties = make(map[string]interface{})
5875				}
5876				abls.AdditionalProperties[k] = additionalProperties
5877			}
5878		case "connectVia":
5879			if v != nil {
5880				var connectVia IntegrationRuntimeReference
5881				err = json.Unmarshal(*v, &connectVia)
5882				if err != nil {
5883					return err
5884				}
5885				abls.ConnectVia = &connectVia
5886			}
5887		case "description":
5888			if v != nil {
5889				var description string
5890				err = json.Unmarshal(*v, &description)
5891				if err != nil {
5892					return err
5893				}
5894				abls.Description = &description
5895			}
5896		case "parameters":
5897			if v != nil {
5898				var parameters map[string]*ParameterSpecification
5899				err = json.Unmarshal(*v, &parameters)
5900				if err != nil {
5901					return err
5902				}
5903				abls.Parameters = parameters
5904			}
5905		case "annotations":
5906			if v != nil {
5907				var annotations []interface{}
5908				err = json.Unmarshal(*v, &annotations)
5909				if err != nil {
5910					return err
5911				}
5912				abls.Annotations = &annotations
5913			}
5914		case "type":
5915			if v != nil {
5916				var typeVar TypeBasicLinkedService
5917				err = json.Unmarshal(*v, &typeVar)
5918				if err != nil {
5919					return err
5920				}
5921				abls.Type = typeVar
5922			}
5923		}
5924	}
5925
5926	return nil
5927}
5928
5929// AzureBatchLinkedServiceTypeProperties azure Batch linked service properties.
5930type AzureBatchLinkedServiceTypeProperties struct {
5931	// AccountName - The Azure Batch account name. Type: string (or Expression with resultType string).
5932	AccountName interface{} `json:"accountName,omitempty"`
5933	// AccessKey - The Azure Batch account access key.
5934	AccessKey BasicSecretBase `json:"accessKey,omitempty"`
5935	// BatchURI - The Azure Batch URI. Type: string (or Expression with resultType string).
5936	BatchURI interface{} `json:"batchUri,omitempty"`
5937	// PoolName - The Azure Batch pool name. Type: string (or Expression with resultType string).
5938	PoolName interface{} `json:"poolName,omitempty"`
5939	// LinkedServiceName - The Azure Storage linked service reference.
5940	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
5941	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
5942	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
5943}
5944
5945// UnmarshalJSON is the custom unmarshaler for AzureBatchLinkedServiceTypeProperties struct.
5946func (ablstp *AzureBatchLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
5947	var m map[string]*json.RawMessage
5948	err := json.Unmarshal(body, &m)
5949	if err != nil {
5950		return err
5951	}
5952	for k, v := range m {
5953		switch k {
5954		case "accountName":
5955			if v != nil {
5956				var accountName interface{}
5957				err = json.Unmarshal(*v, &accountName)
5958				if err != nil {
5959					return err
5960				}
5961				ablstp.AccountName = accountName
5962			}
5963		case "accessKey":
5964			if v != nil {
5965				accessKey, err := unmarshalBasicSecretBase(*v)
5966				if err != nil {
5967					return err
5968				}
5969				ablstp.AccessKey = accessKey
5970			}
5971		case "batchUri":
5972			if v != nil {
5973				var batchURI interface{}
5974				err = json.Unmarshal(*v, &batchURI)
5975				if err != nil {
5976					return err
5977				}
5978				ablstp.BatchURI = batchURI
5979			}
5980		case "poolName":
5981			if v != nil {
5982				var poolName interface{}
5983				err = json.Unmarshal(*v, &poolName)
5984				if err != nil {
5985					return err
5986				}
5987				ablstp.PoolName = poolName
5988			}
5989		case "linkedServiceName":
5990			if v != nil {
5991				var linkedServiceName LinkedServiceReference
5992				err = json.Unmarshal(*v, &linkedServiceName)
5993				if err != nil {
5994					return err
5995				}
5996				ablstp.LinkedServiceName = &linkedServiceName
5997			}
5998		case "encryptedCredential":
5999			if v != nil {
6000				var encryptedCredential interface{}
6001				err = json.Unmarshal(*v, &encryptedCredential)
6002				if err != nil {
6003					return err
6004				}
6005				ablstp.EncryptedCredential = encryptedCredential
6006			}
6007		}
6008	}
6009
6010	return nil
6011}
6012
6013// AzureBlobDataset the Azure Blob storage.
6014type AzureBlobDataset struct {
6015	// AzureBlobDatasetTypeProperties - Azure Blob dataset properties.
6016	*AzureBlobDatasetTypeProperties `json:"typeProperties,omitempty"`
6017	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
6018	AdditionalProperties map[string]interface{} `json:""`
6019	// Description - Dataset description.
6020	Description *string `json:"description,omitempty"`
6021	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
6022	Structure interface{} `json:"structure,omitempty"`
6023	// LinkedServiceName - Linked service reference.
6024	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
6025	// Parameters - Parameters for dataset.
6026	Parameters map[string]*ParameterSpecification `json:"parameters"`
6027	// Annotations - List of tags that can be used for describing the Dataset.
6028	Annotations *[]interface{} `json:"annotations,omitempty"`
6029	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
6030	Type TypeBasicDataset `json:"type,omitempty"`
6031}
6032
6033// MarshalJSON is the custom marshaler for AzureBlobDataset.
6034func (abd AzureBlobDataset) MarshalJSON() ([]byte, error) {
6035	abd.Type = TypeAzureBlob
6036	objectMap := make(map[string]interface{})
6037	if abd.AzureBlobDatasetTypeProperties != nil {
6038		objectMap["typeProperties"] = abd.AzureBlobDatasetTypeProperties
6039	}
6040	if abd.Description != nil {
6041		objectMap["description"] = abd.Description
6042	}
6043	objectMap["structure"] = abd.Structure
6044	if abd.LinkedServiceName != nil {
6045		objectMap["linkedServiceName"] = abd.LinkedServiceName
6046	}
6047	if abd.Parameters != nil {
6048		objectMap["parameters"] = abd.Parameters
6049	}
6050	if abd.Annotations != nil {
6051		objectMap["annotations"] = abd.Annotations
6052	}
6053	if abd.Type != "" {
6054		objectMap["type"] = abd.Type
6055	}
6056	for k, v := range abd.AdditionalProperties {
6057		objectMap[k] = v
6058	}
6059	return json.Marshal(objectMap)
6060}
6061
6062// AsResponsysObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6063func (abd AzureBlobDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
6064	return nil, false
6065}
6066
6067// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6068func (abd AzureBlobDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
6069	return nil, false
6070}
6071
6072// AsVerticaTableDataset is the BasicDataset implementation for AzureBlobDataset.
6073func (abd AzureBlobDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
6074	return nil, false
6075}
6076
6077// AsNetezzaTableDataset is the BasicDataset implementation for AzureBlobDataset.
6078func (abd AzureBlobDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
6079	return nil, false
6080}
6081
6082// AsZohoObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6083func (abd AzureBlobDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
6084	return nil, false
6085}
6086
6087// AsXeroObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6088func (abd AzureBlobDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
6089	return nil, false
6090}
6091
6092// AsSquareObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6093func (abd AzureBlobDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
6094	return nil, false
6095}
6096
6097// AsSparkObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6098func (abd AzureBlobDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
6099	return nil, false
6100}
6101
6102// AsShopifyObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6103func (abd AzureBlobDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
6104	return nil, false
6105}
6106
6107// AsServiceNowObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6108func (abd AzureBlobDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
6109	return nil, false
6110}
6111
6112// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6113func (abd AzureBlobDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
6114	return nil, false
6115}
6116
6117// AsPrestoObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6118func (abd AzureBlobDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
6119	return nil, false
6120}
6121
6122// AsPhoenixObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6123func (abd AzureBlobDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
6124	return nil, false
6125}
6126
6127// AsPaypalObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6128func (abd AzureBlobDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
6129	return nil, false
6130}
6131
6132// AsMarketoObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6133func (abd AzureBlobDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
6134	return nil, false
6135}
6136
6137// AsMariaDBTableDataset is the BasicDataset implementation for AzureBlobDataset.
6138func (abd AzureBlobDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
6139	return nil, false
6140}
6141
6142// AsMagentoObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6143func (abd AzureBlobDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
6144	return nil, false
6145}
6146
6147// AsJiraObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6148func (abd AzureBlobDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
6149	return nil, false
6150}
6151
6152// AsImpalaObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6153func (abd AzureBlobDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
6154	return nil, false
6155}
6156
6157// AsHubspotObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6158func (abd AzureBlobDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
6159	return nil, false
6160}
6161
6162// AsHiveObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6163func (abd AzureBlobDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
6164	return nil, false
6165}
6166
6167// AsHBaseObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6168func (abd AzureBlobDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
6169	return nil, false
6170}
6171
6172// AsGreenplumTableDataset is the BasicDataset implementation for AzureBlobDataset.
6173func (abd AzureBlobDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
6174	return nil, false
6175}
6176
6177// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6178func (abd AzureBlobDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
6179	return nil, false
6180}
6181
6182// AsEloquaObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6183func (abd AzureBlobDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
6184	return nil, false
6185}
6186
6187// AsDrillTableDataset is the BasicDataset implementation for AzureBlobDataset.
6188func (abd AzureBlobDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
6189	return nil, false
6190}
6191
6192// AsCouchbaseTableDataset is the BasicDataset implementation for AzureBlobDataset.
6193func (abd AzureBlobDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
6194	return nil, false
6195}
6196
6197// AsConcurObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6198func (abd AzureBlobDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
6199	return nil, false
6200}
6201
6202// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureBlobDataset.
6203func (abd AzureBlobDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
6204	return nil, false
6205}
6206
6207// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6208func (abd AzureBlobDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
6209	return nil, false
6210}
6211
6212// AsHTTPDataset is the BasicDataset implementation for AzureBlobDataset.
6213func (abd AzureBlobDataset) AsHTTPDataset() (*HTTPDataset, bool) {
6214	return nil, false
6215}
6216
6217// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureBlobDataset.
6218func (abd AzureBlobDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
6219	return nil, false
6220}
6221
6222// AsWebTableDataset is the BasicDataset implementation for AzureBlobDataset.
6223func (abd AzureBlobDataset) AsWebTableDataset() (*WebTableDataset, bool) {
6224	return nil, false
6225}
6226
6227// AsSQLServerTableDataset is the BasicDataset implementation for AzureBlobDataset.
6228func (abd AzureBlobDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
6229	return nil, false
6230}
6231
6232// AsSapEccResourceDataset is the BasicDataset implementation for AzureBlobDataset.
6233func (abd AzureBlobDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
6234	return nil, false
6235}
6236
6237// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureBlobDataset.
6238func (abd AzureBlobDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
6239	return nil, false
6240}
6241
6242// AsSalesforceObjectDataset is the BasicDataset implementation for AzureBlobDataset.
6243func (abd AzureBlobDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
6244	return nil, false
6245}
6246
6247// AsRelationalTableDataset is the BasicDataset implementation for AzureBlobDataset.
6248func (abd AzureBlobDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
6249	return nil, false
6250}
6251
6252// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureBlobDataset.
6253func (abd AzureBlobDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
6254	return nil, false
6255}
6256
6257// AsOracleTableDataset is the BasicDataset implementation for AzureBlobDataset.
6258func (abd AzureBlobDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
6259	return nil, false
6260}
6261
6262// AsODataResourceDataset is the BasicDataset implementation for AzureBlobDataset.
6263func (abd AzureBlobDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
6264	return nil, false
6265}
6266
6267// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureBlobDataset.
6268func (abd AzureBlobDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
6269	return nil, false
6270}
6271
6272// AsFileShareDataset is the BasicDataset implementation for AzureBlobDataset.
6273func (abd AzureBlobDataset) AsFileShareDataset() (*FileShareDataset, bool) {
6274	return nil, false
6275}
6276
6277// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureBlobDataset.
6278func (abd AzureBlobDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
6279	return nil, false
6280}
6281
6282// AsDynamicsEntityDataset is the BasicDataset implementation for AzureBlobDataset.
6283func (abd AzureBlobDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
6284	return nil, false
6285}
6286
6287// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureBlobDataset.
6288func (abd AzureBlobDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
6289	return nil, false
6290}
6291
6292// AsCustomDataset is the BasicDataset implementation for AzureBlobDataset.
6293func (abd AzureBlobDataset) AsCustomDataset() (*CustomDataset, bool) {
6294	return nil, false
6295}
6296
6297// AsCassandraTableDataset is the BasicDataset implementation for AzureBlobDataset.
6298func (abd AzureBlobDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
6299	return nil, false
6300}
6301
6302// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureBlobDataset.
6303func (abd AzureBlobDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
6304	return nil, false
6305}
6306
6307// AsAzureSQLTableDataset is the BasicDataset implementation for AzureBlobDataset.
6308func (abd AzureBlobDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
6309	return nil, false
6310}
6311
6312// AsAzureTableDataset is the BasicDataset implementation for AzureBlobDataset.
6313func (abd AzureBlobDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
6314	return nil, false
6315}
6316
6317// AsAzureBlobDataset is the BasicDataset implementation for AzureBlobDataset.
6318func (abd AzureBlobDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
6319	return &abd, true
6320}
6321
6322// AsAmazonS3Dataset is the BasicDataset implementation for AzureBlobDataset.
6323func (abd AzureBlobDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
6324	return nil, false
6325}
6326
6327// AsDataset is the BasicDataset implementation for AzureBlobDataset.
6328func (abd AzureBlobDataset) AsDataset() (*Dataset, bool) {
6329	return nil, false
6330}
6331
6332// AsBasicDataset is the BasicDataset implementation for AzureBlobDataset.
6333func (abd AzureBlobDataset) AsBasicDataset() (BasicDataset, bool) {
6334	return &abd, true
6335}
6336
6337// UnmarshalJSON is the custom unmarshaler for AzureBlobDataset struct.
6338func (abd *AzureBlobDataset) UnmarshalJSON(body []byte) error {
6339	var m map[string]*json.RawMessage
6340	err := json.Unmarshal(body, &m)
6341	if err != nil {
6342		return err
6343	}
6344	for k, v := range m {
6345		switch k {
6346		case "typeProperties":
6347			if v != nil {
6348				var azureBlobDatasetTypeProperties AzureBlobDatasetTypeProperties
6349				err = json.Unmarshal(*v, &azureBlobDatasetTypeProperties)
6350				if err != nil {
6351					return err
6352				}
6353				abd.AzureBlobDatasetTypeProperties = &azureBlobDatasetTypeProperties
6354			}
6355		default:
6356			if v != nil {
6357				var additionalProperties interface{}
6358				err = json.Unmarshal(*v, &additionalProperties)
6359				if err != nil {
6360					return err
6361				}
6362				if abd.AdditionalProperties == nil {
6363					abd.AdditionalProperties = make(map[string]interface{})
6364				}
6365				abd.AdditionalProperties[k] = additionalProperties
6366			}
6367		case "description":
6368			if v != nil {
6369				var description string
6370				err = json.Unmarshal(*v, &description)
6371				if err != nil {
6372					return err
6373				}
6374				abd.Description = &description
6375			}
6376		case "structure":
6377			if v != nil {
6378				var structure interface{}
6379				err = json.Unmarshal(*v, &structure)
6380				if err != nil {
6381					return err
6382				}
6383				abd.Structure = structure
6384			}
6385		case "linkedServiceName":
6386			if v != nil {
6387				var linkedServiceName LinkedServiceReference
6388				err = json.Unmarshal(*v, &linkedServiceName)
6389				if err != nil {
6390					return err
6391				}
6392				abd.LinkedServiceName = &linkedServiceName
6393			}
6394		case "parameters":
6395			if v != nil {
6396				var parameters map[string]*ParameterSpecification
6397				err = json.Unmarshal(*v, &parameters)
6398				if err != nil {
6399					return err
6400				}
6401				abd.Parameters = parameters
6402			}
6403		case "annotations":
6404			if v != nil {
6405				var annotations []interface{}
6406				err = json.Unmarshal(*v, &annotations)
6407				if err != nil {
6408					return err
6409				}
6410				abd.Annotations = &annotations
6411			}
6412		case "type":
6413			if v != nil {
6414				var typeVar TypeBasicDataset
6415				err = json.Unmarshal(*v, &typeVar)
6416				if err != nil {
6417					return err
6418				}
6419				abd.Type = typeVar
6420			}
6421		}
6422	}
6423
6424	return nil
6425}
6426
6427// AzureBlobDatasetTypeProperties azure Blob dataset properties.
6428type AzureBlobDatasetTypeProperties struct {
6429	// FolderPath - The path of the Azure Blob storage. Type: string (or Expression with resultType string).
6430	FolderPath interface{} `json:"folderPath,omitempty"`
6431	// TableRootLocation - The root of blob path. Type: string (or Expression with resultType string).
6432	TableRootLocation interface{} `json:"tableRootLocation,omitempty"`
6433	// FileName - The name of the Azure Blob. Type: string (or Expression with resultType string).
6434	FileName interface{} `json:"fileName,omitempty"`
6435	// Format - The format of the Azure Blob storage.
6436	Format BasicDatasetStorageFormat `json:"format,omitempty"`
6437	// Compression - The data compression method used for the blob storage.
6438	Compression BasicDatasetCompression `json:"compression,omitempty"`
6439}
6440
6441// UnmarshalJSON is the custom unmarshaler for AzureBlobDatasetTypeProperties struct.
6442func (abdtp *AzureBlobDatasetTypeProperties) UnmarshalJSON(body []byte) error {
6443	var m map[string]*json.RawMessage
6444	err := json.Unmarshal(body, &m)
6445	if err != nil {
6446		return err
6447	}
6448	for k, v := range m {
6449		switch k {
6450		case "folderPath":
6451			if v != nil {
6452				var folderPath interface{}
6453				err = json.Unmarshal(*v, &folderPath)
6454				if err != nil {
6455					return err
6456				}
6457				abdtp.FolderPath = folderPath
6458			}
6459		case "tableRootLocation":
6460			if v != nil {
6461				var tableRootLocation interface{}
6462				err = json.Unmarshal(*v, &tableRootLocation)
6463				if err != nil {
6464					return err
6465				}
6466				abdtp.TableRootLocation = tableRootLocation
6467			}
6468		case "fileName":
6469			if v != nil {
6470				var fileName interface{}
6471				err = json.Unmarshal(*v, &fileName)
6472				if err != nil {
6473					return err
6474				}
6475				abdtp.FileName = fileName
6476			}
6477		case "format":
6478			if v != nil {
6479				formatVar, err := unmarshalBasicDatasetStorageFormat(*v)
6480				if err != nil {
6481					return err
6482				}
6483				abdtp.Format = formatVar
6484			}
6485		case "compression":
6486			if v != nil {
6487				compression, err := unmarshalBasicDatasetCompression(*v)
6488				if err != nil {
6489					return err
6490				}
6491				abdtp.Compression = compression
6492			}
6493		}
6494	}
6495
6496	return nil
6497}
6498
6499// AzureDatabricksLinkedService azure Databricks linked service.
6500type AzureDatabricksLinkedService struct {
6501	// AzureDatabricksLinkedServiceTypeProperties - Azure Databricks linked service properties.
6502	*AzureDatabricksLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
6503	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
6504	AdditionalProperties map[string]interface{} `json:""`
6505	// ConnectVia - The integration runtime reference.
6506	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
6507	// Description - Linked service description.
6508	Description *string `json:"description,omitempty"`
6509	// Parameters - Parameters for linked service.
6510	Parameters map[string]*ParameterSpecification `json:"parameters"`
6511	// Annotations - List of tags that can be used for describing the Dataset.
6512	Annotations *[]interface{} `json:"annotations,omitempty"`
6513	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
6514	Type TypeBasicLinkedService `json:"type,omitempty"`
6515}
6516
6517// MarshalJSON is the custom marshaler for AzureDatabricksLinkedService.
6518func (adls AzureDatabricksLinkedService) MarshalJSON() ([]byte, error) {
6519	adls.Type = TypeAzureDatabricks
6520	objectMap := make(map[string]interface{})
6521	if adls.AzureDatabricksLinkedServiceTypeProperties != nil {
6522		objectMap["typeProperties"] = adls.AzureDatabricksLinkedServiceTypeProperties
6523	}
6524	if adls.ConnectVia != nil {
6525		objectMap["connectVia"] = adls.ConnectVia
6526	}
6527	if adls.Description != nil {
6528		objectMap["description"] = adls.Description
6529	}
6530	if adls.Parameters != nil {
6531		objectMap["parameters"] = adls.Parameters
6532	}
6533	if adls.Annotations != nil {
6534		objectMap["annotations"] = adls.Annotations
6535	}
6536	if adls.Type != "" {
6537		objectMap["type"] = adls.Type
6538	}
6539	for k, v := range adls.AdditionalProperties {
6540		objectMap[k] = v
6541	}
6542	return json.Marshal(objectMap)
6543}
6544
6545// AsResponsysLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6546func (adls AzureDatabricksLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
6547	return nil, false
6548}
6549
6550// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6551func (adls AzureDatabricksLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
6552	return &adls, true
6553}
6554
6555// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6556func (adls AzureDatabricksLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
6557	return nil, false
6558}
6559
6560// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6561func (adls AzureDatabricksLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
6562	return nil, false
6563}
6564
6565// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6566func (adls AzureDatabricksLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
6567	return nil, false
6568}
6569
6570// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6571func (adls AzureDatabricksLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
6572	return nil, false
6573}
6574
6575// AsVerticaLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6576func (adls AzureDatabricksLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
6577	return nil, false
6578}
6579
6580// AsZohoLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6581func (adls AzureDatabricksLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
6582	return nil, false
6583}
6584
6585// AsXeroLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6586func (adls AzureDatabricksLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
6587	return nil, false
6588}
6589
6590// AsSquareLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6591func (adls AzureDatabricksLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
6592	return nil, false
6593}
6594
6595// AsSparkLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6596func (adls AzureDatabricksLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
6597	return nil, false
6598}
6599
6600// AsShopifyLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6601func (adls AzureDatabricksLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
6602	return nil, false
6603}
6604
6605// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6606func (adls AzureDatabricksLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
6607	return nil, false
6608}
6609
6610// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6611func (adls AzureDatabricksLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
6612	return nil, false
6613}
6614
6615// AsPrestoLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6616func (adls AzureDatabricksLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
6617	return nil, false
6618}
6619
6620// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6621func (adls AzureDatabricksLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
6622	return nil, false
6623}
6624
6625// AsPaypalLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6626func (adls AzureDatabricksLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
6627	return nil, false
6628}
6629
6630// AsMarketoLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6631func (adls AzureDatabricksLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
6632	return nil, false
6633}
6634
6635// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6636func (adls AzureDatabricksLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
6637	return nil, false
6638}
6639
6640// AsMagentoLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6641func (adls AzureDatabricksLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
6642	return nil, false
6643}
6644
6645// AsJiraLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6646func (adls AzureDatabricksLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
6647	return nil, false
6648}
6649
6650// AsImpalaLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6651func (adls AzureDatabricksLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
6652	return nil, false
6653}
6654
6655// AsHubspotLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6656func (adls AzureDatabricksLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
6657	return nil, false
6658}
6659
6660// AsHiveLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6661func (adls AzureDatabricksLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
6662	return nil, false
6663}
6664
6665// AsHBaseLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6666func (adls AzureDatabricksLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
6667	return nil, false
6668}
6669
6670// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6671func (adls AzureDatabricksLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
6672	return nil, false
6673}
6674
6675// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6676func (adls AzureDatabricksLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
6677	return nil, false
6678}
6679
6680// AsEloquaLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6681func (adls AzureDatabricksLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
6682	return nil, false
6683}
6684
6685// AsDrillLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6686func (adls AzureDatabricksLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
6687	return nil, false
6688}
6689
6690// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6691func (adls AzureDatabricksLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
6692	return nil, false
6693}
6694
6695// AsConcurLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6696func (adls AzureDatabricksLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
6697	return nil, false
6698}
6699
6700// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6701func (adls AzureDatabricksLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
6702	return nil, false
6703}
6704
6705// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6706func (adls AzureDatabricksLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
6707	return nil, false
6708}
6709
6710// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6711func (adls AzureDatabricksLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
6712	return nil, false
6713}
6714
6715// AsSapBWLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6716func (adls AzureDatabricksLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
6717	return nil, false
6718}
6719
6720// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6721func (adls AzureDatabricksLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
6722	return nil, false
6723}
6724
6725// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6726func (adls AzureDatabricksLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
6727	return nil, false
6728}
6729
6730// AsHTTPLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6731func (adls AzureDatabricksLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
6732	return nil, false
6733}
6734
6735// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6736func (adls AzureDatabricksLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
6737	return nil, false
6738}
6739
6740// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6741func (adls AzureDatabricksLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
6742	return nil, false
6743}
6744
6745// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6746func (adls AzureDatabricksLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
6747	return nil, false
6748}
6749
6750// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6751func (adls AzureDatabricksLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
6752	return nil, false
6753}
6754
6755// AsSapEccLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6756func (adls AzureDatabricksLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
6757	return nil, false
6758}
6759
6760// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6761func (adls AzureDatabricksLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
6762	return nil, false
6763}
6764
6765// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6766func (adls AzureDatabricksLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
6767	return nil, false
6768}
6769
6770// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6771func (adls AzureDatabricksLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
6772	return nil, false
6773}
6774
6775// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6776func (adls AzureDatabricksLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
6777	return nil, false
6778}
6779
6780// AsCassandraLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6781func (adls AzureDatabricksLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
6782	return nil, false
6783}
6784
6785// AsWebLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6786func (adls AzureDatabricksLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
6787	return nil, false
6788}
6789
6790// AsODataLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6791func (adls AzureDatabricksLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
6792	return nil, false
6793}
6794
6795// AsHdfsLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6796func (adls AzureDatabricksLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
6797	return nil, false
6798}
6799
6800// AsOdbcLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6801func (adls AzureDatabricksLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
6802	return nil, false
6803}
6804
6805// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6806func (adls AzureDatabricksLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
6807	return nil, false
6808}
6809
6810// AsTeradataLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6811func (adls AzureDatabricksLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
6812	return nil, false
6813}
6814
6815// AsDb2LinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6816func (adls AzureDatabricksLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
6817	return nil, false
6818}
6819
6820// AsSybaseLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6821func (adls AzureDatabricksLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
6822	return nil, false
6823}
6824
6825// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6826func (adls AzureDatabricksLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
6827	return nil, false
6828}
6829
6830// AsMySQLLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6831func (adls AzureDatabricksLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
6832	return nil, false
6833}
6834
6835// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6836func (adls AzureDatabricksLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
6837	return nil, false
6838}
6839
6840// AsOracleLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6841func (adls AzureDatabricksLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
6842	return nil, false
6843}
6844
6845// AsFileServerLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6846func (adls AzureDatabricksLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
6847	return nil, false
6848}
6849
6850// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6851func (adls AzureDatabricksLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
6852	return nil, false
6853}
6854
6855// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6856func (adls AzureDatabricksLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
6857	return nil, false
6858}
6859
6860// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6861func (adls AzureDatabricksLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
6862	return nil, false
6863}
6864
6865// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6866func (adls AzureDatabricksLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
6867	return nil, false
6868}
6869
6870// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6871func (adls AzureDatabricksLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
6872	return nil, false
6873}
6874
6875// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6876func (adls AzureDatabricksLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
6877	return nil, false
6878}
6879
6880// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6881func (adls AzureDatabricksLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
6882	return nil, false
6883}
6884
6885// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6886func (adls AzureDatabricksLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
6887	return nil, false
6888}
6889
6890// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6891func (adls AzureDatabricksLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
6892	return nil, false
6893}
6894
6895// AsLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6896func (adls AzureDatabricksLinkedService) AsLinkedService() (*LinkedService, bool) {
6897	return nil, false
6898}
6899
6900// AsBasicLinkedService is the BasicLinkedService implementation for AzureDatabricksLinkedService.
6901func (adls AzureDatabricksLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
6902	return &adls, true
6903}
6904
6905// UnmarshalJSON is the custom unmarshaler for AzureDatabricksLinkedService struct.
6906func (adls *AzureDatabricksLinkedService) UnmarshalJSON(body []byte) error {
6907	var m map[string]*json.RawMessage
6908	err := json.Unmarshal(body, &m)
6909	if err != nil {
6910		return err
6911	}
6912	for k, v := range m {
6913		switch k {
6914		case "typeProperties":
6915			if v != nil {
6916				var azureDatabricksLinkedServiceTypeProperties AzureDatabricksLinkedServiceTypeProperties
6917				err = json.Unmarshal(*v, &azureDatabricksLinkedServiceTypeProperties)
6918				if err != nil {
6919					return err
6920				}
6921				adls.AzureDatabricksLinkedServiceTypeProperties = &azureDatabricksLinkedServiceTypeProperties
6922			}
6923		default:
6924			if v != nil {
6925				var additionalProperties interface{}
6926				err = json.Unmarshal(*v, &additionalProperties)
6927				if err != nil {
6928					return err
6929				}
6930				if adls.AdditionalProperties == nil {
6931					adls.AdditionalProperties = make(map[string]interface{})
6932				}
6933				adls.AdditionalProperties[k] = additionalProperties
6934			}
6935		case "connectVia":
6936			if v != nil {
6937				var connectVia IntegrationRuntimeReference
6938				err = json.Unmarshal(*v, &connectVia)
6939				if err != nil {
6940					return err
6941				}
6942				adls.ConnectVia = &connectVia
6943			}
6944		case "description":
6945			if v != nil {
6946				var description string
6947				err = json.Unmarshal(*v, &description)
6948				if err != nil {
6949					return err
6950				}
6951				adls.Description = &description
6952			}
6953		case "parameters":
6954			if v != nil {
6955				var parameters map[string]*ParameterSpecification
6956				err = json.Unmarshal(*v, &parameters)
6957				if err != nil {
6958					return err
6959				}
6960				adls.Parameters = parameters
6961			}
6962		case "annotations":
6963			if v != nil {
6964				var annotations []interface{}
6965				err = json.Unmarshal(*v, &annotations)
6966				if err != nil {
6967					return err
6968				}
6969				adls.Annotations = &annotations
6970			}
6971		case "type":
6972			if v != nil {
6973				var typeVar TypeBasicLinkedService
6974				err = json.Unmarshal(*v, &typeVar)
6975				if err != nil {
6976					return err
6977				}
6978				adls.Type = typeVar
6979			}
6980		}
6981	}
6982
6983	return nil
6984}
6985
6986// AzureDatabricksLinkedServiceTypeProperties azure Databricks linked service properties.
6987type AzureDatabricksLinkedServiceTypeProperties struct {
6988	// Domain - <REGION>.azuredatabricks.net, domain name of your Databricks deployment. Type: string (or Expression with resultType string).
6989	Domain interface{} `json:"domain,omitempty"`
6990	// AccessToken - Access token for databricks REST API. Refer to https://docs.azuredatabricks.net/api/latest/authentication.html. Type: string (or Expression with resultType string).
6991	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
6992	// ExistingClusterID - The id of an existing cluster that will be used for all runs of this job. Type: string (or Expression with resultType string).
6993	ExistingClusterID interface{} `json:"existingClusterId,omitempty"`
6994	// NewClusterVersion - The Spark version of new cluster. Type: string (or Expression with resultType string).
6995	NewClusterVersion interface{} `json:"newClusterVersion,omitempty"`
6996	// NewClusterNumOfWorker - Number of worker nodes that new cluster should have. A string formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 as min and 10 as max. Type: string (or Expression with resultType string).
6997	NewClusterNumOfWorker interface{} `json:"newClusterNumOfWorker,omitempty"`
6998	// NewClusterNodeType - The node types of new cluster. Type: string (or Expression with resultType string).
6999	NewClusterNodeType interface{} `json:"newClusterNodeType,omitempty"`
7000	// NewClusterSparkConf - a set of optional, user-specified Spark configuration key-value pairs.
7001	NewClusterSparkConf map[string]interface{} `json:"newClusterSparkConf"`
7002	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
7003	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
7004}
7005
7006// MarshalJSON is the custom marshaler for AzureDatabricksLinkedServiceTypeProperties.
7007func (adlstp AzureDatabricksLinkedServiceTypeProperties) MarshalJSON() ([]byte, error) {
7008	objectMap := make(map[string]interface{})
7009	objectMap["domain"] = adlstp.Domain
7010	objectMap["accessToken"] = adlstp.AccessToken
7011	objectMap["existingClusterId"] = adlstp.ExistingClusterID
7012	objectMap["newClusterVersion"] = adlstp.NewClusterVersion
7013	objectMap["newClusterNumOfWorker"] = adlstp.NewClusterNumOfWorker
7014	objectMap["newClusterNodeType"] = adlstp.NewClusterNodeType
7015	if adlstp.NewClusterSparkConf != nil {
7016		objectMap["newClusterSparkConf"] = adlstp.NewClusterSparkConf
7017	}
7018	objectMap["encryptedCredential"] = adlstp.EncryptedCredential
7019	return json.Marshal(objectMap)
7020}
7021
7022// UnmarshalJSON is the custom unmarshaler for AzureDatabricksLinkedServiceTypeProperties struct.
7023func (adlstp *AzureDatabricksLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
7024	var m map[string]*json.RawMessage
7025	err := json.Unmarshal(body, &m)
7026	if err != nil {
7027		return err
7028	}
7029	for k, v := range m {
7030		switch k {
7031		case "domain":
7032			if v != nil {
7033				var domain interface{}
7034				err = json.Unmarshal(*v, &domain)
7035				if err != nil {
7036					return err
7037				}
7038				adlstp.Domain = domain
7039			}
7040		case "accessToken":
7041			if v != nil {
7042				accessToken, err := unmarshalBasicSecretBase(*v)
7043				if err != nil {
7044					return err
7045				}
7046				adlstp.AccessToken = accessToken
7047			}
7048		case "existingClusterId":
7049			if v != nil {
7050				var existingClusterID interface{}
7051				err = json.Unmarshal(*v, &existingClusterID)
7052				if err != nil {
7053					return err
7054				}
7055				adlstp.ExistingClusterID = existingClusterID
7056			}
7057		case "newClusterVersion":
7058			if v != nil {
7059				var newClusterVersion interface{}
7060				err = json.Unmarshal(*v, &newClusterVersion)
7061				if err != nil {
7062					return err
7063				}
7064				adlstp.NewClusterVersion = newClusterVersion
7065			}
7066		case "newClusterNumOfWorker":
7067			if v != nil {
7068				var newClusterNumOfWorker interface{}
7069				err = json.Unmarshal(*v, &newClusterNumOfWorker)
7070				if err != nil {
7071					return err
7072				}
7073				adlstp.NewClusterNumOfWorker = newClusterNumOfWorker
7074			}
7075		case "newClusterNodeType":
7076			if v != nil {
7077				var newClusterNodeType interface{}
7078				err = json.Unmarshal(*v, &newClusterNodeType)
7079				if err != nil {
7080					return err
7081				}
7082				adlstp.NewClusterNodeType = newClusterNodeType
7083			}
7084		case "newClusterSparkConf":
7085			if v != nil {
7086				var newClusterSparkConf map[string]interface{}
7087				err = json.Unmarshal(*v, &newClusterSparkConf)
7088				if err != nil {
7089					return err
7090				}
7091				adlstp.NewClusterSparkConf = newClusterSparkConf
7092			}
7093		case "encryptedCredential":
7094			if v != nil {
7095				var encryptedCredential interface{}
7096				err = json.Unmarshal(*v, &encryptedCredential)
7097				if err != nil {
7098					return err
7099				}
7100				adlstp.EncryptedCredential = encryptedCredential
7101			}
7102		}
7103	}
7104
7105	return nil
7106}
7107
7108// AzureDataLakeAnalyticsLinkedService azure Data Lake Analytics linked service.
7109type AzureDataLakeAnalyticsLinkedService struct {
7110	// AzureDataLakeAnalyticsLinkedServiceTypeProperties - Azure Data Lake Analytics linked service properties.
7111	*AzureDataLakeAnalyticsLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
7112	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
7113	AdditionalProperties map[string]interface{} `json:""`
7114	// ConnectVia - The integration runtime reference.
7115	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
7116	// Description - Linked service description.
7117	Description *string `json:"description,omitempty"`
7118	// Parameters - Parameters for linked service.
7119	Parameters map[string]*ParameterSpecification `json:"parameters"`
7120	// Annotations - List of tags that can be used for describing the Dataset.
7121	Annotations *[]interface{} `json:"annotations,omitempty"`
7122	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
7123	Type TypeBasicLinkedService `json:"type,omitempty"`
7124}
7125
7126// MarshalJSON is the custom marshaler for AzureDataLakeAnalyticsLinkedService.
7127func (adlals AzureDataLakeAnalyticsLinkedService) MarshalJSON() ([]byte, error) {
7128	adlals.Type = TypeAzureDataLakeAnalytics
7129	objectMap := make(map[string]interface{})
7130	if adlals.AzureDataLakeAnalyticsLinkedServiceTypeProperties != nil {
7131		objectMap["typeProperties"] = adlals.AzureDataLakeAnalyticsLinkedServiceTypeProperties
7132	}
7133	if adlals.ConnectVia != nil {
7134		objectMap["connectVia"] = adlals.ConnectVia
7135	}
7136	if adlals.Description != nil {
7137		objectMap["description"] = adlals.Description
7138	}
7139	if adlals.Parameters != nil {
7140		objectMap["parameters"] = adlals.Parameters
7141	}
7142	if adlals.Annotations != nil {
7143		objectMap["annotations"] = adlals.Annotations
7144	}
7145	if adlals.Type != "" {
7146		objectMap["type"] = adlals.Type
7147	}
7148	for k, v := range adlals.AdditionalProperties {
7149		objectMap[k] = v
7150	}
7151	return json.Marshal(objectMap)
7152}
7153
7154// AsResponsysLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7155func (adlals AzureDataLakeAnalyticsLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
7156	return nil, false
7157}
7158
7159// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7160func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
7161	return nil, false
7162}
7163
7164// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7165func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
7166	return &adlals, true
7167}
7168
7169// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7170func (adlals AzureDataLakeAnalyticsLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
7171	return nil, false
7172}
7173
7174// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7175func (adlals AzureDataLakeAnalyticsLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
7176	return nil, false
7177}
7178
7179// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7180func (adlals AzureDataLakeAnalyticsLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
7181	return nil, false
7182}
7183
7184// AsVerticaLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7185func (adlals AzureDataLakeAnalyticsLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
7186	return nil, false
7187}
7188
7189// AsZohoLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7190func (adlals AzureDataLakeAnalyticsLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
7191	return nil, false
7192}
7193
7194// AsXeroLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7195func (adlals AzureDataLakeAnalyticsLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
7196	return nil, false
7197}
7198
7199// AsSquareLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7200func (adlals AzureDataLakeAnalyticsLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
7201	return nil, false
7202}
7203
7204// AsSparkLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7205func (adlals AzureDataLakeAnalyticsLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
7206	return nil, false
7207}
7208
7209// AsShopifyLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7210func (adlals AzureDataLakeAnalyticsLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
7211	return nil, false
7212}
7213
7214// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7215func (adlals AzureDataLakeAnalyticsLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
7216	return nil, false
7217}
7218
7219// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7220func (adlals AzureDataLakeAnalyticsLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
7221	return nil, false
7222}
7223
7224// AsPrestoLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7225func (adlals AzureDataLakeAnalyticsLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
7226	return nil, false
7227}
7228
7229// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7230func (adlals AzureDataLakeAnalyticsLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
7231	return nil, false
7232}
7233
7234// AsPaypalLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7235func (adlals AzureDataLakeAnalyticsLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
7236	return nil, false
7237}
7238
7239// AsMarketoLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7240func (adlals AzureDataLakeAnalyticsLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
7241	return nil, false
7242}
7243
7244// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7245func (adlals AzureDataLakeAnalyticsLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
7246	return nil, false
7247}
7248
7249// AsMagentoLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7250func (adlals AzureDataLakeAnalyticsLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
7251	return nil, false
7252}
7253
7254// AsJiraLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7255func (adlals AzureDataLakeAnalyticsLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
7256	return nil, false
7257}
7258
7259// AsImpalaLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7260func (adlals AzureDataLakeAnalyticsLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
7261	return nil, false
7262}
7263
7264// AsHubspotLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7265func (adlals AzureDataLakeAnalyticsLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
7266	return nil, false
7267}
7268
7269// AsHiveLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7270func (adlals AzureDataLakeAnalyticsLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
7271	return nil, false
7272}
7273
7274// AsHBaseLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7275func (adlals AzureDataLakeAnalyticsLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
7276	return nil, false
7277}
7278
7279// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7280func (adlals AzureDataLakeAnalyticsLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
7281	return nil, false
7282}
7283
7284// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7285func (adlals AzureDataLakeAnalyticsLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
7286	return nil, false
7287}
7288
7289// AsEloquaLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7290func (adlals AzureDataLakeAnalyticsLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
7291	return nil, false
7292}
7293
7294// AsDrillLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7295func (adlals AzureDataLakeAnalyticsLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
7296	return nil, false
7297}
7298
7299// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7300func (adlals AzureDataLakeAnalyticsLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
7301	return nil, false
7302}
7303
7304// AsConcurLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7305func (adlals AzureDataLakeAnalyticsLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
7306	return nil, false
7307}
7308
7309// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7310func (adlals AzureDataLakeAnalyticsLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
7311	return nil, false
7312}
7313
7314// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7315func (adlals AzureDataLakeAnalyticsLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
7316	return nil, false
7317}
7318
7319// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7320func (adlals AzureDataLakeAnalyticsLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
7321	return nil, false
7322}
7323
7324// AsSapBWLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7325func (adlals AzureDataLakeAnalyticsLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
7326	return nil, false
7327}
7328
7329// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7330func (adlals AzureDataLakeAnalyticsLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
7331	return nil, false
7332}
7333
7334// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7335func (adlals AzureDataLakeAnalyticsLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
7336	return nil, false
7337}
7338
7339// AsHTTPLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7340func (adlals AzureDataLakeAnalyticsLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
7341	return nil, false
7342}
7343
7344// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7345func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
7346	return nil, false
7347}
7348
7349// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7350func (adlals AzureDataLakeAnalyticsLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
7351	return nil, false
7352}
7353
7354// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7355func (adlals AzureDataLakeAnalyticsLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
7356	return nil, false
7357}
7358
7359// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7360func (adlals AzureDataLakeAnalyticsLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
7361	return nil, false
7362}
7363
7364// AsSapEccLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7365func (adlals AzureDataLakeAnalyticsLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
7366	return nil, false
7367}
7368
7369// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7370func (adlals AzureDataLakeAnalyticsLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
7371	return nil, false
7372}
7373
7374// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7375func (adlals AzureDataLakeAnalyticsLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
7376	return nil, false
7377}
7378
7379// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7380func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
7381	return nil, false
7382}
7383
7384// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7385func (adlals AzureDataLakeAnalyticsLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
7386	return nil, false
7387}
7388
7389// AsCassandraLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7390func (adlals AzureDataLakeAnalyticsLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
7391	return nil, false
7392}
7393
7394// AsWebLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7395func (adlals AzureDataLakeAnalyticsLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
7396	return nil, false
7397}
7398
7399// AsODataLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7400func (adlals AzureDataLakeAnalyticsLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
7401	return nil, false
7402}
7403
7404// AsHdfsLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7405func (adlals AzureDataLakeAnalyticsLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
7406	return nil, false
7407}
7408
7409// AsOdbcLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7410func (adlals AzureDataLakeAnalyticsLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
7411	return nil, false
7412}
7413
7414// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7415func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
7416	return nil, false
7417}
7418
7419// AsTeradataLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7420func (adlals AzureDataLakeAnalyticsLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
7421	return nil, false
7422}
7423
7424// AsDb2LinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7425func (adlals AzureDataLakeAnalyticsLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
7426	return nil, false
7427}
7428
7429// AsSybaseLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7430func (adlals AzureDataLakeAnalyticsLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
7431	return nil, false
7432}
7433
7434// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7435func (adlals AzureDataLakeAnalyticsLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
7436	return nil, false
7437}
7438
7439// AsMySQLLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7440func (adlals AzureDataLakeAnalyticsLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
7441	return nil, false
7442}
7443
7444// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7445func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
7446	return nil, false
7447}
7448
7449// AsOracleLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7450func (adlals AzureDataLakeAnalyticsLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
7451	return nil, false
7452}
7453
7454// AsFileServerLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7455func (adlals AzureDataLakeAnalyticsLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
7456	return nil, false
7457}
7458
7459// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7460func (adlals AzureDataLakeAnalyticsLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
7461	return nil, false
7462}
7463
7464// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7465func (adlals AzureDataLakeAnalyticsLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
7466	return nil, false
7467}
7468
7469// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7470func (adlals AzureDataLakeAnalyticsLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
7471	return nil, false
7472}
7473
7474// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7475func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
7476	return nil, false
7477}
7478
7479// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7480func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
7481	return nil, false
7482}
7483
7484// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7485func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
7486	return nil, false
7487}
7488
7489// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7490func (adlals AzureDataLakeAnalyticsLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
7491	return nil, false
7492}
7493
7494// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7495func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
7496	return nil, false
7497}
7498
7499// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7500func (adlals AzureDataLakeAnalyticsLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
7501	return nil, false
7502}
7503
7504// AsLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7505func (adlals AzureDataLakeAnalyticsLinkedService) AsLinkedService() (*LinkedService, bool) {
7506	return nil, false
7507}
7508
7509// AsBasicLinkedService is the BasicLinkedService implementation for AzureDataLakeAnalyticsLinkedService.
7510func (adlals AzureDataLakeAnalyticsLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
7511	return &adlals, true
7512}
7513
7514// UnmarshalJSON is the custom unmarshaler for AzureDataLakeAnalyticsLinkedService struct.
7515func (adlals *AzureDataLakeAnalyticsLinkedService) UnmarshalJSON(body []byte) error {
7516	var m map[string]*json.RawMessage
7517	err := json.Unmarshal(body, &m)
7518	if err != nil {
7519		return err
7520	}
7521	for k, v := range m {
7522		switch k {
7523		case "typeProperties":
7524			if v != nil {
7525				var azureDataLakeAnalyticsLinkedServiceTypeProperties AzureDataLakeAnalyticsLinkedServiceTypeProperties
7526				err = json.Unmarshal(*v, &azureDataLakeAnalyticsLinkedServiceTypeProperties)
7527				if err != nil {
7528					return err
7529				}
7530				adlals.AzureDataLakeAnalyticsLinkedServiceTypeProperties = &azureDataLakeAnalyticsLinkedServiceTypeProperties
7531			}
7532		default:
7533			if v != nil {
7534				var additionalProperties interface{}
7535				err = json.Unmarshal(*v, &additionalProperties)
7536				if err != nil {
7537					return err
7538				}
7539				if adlals.AdditionalProperties == nil {
7540					adlals.AdditionalProperties = make(map[string]interface{})
7541				}
7542				adlals.AdditionalProperties[k] = additionalProperties
7543			}
7544		case "connectVia":
7545			if v != nil {
7546				var connectVia IntegrationRuntimeReference
7547				err = json.Unmarshal(*v, &connectVia)
7548				if err != nil {
7549					return err
7550				}
7551				adlals.ConnectVia = &connectVia
7552			}
7553		case "description":
7554			if v != nil {
7555				var description string
7556				err = json.Unmarshal(*v, &description)
7557				if err != nil {
7558					return err
7559				}
7560				adlals.Description = &description
7561			}
7562		case "parameters":
7563			if v != nil {
7564				var parameters map[string]*ParameterSpecification
7565				err = json.Unmarshal(*v, &parameters)
7566				if err != nil {
7567					return err
7568				}
7569				adlals.Parameters = parameters
7570			}
7571		case "annotations":
7572			if v != nil {
7573				var annotations []interface{}
7574				err = json.Unmarshal(*v, &annotations)
7575				if err != nil {
7576					return err
7577				}
7578				adlals.Annotations = &annotations
7579			}
7580		case "type":
7581			if v != nil {
7582				var typeVar TypeBasicLinkedService
7583				err = json.Unmarshal(*v, &typeVar)
7584				if err != nil {
7585					return err
7586				}
7587				adlals.Type = typeVar
7588			}
7589		}
7590	}
7591
7592	return nil
7593}
7594
7595// AzureDataLakeAnalyticsLinkedServiceTypeProperties azure Data Lake Analytics linked service properties.
7596type AzureDataLakeAnalyticsLinkedServiceTypeProperties struct {
7597	// AccountName - The Azure Data Lake Analytics account name. Type: string (or Expression with resultType string).
7598	AccountName interface{} `json:"accountName,omitempty"`
7599	// ServicePrincipalID - The ID of the application used to authenticate against the Azure Data Lake Analytics account. Type: string (or Expression with resultType string).
7600	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
7601	// ServicePrincipalKey - The Key of the application used to authenticate against the Azure Data Lake Analytics account.
7602	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
7603	// Tenant - The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
7604	Tenant interface{} `json:"tenant,omitempty"`
7605	// SubscriptionID - Data Lake Analytics account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string).
7606	SubscriptionID interface{} `json:"subscriptionId,omitempty"`
7607	// ResourceGroupName - Data Lake Analytics account resource group name (if different from Data Factory account). Type: string (or Expression with resultType string).
7608	ResourceGroupName interface{} `json:"resourceGroupName,omitempty"`
7609	// DataLakeAnalyticsURI - Azure Data Lake Analytics URI Type: string (or Expression with resultType string).
7610	DataLakeAnalyticsURI interface{} `json:"dataLakeAnalyticsUri,omitempty"`
7611	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
7612	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
7613}
7614
7615// UnmarshalJSON is the custom unmarshaler for AzureDataLakeAnalyticsLinkedServiceTypeProperties struct.
7616func (adlalstp *AzureDataLakeAnalyticsLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
7617	var m map[string]*json.RawMessage
7618	err := json.Unmarshal(body, &m)
7619	if err != nil {
7620		return err
7621	}
7622	for k, v := range m {
7623		switch k {
7624		case "accountName":
7625			if v != nil {
7626				var accountName interface{}
7627				err = json.Unmarshal(*v, &accountName)
7628				if err != nil {
7629					return err
7630				}
7631				adlalstp.AccountName = accountName
7632			}
7633		case "servicePrincipalId":
7634			if v != nil {
7635				var servicePrincipalID interface{}
7636				err = json.Unmarshal(*v, &servicePrincipalID)
7637				if err != nil {
7638					return err
7639				}
7640				adlalstp.ServicePrincipalID = servicePrincipalID
7641			}
7642		case "servicePrincipalKey":
7643			if v != nil {
7644				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
7645				if err != nil {
7646					return err
7647				}
7648				adlalstp.ServicePrincipalKey = servicePrincipalKey
7649			}
7650		case "tenant":
7651			if v != nil {
7652				var tenant interface{}
7653				err = json.Unmarshal(*v, &tenant)
7654				if err != nil {
7655					return err
7656				}
7657				adlalstp.Tenant = tenant
7658			}
7659		case "subscriptionId":
7660			if v != nil {
7661				var subscriptionID interface{}
7662				err = json.Unmarshal(*v, &subscriptionID)
7663				if err != nil {
7664					return err
7665				}
7666				adlalstp.SubscriptionID = subscriptionID
7667			}
7668		case "resourceGroupName":
7669			if v != nil {
7670				var resourceGroupName interface{}
7671				err = json.Unmarshal(*v, &resourceGroupName)
7672				if err != nil {
7673					return err
7674				}
7675				adlalstp.ResourceGroupName = resourceGroupName
7676			}
7677		case "dataLakeAnalyticsUri":
7678			if v != nil {
7679				var dataLakeAnalyticsURI interface{}
7680				err = json.Unmarshal(*v, &dataLakeAnalyticsURI)
7681				if err != nil {
7682					return err
7683				}
7684				adlalstp.DataLakeAnalyticsURI = dataLakeAnalyticsURI
7685			}
7686		case "encryptedCredential":
7687			if v != nil {
7688				var encryptedCredential interface{}
7689				err = json.Unmarshal(*v, &encryptedCredential)
7690				if err != nil {
7691					return err
7692				}
7693				adlalstp.EncryptedCredential = encryptedCredential
7694			}
7695		}
7696	}
7697
7698	return nil
7699}
7700
7701// AzureDataLakeStoreDataset azure Data Lake Store dataset.
7702type AzureDataLakeStoreDataset struct {
7703	// AzureDataLakeStoreDatasetTypeProperties - Azure Data Lake Store dataset properties.
7704	*AzureDataLakeStoreDatasetTypeProperties `json:"typeProperties,omitempty"`
7705	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
7706	AdditionalProperties map[string]interface{} `json:""`
7707	// Description - Dataset description.
7708	Description *string `json:"description,omitempty"`
7709	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
7710	Structure interface{} `json:"structure,omitempty"`
7711	// LinkedServiceName - Linked service reference.
7712	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
7713	// Parameters - Parameters for dataset.
7714	Parameters map[string]*ParameterSpecification `json:"parameters"`
7715	// Annotations - List of tags that can be used for describing the Dataset.
7716	Annotations *[]interface{} `json:"annotations,omitempty"`
7717	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
7718	Type TypeBasicDataset `json:"type,omitempty"`
7719}
7720
7721// MarshalJSON is the custom marshaler for AzureDataLakeStoreDataset.
7722func (adlsd AzureDataLakeStoreDataset) MarshalJSON() ([]byte, error) {
7723	adlsd.Type = TypeAzureDataLakeStoreFile
7724	objectMap := make(map[string]interface{})
7725	if adlsd.AzureDataLakeStoreDatasetTypeProperties != nil {
7726		objectMap["typeProperties"] = adlsd.AzureDataLakeStoreDatasetTypeProperties
7727	}
7728	if adlsd.Description != nil {
7729		objectMap["description"] = adlsd.Description
7730	}
7731	objectMap["structure"] = adlsd.Structure
7732	if adlsd.LinkedServiceName != nil {
7733		objectMap["linkedServiceName"] = adlsd.LinkedServiceName
7734	}
7735	if adlsd.Parameters != nil {
7736		objectMap["parameters"] = adlsd.Parameters
7737	}
7738	if adlsd.Annotations != nil {
7739		objectMap["annotations"] = adlsd.Annotations
7740	}
7741	if adlsd.Type != "" {
7742		objectMap["type"] = adlsd.Type
7743	}
7744	for k, v := range adlsd.AdditionalProperties {
7745		objectMap[k] = v
7746	}
7747	return json.Marshal(objectMap)
7748}
7749
7750// AsResponsysObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7751func (adlsd AzureDataLakeStoreDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
7752	return nil, false
7753}
7754
7755// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7756func (adlsd AzureDataLakeStoreDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
7757	return nil, false
7758}
7759
7760// AsVerticaTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7761func (adlsd AzureDataLakeStoreDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
7762	return nil, false
7763}
7764
7765// AsNetezzaTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7766func (adlsd AzureDataLakeStoreDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
7767	return nil, false
7768}
7769
7770// AsZohoObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7771func (adlsd AzureDataLakeStoreDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
7772	return nil, false
7773}
7774
7775// AsXeroObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7776func (adlsd AzureDataLakeStoreDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
7777	return nil, false
7778}
7779
7780// AsSquareObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7781func (adlsd AzureDataLakeStoreDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
7782	return nil, false
7783}
7784
7785// AsSparkObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7786func (adlsd AzureDataLakeStoreDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
7787	return nil, false
7788}
7789
7790// AsShopifyObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7791func (adlsd AzureDataLakeStoreDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
7792	return nil, false
7793}
7794
7795// AsServiceNowObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7796func (adlsd AzureDataLakeStoreDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
7797	return nil, false
7798}
7799
7800// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7801func (adlsd AzureDataLakeStoreDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
7802	return nil, false
7803}
7804
7805// AsPrestoObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7806func (adlsd AzureDataLakeStoreDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
7807	return nil, false
7808}
7809
7810// AsPhoenixObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7811func (adlsd AzureDataLakeStoreDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
7812	return nil, false
7813}
7814
7815// AsPaypalObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7816func (adlsd AzureDataLakeStoreDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
7817	return nil, false
7818}
7819
7820// AsMarketoObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7821func (adlsd AzureDataLakeStoreDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
7822	return nil, false
7823}
7824
7825// AsMariaDBTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7826func (adlsd AzureDataLakeStoreDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
7827	return nil, false
7828}
7829
7830// AsMagentoObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7831func (adlsd AzureDataLakeStoreDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
7832	return nil, false
7833}
7834
7835// AsJiraObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7836func (adlsd AzureDataLakeStoreDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
7837	return nil, false
7838}
7839
7840// AsImpalaObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7841func (adlsd AzureDataLakeStoreDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
7842	return nil, false
7843}
7844
7845// AsHubspotObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7846func (adlsd AzureDataLakeStoreDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
7847	return nil, false
7848}
7849
7850// AsHiveObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7851func (adlsd AzureDataLakeStoreDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
7852	return nil, false
7853}
7854
7855// AsHBaseObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7856func (adlsd AzureDataLakeStoreDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
7857	return nil, false
7858}
7859
7860// AsGreenplumTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7861func (adlsd AzureDataLakeStoreDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
7862	return nil, false
7863}
7864
7865// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7866func (adlsd AzureDataLakeStoreDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
7867	return nil, false
7868}
7869
7870// AsEloquaObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7871func (adlsd AzureDataLakeStoreDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
7872	return nil, false
7873}
7874
7875// AsDrillTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7876func (adlsd AzureDataLakeStoreDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
7877	return nil, false
7878}
7879
7880// AsCouchbaseTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7881func (adlsd AzureDataLakeStoreDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
7882	return nil, false
7883}
7884
7885// AsConcurObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7886func (adlsd AzureDataLakeStoreDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
7887	return nil, false
7888}
7889
7890// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7891func (adlsd AzureDataLakeStoreDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
7892	return nil, false
7893}
7894
7895// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7896func (adlsd AzureDataLakeStoreDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
7897	return nil, false
7898}
7899
7900// AsHTTPDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7901func (adlsd AzureDataLakeStoreDataset) AsHTTPDataset() (*HTTPDataset, bool) {
7902	return nil, false
7903}
7904
7905// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7906func (adlsd AzureDataLakeStoreDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
7907	return nil, false
7908}
7909
7910// AsWebTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7911func (adlsd AzureDataLakeStoreDataset) AsWebTableDataset() (*WebTableDataset, bool) {
7912	return nil, false
7913}
7914
7915// AsSQLServerTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7916func (adlsd AzureDataLakeStoreDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
7917	return nil, false
7918}
7919
7920// AsSapEccResourceDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7921func (adlsd AzureDataLakeStoreDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
7922	return nil, false
7923}
7924
7925// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7926func (adlsd AzureDataLakeStoreDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
7927	return nil, false
7928}
7929
7930// AsSalesforceObjectDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7931func (adlsd AzureDataLakeStoreDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
7932	return nil, false
7933}
7934
7935// AsRelationalTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7936func (adlsd AzureDataLakeStoreDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
7937	return nil, false
7938}
7939
7940// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7941func (adlsd AzureDataLakeStoreDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
7942	return nil, false
7943}
7944
7945// AsOracleTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7946func (adlsd AzureDataLakeStoreDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
7947	return nil, false
7948}
7949
7950// AsODataResourceDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7951func (adlsd AzureDataLakeStoreDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
7952	return nil, false
7953}
7954
7955// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7956func (adlsd AzureDataLakeStoreDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
7957	return nil, false
7958}
7959
7960// AsFileShareDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7961func (adlsd AzureDataLakeStoreDataset) AsFileShareDataset() (*FileShareDataset, bool) {
7962	return nil, false
7963}
7964
7965// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7966func (adlsd AzureDataLakeStoreDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
7967	return &adlsd, true
7968}
7969
7970// AsDynamicsEntityDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7971func (adlsd AzureDataLakeStoreDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
7972	return nil, false
7973}
7974
7975// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7976func (adlsd AzureDataLakeStoreDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
7977	return nil, false
7978}
7979
7980// AsCustomDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7981func (adlsd AzureDataLakeStoreDataset) AsCustomDataset() (*CustomDataset, bool) {
7982	return nil, false
7983}
7984
7985// AsCassandraTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7986func (adlsd AzureDataLakeStoreDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
7987	return nil, false
7988}
7989
7990// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7991func (adlsd AzureDataLakeStoreDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
7992	return nil, false
7993}
7994
7995// AsAzureSQLTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
7996func (adlsd AzureDataLakeStoreDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
7997	return nil, false
7998}
7999
8000// AsAzureTableDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
8001func (adlsd AzureDataLakeStoreDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
8002	return nil, false
8003}
8004
8005// AsAzureBlobDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
8006func (adlsd AzureDataLakeStoreDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
8007	return nil, false
8008}
8009
8010// AsAmazonS3Dataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
8011func (adlsd AzureDataLakeStoreDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
8012	return nil, false
8013}
8014
8015// AsDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
8016func (adlsd AzureDataLakeStoreDataset) AsDataset() (*Dataset, bool) {
8017	return nil, false
8018}
8019
8020// AsBasicDataset is the BasicDataset implementation for AzureDataLakeStoreDataset.
8021func (adlsd AzureDataLakeStoreDataset) AsBasicDataset() (BasicDataset, bool) {
8022	return &adlsd, true
8023}
8024
8025// UnmarshalJSON is the custom unmarshaler for AzureDataLakeStoreDataset struct.
8026func (adlsd *AzureDataLakeStoreDataset) UnmarshalJSON(body []byte) error {
8027	var m map[string]*json.RawMessage
8028	err := json.Unmarshal(body, &m)
8029	if err != nil {
8030		return err
8031	}
8032	for k, v := range m {
8033		switch k {
8034		case "typeProperties":
8035			if v != nil {
8036				var azureDataLakeStoreDatasetTypeProperties AzureDataLakeStoreDatasetTypeProperties
8037				err = json.Unmarshal(*v, &azureDataLakeStoreDatasetTypeProperties)
8038				if err != nil {
8039					return err
8040				}
8041				adlsd.AzureDataLakeStoreDatasetTypeProperties = &azureDataLakeStoreDatasetTypeProperties
8042			}
8043		default:
8044			if v != nil {
8045				var additionalProperties interface{}
8046				err = json.Unmarshal(*v, &additionalProperties)
8047				if err != nil {
8048					return err
8049				}
8050				if adlsd.AdditionalProperties == nil {
8051					adlsd.AdditionalProperties = make(map[string]interface{})
8052				}
8053				adlsd.AdditionalProperties[k] = additionalProperties
8054			}
8055		case "description":
8056			if v != nil {
8057				var description string
8058				err = json.Unmarshal(*v, &description)
8059				if err != nil {
8060					return err
8061				}
8062				adlsd.Description = &description
8063			}
8064		case "structure":
8065			if v != nil {
8066				var structure interface{}
8067				err = json.Unmarshal(*v, &structure)
8068				if err != nil {
8069					return err
8070				}
8071				adlsd.Structure = structure
8072			}
8073		case "linkedServiceName":
8074			if v != nil {
8075				var linkedServiceName LinkedServiceReference
8076				err = json.Unmarshal(*v, &linkedServiceName)
8077				if err != nil {
8078					return err
8079				}
8080				adlsd.LinkedServiceName = &linkedServiceName
8081			}
8082		case "parameters":
8083			if v != nil {
8084				var parameters map[string]*ParameterSpecification
8085				err = json.Unmarshal(*v, &parameters)
8086				if err != nil {
8087					return err
8088				}
8089				adlsd.Parameters = parameters
8090			}
8091		case "annotations":
8092			if v != nil {
8093				var annotations []interface{}
8094				err = json.Unmarshal(*v, &annotations)
8095				if err != nil {
8096					return err
8097				}
8098				adlsd.Annotations = &annotations
8099			}
8100		case "type":
8101			if v != nil {
8102				var typeVar TypeBasicDataset
8103				err = json.Unmarshal(*v, &typeVar)
8104				if err != nil {
8105					return err
8106				}
8107				adlsd.Type = typeVar
8108			}
8109		}
8110	}
8111
8112	return nil
8113}
8114
8115// AzureDataLakeStoreDatasetTypeProperties azure Data Lake Store dataset properties.
8116type AzureDataLakeStoreDatasetTypeProperties struct {
8117	// FolderPath - Path to the folder in the Azure Data Lake Store. Type: string (or Expression with resultType string).
8118	FolderPath interface{} `json:"folderPath,omitempty"`
8119	// FileName - The name of the file in the Azure Data Lake Store. Type: string (or Expression with resultType string).
8120	FileName interface{} `json:"fileName,omitempty"`
8121	// Format - The format of the Data Lake Store.
8122	Format BasicDatasetStorageFormat `json:"format,omitempty"`
8123	// Compression - The data compression method used for the item(s) in the Azure Data Lake Store.
8124	Compression BasicDatasetCompression `json:"compression,omitempty"`
8125}
8126
8127// UnmarshalJSON is the custom unmarshaler for AzureDataLakeStoreDatasetTypeProperties struct.
8128func (adlsdtp *AzureDataLakeStoreDatasetTypeProperties) UnmarshalJSON(body []byte) error {
8129	var m map[string]*json.RawMessage
8130	err := json.Unmarshal(body, &m)
8131	if err != nil {
8132		return err
8133	}
8134	for k, v := range m {
8135		switch k {
8136		case "folderPath":
8137			if v != nil {
8138				var folderPath interface{}
8139				err = json.Unmarshal(*v, &folderPath)
8140				if err != nil {
8141					return err
8142				}
8143				adlsdtp.FolderPath = folderPath
8144			}
8145		case "fileName":
8146			if v != nil {
8147				var fileName interface{}
8148				err = json.Unmarshal(*v, &fileName)
8149				if err != nil {
8150					return err
8151				}
8152				adlsdtp.FileName = fileName
8153			}
8154		case "format":
8155			if v != nil {
8156				formatVar, err := unmarshalBasicDatasetStorageFormat(*v)
8157				if err != nil {
8158					return err
8159				}
8160				adlsdtp.Format = formatVar
8161			}
8162		case "compression":
8163			if v != nil {
8164				compression, err := unmarshalBasicDatasetCompression(*v)
8165				if err != nil {
8166					return err
8167				}
8168				adlsdtp.Compression = compression
8169			}
8170		}
8171	}
8172
8173	return nil
8174}
8175
8176// AzureDataLakeStoreLinkedService azure Data Lake Store linked service.
8177type AzureDataLakeStoreLinkedService struct {
8178	// AzureDataLakeStoreLinkedServiceTypeProperties - Azure Data Lake Store linked service properties.
8179	*AzureDataLakeStoreLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
8180	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
8181	AdditionalProperties map[string]interface{} `json:""`
8182	// ConnectVia - The integration runtime reference.
8183	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
8184	// Description - Linked service description.
8185	Description *string `json:"description,omitempty"`
8186	// Parameters - Parameters for linked service.
8187	Parameters map[string]*ParameterSpecification `json:"parameters"`
8188	// Annotations - List of tags that can be used for describing the Dataset.
8189	Annotations *[]interface{} `json:"annotations,omitempty"`
8190	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
8191	Type TypeBasicLinkedService `json:"type,omitempty"`
8192}
8193
8194// MarshalJSON is the custom marshaler for AzureDataLakeStoreLinkedService.
8195func (adlsls AzureDataLakeStoreLinkedService) MarshalJSON() ([]byte, error) {
8196	adlsls.Type = TypeAzureDataLakeStore
8197	objectMap := make(map[string]interface{})
8198	if adlsls.AzureDataLakeStoreLinkedServiceTypeProperties != nil {
8199		objectMap["typeProperties"] = adlsls.AzureDataLakeStoreLinkedServiceTypeProperties
8200	}
8201	if adlsls.ConnectVia != nil {
8202		objectMap["connectVia"] = adlsls.ConnectVia
8203	}
8204	if adlsls.Description != nil {
8205		objectMap["description"] = adlsls.Description
8206	}
8207	if adlsls.Parameters != nil {
8208		objectMap["parameters"] = adlsls.Parameters
8209	}
8210	if adlsls.Annotations != nil {
8211		objectMap["annotations"] = adlsls.Annotations
8212	}
8213	if adlsls.Type != "" {
8214		objectMap["type"] = adlsls.Type
8215	}
8216	for k, v := range adlsls.AdditionalProperties {
8217		objectMap[k] = v
8218	}
8219	return json.Marshal(objectMap)
8220}
8221
8222// AsResponsysLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8223func (adlsls AzureDataLakeStoreLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
8224	return nil, false
8225}
8226
8227// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8228func (adlsls AzureDataLakeStoreLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
8229	return nil, false
8230}
8231
8232// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8233func (adlsls AzureDataLakeStoreLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
8234	return nil, false
8235}
8236
8237// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8238func (adlsls AzureDataLakeStoreLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
8239	return nil, false
8240}
8241
8242// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8243func (adlsls AzureDataLakeStoreLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
8244	return nil, false
8245}
8246
8247// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8248func (adlsls AzureDataLakeStoreLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
8249	return nil, false
8250}
8251
8252// AsVerticaLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8253func (adlsls AzureDataLakeStoreLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
8254	return nil, false
8255}
8256
8257// AsZohoLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8258func (adlsls AzureDataLakeStoreLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
8259	return nil, false
8260}
8261
8262// AsXeroLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8263func (adlsls AzureDataLakeStoreLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
8264	return nil, false
8265}
8266
8267// AsSquareLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8268func (adlsls AzureDataLakeStoreLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
8269	return nil, false
8270}
8271
8272// AsSparkLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8273func (adlsls AzureDataLakeStoreLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
8274	return nil, false
8275}
8276
8277// AsShopifyLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8278func (adlsls AzureDataLakeStoreLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
8279	return nil, false
8280}
8281
8282// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8283func (adlsls AzureDataLakeStoreLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
8284	return nil, false
8285}
8286
8287// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8288func (adlsls AzureDataLakeStoreLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
8289	return nil, false
8290}
8291
8292// AsPrestoLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8293func (adlsls AzureDataLakeStoreLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
8294	return nil, false
8295}
8296
8297// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8298func (adlsls AzureDataLakeStoreLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
8299	return nil, false
8300}
8301
8302// AsPaypalLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8303func (adlsls AzureDataLakeStoreLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
8304	return nil, false
8305}
8306
8307// AsMarketoLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8308func (adlsls AzureDataLakeStoreLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
8309	return nil, false
8310}
8311
8312// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8313func (adlsls AzureDataLakeStoreLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
8314	return nil, false
8315}
8316
8317// AsMagentoLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8318func (adlsls AzureDataLakeStoreLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
8319	return nil, false
8320}
8321
8322// AsJiraLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8323func (adlsls AzureDataLakeStoreLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
8324	return nil, false
8325}
8326
8327// AsImpalaLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8328func (adlsls AzureDataLakeStoreLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
8329	return nil, false
8330}
8331
8332// AsHubspotLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8333func (adlsls AzureDataLakeStoreLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
8334	return nil, false
8335}
8336
8337// AsHiveLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8338func (adlsls AzureDataLakeStoreLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
8339	return nil, false
8340}
8341
8342// AsHBaseLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8343func (adlsls AzureDataLakeStoreLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
8344	return nil, false
8345}
8346
8347// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8348func (adlsls AzureDataLakeStoreLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
8349	return nil, false
8350}
8351
8352// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8353func (adlsls AzureDataLakeStoreLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
8354	return nil, false
8355}
8356
8357// AsEloquaLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8358func (adlsls AzureDataLakeStoreLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
8359	return nil, false
8360}
8361
8362// AsDrillLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8363func (adlsls AzureDataLakeStoreLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
8364	return nil, false
8365}
8366
8367// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8368func (adlsls AzureDataLakeStoreLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
8369	return nil, false
8370}
8371
8372// AsConcurLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8373func (adlsls AzureDataLakeStoreLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
8374	return nil, false
8375}
8376
8377// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8378func (adlsls AzureDataLakeStoreLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
8379	return nil, false
8380}
8381
8382// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8383func (adlsls AzureDataLakeStoreLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
8384	return nil, false
8385}
8386
8387// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8388func (adlsls AzureDataLakeStoreLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
8389	return nil, false
8390}
8391
8392// AsSapBWLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8393func (adlsls AzureDataLakeStoreLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
8394	return nil, false
8395}
8396
8397// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8398func (adlsls AzureDataLakeStoreLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
8399	return nil, false
8400}
8401
8402// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8403func (adlsls AzureDataLakeStoreLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
8404	return nil, false
8405}
8406
8407// AsHTTPLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8408func (adlsls AzureDataLakeStoreLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
8409	return nil, false
8410}
8411
8412// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8413func (adlsls AzureDataLakeStoreLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
8414	return nil, false
8415}
8416
8417// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8418func (adlsls AzureDataLakeStoreLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
8419	return nil, false
8420}
8421
8422// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8423func (adlsls AzureDataLakeStoreLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
8424	return nil, false
8425}
8426
8427// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8428func (adlsls AzureDataLakeStoreLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
8429	return nil, false
8430}
8431
8432// AsSapEccLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8433func (adlsls AzureDataLakeStoreLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
8434	return nil, false
8435}
8436
8437// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8438func (adlsls AzureDataLakeStoreLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
8439	return nil, false
8440}
8441
8442// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8443func (adlsls AzureDataLakeStoreLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
8444	return nil, false
8445}
8446
8447// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8448func (adlsls AzureDataLakeStoreLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
8449	return &adlsls, true
8450}
8451
8452// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8453func (adlsls AzureDataLakeStoreLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
8454	return nil, false
8455}
8456
8457// AsCassandraLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8458func (adlsls AzureDataLakeStoreLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
8459	return nil, false
8460}
8461
8462// AsWebLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8463func (adlsls AzureDataLakeStoreLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
8464	return nil, false
8465}
8466
8467// AsODataLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8468func (adlsls AzureDataLakeStoreLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
8469	return nil, false
8470}
8471
8472// AsHdfsLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8473func (adlsls AzureDataLakeStoreLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
8474	return nil, false
8475}
8476
8477// AsOdbcLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8478func (adlsls AzureDataLakeStoreLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
8479	return nil, false
8480}
8481
8482// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8483func (adlsls AzureDataLakeStoreLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
8484	return nil, false
8485}
8486
8487// AsTeradataLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8488func (adlsls AzureDataLakeStoreLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
8489	return nil, false
8490}
8491
8492// AsDb2LinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8493func (adlsls AzureDataLakeStoreLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
8494	return nil, false
8495}
8496
8497// AsSybaseLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8498func (adlsls AzureDataLakeStoreLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
8499	return nil, false
8500}
8501
8502// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8503func (adlsls AzureDataLakeStoreLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
8504	return nil, false
8505}
8506
8507// AsMySQLLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8508func (adlsls AzureDataLakeStoreLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
8509	return nil, false
8510}
8511
8512// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8513func (adlsls AzureDataLakeStoreLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
8514	return nil, false
8515}
8516
8517// AsOracleLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8518func (adlsls AzureDataLakeStoreLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
8519	return nil, false
8520}
8521
8522// AsFileServerLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8523func (adlsls AzureDataLakeStoreLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
8524	return nil, false
8525}
8526
8527// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8528func (adlsls AzureDataLakeStoreLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
8529	return nil, false
8530}
8531
8532// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8533func (adlsls AzureDataLakeStoreLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
8534	return nil, false
8535}
8536
8537// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8538func (adlsls AzureDataLakeStoreLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
8539	return nil, false
8540}
8541
8542// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8543func (adlsls AzureDataLakeStoreLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
8544	return nil, false
8545}
8546
8547// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8548func (adlsls AzureDataLakeStoreLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
8549	return nil, false
8550}
8551
8552// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8553func (adlsls AzureDataLakeStoreLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
8554	return nil, false
8555}
8556
8557// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8558func (adlsls AzureDataLakeStoreLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
8559	return nil, false
8560}
8561
8562// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8563func (adlsls AzureDataLakeStoreLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
8564	return nil, false
8565}
8566
8567// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8568func (adlsls AzureDataLakeStoreLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
8569	return nil, false
8570}
8571
8572// AsLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8573func (adlsls AzureDataLakeStoreLinkedService) AsLinkedService() (*LinkedService, bool) {
8574	return nil, false
8575}
8576
8577// AsBasicLinkedService is the BasicLinkedService implementation for AzureDataLakeStoreLinkedService.
8578func (adlsls AzureDataLakeStoreLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
8579	return &adlsls, true
8580}
8581
8582// UnmarshalJSON is the custom unmarshaler for AzureDataLakeStoreLinkedService struct.
8583func (adlsls *AzureDataLakeStoreLinkedService) UnmarshalJSON(body []byte) error {
8584	var m map[string]*json.RawMessage
8585	err := json.Unmarshal(body, &m)
8586	if err != nil {
8587		return err
8588	}
8589	for k, v := range m {
8590		switch k {
8591		case "typeProperties":
8592			if v != nil {
8593				var azureDataLakeStoreLinkedServiceTypeProperties AzureDataLakeStoreLinkedServiceTypeProperties
8594				err = json.Unmarshal(*v, &azureDataLakeStoreLinkedServiceTypeProperties)
8595				if err != nil {
8596					return err
8597				}
8598				adlsls.AzureDataLakeStoreLinkedServiceTypeProperties = &azureDataLakeStoreLinkedServiceTypeProperties
8599			}
8600		default:
8601			if v != nil {
8602				var additionalProperties interface{}
8603				err = json.Unmarshal(*v, &additionalProperties)
8604				if err != nil {
8605					return err
8606				}
8607				if adlsls.AdditionalProperties == nil {
8608					adlsls.AdditionalProperties = make(map[string]interface{})
8609				}
8610				adlsls.AdditionalProperties[k] = additionalProperties
8611			}
8612		case "connectVia":
8613			if v != nil {
8614				var connectVia IntegrationRuntimeReference
8615				err = json.Unmarshal(*v, &connectVia)
8616				if err != nil {
8617					return err
8618				}
8619				adlsls.ConnectVia = &connectVia
8620			}
8621		case "description":
8622			if v != nil {
8623				var description string
8624				err = json.Unmarshal(*v, &description)
8625				if err != nil {
8626					return err
8627				}
8628				adlsls.Description = &description
8629			}
8630		case "parameters":
8631			if v != nil {
8632				var parameters map[string]*ParameterSpecification
8633				err = json.Unmarshal(*v, &parameters)
8634				if err != nil {
8635					return err
8636				}
8637				adlsls.Parameters = parameters
8638			}
8639		case "annotations":
8640			if v != nil {
8641				var annotations []interface{}
8642				err = json.Unmarshal(*v, &annotations)
8643				if err != nil {
8644					return err
8645				}
8646				adlsls.Annotations = &annotations
8647			}
8648		case "type":
8649			if v != nil {
8650				var typeVar TypeBasicLinkedService
8651				err = json.Unmarshal(*v, &typeVar)
8652				if err != nil {
8653					return err
8654				}
8655				adlsls.Type = typeVar
8656			}
8657		}
8658	}
8659
8660	return nil
8661}
8662
8663// AzureDataLakeStoreLinkedServiceTypeProperties azure Data Lake Store linked service properties.
8664type AzureDataLakeStoreLinkedServiceTypeProperties struct {
8665	// DataLakeStoreURI - Data Lake Store service URI. Type: string (or Expression with resultType string).
8666	DataLakeStoreURI interface{} `json:"dataLakeStoreUri,omitempty"`
8667	// ServicePrincipalID - The ID of the application used to authenticate against the Azure Data Lake Store account. Type: string (or Expression with resultType string).
8668	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
8669	// ServicePrincipalKey - The Key of the application used to authenticate against the Azure Data Lake Store account.
8670	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
8671	// Tenant - The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
8672	Tenant interface{} `json:"tenant,omitempty"`
8673	// AccountName - Data Lake Store account name. Type: string (or Expression with resultType string).
8674	AccountName interface{} `json:"accountName,omitempty"`
8675	// SubscriptionID - Data Lake Store account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string).
8676	SubscriptionID interface{} `json:"subscriptionId,omitempty"`
8677	// ResourceGroupName - Data Lake Store account resource group name (if different from Data Factory account). Type: string (or Expression with resultType string).
8678	ResourceGroupName interface{} `json:"resourceGroupName,omitempty"`
8679	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
8680	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
8681}
8682
8683// UnmarshalJSON is the custom unmarshaler for AzureDataLakeStoreLinkedServiceTypeProperties struct.
8684func (adlslstp *AzureDataLakeStoreLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
8685	var m map[string]*json.RawMessage
8686	err := json.Unmarshal(body, &m)
8687	if err != nil {
8688		return err
8689	}
8690	for k, v := range m {
8691		switch k {
8692		case "dataLakeStoreUri":
8693			if v != nil {
8694				var dataLakeStoreURI interface{}
8695				err = json.Unmarshal(*v, &dataLakeStoreURI)
8696				if err != nil {
8697					return err
8698				}
8699				adlslstp.DataLakeStoreURI = dataLakeStoreURI
8700			}
8701		case "servicePrincipalId":
8702			if v != nil {
8703				var servicePrincipalID interface{}
8704				err = json.Unmarshal(*v, &servicePrincipalID)
8705				if err != nil {
8706					return err
8707				}
8708				adlslstp.ServicePrincipalID = servicePrincipalID
8709			}
8710		case "servicePrincipalKey":
8711			if v != nil {
8712				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
8713				if err != nil {
8714					return err
8715				}
8716				adlslstp.ServicePrincipalKey = servicePrincipalKey
8717			}
8718		case "tenant":
8719			if v != nil {
8720				var tenant interface{}
8721				err = json.Unmarshal(*v, &tenant)
8722				if err != nil {
8723					return err
8724				}
8725				adlslstp.Tenant = tenant
8726			}
8727		case "accountName":
8728			if v != nil {
8729				var accountName interface{}
8730				err = json.Unmarshal(*v, &accountName)
8731				if err != nil {
8732					return err
8733				}
8734				adlslstp.AccountName = accountName
8735			}
8736		case "subscriptionId":
8737			if v != nil {
8738				var subscriptionID interface{}
8739				err = json.Unmarshal(*v, &subscriptionID)
8740				if err != nil {
8741					return err
8742				}
8743				adlslstp.SubscriptionID = subscriptionID
8744			}
8745		case "resourceGroupName":
8746			if v != nil {
8747				var resourceGroupName interface{}
8748				err = json.Unmarshal(*v, &resourceGroupName)
8749				if err != nil {
8750					return err
8751				}
8752				adlslstp.ResourceGroupName = resourceGroupName
8753			}
8754		case "encryptedCredential":
8755			if v != nil {
8756				var encryptedCredential interface{}
8757				err = json.Unmarshal(*v, &encryptedCredential)
8758				if err != nil {
8759					return err
8760				}
8761				adlslstp.EncryptedCredential = encryptedCredential
8762			}
8763		}
8764	}
8765
8766	return nil
8767}
8768
8769// AzureDataLakeStoreSink a copy activity Azure Data Lake Store sink.
8770type AzureDataLakeStoreSink struct {
8771	// CopyBehavior - The type of copy behavior for copy sink. Possible values include: 'PreserveHierarchy', 'FlattenHierarchy', 'MergeFiles'
8772	CopyBehavior CopyBehaviorType `json:"copyBehavior,omitempty"`
8773	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
8774	AdditionalProperties map[string]interface{} `json:""`
8775	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
8776	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
8777	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
8778	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
8779	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
8780	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
8781	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
8782	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
8783	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
8784	Type TypeBasicCopySink `json:"type,omitempty"`
8785}
8786
8787// MarshalJSON is the custom marshaler for AzureDataLakeStoreSink.
8788func (adlss AzureDataLakeStoreSink) MarshalJSON() ([]byte, error) {
8789	adlss.Type = TypeAzureDataLakeStoreSink
8790	objectMap := make(map[string]interface{})
8791	if adlss.CopyBehavior != "" {
8792		objectMap["copyBehavior"] = adlss.CopyBehavior
8793	}
8794	objectMap["writeBatchSize"] = adlss.WriteBatchSize
8795	objectMap["writeBatchTimeout"] = adlss.WriteBatchTimeout
8796	objectMap["sinkRetryCount"] = adlss.SinkRetryCount
8797	objectMap["sinkRetryWait"] = adlss.SinkRetryWait
8798	if adlss.Type != "" {
8799		objectMap["type"] = adlss.Type
8800	}
8801	for k, v := range adlss.AdditionalProperties {
8802		objectMap[k] = v
8803	}
8804	return json.Marshal(objectMap)
8805}
8806
8807// AsSalesforceSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8808func (adlss AzureDataLakeStoreSink) AsSalesforceSink() (*SalesforceSink, bool) {
8809	return nil, false
8810}
8811
8812// AsDynamicsSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8813func (adlss AzureDataLakeStoreSink) AsDynamicsSink() (*DynamicsSink, bool) {
8814	return nil, false
8815}
8816
8817// AsOdbcSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8818func (adlss AzureDataLakeStoreSink) AsOdbcSink() (*OdbcSink, bool) {
8819	return nil, false
8820}
8821
8822// AsAzureSearchIndexSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8823func (adlss AzureDataLakeStoreSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
8824	return nil, false
8825}
8826
8827// AsAzureDataLakeStoreSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8828func (adlss AzureDataLakeStoreSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
8829	return &adlss, true
8830}
8831
8832// AsOracleSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8833func (adlss AzureDataLakeStoreSink) AsOracleSink() (*OracleSink, bool) {
8834	return nil, false
8835}
8836
8837// AsSQLDWSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8838func (adlss AzureDataLakeStoreSink) AsSQLDWSink() (*SQLDWSink, bool) {
8839	return nil, false
8840}
8841
8842// AsSQLSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8843func (adlss AzureDataLakeStoreSink) AsSQLSink() (*SQLSink, bool) {
8844	return nil, false
8845}
8846
8847// AsDocumentDbCollectionSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8848func (adlss AzureDataLakeStoreSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
8849	return nil, false
8850}
8851
8852// AsFileSystemSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8853func (adlss AzureDataLakeStoreSink) AsFileSystemSink() (*FileSystemSink, bool) {
8854	return nil, false
8855}
8856
8857// AsBlobSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8858func (adlss AzureDataLakeStoreSink) AsBlobSink() (*BlobSink, bool) {
8859	return nil, false
8860}
8861
8862// AsAzureTableSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8863func (adlss AzureDataLakeStoreSink) AsAzureTableSink() (*AzureTableSink, bool) {
8864	return nil, false
8865}
8866
8867// AsAzureQueueSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8868func (adlss AzureDataLakeStoreSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
8869	return nil, false
8870}
8871
8872// AsSapCloudForCustomerSink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8873func (adlss AzureDataLakeStoreSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
8874	return nil, false
8875}
8876
8877// AsCopySink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8878func (adlss AzureDataLakeStoreSink) AsCopySink() (*CopySink, bool) {
8879	return nil, false
8880}
8881
8882// AsBasicCopySink is the BasicCopySink implementation for AzureDataLakeStoreSink.
8883func (adlss AzureDataLakeStoreSink) AsBasicCopySink() (BasicCopySink, bool) {
8884	return &adlss, true
8885}
8886
8887// AzureDataLakeStoreSource a copy activity Azure Data Lake source.
8888type AzureDataLakeStoreSource struct {
8889	// Recursive - If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean).
8890	Recursive interface{} `json:"recursive,omitempty"`
8891	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
8892	AdditionalProperties map[string]interface{} `json:""`
8893	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
8894	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
8895	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
8896	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
8897	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
8898	Type TypeBasicCopySource `json:"type,omitempty"`
8899}
8900
8901// MarshalJSON is the custom marshaler for AzureDataLakeStoreSource.
8902func (adlss AzureDataLakeStoreSource) MarshalJSON() ([]byte, error) {
8903	adlss.Type = TypeAzureDataLakeStoreSource
8904	objectMap := make(map[string]interface{})
8905	objectMap["recursive"] = adlss.Recursive
8906	objectMap["sourceRetryCount"] = adlss.SourceRetryCount
8907	objectMap["sourceRetryWait"] = adlss.SourceRetryWait
8908	if adlss.Type != "" {
8909		objectMap["type"] = adlss.Type
8910	}
8911	for k, v := range adlss.AdditionalProperties {
8912		objectMap[k] = v
8913	}
8914	return json.Marshal(objectMap)
8915}
8916
8917// AsAmazonRedshiftSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8918func (adlss AzureDataLakeStoreSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
8919	return nil, false
8920}
8921
8922// AsResponsysSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8923func (adlss AzureDataLakeStoreSource) AsResponsysSource() (*ResponsysSource, bool) {
8924	return nil, false
8925}
8926
8927// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8928func (adlss AzureDataLakeStoreSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
8929	return nil, false
8930}
8931
8932// AsVerticaSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8933func (adlss AzureDataLakeStoreSource) AsVerticaSource() (*VerticaSource, bool) {
8934	return nil, false
8935}
8936
8937// AsNetezzaSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8938func (adlss AzureDataLakeStoreSource) AsNetezzaSource() (*NetezzaSource, bool) {
8939	return nil, false
8940}
8941
8942// AsZohoSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8943func (adlss AzureDataLakeStoreSource) AsZohoSource() (*ZohoSource, bool) {
8944	return nil, false
8945}
8946
8947// AsXeroSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8948func (adlss AzureDataLakeStoreSource) AsXeroSource() (*XeroSource, bool) {
8949	return nil, false
8950}
8951
8952// AsSquareSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8953func (adlss AzureDataLakeStoreSource) AsSquareSource() (*SquareSource, bool) {
8954	return nil, false
8955}
8956
8957// AsSparkSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8958func (adlss AzureDataLakeStoreSource) AsSparkSource() (*SparkSource, bool) {
8959	return nil, false
8960}
8961
8962// AsShopifySource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8963func (adlss AzureDataLakeStoreSource) AsShopifySource() (*ShopifySource, bool) {
8964	return nil, false
8965}
8966
8967// AsServiceNowSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8968func (adlss AzureDataLakeStoreSource) AsServiceNowSource() (*ServiceNowSource, bool) {
8969	return nil, false
8970}
8971
8972// AsQuickBooksSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8973func (adlss AzureDataLakeStoreSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
8974	return nil, false
8975}
8976
8977// AsPrestoSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8978func (adlss AzureDataLakeStoreSource) AsPrestoSource() (*PrestoSource, bool) {
8979	return nil, false
8980}
8981
8982// AsPhoenixSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8983func (adlss AzureDataLakeStoreSource) AsPhoenixSource() (*PhoenixSource, bool) {
8984	return nil, false
8985}
8986
8987// AsPaypalSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8988func (adlss AzureDataLakeStoreSource) AsPaypalSource() (*PaypalSource, bool) {
8989	return nil, false
8990}
8991
8992// AsMarketoSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8993func (adlss AzureDataLakeStoreSource) AsMarketoSource() (*MarketoSource, bool) {
8994	return nil, false
8995}
8996
8997// AsMariaDBSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
8998func (adlss AzureDataLakeStoreSource) AsMariaDBSource() (*MariaDBSource, bool) {
8999	return nil, false
9000}
9001
9002// AsMagentoSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9003func (adlss AzureDataLakeStoreSource) AsMagentoSource() (*MagentoSource, bool) {
9004	return nil, false
9005}
9006
9007// AsJiraSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9008func (adlss AzureDataLakeStoreSource) AsJiraSource() (*JiraSource, bool) {
9009	return nil, false
9010}
9011
9012// AsImpalaSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9013func (adlss AzureDataLakeStoreSource) AsImpalaSource() (*ImpalaSource, bool) {
9014	return nil, false
9015}
9016
9017// AsHubspotSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9018func (adlss AzureDataLakeStoreSource) AsHubspotSource() (*HubspotSource, bool) {
9019	return nil, false
9020}
9021
9022// AsHiveSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9023func (adlss AzureDataLakeStoreSource) AsHiveSource() (*HiveSource, bool) {
9024	return nil, false
9025}
9026
9027// AsHBaseSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9028func (adlss AzureDataLakeStoreSource) AsHBaseSource() (*HBaseSource, bool) {
9029	return nil, false
9030}
9031
9032// AsGreenplumSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9033func (adlss AzureDataLakeStoreSource) AsGreenplumSource() (*GreenplumSource, bool) {
9034	return nil, false
9035}
9036
9037// AsGoogleBigQuerySource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9038func (adlss AzureDataLakeStoreSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
9039	return nil, false
9040}
9041
9042// AsEloquaSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9043func (adlss AzureDataLakeStoreSource) AsEloquaSource() (*EloquaSource, bool) {
9044	return nil, false
9045}
9046
9047// AsDrillSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9048func (adlss AzureDataLakeStoreSource) AsDrillSource() (*DrillSource, bool) {
9049	return nil, false
9050}
9051
9052// AsCouchbaseSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9053func (adlss AzureDataLakeStoreSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
9054	return nil, false
9055}
9056
9057// AsConcurSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9058func (adlss AzureDataLakeStoreSource) AsConcurSource() (*ConcurSource, bool) {
9059	return nil, false
9060}
9061
9062// AsAzurePostgreSQLSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9063func (adlss AzureDataLakeStoreSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
9064	return nil, false
9065}
9066
9067// AsAmazonMWSSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9068func (adlss AzureDataLakeStoreSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
9069	return nil, false
9070}
9071
9072// AsHTTPSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9073func (adlss AzureDataLakeStoreSource) AsHTTPSource() (*HTTPSource, bool) {
9074	return nil, false
9075}
9076
9077// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9078func (adlss AzureDataLakeStoreSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
9079	return &adlss, true
9080}
9081
9082// AsMongoDbSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9083func (adlss AzureDataLakeStoreSource) AsMongoDbSource() (*MongoDbSource, bool) {
9084	return nil, false
9085}
9086
9087// AsCassandraSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9088func (adlss AzureDataLakeStoreSource) AsCassandraSource() (*CassandraSource, bool) {
9089	return nil, false
9090}
9091
9092// AsWebSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9093func (adlss AzureDataLakeStoreSource) AsWebSource() (*WebSource, bool) {
9094	return nil, false
9095}
9096
9097// AsOracleSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9098func (adlss AzureDataLakeStoreSource) AsOracleSource() (*OracleSource, bool) {
9099	return nil, false
9100}
9101
9102// AsAzureMySQLSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9103func (adlss AzureDataLakeStoreSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
9104	return nil, false
9105}
9106
9107// AsHdfsSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9108func (adlss AzureDataLakeStoreSource) AsHdfsSource() (*HdfsSource, bool) {
9109	return nil, false
9110}
9111
9112// AsFileSystemSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9113func (adlss AzureDataLakeStoreSource) AsFileSystemSource() (*FileSystemSource, bool) {
9114	return nil, false
9115}
9116
9117// AsSQLDWSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9118func (adlss AzureDataLakeStoreSource) AsSQLDWSource() (*SQLDWSource, bool) {
9119	return nil, false
9120}
9121
9122// AsSQLSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9123func (adlss AzureDataLakeStoreSource) AsSQLSource() (*SQLSource, bool) {
9124	return nil, false
9125}
9126
9127// AsSapEccSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9128func (adlss AzureDataLakeStoreSource) AsSapEccSource() (*SapEccSource, bool) {
9129	return nil, false
9130}
9131
9132// AsSapCloudForCustomerSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9133func (adlss AzureDataLakeStoreSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
9134	return nil, false
9135}
9136
9137// AsSalesforceSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9138func (adlss AzureDataLakeStoreSource) AsSalesforceSource() (*SalesforceSource, bool) {
9139	return nil, false
9140}
9141
9142// AsRelationalSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9143func (adlss AzureDataLakeStoreSource) AsRelationalSource() (*RelationalSource, bool) {
9144	return nil, false
9145}
9146
9147// AsDynamicsSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9148func (adlss AzureDataLakeStoreSource) AsDynamicsSource() (*DynamicsSource, bool) {
9149	return nil, false
9150}
9151
9152// AsDocumentDbCollectionSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9153func (adlss AzureDataLakeStoreSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
9154	return nil, false
9155}
9156
9157// AsBlobSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9158func (adlss AzureDataLakeStoreSource) AsBlobSource() (*BlobSource, bool) {
9159	return nil, false
9160}
9161
9162// AsAzureTableSource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9163func (adlss AzureDataLakeStoreSource) AsAzureTableSource() (*AzureTableSource, bool) {
9164	return nil, false
9165}
9166
9167// AsCopySource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9168func (adlss AzureDataLakeStoreSource) AsCopySource() (*CopySource, bool) {
9169	return nil, false
9170}
9171
9172// AsBasicCopySource is the BasicCopySource implementation for AzureDataLakeStoreSource.
9173func (adlss AzureDataLakeStoreSource) AsBasicCopySource() (BasicCopySource, bool) {
9174	return &adlss, true
9175}
9176
9177// AzureKeyVaultLinkedService azure Key Vault linked service.
9178type AzureKeyVaultLinkedService struct {
9179	// AzureKeyVaultLinkedServiceTypeProperties - Azure Key Vault linked service properties.
9180	*AzureKeyVaultLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
9181	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
9182	AdditionalProperties map[string]interface{} `json:""`
9183	// ConnectVia - The integration runtime reference.
9184	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
9185	// Description - Linked service description.
9186	Description *string `json:"description,omitempty"`
9187	// Parameters - Parameters for linked service.
9188	Parameters map[string]*ParameterSpecification `json:"parameters"`
9189	// Annotations - List of tags that can be used for describing the Dataset.
9190	Annotations *[]interface{} `json:"annotations,omitempty"`
9191	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
9192	Type TypeBasicLinkedService `json:"type,omitempty"`
9193}
9194
9195// MarshalJSON is the custom marshaler for AzureKeyVaultLinkedService.
9196func (akvls AzureKeyVaultLinkedService) MarshalJSON() ([]byte, error) {
9197	akvls.Type = TypeAzureKeyVault
9198	objectMap := make(map[string]interface{})
9199	if akvls.AzureKeyVaultLinkedServiceTypeProperties != nil {
9200		objectMap["typeProperties"] = akvls.AzureKeyVaultLinkedServiceTypeProperties
9201	}
9202	if akvls.ConnectVia != nil {
9203		objectMap["connectVia"] = akvls.ConnectVia
9204	}
9205	if akvls.Description != nil {
9206		objectMap["description"] = akvls.Description
9207	}
9208	if akvls.Parameters != nil {
9209		objectMap["parameters"] = akvls.Parameters
9210	}
9211	if akvls.Annotations != nil {
9212		objectMap["annotations"] = akvls.Annotations
9213	}
9214	if akvls.Type != "" {
9215		objectMap["type"] = akvls.Type
9216	}
9217	for k, v := range akvls.AdditionalProperties {
9218		objectMap[k] = v
9219	}
9220	return json.Marshal(objectMap)
9221}
9222
9223// AsResponsysLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9224func (akvls AzureKeyVaultLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
9225	return nil, false
9226}
9227
9228// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9229func (akvls AzureKeyVaultLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
9230	return nil, false
9231}
9232
9233// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9234func (akvls AzureKeyVaultLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
9235	return nil, false
9236}
9237
9238// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9239func (akvls AzureKeyVaultLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
9240	return nil, false
9241}
9242
9243// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9244func (akvls AzureKeyVaultLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
9245	return nil, false
9246}
9247
9248// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9249func (akvls AzureKeyVaultLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
9250	return nil, false
9251}
9252
9253// AsVerticaLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9254func (akvls AzureKeyVaultLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
9255	return nil, false
9256}
9257
9258// AsZohoLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9259func (akvls AzureKeyVaultLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
9260	return nil, false
9261}
9262
9263// AsXeroLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9264func (akvls AzureKeyVaultLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
9265	return nil, false
9266}
9267
9268// AsSquareLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9269func (akvls AzureKeyVaultLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
9270	return nil, false
9271}
9272
9273// AsSparkLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9274func (akvls AzureKeyVaultLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
9275	return nil, false
9276}
9277
9278// AsShopifyLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9279func (akvls AzureKeyVaultLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
9280	return nil, false
9281}
9282
9283// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9284func (akvls AzureKeyVaultLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
9285	return nil, false
9286}
9287
9288// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9289func (akvls AzureKeyVaultLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
9290	return nil, false
9291}
9292
9293// AsPrestoLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9294func (akvls AzureKeyVaultLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
9295	return nil, false
9296}
9297
9298// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9299func (akvls AzureKeyVaultLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
9300	return nil, false
9301}
9302
9303// AsPaypalLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9304func (akvls AzureKeyVaultLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
9305	return nil, false
9306}
9307
9308// AsMarketoLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9309func (akvls AzureKeyVaultLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
9310	return nil, false
9311}
9312
9313// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9314func (akvls AzureKeyVaultLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
9315	return nil, false
9316}
9317
9318// AsMagentoLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9319func (akvls AzureKeyVaultLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
9320	return nil, false
9321}
9322
9323// AsJiraLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9324func (akvls AzureKeyVaultLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
9325	return nil, false
9326}
9327
9328// AsImpalaLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9329func (akvls AzureKeyVaultLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
9330	return nil, false
9331}
9332
9333// AsHubspotLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9334func (akvls AzureKeyVaultLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
9335	return nil, false
9336}
9337
9338// AsHiveLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9339func (akvls AzureKeyVaultLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
9340	return nil, false
9341}
9342
9343// AsHBaseLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9344func (akvls AzureKeyVaultLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
9345	return nil, false
9346}
9347
9348// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9349func (akvls AzureKeyVaultLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
9350	return nil, false
9351}
9352
9353// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9354func (akvls AzureKeyVaultLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
9355	return nil, false
9356}
9357
9358// AsEloquaLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9359func (akvls AzureKeyVaultLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
9360	return nil, false
9361}
9362
9363// AsDrillLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9364func (akvls AzureKeyVaultLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
9365	return nil, false
9366}
9367
9368// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9369func (akvls AzureKeyVaultLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
9370	return nil, false
9371}
9372
9373// AsConcurLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9374func (akvls AzureKeyVaultLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
9375	return nil, false
9376}
9377
9378// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9379func (akvls AzureKeyVaultLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
9380	return nil, false
9381}
9382
9383// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9384func (akvls AzureKeyVaultLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
9385	return nil, false
9386}
9387
9388// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9389func (akvls AzureKeyVaultLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
9390	return nil, false
9391}
9392
9393// AsSapBWLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9394func (akvls AzureKeyVaultLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
9395	return nil, false
9396}
9397
9398// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9399func (akvls AzureKeyVaultLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
9400	return nil, false
9401}
9402
9403// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9404func (akvls AzureKeyVaultLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
9405	return nil, false
9406}
9407
9408// AsHTTPLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9409func (akvls AzureKeyVaultLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
9410	return nil, false
9411}
9412
9413// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9414func (akvls AzureKeyVaultLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
9415	return nil, false
9416}
9417
9418// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9419func (akvls AzureKeyVaultLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
9420	return nil, false
9421}
9422
9423// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9424func (akvls AzureKeyVaultLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
9425	return nil, false
9426}
9427
9428// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9429func (akvls AzureKeyVaultLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
9430	return nil, false
9431}
9432
9433// AsSapEccLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9434func (akvls AzureKeyVaultLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
9435	return nil, false
9436}
9437
9438// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9439func (akvls AzureKeyVaultLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
9440	return nil, false
9441}
9442
9443// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9444func (akvls AzureKeyVaultLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
9445	return nil, false
9446}
9447
9448// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9449func (akvls AzureKeyVaultLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
9450	return nil, false
9451}
9452
9453// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9454func (akvls AzureKeyVaultLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
9455	return nil, false
9456}
9457
9458// AsCassandraLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9459func (akvls AzureKeyVaultLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
9460	return nil, false
9461}
9462
9463// AsWebLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9464func (akvls AzureKeyVaultLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
9465	return nil, false
9466}
9467
9468// AsODataLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9469func (akvls AzureKeyVaultLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
9470	return nil, false
9471}
9472
9473// AsHdfsLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9474func (akvls AzureKeyVaultLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
9475	return nil, false
9476}
9477
9478// AsOdbcLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9479func (akvls AzureKeyVaultLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
9480	return nil, false
9481}
9482
9483// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9484func (akvls AzureKeyVaultLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
9485	return nil, false
9486}
9487
9488// AsTeradataLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9489func (akvls AzureKeyVaultLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
9490	return nil, false
9491}
9492
9493// AsDb2LinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9494func (akvls AzureKeyVaultLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
9495	return nil, false
9496}
9497
9498// AsSybaseLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9499func (akvls AzureKeyVaultLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
9500	return nil, false
9501}
9502
9503// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9504func (akvls AzureKeyVaultLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
9505	return nil, false
9506}
9507
9508// AsMySQLLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9509func (akvls AzureKeyVaultLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
9510	return nil, false
9511}
9512
9513// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9514func (akvls AzureKeyVaultLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
9515	return nil, false
9516}
9517
9518// AsOracleLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9519func (akvls AzureKeyVaultLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
9520	return nil, false
9521}
9522
9523// AsFileServerLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9524func (akvls AzureKeyVaultLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
9525	return nil, false
9526}
9527
9528// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9529func (akvls AzureKeyVaultLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
9530	return nil, false
9531}
9532
9533// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9534func (akvls AzureKeyVaultLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
9535	return nil, false
9536}
9537
9538// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9539func (akvls AzureKeyVaultLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
9540	return nil, false
9541}
9542
9543// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9544func (akvls AzureKeyVaultLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
9545	return &akvls, true
9546}
9547
9548// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9549func (akvls AzureKeyVaultLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
9550	return nil, false
9551}
9552
9553// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9554func (akvls AzureKeyVaultLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
9555	return nil, false
9556}
9557
9558// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9559func (akvls AzureKeyVaultLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
9560	return nil, false
9561}
9562
9563// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9564func (akvls AzureKeyVaultLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
9565	return nil, false
9566}
9567
9568// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9569func (akvls AzureKeyVaultLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
9570	return nil, false
9571}
9572
9573// AsLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9574func (akvls AzureKeyVaultLinkedService) AsLinkedService() (*LinkedService, bool) {
9575	return nil, false
9576}
9577
9578// AsBasicLinkedService is the BasicLinkedService implementation for AzureKeyVaultLinkedService.
9579func (akvls AzureKeyVaultLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
9580	return &akvls, true
9581}
9582
9583// UnmarshalJSON is the custom unmarshaler for AzureKeyVaultLinkedService struct.
9584func (akvls *AzureKeyVaultLinkedService) UnmarshalJSON(body []byte) error {
9585	var m map[string]*json.RawMessage
9586	err := json.Unmarshal(body, &m)
9587	if err != nil {
9588		return err
9589	}
9590	for k, v := range m {
9591		switch k {
9592		case "typeProperties":
9593			if v != nil {
9594				var azureKeyVaultLinkedServiceTypeProperties AzureKeyVaultLinkedServiceTypeProperties
9595				err = json.Unmarshal(*v, &azureKeyVaultLinkedServiceTypeProperties)
9596				if err != nil {
9597					return err
9598				}
9599				akvls.AzureKeyVaultLinkedServiceTypeProperties = &azureKeyVaultLinkedServiceTypeProperties
9600			}
9601		default:
9602			if v != nil {
9603				var additionalProperties interface{}
9604				err = json.Unmarshal(*v, &additionalProperties)
9605				if err != nil {
9606					return err
9607				}
9608				if akvls.AdditionalProperties == nil {
9609					akvls.AdditionalProperties = make(map[string]interface{})
9610				}
9611				akvls.AdditionalProperties[k] = additionalProperties
9612			}
9613		case "connectVia":
9614			if v != nil {
9615				var connectVia IntegrationRuntimeReference
9616				err = json.Unmarshal(*v, &connectVia)
9617				if err != nil {
9618					return err
9619				}
9620				akvls.ConnectVia = &connectVia
9621			}
9622		case "description":
9623			if v != nil {
9624				var description string
9625				err = json.Unmarshal(*v, &description)
9626				if err != nil {
9627					return err
9628				}
9629				akvls.Description = &description
9630			}
9631		case "parameters":
9632			if v != nil {
9633				var parameters map[string]*ParameterSpecification
9634				err = json.Unmarshal(*v, &parameters)
9635				if err != nil {
9636					return err
9637				}
9638				akvls.Parameters = parameters
9639			}
9640		case "annotations":
9641			if v != nil {
9642				var annotations []interface{}
9643				err = json.Unmarshal(*v, &annotations)
9644				if err != nil {
9645					return err
9646				}
9647				akvls.Annotations = &annotations
9648			}
9649		case "type":
9650			if v != nil {
9651				var typeVar TypeBasicLinkedService
9652				err = json.Unmarshal(*v, &typeVar)
9653				if err != nil {
9654					return err
9655				}
9656				akvls.Type = typeVar
9657			}
9658		}
9659	}
9660
9661	return nil
9662}
9663
9664// AzureKeyVaultLinkedServiceTypeProperties azure Key Vault linked service properties.
9665type AzureKeyVaultLinkedServiceTypeProperties struct {
9666	// BaseURL - The base URL of the Azure Key Vault. e.g. https://myakv.vault.azure.net Type: string (or Expression with resultType string).
9667	BaseURL interface{} `json:"baseUrl,omitempty"`
9668}
9669
9670// AzureKeyVaultSecretReference azure Key Vault secret reference.
9671type AzureKeyVaultSecretReference struct {
9672	// Store - The Azure Key Vault linked service reference.
9673	Store *LinkedServiceReference `json:"store,omitempty"`
9674	// SecretName - The name of the secret in Azure Key Vault. Type: string (or Expression with resultType string).
9675	SecretName interface{} `json:"secretName,omitempty"`
9676	// SecretVersion - The version of the secret in Azure Key Vault. The default value is the latest version of the secret. Type: string (or Expression with resultType string).
9677	SecretVersion interface{} `json:"secretVersion,omitempty"`
9678	// Type - Possible values include: 'TypeSecretBase', 'TypeSecureString', 'TypeAzureKeyVaultSecret'
9679	Type Type `json:"type,omitempty"`
9680}
9681
9682// MarshalJSON is the custom marshaler for AzureKeyVaultSecretReference.
9683func (akvsr AzureKeyVaultSecretReference) MarshalJSON() ([]byte, error) {
9684	akvsr.Type = TypeAzureKeyVaultSecret
9685	objectMap := make(map[string]interface{})
9686	if akvsr.Store != nil {
9687		objectMap["store"] = akvsr.Store
9688	}
9689	objectMap["secretName"] = akvsr.SecretName
9690	objectMap["secretVersion"] = akvsr.SecretVersion
9691	if akvsr.Type != "" {
9692		objectMap["type"] = akvsr.Type
9693	}
9694	return json.Marshal(objectMap)
9695}
9696
9697// AsSecureString is the BasicSecretBase implementation for AzureKeyVaultSecretReference.
9698func (akvsr AzureKeyVaultSecretReference) AsSecureString() (*SecureString, bool) {
9699	return nil, false
9700}
9701
9702// AsAzureKeyVaultSecretReference is the BasicSecretBase implementation for AzureKeyVaultSecretReference.
9703func (akvsr AzureKeyVaultSecretReference) AsAzureKeyVaultSecretReference() (*AzureKeyVaultSecretReference, bool) {
9704	return &akvsr, true
9705}
9706
9707// AsSecretBase is the BasicSecretBase implementation for AzureKeyVaultSecretReference.
9708func (akvsr AzureKeyVaultSecretReference) AsSecretBase() (*SecretBase, bool) {
9709	return nil, false
9710}
9711
9712// AsBasicSecretBase is the BasicSecretBase implementation for AzureKeyVaultSecretReference.
9713func (akvsr AzureKeyVaultSecretReference) AsBasicSecretBase() (BasicSecretBase, bool) {
9714	return &akvsr, true
9715}
9716
9717// AzureMLBatchExecutionActivity azure ML Batch Execution activity.
9718type AzureMLBatchExecutionActivity struct {
9719	// AzureMLBatchExecutionActivityTypeProperties - Azure ML Batch Execution activity properties.
9720	*AzureMLBatchExecutionActivityTypeProperties `json:"typeProperties,omitempty"`
9721	// LinkedServiceName - Linked service reference.
9722	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
9723	// Policy - Activity policy.
9724	Policy *ActivityPolicy `json:"policy,omitempty"`
9725	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
9726	AdditionalProperties map[string]interface{} `json:""`
9727	// Name - Activity name.
9728	Name *string `json:"name,omitempty"`
9729	// Description - Activity description.
9730	Description *string `json:"description,omitempty"`
9731	// DependsOn - Activity depends on condition.
9732	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
9733	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
9734	Type TypeBasicActivity `json:"type,omitempty"`
9735}
9736
9737// MarshalJSON is the custom marshaler for AzureMLBatchExecutionActivity.
9738func (ambea AzureMLBatchExecutionActivity) MarshalJSON() ([]byte, error) {
9739	ambea.Type = TypeAzureMLBatchExecution
9740	objectMap := make(map[string]interface{})
9741	if ambea.AzureMLBatchExecutionActivityTypeProperties != nil {
9742		objectMap["typeProperties"] = ambea.AzureMLBatchExecutionActivityTypeProperties
9743	}
9744	if ambea.LinkedServiceName != nil {
9745		objectMap["linkedServiceName"] = ambea.LinkedServiceName
9746	}
9747	if ambea.Policy != nil {
9748		objectMap["policy"] = ambea.Policy
9749	}
9750	if ambea.Name != nil {
9751		objectMap["name"] = ambea.Name
9752	}
9753	if ambea.Description != nil {
9754		objectMap["description"] = ambea.Description
9755	}
9756	if ambea.DependsOn != nil {
9757		objectMap["dependsOn"] = ambea.DependsOn
9758	}
9759	if ambea.Type != "" {
9760		objectMap["type"] = ambea.Type
9761	}
9762	for k, v := range ambea.AdditionalProperties {
9763		objectMap[k] = v
9764	}
9765	return json.Marshal(objectMap)
9766}
9767
9768// AsDatabricksNotebookActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9769func (ambea AzureMLBatchExecutionActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
9770	return nil, false
9771}
9772
9773// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9774func (ambea AzureMLBatchExecutionActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
9775	return nil, false
9776}
9777
9778// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9779func (ambea AzureMLBatchExecutionActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
9780	return nil, false
9781}
9782
9783// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9784func (ambea AzureMLBatchExecutionActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
9785	return &ambea, true
9786}
9787
9788// AsGetMetadataActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9789func (ambea AzureMLBatchExecutionActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
9790	return nil, false
9791}
9792
9793// AsWebActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9794func (ambea AzureMLBatchExecutionActivity) AsWebActivity() (*WebActivity, bool) {
9795	return nil, false
9796}
9797
9798// AsLookupActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9799func (ambea AzureMLBatchExecutionActivity) AsLookupActivity() (*LookupActivity, bool) {
9800	return nil, false
9801}
9802
9803// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9804func (ambea AzureMLBatchExecutionActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
9805	return nil, false
9806}
9807
9808// AsCustomActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9809func (ambea AzureMLBatchExecutionActivity) AsCustomActivity() (*CustomActivity, bool) {
9810	return nil, false
9811}
9812
9813// AsExecuteSSISPackageActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9814func (ambea AzureMLBatchExecutionActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
9815	return nil, false
9816}
9817
9818// AsHDInsightSparkActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9819func (ambea AzureMLBatchExecutionActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
9820	return nil, false
9821}
9822
9823// AsHDInsightStreamingActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9824func (ambea AzureMLBatchExecutionActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
9825	return nil, false
9826}
9827
9828// AsHDInsightMapReduceActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9829func (ambea AzureMLBatchExecutionActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
9830	return nil, false
9831}
9832
9833// AsHDInsightPigActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9834func (ambea AzureMLBatchExecutionActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
9835	return nil, false
9836}
9837
9838// AsHDInsightHiveActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9839func (ambea AzureMLBatchExecutionActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
9840	return nil, false
9841}
9842
9843// AsCopyActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9844func (ambea AzureMLBatchExecutionActivity) AsCopyActivity() (*CopyActivity, bool) {
9845	return nil, false
9846}
9847
9848// AsExecutionActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9849func (ambea AzureMLBatchExecutionActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
9850	return nil, false
9851}
9852
9853// AsBasicExecutionActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9854func (ambea AzureMLBatchExecutionActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
9855	return &ambea, true
9856}
9857
9858// AsFilterActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9859func (ambea AzureMLBatchExecutionActivity) AsFilterActivity() (*FilterActivity, bool) {
9860	return nil, false
9861}
9862
9863// AsUntilActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9864func (ambea AzureMLBatchExecutionActivity) AsUntilActivity() (*UntilActivity, bool) {
9865	return nil, false
9866}
9867
9868// AsWaitActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9869func (ambea AzureMLBatchExecutionActivity) AsWaitActivity() (*WaitActivity, bool) {
9870	return nil, false
9871}
9872
9873// AsForEachActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9874func (ambea AzureMLBatchExecutionActivity) AsForEachActivity() (*ForEachActivity, bool) {
9875	return nil, false
9876}
9877
9878// AsIfConditionActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9879func (ambea AzureMLBatchExecutionActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
9880	return nil, false
9881}
9882
9883// AsExecutePipelineActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9884func (ambea AzureMLBatchExecutionActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
9885	return nil, false
9886}
9887
9888// AsControlActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9889func (ambea AzureMLBatchExecutionActivity) AsControlActivity() (*ControlActivity, bool) {
9890	return nil, false
9891}
9892
9893// AsBasicControlActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9894func (ambea AzureMLBatchExecutionActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
9895	return nil, false
9896}
9897
9898// AsActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9899func (ambea AzureMLBatchExecutionActivity) AsActivity() (*Activity, bool) {
9900	return nil, false
9901}
9902
9903// AsBasicActivity is the BasicActivity implementation for AzureMLBatchExecutionActivity.
9904func (ambea AzureMLBatchExecutionActivity) AsBasicActivity() (BasicActivity, bool) {
9905	return &ambea, true
9906}
9907
9908// UnmarshalJSON is the custom unmarshaler for AzureMLBatchExecutionActivity struct.
9909func (ambea *AzureMLBatchExecutionActivity) UnmarshalJSON(body []byte) error {
9910	var m map[string]*json.RawMessage
9911	err := json.Unmarshal(body, &m)
9912	if err != nil {
9913		return err
9914	}
9915	for k, v := range m {
9916		switch k {
9917		case "typeProperties":
9918			if v != nil {
9919				var azureMLBatchExecutionActivityTypeProperties AzureMLBatchExecutionActivityTypeProperties
9920				err = json.Unmarshal(*v, &azureMLBatchExecutionActivityTypeProperties)
9921				if err != nil {
9922					return err
9923				}
9924				ambea.AzureMLBatchExecutionActivityTypeProperties = &azureMLBatchExecutionActivityTypeProperties
9925			}
9926		case "linkedServiceName":
9927			if v != nil {
9928				var linkedServiceName LinkedServiceReference
9929				err = json.Unmarshal(*v, &linkedServiceName)
9930				if err != nil {
9931					return err
9932				}
9933				ambea.LinkedServiceName = &linkedServiceName
9934			}
9935		case "policy":
9936			if v != nil {
9937				var policy ActivityPolicy
9938				err = json.Unmarshal(*v, &policy)
9939				if err != nil {
9940					return err
9941				}
9942				ambea.Policy = &policy
9943			}
9944		default:
9945			if v != nil {
9946				var additionalProperties interface{}
9947				err = json.Unmarshal(*v, &additionalProperties)
9948				if err != nil {
9949					return err
9950				}
9951				if ambea.AdditionalProperties == nil {
9952					ambea.AdditionalProperties = make(map[string]interface{})
9953				}
9954				ambea.AdditionalProperties[k] = additionalProperties
9955			}
9956		case "name":
9957			if v != nil {
9958				var name string
9959				err = json.Unmarshal(*v, &name)
9960				if err != nil {
9961					return err
9962				}
9963				ambea.Name = &name
9964			}
9965		case "description":
9966			if v != nil {
9967				var description string
9968				err = json.Unmarshal(*v, &description)
9969				if err != nil {
9970					return err
9971				}
9972				ambea.Description = &description
9973			}
9974		case "dependsOn":
9975			if v != nil {
9976				var dependsOn []ActivityDependency
9977				err = json.Unmarshal(*v, &dependsOn)
9978				if err != nil {
9979					return err
9980				}
9981				ambea.DependsOn = &dependsOn
9982			}
9983		case "type":
9984			if v != nil {
9985				var typeVar TypeBasicActivity
9986				err = json.Unmarshal(*v, &typeVar)
9987				if err != nil {
9988					return err
9989				}
9990				ambea.Type = typeVar
9991			}
9992		}
9993	}
9994
9995	return nil
9996}
9997
9998// AzureMLBatchExecutionActivityTypeProperties azure ML Batch Execution activity properties.
9999type AzureMLBatchExecutionActivityTypeProperties struct {
10000	// GlobalParameters - Key,Value pairs to be passed to the Azure ML Batch Execution Service endpoint. Keys must match the names of web service parameters defined in the published Azure ML web service. Values will be passed in the GlobalParameters property of the Azure ML batch execution request.
10001	GlobalParameters map[string]interface{} `json:"globalParameters"`
10002	// WebServiceOutputs - Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Outputs to AzureMLWebServiceFile objects specifying the output Blob locations. This information will be passed in the WebServiceOutputs property of the Azure ML batch execution request.
10003	WebServiceOutputs map[string]*AzureMLWebServiceFile `json:"webServiceOutputs"`
10004	// WebServiceInputs - Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Inputs to AzureMLWebServiceFile objects specifying the input Blob locations.. This information will be passed in the WebServiceInputs property of the Azure ML batch execution request.
10005	WebServiceInputs map[string]*AzureMLWebServiceFile `json:"webServiceInputs"`
10006}
10007
10008// MarshalJSON is the custom marshaler for AzureMLBatchExecutionActivityTypeProperties.
10009func (ambeatp AzureMLBatchExecutionActivityTypeProperties) MarshalJSON() ([]byte, error) {
10010	objectMap := make(map[string]interface{})
10011	if ambeatp.GlobalParameters != nil {
10012		objectMap["globalParameters"] = ambeatp.GlobalParameters
10013	}
10014	if ambeatp.WebServiceOutputs != nil {
10015		objectMap["webServiceOutputs"] = ambeatp.WebServiceOutputs
10016	}
10017	if ambeatp.WebServiceInputs != nil {
10018		objectMap["webServiceInputs"] = ambeatp.WebServiceInputs
10019	}
10020	return json.Marshal(objectMap)
10021}
10022
10023// AzureMLLinkedService azure ML Web Service linked service.
10024type AzureMLLinkedService struct {
10025	// AzureMLLinkedServiceTypeProperties - Azure ML Web Service linked service properties.
10026	*AzureMLLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
10027	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
10028	AdditionalProperties map[string]interface{} `json:""`
10029	// ConnectVia - The integration runtime reference.
10030	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
10031	// Description - Linked service description.
10032	Description *string `json:"description,omitempty"`
10033	// Parameters - Parameters for linked service.
10034	Parameters map[string]*ParameterSpecification `json:"parameters"`
10035	// Annotations - List of tags that can be used for describing the Dataset.
10036	Annotations *[]interface{} `json:"annotations,omitempty"`
10037	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
10038	Type TypeBasicLinkedService `json:"type,omitempty"`
10039}
10040
10041// MarshalJSON is the custom marshaler for AzureMLLinkedService.
10042func (amls AzureMLLinkedService) MarshalJSON() ([]byte, error) {
10043	amls.Type = TypeAzureML
10044	objectMap := make(map[string]interface{})
10045	if amls.AzureMLLinkedServiceTypeProperties != nil {
10046		objectMap["typeProperties"] = amls.AzureMLLinkedServiceTypeProperties
10047	}
10048	if amls.ConnectVia != nil {
10049		objectMap["connectVia"] = amls.ConnectVia
10050	}
10051	if amls.Description != nil {
10052		objectMap["description"] = amls.Description
10053	}
10054	if amls.Parameters != nil {
10055		objectMap["parameters"] = amls.Parameters
10056	}
10057	if amls.Annotations != nil {
10058		objectMap["annotations"] = amls.Annotations
10059	}
10060	if amls.Type != "" {
10061		objectMap["type"] = amls.Type
10062	}
10063	for k, v := range amls.AdditionalProperties {
10064		objectMap[k] = v
10065	}
10066	return json.Marshal(objectMap)
10067}
10068
10069// AsResponsysLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10070func (amls AzureMLLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
10071	return nil, false
10072}
10073
10074// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10075func (amls AzureMLLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
10076	return nil, false
10077}
10078
10079// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10080func (amls AzureMLLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
10081	return nil, false
10082}
10083
10084// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10085func (amls AzureMLLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
10086	return nil, false
10087}
10088
10089// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10090func (amls AzureMLLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
10091	return nil, false
10092}
10093
10094// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10095func (amls AzureMLLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
10096	return nil, false
10097}
10098
10099// AsVerticaLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10100func (amls AzureMLLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
10101	return nil, false
10102}
10103
10104// AsZohoLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10105func (amls AzureMLLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
10106	return nil, false
10107}
10108
10109// AsXeroLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10110func (amls AzureMLLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
10111	return nil, false
10112}
10113
10114// AsSquareLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10115func (amls AzureMLLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
10116	return nil, false
10117}
10118
10119// AsSparkLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10120func (amls AzureMLLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
10121	return nil, false
10122}
10123
10124// AsShopifyLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10125func (amls AzureMLLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
10126	return nil, false
10127}
10128
10129// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10130func (amls AzureMLLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
10131	return nil, false
10132}
10133
10134// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10135func (amls AzureMLLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
10136	return nil, false
10137}
10138
10139// AsPrestoLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10140func (amls AzureMLLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
10141	return nil, false
10142}
10143
10144// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10145func (amls AzureMLLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
10146	return nil, false
10147}
10148
10149// AsPaypalLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10150func (amls AzureMLLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
10151	return nil, false
10152}
10153
10154// AsMarketoLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10155func (amls AzureMLLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
10156	return nil, false
10157}
10158
10159// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10160func (amls AzureMLLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
10161	return nil, false
10162}
10163
10164// AsMagentoLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10165func (amls AzureMLLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
10166	return nil, false
10167}
10168
10169// AsJiraLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10170func (amls AzureMLLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
10171	return nil, false
10172}
10173
10174// AsImpalaLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10175func (amls AzureMLLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
10176	return nil, false
10177}
10178
10179// AsHubspotLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10180func (amls AzureMLLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
10181	return nil, false
10182}
10183
10184// AsHiveLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10185func (amls AzureMLLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
10186	return nil, false
10187}
10188
10189// AsHBaseLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10190func (amls AzureMLLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
10191	return nil, false
10192}
10193
10194// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10195func (amls AzureMLLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
10196	return nil, false
10197}
10198
10199// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10200func (amls AzureMLLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
10201	return nil, false
10202}
10203
10204// AsEloquaLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10205func (amls AzureMLLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
10206	return nil, false
10207}
10208
10209// AsDrillLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10210func (amls AzureMLLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
10211	return nil, false
10212}
10213
10214// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10215func (amls AzureMLLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
10216	return nil, false
10217}
10218
10219// AsConcurLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10220func (amls AzureMLLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
10221	return nil, false
10222}
10223
10224// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10225func (amls AzureMLLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
10226	return nil, false
10227}
10228
10229// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10230func (amls AzureMLLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
10231	return nil, false
10232}
10233
10234// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10235func (amls AzureMLLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
10236	return nil, false
10237}
10238
10239// AsSapBWLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10240func (amls AzureMLLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
10241	return nil, false
10242}
10243
10244// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10245func (amls AzureMLLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
10246	return nil, false
10247}
10248
10249// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10250func (amls AzureMLLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
10251	return nil, false
10252}
10253
10254// AsHTTPLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10255func (amls AzureMLLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
10256	return nil, false
10257}
10258
10259// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10260func (amls AzureMLLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
10261	return nil, false
10262}
10263
10264// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10265func (amls AzureMLLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
10266	return nil, false
10267}
10268
10269// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10270func (amls AzureMLLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
10271	return nil, false
10272}
10273
10274// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10275func (amls AzureMLLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
10276	return nil, false
10277}
10278
10279// AsSapEccLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10280func (amls AzureMLLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
10281	return nil, false
10282}
10283
10284// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10285func (amls AzureMLLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
10286	return nil, false
10287}
10288
10289// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10290func (amls AzureMLLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
10291	return nil, false
10292}
10293
10294// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10295func (amls AzureMLLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
10296	return nil, false
10297}
10298
10299// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10300func (amls AzureMLLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
10301	return nil, false
10302}
10303
10304// AsCassandraLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10305func (amls AzureMLLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
10306	return nil, false
10307}
10308
10309// AsWebLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10310func (amls AzureMLLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
10311	return nil, false
10312}
10313
10314// AsODataLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10315func (amls AzureMLLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
10316	return nil, false
10317}
10318
10319// AsHdfsLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10320func (amls AzureMLLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
10321	return nil, false
10322}
10323
10324// AsOdbcLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10325func (amls AzureMLLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
10326	return nil, false
10327}
10328
10329// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10330func (amls AzureMLLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
10331	return &amls, true
10332}
10333
10334// AsTeradataLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10335func (amls AzureMLLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
10336	return nil, false
10337}
10338
10339// AsDb2LinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10340func (amls AzureMLLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
10341	return nil, false
10342}
10343
10344// AsSybaseLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10345func (amls AzureMLLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
10346	return nil, false
10347}
10348
10349// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10350func (amls AzureMLLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
10351	return nil, false
10352}
10353
10354// AsMySQLLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10355func (amls AzureMLLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
10356	return nil, false
10357}
10358
10359// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10360func (amls AzureMLLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
10361	return nil, false
10362}
10363
10364// AsOracleLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10365func (amls AzureMLLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
10366	return nil, false
10367}
10368
10369// AsFileServerLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10370func (amls AzureMLLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
10371	return nil, false
10372}
10373
10374// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10375func (amls AzureMLLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
10376	return nil, false
10377}
10378
10379// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10380func (amls AzureMLLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
10381	return nil, false
10382}
10383
10384// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10385func (amls AzureMLLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
10386	return nil, false
10387}
10388
10389// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10390func (amls AzureMLLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
10391	return nil, false
10392}
10393
10394// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10395func (amls AzureMLLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
10396	return nil, false
10397}
10398
10399// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10400func (amls AzureMLLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
10401	return nil, false
10402}
10403
10404// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10405func (amls AzureMLLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
10406	return nil, false
10407}
10408
10409// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10410func (amls AzureMLLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
10411	return nil, false
10412}
10413
10414// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10415func (amls AzureMLLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
10416	return nil, false
10417}
10418
10419// AsLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10420func (amls AzureMLLinkedService) AsLinkedService() (*LinkedService, bool) {
10421	return nil, false
10422}
10423
10424// AsBasicLinkedService is the BasicLinkedService implementation for AzureMLLinkedService.
10425func (amls AzureMLLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
10426	return &amls, true
10427}
10428
10429// UnmarshalJSON is the custom unmarshaler for AzureMLLinkedService struct.
10430func (amls *AzureMLLinkedService) UnmarshalJSON(body []byte) error {
10431	var m map[string]*json.RawMessage
10432	err := json.Unmarshal(body, &m)
10433	if err != nil {
10434		return err
10435	}
10436	for k, v := range m {
10437		switch k {
10438		case "typeProperties":
10439			if v != nil {
10440				var azureMLLinkedServiceTypeProperties AzureMLLinkedServiceTypeProperties
10441				err = json.Unmarshal(*v, &azureMLLinkedServiceTypeProperties)
10442				if err != nil {
10443					return err
10444				}
10445				amls.AzureMLLinkedServiceTypeProperties = &azureMLLinkedServiceTypeProperties
10446			}
10447		default:
10448			if v != nil {
10449				var additionalProperties interface{}
10450				err = json.Unmarshal(*v, &additionalProperties)
10451				if err != nil {
10452					return err
10453				}
10454				if amls.AdditionalProperties == nil {
10455					amls.AdditionalProperties = make(map[string]interface{})
10456				}
10457				amls.AdditionalProperties[k] = additionalProperties
10458			}
10459		case "connectVia":
10460			if v != nil {
10461				var connectVia IntegrationRuntimeReference
10462				err = json.Unmarshal(*v, &connectVia)
10463				if err != nil {
10464					return err
10465				}
10466				amls.ConnectVia = &connectVia
10467			}
10468		case "description":
10469			if v != nil {
10470				var description string
10471				err = json.Unmarshal(*v, &description)
10472				if err != nil {
10473					return err
10474				}
10475				amls.Description = &description
10476			}
10477		case "parameters":
10478			if v != nil {
10479				var parameters map[string]*ParameterSpecification
10480				err = json.Unmarshal(*v, &parameters)
10481				if err != nil {
10482					return err
10483				}
10484				amls.Parameters = parameters
10485			}
10486		case "annotations":
10487			if v != nil {
10488				var annotations []interface{}
10489				err = json.Unmarshal(*v, &annotations)
10490				if err != nil {
10491					return err
10492				}
10493				amls.Annotations = &annotations
10494			}
10495		case "type":
10496			if v != nil {
10497				var typeVar TypeBasicLinkedService
10498				err = json.Unmarshal(*v, &typeVar)
10499				if err != nil {
10500					return err
10501				}
10502				amls.Type = typeVar
10503			}
10504		}
10505	}
10506
10507	return nil
10508}
10509
10510// AzureMLLinkedServiceTypeProperties azure ML Web Service linked service properties.
10511type AzureMLLinkedServiceTypeProperties struct {
10512	// MlEndpoint - The Batch Execution REST URL for an Azure ML Web Service endpoint. Type: string (or Expression with resultType string).
10513	MlEndpoint interface{} `json:"mlEndpoint,omitempty"`
10514	// APIKey - The API key for accessing the Azure ML model endpoint.
10515	APIKey BasicSecretBase `json:"apiKey,omitempty"`
10516	// UpdateResourceEndpoint - The Update Resource REST URL for an Azure ML Web Service endpoint. Type: string (or Expression with resultType string).
10517	UpdateResourceEndpoint interface{} `json:"updateResourceEndpoint,omitempty"`
10518	// ServicePrincipalID - The ID of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML web service. Type: string (or Expression with resultType string).
10519	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
10520	// ServicePrincipalKey - The key of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML web service.
10521	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
10522	// Tenant - The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
10523	Tenant interface{} `json:"tenant,omitempty"`
10524	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
10525	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
10526}
10527
10528// UnmarshalJSON is the custom unmarshaler for AzureMLLinkedServiceTypeProperties struct.
10529func (amlstp *AzureMLLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
10530	var m map[string]*json.RawMessage
10531	err := json.Unmarshal(body, &m)
10532	if err != nil {
10533		return err
10534	}
10535	for k, v := range m {
10536		switch k {
10537		case "mlEndpoint":
10538			if v != nil {
10539				var mlEndpoint interface{}
10540				err = json.Unmarshal(*v, &mlEndpoint)
10541				if err != nil {
10542					return err
10543				}
10544				amlstp.MlEndpoint = mlEndpoint
10545			}
10546		case "apiKey":
10547			if v != nil {
10548				APIKey, err := unmarshalBasicSecretBase(*v)
10549				if err != nil {
10550					return err
10551				}
10552				amlstp.APIKey = APIKey
10553			}
10554		case "updateResourceEndpoint":
10555			if v != nil {
10556				var updateResourceEndpoint interface{}
10557				err = json.Unmarshal(*v, &updateResourceEndpoint)
10558				if err != nil {
10559					return err
10560				}
10561				amlstp.UpdateResourceEndpoint = updateResourceEndpoint
10562			}
10563		case "servicePrincipalId":
10564			if v != nil {
10565				var servicePrincipalID interface{}
10566				err = json.Unmarshal(*v, &servicePrincipalID)
10567				if err != nil {
10568					return err
10569				}
10570				amlstp.ServicePrincipalID = servicePrincipalID
10571			}
10572		case "servicePrincipalKey":
10573			if v != nil {
10574				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
10575				if err != nil {
10576					return err
10577				}
10578				amlstp.ServicePrincipalKey = servicePrincipalKey
10579			}
10580		case "tenant":
10581			if v != nil {
10582				var tenant interface{}
10583				err = json.Unmarshal(*v, &tenant)
10584				if err != nil {
10585					return err
10586				}
10587				amlstp.Tenant = tenant
10588			}
10589		case "encryptedCredential":
10590			if v != nil {
10591				var encryptedCredential interface{}
10592				err = json.Unmarshal(*v, &encryptedCredential)
10593				if err != nil {
10594					return err
10595				}
10596				amlstp.EncryptedCredential = encryptedCredential
10597			}
10598		}
10599	}
10600
10601	return nil
10602}
10603
10604// AzureMLUpdateResourceActivity azure ML Update Resource management activity.
10605type AzureMLUpdateResourceActivity struct {
10606	// AzureMLUpdateResourceActivityTypeProperties - Azure ML Update Resource management activity properties.
10607	*AzureMLUpdateResourceActivityTypeProperties `json:"typeProperties,omitempty"`
10608	// LinkedServiceName - Linked service reference.
10609	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
10610	// Policy - Activity policy.
10611	Policy *ActivityPolicy `json:"policy,omitempty"`
10612	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
10613	AdditionalProperties map[string]interface{} `json:""`
10614	// Name - Activity name.
10615	Name *string `json:"name,omitempty"`
10616	// Description - Activity description.
10617	Description *string `json:"description,omitempty"`
10618	// DependsOn - Activity depends on condition.
10619	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
10620	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
10621	Type TypeBasicActivity `json:"type,omitempty"`
10622}
10623
10624// MarshalJSON is the custom marshaler for AzureMLUpdateResourceActivity.
10625func (amura AzureMLUpdateResourceActivity) MarshalJSON() ([]byte, error) {
10626	amura.Type = TypeAzureMLUpdateResource
10627	objectMap := make(map[string]interface{})
10628	if amura.AzureMLUpdateResourceActivityTypeProperties != nil {
10629		objectMap["typeProperties"] = amura.AzureMLUpdateResourceActivityTypeProperties
10630	}
10631	if amura.LinkedServiceName != nil {
10632		objectMap["linkedServiceName"] = amura.LinkedServiceName
10633	}
10634	if amura.Policy != nil {
10635		objectMap["policy"] = amura.Policy
10636	}
10637	if amura.Name != nil {
10638		objectMap["name"] = amura.Name
10639	}
10640	if amura.Description != nil {
10641		objectMap["description"] = amura.Description
10642	}
10643	if amura.DependsOn != nil {
10644		objectMap["dependsOn"] = amura.DependsOn
10645	}
10646	if amura.Type != "" {
10647		objectMap["type"] = amura.Type
10648	}
10649	for k, v := range amura.AdditionalProperties {
10650		objectMap[k] = v
10651	}
10652	return json.Marshal(objectMap)
10653}
10654
10655// AsDatabricksNotebookActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10656func (amura AzureMLUpdateResourceActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
10657	return nil, false
10658}
10659
10660// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10661func (amura AzureMLUpdateResourceActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
10662	return nil, false
10663}
10664
10665// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10666func (amura AzureMLUpdateResourceActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
10667	return &amura, true
10668}
10669
10670// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10671func (amura AzureMLUpdateResourceActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
10672	return nil, false
10673}
10674
10675// AsGetMetadataActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10676func (amura AzureMLUpdateResourceActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
10677	return nil, false
10678}
10679
10680// AsWebActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10681func (amura AzureMLUpdateResourceActivity) AsWebActivity() (*WebActivity, bool) {
10682	return nil, false
10683}
10684
10685// AsLookupActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10686func (amura AzureMLUpdateResourceActivity) AsLookupActivity() (*LookupActivity, bool) {
10687	return nil, false
10688}
10689
10690// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10691func (amura AzureMLUpdateResourceActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
10692	return nil, false
10693}
10694
10695// AsCustomActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10696func (amura AzureMLUpdateResourceActivity) AsCustomActivity() (*CustomActivity, bool) {
10697	return nil, false
10698}
10699
10700// AsExecuteSSISPackageActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10701func (amura AzureMLUpdateResourceActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
10702	return nil, false
10703}
10704
10705// AsHDInsightSparkActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10706func (amura AzureMLUpdateResourceActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
10707	return nil, false
10708}
10709
10710// AsHDInsightStreamingActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10711func (amura AzureMLUpdateResourceActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
10712	return nil, false
10713}
10714
10715// AsHDInsightMapReduceActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10716func (amura AzureMLUpdateResourceActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
10717	return nil, false
10718}
10719
10720// AsHDInsightPigActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10721func (amura AzureMLUpdateResourceActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
10722	return nil, false
10723}
10724
10725// AsHDInsightHiveActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10726func (amura AzureMLUpdateResourceActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
10727	return nil, false
10728}
10729
10730// AsCopyActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10731func (amura AzureMLUpdateResourceActivity) AsCopyActivity() (*CopyActivity, bool) {
10732	return nil, false
10733}
10734
10735// AsExecutionActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10736func (amura AzureMLUpdateResourceActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
10737	return nil, false
10738}
10739
10740// AsBasicExecutionActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10741func (amura AzureMLUpdateResourceActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
10742	return &amura, true
10743}
10744
10745// AsFilterActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10746func (amura AzureMLUpdateResourceActivity) AsFilterActivity() (*FilterActivity, bool) {
10747	return nil, false
10748}
10749
10750// AsUntilActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10751func (amura AzureMLUpdateResourceActivity) AsUntilActivity() (*UntilActivity, bool) {
10752	return nil, false
10753}
10754
10755// AsWaitActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10756func (amura AzureMLUpdateResourceActivity) AsWaitActivity() (*WaitActivity, bool) {
10757	return nil, false
10758}
10759
10760// AsForEachActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10761func (amura AzureMLUpdateResourceActivity) AsForEachActivity() (*ForEachActivity, bool) {
10762	return nil, false
10763}
10764
10765// AsIfConditionActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10766func (amura AzureMLUpdateResourceActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
10767	return nil, false
10768}
10769
10770// AsExecutePipelineActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10771func (amura AzureMLUpdateResourceActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
10772	return nil, false
10773}
10774
10775// AsControlActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10776func (amura AzureMLUpdateResourceActivity) AsControlActivity() (*ControlActivity, bool) {
10777	return nil, false
10778}
10779
10780// AsBasicControlActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10781func (amura AzureMLUpdateResourceActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
10782	return nil, false
10783}
10784
10785// AsActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10786func (amura AzureMLUpdateResourceActivity) AsActivity() (*Activity, bool) {
10787	return nil, false
10788}
10789
10790// AsBasicActivity is the BasicActivity implementation for AzureMLUpdateResourceActivity.
10791func (amura AzureMLUpdateResourceActivity) AsBasicActivity() (BasicActivity, bool) {
10792	return &amura, true
10793}
10794
10795// UnmarshalJSON is the custom unmarshaler for AzureMLUpdateResourceActivity struct.
10796func (amura *AzureMLUpdateResourceActivity) UnmarshalJSON(body []byte) error {
10797	var m map[string]*json.RawMessage
10798	err := json.Unmarshal(body, &m)
10799	if err != nil {
10800		return err
10801	}
10802	for k, v := range m {
10803		switch k {
10804		case "typeProperties":
10805			if v != nil {
10806				var azureMLUpdateResourceActivityTypeProperties AzureMLUpdateResourceActivityTypeProperties
10807				err = json.Unmarshal(*v, &azureMLUpdateResourceActivityTypeProperties)
10808				if err != nil {
10809					return err
10810				}
10811				amura.AzureMLUpdateResourceActivityTypeProperties = &azureMLUpdateResourceActivityTypeProperties
10812			}
10813		case "linkedServiceName":
10814			if v != nil {
10815				var linkedServiceName LinkedServiceReference
10816				err = json.Unmarshal(*v, &linkedServiceName)
10817				if err != nil {
10818					return err
10819				}
10820				amura.LinkedServiceName = &linkedServiceName
10821			}
10822		case "policy":
10823			if v != nil {
10824				var policy ActivityPolicy
10825				err = json.Unmarshal(*v, &policy)
10826				if err != nil {
10827					return err
10828				}
10829				amura.Policy = &policy
10830			}
10831		default:
10832			if v != nil {
10833				var additionalProperties interface{}
10834				err = json.Unmarshal(*v, &additionalProperties)
10835				if err != nil {
10836					return err
10837				}
10838				if amura.AdditionalProperties == nil {
10839					amura.AdditionalProperties = make(map[string]interface{})
10840				}
10841				amura.AdditionalProperties[k] = additionalProperties
10842			}
10843		case "name":
10844			if v != nil {
10845				var name string
10846				err = json.Unmarshal(*v, &name)
10847				if err != nil {
10848					return err
10849				}
10850				amura.Name = &name
10851			}
10852		case "description":
10853			if v != nil {
10854				var description string
10855				err = json.Unmarshal(*v, &description)
10856				if err != nil {
10857					return err
10858				}
10859				amura.Description = &description
10860			}
10861		case "dependsOn":
10862			if v != nil {
10863				var dependsOn []ActivityDependency
10864				err = json.Unmarshal(*v, &dependsOn)
10865				if err != nil {
10866					return err
10867				}
10868				amura.DependsOn = &dependsOn
10869			}
10870		case "type":
10871			if v != nil {
10872				var typeVar TypeBasicActivity
10873				err = json.Unmarshal(*v, &typeVar)
10874				if err != nil {
10875					return err
10876				}
10877				amura.Type = typeVar
10878			}
10879		}
10880	}
10881
10882	return nil
10883}
10884
10885// AzureMLUpdateResourceActivityTypeProperties azure ML Update Resource activity properties.
10886type AzureMLUpdateResourceActivityTypeProperties struct {
10887	// TrainedModelName - Name of the Trained Model module in the Web Service experiment to be updated. Type: string (or Expression with resultType string).
10888	TrainedModelName interface{} `json:"trainedModelName,omitempty"`
10889	// TrainedModelLinkedServiceName - Name of Azure Storage linked service holding the .ilearner file that will be uploaded by the update operation.
10890	TrainedModelLinkedServiceName *LinkedServiceReference `json:"trainedModelLinkedServiceName,omitempty"`
10891	// TrainedModelFilePath - The relative file path in trainedModelLinkedService to represent the .ilearner file that will be uploaded by the update operation.  Type: string (or Expression with resultType string).
10892	TrainedModelFilePath interface{} `json:"trainedModelFilePath,omitempty"`
10893}
10894
10895// AzureMLWebServiceFile azure ML WebService Input/Output file
10896type AzureMLWebServiceFile struct {
10897	// FilePath - The relative file path, including container name, in the Azure Blob Storage specified by the LinkedService. Type: string (or Expression with resultType string).
10898	FilePath interface{} `json:"filePath,omitempty"`
10899	// LinkedServiceName - Reference to an Azure Storage LinkedService, where Azure ML WebService Input/Output file located.
10900	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
10901}
10902
10903// AzureMySQLLinkedService azure MySQL database linked service.
10904type AzureMySQLLinkedService struct {
10905	// AzureMySQLLinkedServiceTypeProperties - Azure MySQL database linked service properties.
10906	*AzureMySQLLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
10907	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
10908	AdditionalProperties map[string]interface{} `json:""`
10909	// ConnectVia - The integration runtime reference.
10910	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
10911	// Description - Linked service description.
10912	Description *string `json:"description,omitempty"`
10913	// Parameters - Parameters for linked service.
10914	Parameters map[string]*ParameterSpecification `json:"parameters"`
10915	// Annotations - List of tags that can be used for describing the Dataset.
10916	Annotations *[]interface{} `json:"annotations,omitempty"`
10917	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
10918	Type TypeBasicLinkedService `json:"type,omitempty"`
10919}
10920
10921// MarshalJSON is the custom marshaler for AzureMySQLLinkedService.
10922func (amsls AzureMySQLLinkedService) MarshalJSON() ([]byte, error) {
10923	amsls.Type = TypeAzureMySQL
10924	objectMap := make(map[string]interface{})
10925	if amsls.AzureMySQLLinkedServiceTypeProperties != nil {
10926		objectMap["typeProperties"] = amsls.AzureMySQLLinkedServiceTypeProperties
10927	}
10928	if amsls.ConnectVia != nil {
10929		objectMap["connectVia"] = amsls.ConnectVia
10930	}
10931	if amsls.Description != nil {
10932		objectMap["description"] = amsls.Description
10933	}
10934	if amsls.Parameters != nil {
10935		objectMap["parameters"] = amsls.Parameters
10936	}
10937	if amsls.Annotations != nil {
10938		objectMap["annotations"] = amsls.Annotations
10939	}
10940	if amsls.Type != "" {
10941		objectMap["type"] = amsls.Type
10942	}
10943	for k, v := range amsls.AdditionalProperties {
10944		objectMap[k] = v
10945	}
10946	return json.Marshal(objectMap)
10947}
10948
10949// AsResponsysLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10950func (amsls AzureMySQLLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
10951	return nil, false
10952}
10953
10954// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10955func (amsls AzureMySQLLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
10956	return nil, false
10957}
10958
10959// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10960func (amsls AzureMySQLLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
10961	return nil, false
10962}
10963
10964// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10965func (amsls AzureMySQLLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
10966	return nil, false
10967}
10968
10969// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10970func (amsls AzureMySQLLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
10971	return nil, false
10972}
10973
10974// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10975func (amsls AzureMySQLLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
10976	return nil, false
10977}
10978
10979// AsVerticaLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10980func (amsls AzureMySQLLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
10981	return nil, false
10982}
10983
10984// AsZohoLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10985func (amsls AzureMySQLLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
10986	return nil, false
10987}
10988
10989// AsXeroLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10990func (amsls AzureMySQLLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
10991	return nil, false
10992}
10993
10994// AsSquareLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
10995func (amsls AzureMySQLLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
10996	return nil, false
10997}
10998
10999// AsSparkLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11000func (amsls AzureMySQLLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
11001	return nil, false
11002}
11003
11004// AsShopifyLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11005func (amsls AzureMySQLLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
11006	return nil, false
11007}
11008
11009// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11010func (amsls AzureMySQLLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
11011	return nil, false
11012}
11013
11014// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11015func (amsls AzureMySQLLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
11016	return nil, false
11017}
11018
11019// AsPrestoLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11020func (amsls AzureMySQLLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
11021	return nil, false
11022}
11023
11024// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11025func (amsls AzureMySQLLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
11026	return nil, false
11027}
11028
11029// AsPaypalLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11030func (amsls AzureMySQLLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
11031	return nil, false
11032}
11033
11034// AsMarketoLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11035func (amsls AzureMySQLLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
11036	return nil, false
11037}
11038
11039// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11040func (amsls AzureMySQLLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
11041	return nil, false
11042}
11043
11044// AsMagentoLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11045func (amsls AzureMySQLLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
11046	return nil, false
11047}
11048
11049// AsJiraLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11050func (amsls AzureMySQLLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
11051	return nil, false
11052}
11053
11054// AsImpalaLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11055func (amsls AzureMySQLLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
11056	return nil, false
11057}
11058
11059// AsHubspotLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11060func (amsls AzureMySQLLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
11061	return nil, false
11062}
11063
11064// AsHiveLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11065func (amsls AzureMySQLLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
11066	return nil, false
11067}
11068
11069// AsHBaseLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11070func (amsls AzureMySQLLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
11071	return nil, false
11072}
11073
11074// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11075func (amsls AzureMySQLLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
11076	return nil, false
11077}
11078
11079// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11080func (amsls AzureMySQLLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
11081	return nil, false
11082}
11083
11084// AsEloquaLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11085func (amsls AzureMySQLLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
11086	return nil, false
11087}
11088
11089// AsDrillLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11090func (amsls AzureMySQLLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
11091	return nil, false
11092}
11093
11094// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11095func (amsls AzureMySQLLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
11096	return nil, false
11097}
11098
11099// AsConcurLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11100func (amsls AzureMySQLLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
11101	return nil, false
11102}
11103
11104// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11105func (amsls AzureMySQLLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
11106	return nil, false
11107}
11108
11109// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11110func (amsls AzureMySQLLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
11111	return nil, false
11112}
11113
11114// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11115func (amsls AzureMySQLLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
11116	return nil, false
11117}
11118
11119// AsSapBWLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11120func (amsls AzureMySQLLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
11121	return nil, false
11122}
11123
11124// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11125func (amsls AzureMySQLLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
11126	return nil, false
11127}
11128
11129// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11130func (amsls AzureMySQLLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
11131	return nil, false
11132}
11133
11134// AsHTTPLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11135func (amsls AzureMySQLLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
11136	return nil, false
11137}
11138
11139// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11140func (amsls AzureMySQLLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
11141	return nil, false
11142}
11143
11144// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11145func (amsls AzureMySQLLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
11146	return nil, false
11147}
11148
11149// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11150func (amsls AzureMySQLLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
11151	return nil, false
11152}
11153
11154// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11155func (amsls AzureMySQLLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
11156	return nil, false
11157}
11158
11159// AsSapEccLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11160func (amsls AzureMySQLLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
11161	return nil, false
11162}
11163
11164// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11165func (amsls AzureMySQLLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
11166	return nil, false
11167}
11168
11169// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11170func (amsls AzureMySQLLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
11171	return nil, false
11172}
11173
11174// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11175func (amsls AzureMySQLLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
11176	return nil, false
11177}
11178
11179// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11180func (amsls AzureMySQLLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
11181	return nil, false
11182}
11183
11184// AsCassandraLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11185func (amsls AzureMySQLLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
11186	return nil, false
11187}
11188
11189// AsWebLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11190func (amsls AzureMySQLLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
11191	return nil, false
11192}
11193
11194// AsODataLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11195func (amsls AzureMySQLLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
11196	return nil, false
11197}
11198
11199// AsHdfsLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11200func (amsls AzureMySQLLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
11201	return nil, false
11202}
11203
11204// AsOdbcLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11205func (amsls AzureMySQLLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
11206	return nil, false
11207}
11208
11209// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11210func (amsls AzureMySQLLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
11211	return nil, false
11212}
11213
11214// AsTeradataLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11215func (amsls AzureMySQLLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
11216	return nil, false
11217}
11218
11219// AsDb2LinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11220func (amsls AzureMySQLLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
11221	return nil, false
11222}
11223
11224// AsSybaseLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11225func (amsls AzureMySQLLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
11226	return nil, false
11227}
11228
11229// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11230func (amsls AzureMySQLLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
11231	return nil, false
11232}
11233
11234// AsMySQLLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11235func (amsls AzureMySQLLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
11236	return nil, false
11237}
11238
11239// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11240func (amsls AzureMySQLLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
11241	return &amsls, true
11242}
11243
11244// AsOracleLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11245func (amsls AzureMySQLLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
11246	return nil, false
11247}
11248
11249// AsFileServerLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11250func (amsls AzureMySQLLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
11251	return nil, false
11252}
11253
11254// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11255func (amsls AzureMySQLLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
11256	return nil, false
11257}
11258
11259// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11260func (amsls AzureMySQLLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
11261	return nil, false
11262}
11263
11264// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11265func (amsls AzureMySQLLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
11266	return nil, false
11267}
11268
11269// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11270func (amsls AzureMySQLLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
11271	return nil, false
11272}
11273
11274// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11275func (amsls AzureMySQLLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
11276	return nil, false
11277}
11278
11279// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11280func (amsls AzureMySQLLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
11281	return nil, false
11282}
11283
11284// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11285func (amsls AzureMySQLLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
11286	return nil, false
11287}
11288
11289// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11290func (amsls AzureMySQLLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
11291	return nil, false
11292}
11293
11294// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11295func (amsls AzureMySQLLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
11296	return nil, false
11297}
11298
11299// AsLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11300func (amsls AzureMySQLLinkedService) AsLinkedService() (*LinkedService, bool) {
11301	return nil, false
11302}
11303
11304// AsBasicLinkedService is the BasicLinkedService implementation for AzureMySQLLinkedService.
11305func (amsls AzureMySQLLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
11306	return &amsls, true
11307}
11308
11309// UnmarshalJSON is the custom unmarshaler for AzureMySQLLinkedService struct.
11310func (amsls *AzureMySQLLinkedService) UnmarshalJSON(body []byte) error {
11311	var m map[string]*json.RawMessage
11312	err := json.Unmarshal(body, &m)
11313	if err != nil {
11314		return err
11315	}
11316	for k, v := range m {
11317		switch k {
11318		case "typeProperties":
11319			if v != nil {
11320				var azureMySQLLinkedServiceTypeProperties AzureMySQLLinkedServiceTypeProperties
11321				err = json.Unmarshal(*v, &azureMySQLLinkedServiceTypeProperties)
11322				if err != nil {
11323					return err
11324				}
11325				amsls.AzureMySQLLinkedServiceTypeProperties = &azureMySQLLinkedServiceTypeProperties
11326			}
11327		default:
11328			if v != nil {
11329				var additionalProperties interface{}
11330				err = json.Unmarshal(*v, &additionalProperties)
11331				if err != nil {
11332					return err
11333				}
11334				if amsls.AdditionalProperties == nil {
11335					amsls.AdditionalProperties = make(map[string]interface{})
11336				}
11337				amsls.AdditionalProperties[k] = additionalProperties
11338			}
11339		case "connectVia":
11340			if v != nil {
11341				var connectVia IntegrationRuntimeReference
11342				err = json.Unmarshal(*v, &connectVia)
11343				if err != nil {
11344					return err
11345				}
11346				amsls.ConnectVia = &connectVia
11347			}
11348		case "description":
11349			if v != nil {
11350				var description string
11351				err = json.Unmarshal(*v, &description)
11352				if err != nil {
11353					return err
11354				}
11355				amsls.Description = &description
11356			}
11357		case "parameters":
11358			if v != nil {
11359				var parameters map[string]*ParameterSpecification
11360				err = json.Unmarshal(*v, &parameters)
11361				if err != nil {
11362					return err
11363				}
11364				amsls.Parameters = parameters
11365			}
11366		case "annotations":
11367			if v != nil {
11368				var annotations []interface{}
11369				err = json.Unmarshal(*v, &annotations)
11370				if err != nil {
11371					return err
11372				}
11373				amsls.Annotations = &annotations
11374			}
11375		case "type":
11376			if v != nil {
11377				var typeVar TypeBasicLinkedService
11378				err = json.Unmarshal(*v, &typeVar)
11379				if err != nil {
11380					return err
11381				}
11382				amsls.Type = typeVar
11383			}
11384		}
11385	}
11386
11387	return nil
11388}
11389
11390// AzureMySQLLinkedServiceTypeProperties azure MySQL database linked service properties.
11391type AzureMySQLLinkedServiceTypeProperties struct {
11392	// ConnectionString - The connection string.
11393	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
11394	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
11395	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
11396}
11397
11398// UnmarshalJSON is the custom unmarshaler for AzureMySQLLinkedServiceTypeProperties struct.
11399func (amslstp *AzureMySQLLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
11400	var m map[string]*json.RawMessage
11401	err := json.Unmarshal(body, &m)
11402	if err != nil {
11403		return err
11404	}
11405	for k, v := range m {
11406		switch k {
11407		case "connectionString":
11408			if v != nil {
11409				connectionString, err := unmarshalBasicSecretBase(*v)
11410				if err != nil {
11411					return err
11412				}
11413				amslstp.ConnectionString = connectionString
11414			}
11415		case "encryptedCredential":
11416			if v != nil {
11417				var encryptedCredential interface{}
11418				err = json.Unmarshal(*v, &encryptedCredential)
11419				if err != nil {
11420					return err
11421				}
11422				amslstp.EncryptedCredential = encryptedCredential
11423			}
11424		}
11425	}
11426
11427	return nil
11428}
11429
11430// AzureMySQLSource a copy activity Azure MySQL source.
11431type AzureMySQLSource struct {
11432	// Query - Database query. Type: string (or Expression with resultType string).
11433	Query interface{} `json:"query,omitempty"`
11434	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
11435	AdditionalProperties map[string]interface{} `json:""`
11436	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
11437	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
11438	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
11439	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
11440	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
11441	Type TypeBasicCopySource `json:"type,omitempty"`
11442}
11443
11444// MarshalJSON is the custom marshaler for AzureMySQLSource.
11445func (amss AzureMySQLSource) MarshalJSON() ([]byte, error) {
11446	amss.Type = TypeAzureMySQLSource
11447	objectMap := make(map[string]interface{})
11448	objectMap["query"] = amss.Query
11449	objectMap["sourceRetryCount"] = amss.SourceRetryCount
11450	objectMap["sourceRetryWait"] = amss.SourceRetryWait
11451	if amss.Type != "" {
11452		objectMap["type"] = amss.Type
11453	}
11454	for k, v := range amss.AdditionalProperties {
11455		objectMap[k] = v
11456	}
11457	return json.Marshal(objectMap)
11458}
11459
11460// AsAmazonRedshiftSource is the BasicCopySource implementation for AzureMySQLSource.
11461func (amss AzureMySQLSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
11462	return nil, false
11463}
11464
11465// AsResponsysSource is the BasicCopySource implementation for AzureMySQLSource.
11466func (amss AzureMySQLSource) AsResponsysSource() (*ResponsysSource, bool) {
11467	return nil, false
11468}
11469
11470// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AzureMySQLSource.
11471func (amss AzureMySQLSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
11472	return nil, false
11473}
11474
11475// AsVerticaSource is the BasicCopySource implementation for AzureMySQLSource.
11476func (amss AzureMySQLSource) AsVerticaSource() (*VerticaSource, bool) {
11477	return nil, false
11478}
11479
11480// AsNetezzaSource is the BasicCopySource implementation for AzureMySQLSource.
11481func (amss AzureMySQLSource) AsNetezzaSource() (*NetezzaSource, bool) {
11482	return nil, false
11483}
11484
11485// AsZohoSource is the BasicCopySource implementation for AzureMySQLSource.
11486func (amss AzureMySQLSource) AsZohoSource() (*ZohoSource, bool) {
11487	return nil, false
11488}
11489
11490// AsXeroSource is the BasicCopySource implementation for AzureMySQLSource.
11491func (amss AzureMySQLSource) AsXeroSource() (*XeroSource, bool) {
11492	return nil, false
11493}
11494
11495// AsSquareSource is the BasicCopySource implementation for AzureMySQLSource.
11496func (amss AzureMySQLSource) AsSquareSource() (*SquareSource, bool) {
11497	return nil, false
11498}
11499
11500// AsSparkSource is the BasicCopySource implementation for AzureMySQLSource.
11501func (amss AzureMySQLSource) AsSparkSource() (*SparkSource, bool) {
11502	return nil, false
11503}
11504
11505// AsShopifySource is the BasicCopySource implementation for AzureMySQLSource.
11506func (amss AzureMySQLSource) AsShopifySource() (*ShopifySource, bool) {
11507	return nil, false
11508}
11509
11510// AsServiceNowSource is the BasicCopySource implementation for AzureMySQLSource.
11511func (amss AzureMySQLSource) AsServiceNowSource() (*ServiceNowSource, bool) {
11512	return nil, false
11513}
11514
11515// AsQuickBooksSource is the BasicCopySource implementation for AzureMySQLSource.
11516func (amss AzureMySQLSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
11517	return nil, false
11518}
11519
11520// AsPrestoSource is the BasicCopySource implementation for AzureMySQLSource.
11521func (amss AzureMySQLSource) AsPrestoSource() (*PrestoSource, bool) {
11522	return nil, false
11523}
11524
11525// AsPhoenixSource is the BasicCopySource implementation for AzureMySQLSource.
11526func (amss AzureMySQLSource) AsPhoenixSource() (*PhoenixSource, bool) {
11527	return nil, false
11528}
11529
11530// AsPaypalSource is the BasicCopySource implementation for AzureMySQLSource.
11531func (amss AzureMySQLSource) AsPaypalSource() (*PaypalSource, bool) {
11532	return nil, false
11533}
11534
11535// AsMarketoSource is the BasicCopySource implementation for AzureMySQLSource.
11536func (amss AzureMySQLSource) AsMarketoSource() (*MarketoSource, bool) {
11537	return nil, false
11538}
11539
11540// AsMariaDBSource is the BasicCopySource implementation for AzureMySQLSource.
11541func (amss AzureMySQLSource) AsMariaDBSource() (*MariaDBSource, bool) {
11542	return nil, false
11543}
11544
11545// AsMagentoSource is the BasicCopySource implementation for AzureMySQLSource.
11546func (amss AzureMySQLSource) AsMagentoSource() (*MagentoSource, bool) {
11547	return nil, false
11548}
11549
11550// AsJiraSource is the BasicCopySource implementation for AzureMySQLSource.
11551func (amss AzureMySQLSource) AsJiraSource() (*JiraSource, bool) {
11552	return nil, false
11553}
11554
11555// AsImpalaSource is the BasicCopySource implementation for AzureMySQLSource.
11556func (amss AzureMySQLSource) AsImpalaSource() (*ImpalaSource, bool) {
11557	return nil, false
11558}
11559
11560// AsHubspotSource is the BasicCopySource implementation for AzureMySQLSource.
11561func (amss AzureMySQLSource) AsHubspotSource() (*HubspotSource, bool) {
11562	return nil, false
11563}
11564
11565// AsHiveSource is the BasicCopySource implementation for AzureMySQLSource.
11566func (amss AzureMySQLSource) AsHiveSource() (*HiveSource, bool) {
11567	return nil, false
11568}
11569
11570// AsHBaseSource is the BasicCopySource implementation for AzureMySQLSource.
11571func (amss AzureMySQLSource) AsHBaseSource() (*HBaseSource, bool) {
11572	return nil, false
11573}
11574
11575// AsGreenplumSource is the BasicCopySource implementation for AzureMySQLSource.
11576func (amss AzureMySQLSource) AsGreenplumSource() (*GreenplumSource, bool) {
11577	return nil, false
11578}
11579
11580// AsGoogleBigQuerySource is the BasicCopySource implementation for AzureMySQLSource.
11581func (amss AzureMySQLSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
11582	return nil, false
11583}
11584
11585// AsEloquaSource is the BasicCopySource implementation for AzureMySQLSource.
11586func (amss AzureMySQLSource) AsEloquaSource() (*EloquaSource, bool) {
11587	return nil, false
11588}
11589
11590// AsDrillSource is the BasicCopySource implementation for AzureMySQLSource.
11591func (amss AzureMySQLSource) AsDrillSource() (*DrillSource, bool) {
11592	return nil, false
11593}
11594
11595// AsCouchbaseSource is the BasicCopySource implementation for AzureMySQLSource.
11596func (amss AzureMySQLSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
11597	return nil, false
11598}
11599
11600// AsConcurSource is the BasicCopySource implementation for AzureMySQLSource.
11601func (amss AzureMySQLSource) AsConcurSource() (*ConcurSource, bool) {
11602	return nil, false
11603}
11604
11605// AsAzurePostgreSQLSource is the BasicCopySource implementation for AzureMySQLSource.
11606func (amss AzureMySQLSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
11607	return nil, false
11608}
11609
11610// AsAmazonMWSSource is the BasicCopySource implementation for AzureMySQLSource.
11611func (amss AzureMySQLSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
11612	return nil, false
11613}
11614
11615// AsHTTPSource is the BasicCopySource implementation for AzureMySQLSource.
11616func (amss AzureMySQLSource) AsHTTPSource() (*HTTPSource, bool) {
11617	return nil, false
11618}
11619
11620// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AzureMySQLSource.
11621func (amss AzureMySQLSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
11622	return nil, false
11623}
11624
11625// AsMongoDbSource is the BasicCopySource implementation for AzureMySQLSource.
11626func (amss AzureMySQLSource) AsMongoDbSource() (*MongoDbSource, bool) {
11627	return nil, false
11628}
11629
11630// AsCassandraSource is the BasicCopySource implementation for AzureMySQLSource.
11631func (amss AzureMySQLSource) AsCassandraSource() (*CassandraSource, bool) {
11632	return nil, false
11633}
11634
11635// AsWebSource is the BasicCopySource implementation for AzureMySQLSource.
11636func (amss AzureMySQLSource) AsWebSource() (*WebSource, bool) {
11637	return nil, false
11638}
11639
11640// AsOracleSource is the BasicCopySource implementation for AzureMySQLSource.
11641func (amss AzureMySQLSource) AsOracleSource() (*OracleSource, bool) {
11642	return nil, false
11643}
11644
11645// AsAzureMySQLSource is the BasicCopySource implementation for AzureMySQLSource.
11646func (amss AzureMySQLSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
11647	return &amss, true
11648}
11649
11650// AsHdfsSource is the BasicCopySource implementation for AzureMySQLSource.
11651func (amss AzureMySQLSource) AsHdfsSource() (*HdfsSource, bool) {
11652	return nil, false
11653}
11654
11655// AsFileSystemSource is the BasicCopySource implementation for AzureMySQLSource.
11656func (amss AzureMySQLSource) AsFileSystemSource() (*FileSystemSource, bool) {
11657	return nil, false
11658}
11659
11660// AsSQLDWSource is the BasicCopySource implementation for AzureMySQLSource.
11661func (amss AzureMySQLSource) AsSQLDWSource() (*SQLDWSource, bool) {
11662	return nil, false
11663}
11664
11665// AsSQLSource is the BasicCopySource implementation for AzureMySQLSource.
11666func (amss AzureMySQLSource) AsSQLSource() (*SQLSource, bool) {
11667	return nil, false
11668}
11669
11670// AsSapEccSource is the BasicCopySource implementation for AzureMySQLSource.
11671func (amss AzureMySQLSource) AsSapEccSource() (*SapEccSource, bool) {
11672	return nil, false
11673}
11674
11675// AsSapCloudForCustomerSource is the BasicCopySource implementation for AzureMySQLSource.
11676func (amss AzureMySQLSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
11677	return nil, false
11678}
11679
11680// AsSalesforceSource is the BasicCopySource implementation for AzureMySQLSource.
11681func (amss AzureMySQLSource) AsSalesforceSource() (*SalesforceSource, bool) {
11682	return nil, false
11683}
11684
11685// AsRelationalSource is the BasicCopySource implementation for AzureMySQLSource.
11686func (amss AzureMySQLSource) AsRelationalSource() (*RelationalSource, bool) {
11687	return nil, false
11688}
11689
11690// AsDynamicsSource is the BasicCopySource implementation for AzureMySQLSource.
11691func (amss AzureMySQLSource) AsDynamicsSource() (*DynamicsSource, bool) {
11692	return nil, false
11693}
11694
11695// AsDocumentDbCollectionSource is the BasicCopySource implementation for AzureMySQLSource.
11696func (amss AzureMySQLSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
11697	return nil, false
11698}
11699
11700// AsBlobSource is the BasicCopySource implementation for AzureMySQLSource.
11701func (amss AzureMySQLSource) AsBlobSource() (*BlobSource, bool) {
11702	return nil, false
11703}
11704
11705// AsAzureTableSource is the BasicCopySource implementation for AzureMySQLSource.
11706func (amss AzureMySQLSource) AsAzureTableSource() (*AzureTableSource, bool) {
11707	return nil, false
11708}
11709
11710// AsCopySource is the BasicCopySource implementation for AzureMySQLSource.
11711func (amss AzureMySQLSource) AsCopySource() (*CopySource, bool) {
11712	return nil, false
11713}
11714
11715// AsBasicCopySource is the BasicCopySource implementation for AzureMySQLSource.
11716func (amss AzureMySQLSource) AsBasicCopySource() (BasicCopySource, bool) {
11717	return &amss, true
11718}
11719
11720// AzureMySQLTableDataset the Azure MySQL database dataset.
11721type AzureMySQLTableDataset struct {
11722	// AzureMySQLTableDatasetTypeProperties - Azure MySQL database dataset properties.
11723	*AzureMySQLTableDatasetTypeProperties `json:"typeProperties,omitempty"`
11724	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
11725	AdditionalProperties map[string]interface{} `json:""`
11726	// Description - Dataset description.
11727	Description *string `json:"description,omitempty"`
11728	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
11729	Structure interface{} `json:"structure,omitempty"`
11730	// LinkedServiceName - Linked service reference.
11731	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
11732	// Parameters - Parameters for dataset.
11733	Parameters map[string]*ParameterSpecification `json:"parameters"`
11734	// Annotations - List of tags that can be used for describing the Dataset.
11735	Annotations *[]interface{} `json:"annotations,omitempty"`
11736	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
11737	Type TypeBasicDataset `json:"type,omitempty"`
11738}
11739
11740// MarshalJSON is the custom marshaler for AzureMySQLTableDataset.
11741func (amstd AzureMySQLTableDataset) MarshalJSON() ([]byte, error) {
11742	amstd.Type = TypeAzureMySQLTable
11743	objectMap := make(map[string]interface{})
11744	if amstd.AzureMySQLTableDatasetTypeProperties != nil {
11745		objectMap["typeProperties"] = amstd.AzureMySQLTableDatasetTypeProperties
11746	}
11747	if amstd.Description != nil {
11748		objectMap["description"] = amstd.Description
11749	}
11750	objectMap["structure"] = amstd.Structure
11751	if amstd.LinkedServiceName != nil {
11752		objectMap["linkedServiceName"] = amstd.LinkedServiceName
11753	}
11754	if amstd.Parameters != nil {
11755		objectMap["parameters"] = amstd.Parameters
11756	}
11757	if amstd.Annotations != nil {
11758		objectMap["annotations"] = amstd.Annotations
11759	}
11760	if amstd.Type != "" {
11761		objectMap["type"] = amstd.Type
11762	}
11763	for k, v := range amstd.AdditionalProperties {
11764		objectMap[k] = v
11765	}
11766	return json.Marshal(objectMap)
11767}
11768
11769// AsResponsysObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11770func (amstd AzureMySQLTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
11771	return nil, false
11772}
11773
11774// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11775func (amstd AzureMySQLTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
11776	return nil, false
11777}
11778
11779// AsVerticaTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11780func (amstd AzureMySQLTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
11781	return nil, false
11782}
11783
11784// AsNetezzaTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11785func (amstd AzureMySQLTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
11786	return nil, false
11787}
11788
11789// AsZohoObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11790func (amstd AzureMySQLTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
11791	return nil, false
11792}
11793
11794// AsXeroObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11795func (amstd AzureMySQLTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
11796	return nil, false
11797}
11798
11799// AsSquareObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11800func (amstd AzureMySQLTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
11801	return nil, false
11802}
11803
11804// AsSparkObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11805func (amstd AzureMySQLTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
11806	return nil, false
11807}
11808
11809// AsShopifyObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11810func (amstd AzureMySQLTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
11811	return nil, false
11812}
11813
11814// AsServiceNowObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11815func (amstd AzureMySQLTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
11816	return nil, false
11817}
11818
11819// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11820func (amstd AzureMySQLTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
11821	return nil, false
11822}
11823
11824// AsPrestoObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11825func (amstd AzureMySQLTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
11826	return nil, false
11827}
11828
11829// AsPhoenixObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11830func (amstd AzureMySQLTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
11831	return nil, false
11832}
11833
11834// AsPaypalObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11835func (amstd AzureMySQLTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
11836	return nil, false
11837}
11838
11839// AsMarketoObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11840func (amstd AzureMySQLTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
11841	return nil, false
11842}
11843
11844// AsMariaDBTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11845func (amstd AzureMySQLTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
11846	return nil, false
11847}
11848
11849// AsMagentoObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11850func (amstd AzureMySQLTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
11851	return nil, false
11852}
11853
11854// AsJiraObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11855func (amstd AzureMySQLTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
11856	return nil, false
11857}
11858
11859// AsImpalaObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11860func (amstd AzureMySQLTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
11861	return nil, false
11862}
11863
11864// AsHubspotObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11865func (amstd AzureMySQLTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
11866	return nil, false
11867}
11868
11869// AsHiveObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11870func (amstd AzureMySQLTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
11871	return nil, false
11872}
11873
11874// AsHBaseObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11875func (amstd AzureMySQLTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
11876	return nil, false
11877}
11878
11879// AsGreenplumTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11880func (amstd AzureMySQLTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
11881	return nil, false
11882}
11883
11884// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11885func (amstd AzureMySQLTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
11886	return nil, false
11887}
11888
11889// AsEloquaObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11890func (amstd AzureMySQLTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
11891	return nil, false
11892}
11893
11894// AsDrillTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11895func (amstd AzureMySQLTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
11896	return nil, false
11897}
11898
11899// AsCouchbaseTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11900func (amstd AzureMySQLTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
11901	return nil, false
11902}
11903
11904// AsConcurObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11905func (amstd AzureMySQLTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
11906	return nil, false
11907}
11908
11909// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11910func (amstd AzureMySQLTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
11911	return nil, false
11912}
11913
11914// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11915func (amstd AzureMySQLTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
11916	return nil, false
11917}
11918
11919// AsHTTPDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11920func (amstd AzureMySQLTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
11921	return nil, false
11922}
11923
11924// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11925func (amstd AzureMySQLTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
11926	return nil, false
11927}
11928
11929// AsWebTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11930func (amstd AzureMySQLTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
11931	return nil, false
11932}
11933
11934// AsSQLServerTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11935func (amstd AzureMySQLTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
11936	return nil, false
11937}
11938
11939// AsSapEccResourceDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11940func (amstd AzureMySQLTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
11941	return nil, false
11942}
11943
11944// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11945func (amstd AzureMySQLTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
11946	return nil, false
11947}
11948
11949// AsSalesforceObjectDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11950func (amstd AzureMySQLTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
11951	return nil, false
11952}
11953
11954// AsRelationalTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11955func (amstd AzureMySQLTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
11956	return nil, false
11957}
11958
11959// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11960func (amstd AzureMySQLTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
11961	return &amstd, true
11962}
11963
11964// AsOracleTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11965func (amstd AzureMySQLTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
11966	return nil, false
11967}
11968
11969// AsODataResourceDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11970func (amstd AzureMySQLTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
11971	return nil, false
11972}
11973
11974// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11975func (amstd AzureMySQLTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
11976	return nil, false
11977}
11978
11979// AsFileShareDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11980func (amstd AzureMySQLTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
11981	return nil, false
11982}
11983
11984// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11985func (amstd AzureMySQLTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
11986	return nil, false
11987}
11988
11989// AsDynamicsEntityDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11990func (amstd AzureMySQLTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
11991	return nil, false
11992}
11993
11994// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureMySQLTableDataset.
11995func (amstd AzureMySQLTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
11996	return nil, false
11997}
11998
11999// AsCustomDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12000func (amstd AzureMySQLTableDataset) AsCustomDataset() (*CustomDataset, bool) {
12001	return nil, false
12002}
12003
12004// AsCassandraTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12005func (amstd AzureMySQLTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
12006	return nil, false
12007}
12008
12009// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12010func (amstd AzureMySQLTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
12011	return nil, false
12012}
12013
12014// AsAzureSQLTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12015func (amstd AzureMySQLTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
12016	return nil, false
12017}
12018
12019// AsAzureTableDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12020func (amstd AzureMySQLTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
12021	return nil, false
12022}
12023
12024// AsAzureBlobDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12025func (amstd AzureMySQLTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
12026	return nil, false
12027}
12028
12029// AsAmazonS3Dataset is the BasicDataset implementation for AzureMySQLTableDataset.
12030func (amstd AzureMySQLTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
12031	return nil, false
12032}
12033
12034// AsDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12035func (amstd AzureMySQLTableDataset) AsDataset() (*Dataset, bool) {
12036	return nil, false
12037}
12038
12039// AsBasicDataset is the BasicDataset implementation for AzureMySQLTableDataset.
12040func (amstd AzureMySQLTableDataset) AsBasicDataset() (BasicDataset, bool) {
12041	return &amstd, true
12042}
12043
12044// UnmarshalJSON is the custom unmarshaler for AzureMySQLTableDataset struct.
12045func (amstd *AzureMySQLTableDataset) UnmarshalJSON(body []byte) error {
12046	var m map[string]*json.RawMessage
12047	err := json.Unmarshal(body, &m)
12048	if err != nil {
12049		return err
12050	}
12051	for k, v := range m {
12052		switch k {
12053		case "typeProperties":
12054			if v != nil {
12055				var azureMySQLTableDatasetTypeProperties AzureMySQLTableDatasetTypeProperties
12056				err = json.Unmarshal(*v, &azureMySQLTableDatasetTypeProperties)
12057				if err != nil {
12058					return err
12059				}
12060				amstd.AzureMySQLTableDatasetTypeProperties = &azureMySQLTableDatasetTypeProperties
12061			}
12062		default:
12063			if v != nil {
12064				var additionalProperties interface{}
12065				err = json.Unmarshal(*v, &additionalProperties)
12066				if err != nil {
12067					return err
12068				}
12069				if amstd.AdditionalProperties == nil {
12070					amstd.AdditionalProperties = make(map[string]interface{})
12071				}
12072				amstd.AdditionalProperties[k] = additionalProperties
12073			}
12074		case "description":
12075			if v != nil {
12076				var description string
12077				err = json.Unmarshal(*v, &description)
12078				if err != nil {
12079					return err
12080				}
12081				amstd.Description = &description
12082			}
12083		case "structure":
12084			if v != nil {
12085				var structure interface{}
12086				err = json.Unmarshal(*v, &structure)
12087				if err != nil {
12088					return err
12089				}
12090				amstd.Structure = structure
12091			}
12092		case "linkedServiceName":
12093			if v != nil {
12094				var linkedServiceName LinkedServiceReference
12095				err = json.Unmarshal(*v, &linkedServiceName)
12096				if err != nil {
12097					return err
12098				}
12099				amstd.LinkedServiceName = &linkedServiceName
12100			}
12101		case "parameters":
12102			if v != nil {
12103				var parameters map[string]*ParameterSpecification
12104				err = json.Unmarshal(*v, &parameters)
12105				if err != nil {
12106					return err
12107				}
12108				amstd.Parameters = parameters
12109			}
12110		case "annotations":
12111			if v != nil {
12112				var annotations []interface{}
12113				err = json.Unmarshal(*v, &annotations)
12114				if err != nil {
12115					return err
12116				}
12117				amstd.Annotations = &annotations
12118			}
12119		case "type":
12120			if v != nil {
12121				var typeVar TypeBasicDataset
12122				err = json.Unmarshal(*v, &typeVar)
12123				if err != nil {
12124					return err
12125				}
12126				amstd.Type = typeVar
12127			}
12128		}
12129	}
12130
12131	return nil
12132}
12133
12134// AzureMySQLTableDatasetTypeProperties azure MySQL database dataset properties.
12135type AzureMySQLTableDatasetTypeProperties struct {
12136	// TableName - The Azure MySQL database table name. Type: string (or Expression with resultType string).
12137	TableName interface{} `json:"tableName,omitempty"`
12138}
12139
12140// AzurePostgreSQLLinkedService azure PostgreSQL linked service.
12141type AzurePostgreSQLLinkedService struct {
12142	// AzurePostgreSQLLinkedServiceTypeProperties - Azure PostgreSQL linked service properties.
12143	*AzurePostgreSQLLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
12144	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
12145	AdditionalProperties map[string]interface{} `json:""`
12146	// ConnectVia - The integration runtime reference.
12147	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
12148	// Description - Linked service description.
12149	Description *string `json:"description,omitempty"`
12150	// Parameters - Parameters for linked service.
12151	Parameters map[string]*ParameterSpecification `json:"parameters"`
12152	// Annotations - List of tags that can be used for describing the Dataset.
12153	Annotations *[]interface{} `json:"annotations,omitempty"`
12154	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
12155	Type TypeBasicLinkedService `json:"type,omitempty"`
12156}
12157
12158// MarshalJSON is the custom marshaler for AzurePostgreSQLLinkedService.
12159func (apsls AzurePostgreSQLLinkedService) MarshalJSON() ([]byte, error) {
12160	apsls.Type = TypeAzurePostgreSQL
12161	objectMap := make(map[string]interface{})
12162	if apsls.AzurePostgreSQLLinkedServiceTypeProperties != nil {
12163		objectMap["typeProperties"] = apsls.AzurePostgreSQLLinkedServiceTypeProperties
12164	}
12165	if apsls.ConnectVia != nil {
12166		objectMap["connectVia"] = apsls.ConnectVia
12167	}
12168	if apsls.Description != nil {
12169		objectMap["description"] = apsls.Description
12170	}
12171	if apsls.Parameters != nil {
12172		objectMap["parameters"] = apsls.Parameters
12173	}
12174	if apsls.Annotations != nil {
12175		objectMap["annotations"] = apsls.Annotations
12176	}
12177	if apsls.Type != "" {
12178		objectMap["type"] = apsls.Type
12179	}
12180	for k, v := range apsls.AdditionalProperties {
12181		objectMap[k] = v
12182	}
12183	return json.Marshal(objectMap)
12184}
12185
12186// AsResponsysLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12187func (apsls AzurePostgreSQLLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
12188	return nil, false
12189}
12190
12191// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12192func (apsls AzurePostgreSQLLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
12193	return nil, false
12194}
12195
12196// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12197func (apsls AzurePostgreSQLLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
12198	return nil, false
12199}
12200
12201// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12202func (apsls AzurePostgreSQLLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
12203	return nil, false
12204}
12205
12206// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12207func (apsls AzurePostgreSQLLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
12208	return nil, false
12209}
12210
12211// AsNetezzaLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12212func (apsls AzurePostgreSQLLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
12213	return nil, false
12214}
12215
12216// AsVerticaLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12217func (apsls AzurePostgreSQLLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
12218	return nil, false
12219}
12220
12221// AsZohoLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12222func (apsls AzurePostgreSQLLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
12223	return nil, false
12224}
12225
12226// AsXeroLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12227func (apsls AzurePostgreSQLLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
12228	return nil, false
12229}
12230
12231// AsSquareLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12232func (apsls AzurePostgreSQLLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
12233	return nil, false
12234}
12235
12236// AsSparkLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12237func (apsls AzurePostgreSQLLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
12238	return nil, false
12239}
12240
12241// AsShopifyLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12242func (apsls AzurePostgreSQLLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
12243	return nil, false
12244}
12245
12246// AsServiceNowLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12247func (apsls AzurePostgreSQLLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
12248	return nil, false
12249}
12250
12251// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12252func (apsls AzurePostgreSQLLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
12253	return nil, false
12254}
12255
12256// AsPrestoLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12257func (apsls AzurePostgreSQLLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
12258	return nil, false
12259}
12260
12261// AsPhoenixLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12262func (apsls AzurePostgreSQLLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
12263	return nil, false
12264}
12265
12266// AsPaypalLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12267func (apsls AzurePostgreSQLLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
12268	return nil, false
12269}
12270
12271// AsMarketoLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12272func (apsls AzurePostgreSQLLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
12273	return nil, false
12274}
12275
12276// AsMariaDBLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12277func (apsls AzurePostgreSQLLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
12278	return nil, false
12279}
12280
12281// AsMagentoLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12282func (apsls AzurePostgreSQLLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
12283	return nil, false
12284}
12285
12286// AsJiraLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12287func (apsls AzurePostgreSQLLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
12288	return nil, false
12289}
12290
12291// AsImpalaLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12292func (apsls AzurePostgreSQLLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
12293	return nil, false
12294}
12295
12296// AsHubspotLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12297func (apsls AzurePostgreSQLLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
12298	return nil, false
12299}
12300
12301// AsHiveLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12302func (apsls AzurePostgreSQLLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
12303	return nil, false
12304}
12305
12306// AsHBaseLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12307func (apsls AzurePostgreSQLLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
12308	return nil, false
12309}
12310
12311// AsGreenplumLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12312func (apsls AzurePostgreSQLLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
12313	return nil, false
12314}
12315
12316// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12317func (apsls AzurePostgreSQLLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
12318	return nil, false
12319}
12320
12321// AsEloquaLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12322func (apsls AzurePostgreSQLLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
12323	return nil, false
12324}
12325
12326// AsDrillLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12327func (apsls AzurePostgreSQLLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
12328	return nil, false
12329}
12330
12331// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12332func (apsls AzurePostgreSQLLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
12333	return nil, false
12334}
12335
12336// AsConcurLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12337func (apsls AzurePostgreSQLLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
12338	return nil, false
12339}
12340
12341// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12342func (apsls AzurePostgreSQLLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
12343	return &apsls, true
12344}
12345
12346// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12347func (apsls AzurePostgreSQLLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
12348	return nil, false
12349}
12350
12351// AsSapHanaLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12352func (apsls AzurePostgreSQLLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
12353	return nil, false
12354}
12355
12356// AsSapBWLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12357func (apsls AzurePostgreSQLLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
12358	return nil, false
12359}
12360
12361// AsSftpServerLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12362func (apsls AzurePostgreSQLLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
12363	return nil, false
12364}
12365
12366// AsFtpServerLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12367func (apsls AzurePostgreSQLLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
12368	return nil, false
12369}
12370
12371// AsHTTPLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12372func (apsls AzurePostgreSQLLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
12373	return nil, false
12374}
12375
12376// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12377func (apsls AzurePostgreSQLLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
12378	return nil, false
12379}
12380
12381// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12382func (apsls AzurePostgreSQLLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
12383	return nil, false
12384}
12385
12386// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12387func (apsls AzurePostgreSQLLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
12388	return nil, false
12389}
12390
12391// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12392func (apsls AzurePostgreSQLLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
12393	return nil, false
12394}
12395
12396// AsSapEccLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12397func (apsls AzurePostgreSQLLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
12398	return nil, false
12399}
12400
12401// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12402func (apsls AzurePostgreSQLLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
12403	return nil, false
12404}
12405
12406// AsSalesforceLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12407func (apsls AzurePostgreSQLLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
12408	return nil, false
12409}
12410
12411// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12412func (apsls AzurePostgreSQLLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
12413	return nil, false
12414}
12415
12416// AsMongoDbLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12417func (apsls AzurePostgreSQLLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
12418	return nil, false
12419}
12420
12421// AsCassandraLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12422func (apsls AzurePostgreSQLLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
12423	return nil, false
12424}
12425
12426// AsWebLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12427func (apsls AzurePostgreSQLLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
12428	return nil, false
12429}
12430
12431// AsODataLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12432func (apsls AzurePostgreSQLLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
12433	return nil, false
12434}
12435
12436// AsHdfsLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12437func (apsls AzurePostgreSQLLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
12438	return nil, false
12439}
12440
12441// AsOdbcLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12442func (apsls AzurePostgreSQLLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
12443	return nil, false
12444}
12445
12446// AsAzureMLLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12447func (apsls AzurePostgreSQLLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
12448	return nil, false
12449}
12450
12451// AsTeradataLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12452func (apsls AzurePostgreSQLLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
12453	return nil, false
12454}
12455
12456// AsDb2LinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12457func (apsls AzurePostgreSQLLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
12458	return nil, false
12459}
12460
12461// AsSybaseLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12462func (apsls AzurePostgreSQLLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
12463	return nil, false
12464}
12465
12466// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12467func (apsls AzurePostgreSQLLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
12468	return nil, false
12469}
12470
12471// AsMySQLLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12472func (apsls AzurePostgreSQLLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
12473	return nil, false
12474}
12475
12476// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12477func (apsls AzurePostgreSQLLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
12478	return nil, false
12479}
12480
12481// AsOracleLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12482func (apsls AzurePostgreSQLLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
12483	return nil, false
12484}
12485
12486// AsFileServerLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12487func (apsls AzurePostgreSQLLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
12488	return nil, false
12489}
12490
12491// AsHDInsightLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12492func (apsls AzurePostgreSQLLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
12493	return nil, false
12494}
12495
12496// AsDynamicsLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12497func (apsls AzurePostgreSQLLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
12498	return nil, false
12499}
12500
12501// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12502func (apsls AzurePostgreSQLLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
12503	return nil, false
12504}
12505
12506// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12507func (apsls AzurePostgreSQLLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
12508	return nil, false
12509}
12510
12511// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12512func (apsls AzurePostgreSQLLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
12513	return nil, false
12514}
12515
12516// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12517func (apsls AzurePostgreSQLLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
12518	return nil, false
12519}
12520
12521// AsSQLServerLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12522func (apsls AzurePostgreSQLLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
12523	return nil, false
12524}
12525
12526// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12527func (apsls AzurePostgreSQLLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
12528	return nil, false
12529}
12530
12531// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12532func (apsls AzurePostgreSQLLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
12533	return nil, false
12534}
12535
12536// AsLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12537func (apsls AzurePostgreSQLLinkedService) AsLinkedService() (*LinkedService, bool) {
12538	return nil, false
12539}
12540
12541// AsBasicLinkedService is the BasicLinkedService implementation for AzurePostgreSQLLinkedService.
12542func (apsls AzurePostgreSQLLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
12543	return &apsls, true
12544}
12545
12546// UnmarshalJSON is the custom unmarshaler for AzurePostgreSQLLinkedService struct.
12547func (apsls *AzurePostgreSQLLinkedService) UnmarshalJSON(body []byte) error {
12548	var m map[string]*json.RawMessage
12549	err := json.Unmarshal(body, &m)
12550	if err != nil {
12551		return err
12552	}
12553	for k, v := range m {
12554		switch k {
12555		case "typeProperties":
12556			if v != nil {
12557				var azurePostgreSQLLinkedServiceTypeProperties AzurePostgreSQLLinkedServiceTypeProperties
12558				err = json.Unmarshal(*v, &azurePostgreSQLLinkedServiceTypeProperties)
12559				if err != nil {
12560					return err
12561				}
12562				apsls.AzurePostgreSQLLinkedServiceTypeProperties = &azurePostgreSQLLinkedServiceTypeProperties
12563			}
12564		default:
12565			if v != nil {
12566				var additionalProperties interface{}
12567				err = json.Unmarshal(*v, &additionalProperties)
12568				if err != nil {
12569					return err
12570				}
12571				if apsls.AdditionalProperties == nil {
12572					apsls.AdditionalProperties = make(map[string]interface{})
12573				}
12574				apsls.AdditionalProperties[k] = additionalProperties
12575			}
12576		case "connectVia":
12577			if v != nil {
12578				var connectVia IntegrationRuntimeReference
12579				err = json.Unmarshal(*v, &connectVia)
12580				if err != nil {
12581					return err
12582				}
12583				apsls.ConnectVia = &connectVia
12584			}
12585		case "description":
12586			if v != nil {
12587				var description string
12588				err = json.Unmarshal(*v, &description)
12589				if err != nil {
12590					return err
12591				}
12592				apsls.Description = &description
12593			}
12594		case "parameters":
12595			if v != nil {
12596				var parameters map[string]*ParameterSpecification
12597				err = json.Unmarshal(*v, &parameters)
12598				if err != nil {
12599					return err
12600				}
12601				apsls.Parameters = parameters
12602			}
12603		case "annotations":
12604			if v != nil {
12605				var annotations []interface{}
12606				err = json.Unmarshal(*v, &annotations)
12607				if err != nil {
12608					return err
12609				}
12610				apsls.Annotations = &annotations
12611			}
12612		case "type":
12613			if v != nil {
12614				var typeVar TypeBasicLinkedService
12615				err = json.Unmarshal(*v, &typeVar)
12616				if err != nil {
12617					return err
12618				}
12619				apsls.Type = typeVar
12620			}
12621		}
12622	}
12623
12624	return nil
12625}
12626
12627// AzurePostgreSQLLinkedServiceTypeProperties azure PostgreSQL linked service properties.
12628type AzurePostgreSQLLinkedServiceTypeProperties struct {
12629	// ConnectionString - An ODBC connection string.
12630	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
12631	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
12632	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
12633}
12634
12635// UnmarshalJSON is the custom unmarshaler for AzurePostgreSQLLinkedServiceTypeProperties struct.
12636func (apslstp *AzurePostgreSQLLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
12637	var m map[string]*json.RawMessage
12638	err := json.Unmarshal(body, &m)
12639	if err != nil {
12640		return err
12641	}
12642	for k, v := range m {
12643		switch k {
12644		case "connectionString":
12645			if v != nil {
12646				connectionString, err := unmarshalBasicSecretBase(*v)
12647				if err != nil {
12648					return err
12649				}
12650				apslstp.ConnectionString = connectionString
12651			}
12652		case "encryptedCredential":
12653			if v != nil {
12654				var encryptedCredential interface{}
12655				err = json.Unmarshal(*v, &encryptedCredential)
12656				if err != nil {
12657					return err
12658				}
12659				apslstp.EncryptedCredential = encryptedCredential
12660			}
12661		}
12662	}
12663
12664	return nil
12665}
12666
12667// AzurePostgreSQLSource a copy activity Azure PostgreSQL source.
12668type AzurePostgreSQLSource struct {
12669	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
12670	Query interface{} `json:"query,omitempty"`
12671	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
12672	AdditionalProperties map[string]interface{} `json:""`
12673	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
12674	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
12675	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
12676	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
12677	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
12678	Type TypeBasicCopySource `json:"type,omitempty"`
12679}
12680
12681// MarshalJSON is the custom marshaler for AzurePostgreSQLSource.
12682func (apss AzurePostgreSQLSource) MarshalJSON() ([]byte, error) {
12683	apss.Type = TypeAzurePostgreSQLSource
12684	objectMap := make(map[string]interface{})
12685	objectMap["query"] = apss.Query
12686	objectMap["sourceRetryCount"] = apss.SourceRetryCount
12687	objectMap["sourceRetryWait"] = apss.SourceRetryWait
12688	if apss.Type != "" {
12689		objectMap["type"] = apss.Type
12690	}
12691	for k, v := range apss.AdditionalProperties {
12692		objectMap[k] = v
12693	}
12694	return json.Marshal(objectMap)
12695}
12696
12697// AsAmazonRedshiftSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12698func (apss AzurePostgreSQLSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
12699	return nil, false
12700}
12701
12702// AsResponsysSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12703func (apss AzurePostgreSQLSource) AsResponsysSource() (*ResponsysSource, bool) {
12704	return nil, false
12705}
12706
12707// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12708func (apss AzurePostgreSQLSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
12709	return nil, false
12710}
12711
12712// AsVerticaSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12713func (apss AzurePostgreSQLSource) AsVerticaSource() (*VerticaSource, bool) {
12714	return nil, false
12715}
12716
12717// AsNetezzaSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12718func (apss AzurePostgreSQLSource) AsNetezzaSource() (*NetezzaSource, bool) {
12719	return nil, false
12720}
12721
12722// AsZohoSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12723func (apss AzurePostgreSQLSource) AsZohoSource() (*ZohoSource, bool) {
12724	return nil, false
12725}
12726
12727// AsXeroSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12728func (apss AzurePostgreSQLSource) AsXeroSource() (*XeroSource, bool) {
12729	return nil, false
12730}
12731
12732// AsSquareSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12733func (apss AzurePostgreSQLSource) AsSquareSource() (*SquareSource, bool) {
12734	return nil, false
12735}
12736
12737// AsSparkSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12738func (apss AzurePostgreSQLSource) AsSparkSource() (*SparkSource, bool) {
12739	return nil, false
12740}
12741
12742// AsShopifySource is the BasicCopySource implementation for AzurePostgreSQLSource.
12743func (apss AzurePostgreSQLSource) AsShopifySource() (*ShopifySource, bool) {
12744	return nil, false
12745}
12746
12747// AsServiceNowSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12748func (apss AzurePostgreSQLSource) AsServiceNowSource() (*ServiceNowSource, bool) {
12749	return nil, false
12750}
12751
12752// AsQuickBooksSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12753func (apss AzurePostgreSQLSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
12754	return nil, false
12755}
12756
12757// AsPrestoSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12758func (apss AzurePostgreSQLSource) AsPrestoSource() (*PrestoSource, bool) {
12759	return nil, false
12760}
12761
12762// AsPhoenixSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12763func (apss AzurePostgreSQLSource) AsPhoenixSource() (*PhoenixSource, bool) {
12764	return nil, false
12765}
12766
12767// AsPaypalSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12768func (apss AzurePostgreSQLSource) AsPaypalSource() (*PaypalSource, bool) {
12769	return nil, false
12770}
12771
12772// AsMarketoSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12773func (apss AzurePostgreSQLSource) AsMarketoSource() (*MarketoSource, bool) {
12774	return nil, false
12775}
12776
12777// AsMariaDBSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12778func (apss AzurePostgreSQLSource) AsMariaDBSource() (*MariaDBSource, bool) {
12779	return nil, false
12780}
12781
12782// AsMagentoSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12783func (apss AzurePostgreSQLSource) AsMagentoSource() (*MagentoSource, bool) {
12784	return nil, false
12785}
12786
12787// AsJiraSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12788func (apss AzurePostgreSQLSource) AsJiraSource() (*JiraSource, bool) {
12789	return nil, false
12790}
12791
12792// AsImpalaSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12793func (apss AzurePostgreSQLSource) AsImpalaSource() (*ImpalaSource, bool) {
12794	return nil, false
12795}
12796
12797// AsHubspotSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12798func (apss AzurePostgreSQLSource) AsHubspotSource() (*HubspotSource, bool) {
12799	return nil, false
12800}
12801
12802// AsHiveSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12803func (apss AzurePostgreSQLSource) AsHiveSource() (*HiveSource, bool) {
12804	return nil, false
12805}
12806
12807// AsHBaseSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12808func (apss AzurePostgreSQLSource) AsHBaseSource() (*HBaseSource, bool) {
12809	return nil, false
12810}
12811
12812// AsGreenplumSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12813func (apss AzurePostgreSQLSource) AsGreenplumSource() (*GreenplumSource, bool) {
12814	return nil, false
12815}
12816
12817// AsGoogleBigQuerySource is the BasicCopySource implementation for AzurePostgreSQLSource.
12818func (apss AzurePostgreSQLSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
12819	return nil, false
12820}
12821
12822// AsEloquaSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12823func (apss AzurePostgreSQLSource) AsEloquaSource() (*EloquaSource, bool) {
12824	return nil, false
12825}
12826
12827// AsDrillSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12828func (apss AzurePostgreSQLSource) AsDrillSource() (*DrillSource, bool) {
12829	return nil, false
12830}
12831
12832// AsCouchbaseSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12833func (apss AzurePostgreSQLSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
12834	return nil, false
12835}
12836
12837// AsConcurSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12838func (apss AzurePostgreSQLSource) AsConcurSource() (*ConcurSource, bool) {
12839	return nil, false
12840}
12841
12842// AsAzurePostgreSQLSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12843func (apss AzurePostgreSQLSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
12844	return &apss, true
12845}
12846
12847// AsAmazonMWSSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12848func (apss AzurePostgreSQLSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
12849	return nil, false
12850}
12851
12852// AsHTTPSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12853func (apss AzurePostgreSQLSource) AsHTTPSource() (*HTTPSource, bool) {
12854	return nil, false
12855}
12856
12857// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12858func (apss AzurePostgreSQLSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
12859	return nil, false
12860}
12861
12862// AsMongoDbSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12863func (apss AzurePostgreSQLSource) AsMongoDbSource() (*MongoDbSource, bool) {
12864	return nil, false
12865}
12866
12867// AsCassandraSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12868func (apss AzurePostgreSQLSource) AsCassandraSource() (*CassandraSource, bool) {
12869	return nil, false
12870}
12871
12872// AsWebSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12873func (apss AzurePostgreSQLSource) AsWebSource() (*WebSource, bool) {
12874	return nil, false
12875}
12876
12877// AsOracleSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12878func (apss AzurePostgreSQLSource) AsOracleSource() (*OracleSource, bool) {
12879	return nil, false
12880}
12881
12882// AsAzureMySQLSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12883func (apss AzurePostgreSQLSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
12884	return nil, false
12885}
12886
12887// AsHdfsSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12888func (apss AzurePostgreSQLSource) AsHdfsSource() (*HdfsSource, bool) {
12889	return nil, false
12890}
12891
12892// AsFileSystemSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12893func (apss AzurePostgreSQLSource) AsFileSystemSource() (*FileSystemSource, bool) {
12894	return nil, false
12895}
12896
12897// AsSQLDWSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12898func (apss AzurePostgreSQLSource) AsSQLDWSource() (*SQLDWSource, bool) {
12899	return nil, false
12900}
12901
12902// AsSQLSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12903func (apss AzurePostgreSQLSource) AsSQLSource() (*SQLSource, bool) {
12904	return nil, false
12905}
12906
12907// AsSapEccSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12908func (apss AzurePostgreSQLSource) AsSapEccSource() (*SapEccSource, bool) {
12909	return nil, false
12910}
12911
12912// AsSapCloudForCustomerSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12913func (apss AzurePostgreSQLSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
12914	return nil, false
12915}
12916
12917// AsSalesforceSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12918func (apss AzurePostgreSQLSource) AsSalesforceSource() (*SalesforceSource, bool) {
12919	return nil, false
12920}
12921
12922// AsRelationalSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12923func (apss AzurePostgreSQLSource) AsRelationalSource() (*RelationalSource, bool) {
12924	return nil, false
12925}
12926
12927// AsDynamicsSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12928func (apss AzurePostgreSQLSource) AsDynamicsSource() (*DynamicsSource, bool) {
12929	return nil, false
12930}
12931
12932// AsDocumentDbCollectionSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12933func (apss AzurePostgreSQLSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
12934	return nil, false
12935}
12936
12937// AsBlobSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12938func (apss AzurePostgreSQLSource) AsBlobSource() (*BlobSource, bool) {
12939	return nil, false
12940}
12941
12942// AsAzureTableSource is the BasicCopySource implementation for AzurePostgreSQLSource.
12943func (apss AzurePostgreSQLSource) AsAzureTableSource() (*AzureTableSource, bool) {
12944	return nil, false
12945}
12946
12947// AsCopySource is the BasicCopySource implementation for AzurePostgreSQLSource.
12948func (apss AzurePostgreSQLSource) AsCopySource() (*CopySource, bool) {
12949	return nil, false
12950}
12951
12952// AsBasicCopySource is the BasicCopySource implementation for AzurePostgreSQLSource.
12953func (apss AzurePostgreSQLSource) AsBasicCopySource() (BasicCopySource, bool) {
12954	return &apss, true
12955}
12956
12957// AzurePostgreSQLTableDataset azure PostgreSQL dataset.
12958type AzurePostgreSQLTableDataset struct {
12959	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
12960	AdditionalProperties map[string]interface{} `json:""`
12961	// Description - Dataset description.
12962	Description *string `json:"description,omitempty"`
12963	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
12964	Structure interface{} `json:"structure,omitempty"`
12965	// LinkedServiceName - Linked service reference.
12966	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
12967	// Parameters - Parameters for dataset.
12968	Parameters map[string]*ParameterSpecification `json:"parameters"`
12969	// Annotations - List of tags that can be used for describing the Dataset.
12970	Annotations *[]interface{} `json:"annotations,omitempty"`
12971	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
12972	Type TypeBasicDataset `json:"type,omitempty"`
12973}
12974
12975// MarshalJSON is the custom marshaler for AzurePostgreSQLTableDataset.
12976func (apstd AzurePostgreSQLTableDataset) MarshalJSON() ([]byte, error) {
12977	apstd.Type = TypeAzurePostgreSQLTable
12978	objectMap := make(map[string]interface{})
12979	if apstd.Description != nil {
12980		objectMap["description"] = apstd.Description
12981	}
12982	objectMap["structure"] = apstd.Structure
12983	if apstd.LinkedServiceName != nil {
12984		objectMap["linkedServiceName"] = apstd.LinkedServiceName
12985	}
12986	if apstd.Parameters != nil {
12987		objectMap["parameters"] = apstd.Parameters
12988	}
12989	if apstd.Annotations != nil {
12990		objectMap["annotations"] = apstd.Annotations
12991	}
12992	if apstd.Type != "" {
12993		objectMap["type"] = apstd.Type
12994	}
12995	for k, v := range apstd.AdditionalProperties {
12996		objectMap[k] = v
12997	}
12998	return json.Marshal(objectMap)
12999}
13000
13001// AsResponsysObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13002func (apstd AzurePostgreSQLTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
13003	return nil, false
13004}
13005
13006// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13007func (apstd AzurePostgreSQLTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
13008	return nil, false
13009}
13010
13011// AsVerticaTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13012func (apstd AzurePostgreSQLTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
13013	return nil, false
13014}
13015
13016// AsNetezzaTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13017func (apstd AzurePostgreSQLTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
13018	return nil, false
13019}
13020
13021// AsZohoObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13022func (apstd AzurePostgreSQLTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
13023	return nil, false
13024}
13025
13026// AsXeroObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13027func (apstd AzurePostgreSQLTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
13028	return nil, false
13029}
13030
13031// AsSquareObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13032func (apstd AzurePostgreSQLTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
13033	return nil, false
13034}
13035
13036// AsSparkObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13037func (apstd AzurePostgreSQLTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
13038	return nil, false
13039}
13040
13041// AsShopifyObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13042func (apstd AzurePostgreSQLTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
13043	return nil, false
13044}
13045
13046// AsServiceNowObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13047func (apstd AzurePostgreSQLTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
13048	return nil, false
13049}
13050
13051// AsQuickBooksObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13052func (apstd AzurePostgreSQLTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
13053	return nil, false
13054}
13055
13056// AsPrestoObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13057func (apstd AzurePostgreSQLTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
13058	return nil, false
13059}
13060
13061// AsPhoenixObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13062func (apstd AzurePostgreSQLTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
13063	return nil, false
13064}
13065
13066// AsPaypalObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13067func (apstd AzurePostgreSQLTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
13068	return nil, false
13069}
13070
13071// AsMarketoObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13072func (apstd AzurePostgreSQLTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
13073	return nil, false
13074}
13075
13076// AsMariaDBTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13077func (apstd AzurePostgreSQLTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
13078	return nil, false
13079}
13080
13081// AsMagentoObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13082func (apstd AzurePostgreSQLTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
13083	return nil, false
13084}
13085
13086// AsJiraObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13087func (apstd AzurePostgreSQLTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
13088	return nil, false
13089}
13090
13091// AsImpalaObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13092func (apstd AzurePostgreSQLTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
13093	return nil, false
13094}
13095
13096// AsHubspotObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13097func (apstd AzurePostgreSQLTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
13098	return nil, false
13099}
13100
13101// AsHiveObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13102func (apstd AzurePostgreSQLTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
13103	return nil, false
13104}
13105
13106// AsHBaseObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13107func (apstd AzurePostgreSQLTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
13108	return nil, false
13109}
13110
13111// AsGreenplumTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13112func (apstd AzurePostgreSQLTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
13113	return nil, false
13114}
13115
13116// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13117func (apstd AzurePostgreSQLTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
13118	return nil, false
13119}
13120
13121// AsEloquaObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13122func (apstd AzurePostgreSQLTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
13123	return nil, false
13124}
13125
13126// AsDrillTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13127func (apstd AzurePostgreSQLTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
13128	return nil, false
13129}
13130
13131// AsCouchbaseTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13132func (apstd AzurePostgreSQLTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
13133	return nil, false
13134}
13135
13136// AsConcurObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13137func (apstd AzurePostgreSQLTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
13138	return nil, false
13139}
13140
13141// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13142func (apstd AzurePostgreSQLTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
13143	return &apstd, true
13144}
13145
13146// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13147func (apstd AzurePostgreSQLTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
13148	return nil, false
13149}
13150
13151// AsHTTPDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13152func (apstd AzurePostgreSQLTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
13153	return nil, false
13154}
13155
13156// AsAzureSearchIndexDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13157func (apstd AzurePostgreSQLTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
13158	return nil, false
13159}
13160
13161// AsWebTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13162func (apstd AzurePostgreSQLTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
13163	return nil, false
13164}
13165
13166// AsSQLServerTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13167func (apstd AzurePostgreSQLTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
13168	return nil, false
13169}
13170
13171// AsSapEccResourceDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13172func (apstd AzurePostgreSQLTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
13173	return nil, false
13174}
13175
13176// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13177func (apstd AzurePostgreSQLTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
13178	return nil, false
13179}
13180
13181// AsSalesforceObjectDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13182func (apstd AzurePostgreSQLTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
13183	return nil, false
13184}
13185
13186// AsRelationalTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13187func (apstd AzurePostgreSQLTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
13188	return nil, false
13189}
13190
13191// AsAzureMySQLTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13192func (apstd AzurePostgreSQLTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
13193	return nil, false
13194}
13195
13196// AsOracleTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13197func (apstd AzurePostgreSQLTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
13198	return nil, false
13199}
13200
13201// AsODataResourceDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13202func (apstd AzurePostgreSQLTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
13203	return nil, false
13204}
13205
13206// AsMongoDbCollectionDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13207func (apstd AzurePostgreSQLTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
13208	return nil, false
13209}
13210
13211// AsFileShareDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13212func (apstd AzurePostgreSQLTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
13213	return nil, false
13214}
13215
13216// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13217func (apstd AzurePostgreSQLTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
13218	return nil, false
13219}
13220
13221// AsDynamicsEntityDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13222func (apstd AzurePostgreSQLTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
13223	return nil, false
13224}
13225
13226// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13227func (apstd AzurePostgreSQLTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
13228	return nil, false
13229}
13230
13231// AsCustomDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13232func (apstd AzurePostgreSQLTableDataset) AsCustomDataset() (*CustomDataset, bool) {
13233	return nil, false
13234}
13235
13236// AsCassandraTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13237func (apstd AzurePostgreSQLTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
13238	return nil, false
13239}
13240
13241// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13242func (apstd AzurePostgreSQLTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
13243	return nil, false
13244}
13245
13246// AsAzureSQLTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13247func (apstd AzurePostgreSQLTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
13248	return nil, false
13249}
13250
13251// AsAzureTableDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13252func (apstd AzurePostgreSQLTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
13253	return nil, false
13254}
13255
13256// AsAzureBlobDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13257func (apstd AzurePostgreSQLTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
13258	return nil, false
13259}
13260
13261// AsAmazonS3Dataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13262func (apstd AzurePostgreSQLTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
13263	return nil, false
13264}
13265
13266// AsDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13267func (apstd AzurePostgreSQLTableDataset) AsDataset() (*Dataset, bool) {
13268	return nil, false
13269}
13270
13271// AsBasicDataset is the BasicDataset implementation for AzurePostgreSQLTableDataset.
13272func (apstd AzurePostgreSQLTableDataset) AsBasicDataset() (BasicDataset, bool) {
13273	return &apstd, true
13274}
13275
13276// AzureQueueSink a copy activity Azure Queue sink.
13277type AzureQueueSink struct {
13278	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
13279	AdditionalProperties map[string]interface{} `json:""`
13280	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
13281	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
13282	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
13283	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
13284	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
13285	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
13286	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
13287	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
13288	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
13289	Type TypeBasicCopySink `json:"type,omitempty"`
13290}
13291
13292// MarshalJSON is the custom marshaler for AzureQueueSink.
13293func (aqs AzureQueueSink) MarshalJSON() ([]byte, error) {
13294	aqs.Type = TypeAzureQueueSink
13295	objectMap := make(map[string]interface{})
13296	objectMap["writeBatchSize"] = aqs.WriteBatchSize
13297	objectMap["writeBatchTimeout"] = aqs.WriteBatchTimeout
13298	objectMap["sinkRetryCount"] = aqs.SinkRetryCount
13299	objectMap["sinkRetryWait"] = aqs.SinkRetryWait
13300	if aqs.Type != "" {
13301		objectMap["type"] = aqs.Type
13302	}
13303	for k, v := range aqs.AdditionalProperties {
13304		objectMap[k] = v
13305	}
13306	return json.Marshal(objectMap)
13307}
13308
13309// AsSalesforceSink is the BasicCopySink implementation for AzureQueueSink.
13310func (aqs AzureQueueSink) AsSalesforceSink() (*SalesforceSink, bool) {
13311	return nil, false
13312}
13313
13314// AsDynamicsSink is the BasicCopySink implementation for AzureQueueSink.
13315func (aqs AzureQueueSink) AsDynamicsSink() (*DynamicsSink, bool) {
13316	return nil, false
13317}
13318
13319// AsOdbcSink is the BasicCopySink implementation for AzureQueueSink.
13320func (aqs AzureQueueSink) AsOdbcSink() (*OdbcSink, bool) {
13321	return nil, false
13322}
13323
13324// AsAzureSearchIndexSink is the BasicCopySink implementation for AzureQueueSink.
13325func (aqs AzureQueueSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
13326	return nil, false
13327}
13328
13329// AsAzureDataLakeStoreSink is the BasicCopySink implementation for AzureQueueSink.
13330func (aqs AzureQueueSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
13331	return nil, false
13332}
13333
13334// AsOracleSink is the BasicCopySink implementation for AzureQueueSink.
13335func (aqs AzureQueueSink) AsOracleSink() (*OracleSink, bool) {
13336	return nil, false
13337}
13338
13339// AsSQLDWSink is the BasicCopySink implementation for AzureQueueSink.
13340func (aqs AzureQueueSink) AsSQLDWSink() (*SQLDWSink, bool) {
13341	return nil, false
13342}
13343
13344// AsSQLSink is the BasicCopySink implementation for AzureQueueSink.
13345func (aqs AzureQueueSink) AsSQLSink() (*SQLSink, bool) {
13346	return nil, false
13347}
13348
13349// AsDocumentDbCollectionSink is the BasicCopySink implementation for AzureQueueSink.
13350func (aqs AzureQueueSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
13351	return nil, false
13352}
13353
13354// AsFileSystemSink is the BasicCopySink implementation for AzureQueueSink.
13355func (aqs AzureQueueSink) AsFileSystemSink() (*FileSystemSink, bool) {
13356	return nil, false
13357}
13358
13359// AsBlobSink is the BasicCopySink implementation for AzureQueueSink.
13360func (aqs AzureQueueSink) AsBlobSink() (*BlobSink, bool) {
13361	return nil, false
13362}
13363
13364// AsAzureTableSink is the BasicCopySink implementation for AzureQueueSink.
13365func (aqs AzureQueueSink) AsAzureTableSink() (*AzureTableSink, bool) {
13366	return nil, false
13367}
13368
13369// AsAzureQueueSink is the BasicCopySink implementation for AzureQueueSink.
13370func (aqs AzureQueueSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
13371	return &aqs, true
13372}
13373
13374// AsSapCloudForCustomerSink is the BasicCopySink implementation for AzureQueueSink.
13375func (aqs AzureQueueSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
13376	return nil, false
13377}
13378
13379// AsCopySink is the BasicCopySink implementation for AzureQueueSink.
13380func (aqs AzureQueueSink) AsCopySink() (*CopySink, bool) {
13381	return nil, false
13382}
13383
13384// AsBasicCopySink is the BasicCopySink implementation for AzureQueueSink.
13385func (aqs AzureQueueSink) AsBasicCopySink() (BasicCopySink, bool) {
13386	return &aqs, true
13387}
13388
13389// AzureSearchIndexDataset the Azure Search Index.
13390type AzureSearchIndexDataset struct {
13391	// AzureSearchIndexDatasetTypeProperties - Properties specific to this dataset type.
13392	*AzureSearchIndexDatasetTypeProperties `json:"typeProperties,omitempty"`
13393	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
13394	AdditionalProperties map[string]interface{} `json:""`
13395	// Description - Dataset description.
13396	Description *string `json:"description,omitempty"`
13397	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
13398	Structure interface{} `json:"structure,omitempty"`
13399	// LinkedServiceName - Linked service reference.
13400	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
13401	// Parameters - Parameters for dataset.
13402	Parameters map[string]*ParameterSpecification `json:"parameters"`
13403	// Annotations - List of tags that can be used for describing the Dataset.
13404	Annotations *[]interface{} `json:"annotations,omitempty"`
13405	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
13406	Type TypeBasicDataset `json:"type,omitempty"`
13407}
13408
13409// MarshalJSON is the custom marshaler for AzureSearchIndexDataset.
13410func (asid AzureSearchIndexDataset) MarshalJSON() ([]byte, error) {
13411	asid.Type = TypeAzureSearchIndex
13412	objectMap := make(map[string]interface{})
13413	if asid.AzureSearchIndexDatasetTypeProperties != nil {
13414		objectMap["typeProperties"] = asid.AzureSearchIndexDatasetTypeProperties
13415	}
13416	if asid.Description != nil {
13417		objectMap["description"] = asid.Description
13418	}
13419	objectMap["structure"] = asid.Structure
13420	if asid.LinkedServiceName != nil {
13421		objectMap["linkedServiceName"] = asid.LinkedServiceName
13422	}
13423	if asid.Parameters != nil {
13424		objectMap["parameters"] = asid.Parameters
13425	}
13426	if asid.Annotations != nil {
13427		objectMap["annotations"] = asid.Annotations
13428	}
13429	if asid.Type != "" {
13430		objectMap["type"] = asid.Type
13431	}
13432	for k, v := range asid.AdditionalProperties {
13433		objectMap[k] = v
13434	}
13435	return json.Marshal(objectMap)
13436}
13437
13438// AsResponsysObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13439func (asid AzureSearchIndexDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
13440	return nil, false
13441}
13442
13443// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13444func (asid AzureSearchIndexDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
13445	return nil, false
13446}
13447
13448// AsVerticaTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13449func (asid AzureSearchIndexDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
13450	return nil, false
13451}
13452
13453// AsNetezzaTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13454func (asid AzureSearchIndexDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
13455	return nil, false
13456}
13457
13458// AsZohoObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13459func (asid AzureSearchIndexDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
13460	return nil, false
13461}
13462
13463// AsXeroObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13464func (asid AzureSearchIndexDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
13465	return nil, false
13466}
13467
13468// AsSquareObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13469func (asid AzureSearchIndexDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
13470	return nil, false
13471}
13472
13473// AsSparkObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13474func (asid AzureSearchIndexDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
13475	return nil, false
13476}
13477
13478// AsShopifyObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13479func (asid AzureSearchIndexDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
13480	return nil, false
13481}
13482
13483// AsServiceNowObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13484func (asid AzureSearchIndexDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
13485	return nil, false
13486}
13487
13488// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13489func (asid AzureSearchIndexDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
13490	return nil, false
13491}
13492
13493// AsPrestoObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13494func (asid AzureSearchIndexDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
13495	return nil, false
13496}
13497
13498// AsPhoenixObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13499func (asid AzureSearchIndexDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
13500	return nil, false
13501}
13502
13503// AsPaypalObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13504func (asid AzureSearchIndexDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
13505	return nil, false
13506}
13507
13508// AsMarketoObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13509func (asid AzureSearchIndexDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
13510	return nil, false
13511}
13512
13513// AsMariaDBTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13514func (asid AzureSearchIndexDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
13515	return nil, false
13516}
13517
13518// AsMagentoObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13519func (asid AzureSearchIndexDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
13520	return nil, false
13521}
13522
13523// AsJiraObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13524func (asid AzureSearchIndexDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
13525	return nil, false
13526}
13527
13528// AsImpalaObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13529func (asid AzureSearchIndexDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
13530	return nil, false
13531}
13532
13533// AsHubspotObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13534func (asid AzureSearchIndexDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
13535	return nil, false
13536}
13537
13538// AsHiveObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13539func (asid AzureSearchIndexDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
13540	return nil, false
13541}
13542
13543// AsHBaseObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13544func (asid AzureSearchIndexDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
13545	return nil, false
13546}
13547
13548// AsGreenplumTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13549func (asid AzureSearchIndexDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
13550	return nil, false
13551}
13552
13553// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13554func (asid AzureSearchIndexDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
13555	return nil, false
13556}
13557
13558// AsEloquaObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13559func (asid AzureSearchIndexDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
13560	return nil, false
13561}
13562
13563// AsDrillTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13564func (asid AzureSearchIndexDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
13565	return nil, false
13566}
13567
13568// AsCouchbaseTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13569func (asid AzureSearchIndexDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
13570	return nil, false
13571}
13572
13573// AsConcurObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13574func (asid AzureSearchIndexDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
13575	return nil, false
13576}
13577
13578// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13579func (asid AzureSearchIndexDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
13580	return nil, false
13581}
13582
13583// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13584func (asid AzureSearchIndexDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
13585	return nil, false
13586}
13587
13588// AsHTTPDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13589func (asid AzureSearchIndexDataset) AsHTTPDataset() (*HTTPDataset, bool) {
13590	return nil, false
13591}
13592
13593// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13594func (asid AzureSearchIndexDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
13595	return &asid, true
13596}
13597
13598// AsWebTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13599func (asid AzureSearchIndexDataset) AsWebTableDataset() (*WebTableDataset, bool) {
13600	return nil, false
13601}
13602
13603// AsSQLServerTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13604func (asid AzureSearchIndexDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
13605	return nil, false
13606}
13607
13608// AsSapEccResourceDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13609func (asid AzureSearchIndexDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
13610	return nil, false
13611}
13612
13613// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13614func (asid AzureSearchIndexDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
13615	return nil, false
13616}
13617
13618// AsSalesforceObjectDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13619func (asid AzureSearchIndexDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
13620	return nil, false
13621}
13622
13623// AsRelationalTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13624func (asid AzureSearchIndexDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
13625	return nil, false
13626}
13627
13628// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13629func (asid AzureSearchIndexDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
13630	return nil, false
13631}
13632
13633// AsOracleTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13634func (asid AzureSearchIndexDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
13635	return nil, false
13636}
13637
13638// AsODataResourceDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13639func (asid AzureSearchIndexDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
13640	return nil, false
13641}
13642
13643// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13644func (asid AzureSearchIndexDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
13645	return nil, false
13646}
13647
13648// AsFileShareDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13649func (asid AzureSearchIndexDataset) AsFileShareDataset() (*FileShareDataset, bool) {
13650	return nil, false
13651}
13652
13653// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13654func (asid AzureSearchIndexDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
13655	return nil, false
13656}
13657
13658// AsDynamicsEntityDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13659func (asid AzureSearchIndexDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
13660	return nil, false
13661}
13662
13663// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13664func (asid AzureSearchIndexDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
13665	return nil, false
13666}
13667
13668// AsCustomDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13669func (asid AzureSearchIndexDataset) AsCustomDataset() (*CustomDataset, bool) {
13670	return nil, false
13671}
13672
13673// AsCassandraTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13674func (asid AzureSearchIndexDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
13675	return nil, false
13676}
13677
13678// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13679func (asid AzureSearchIndexDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
13680	return nil, false
13681}
13682
13683// AsAzureSQLTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13684func (asid AzureSearchIndexDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
13685	return nil, false
13686}
13687
13688// AsAzureTableDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13689func (asid AzureSearchIndexDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
13690	return nil, false
13691}
13692
13693// AsAzureBlobDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13694func (asid AzureSearchIndexDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
13695	return nil, false
13696}
13697
13698// AsAmazonS3Dataset is the BasicDataset implementation for AzureSearchIndexDataset.
13699func (asid AzureSearchIndexDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
13700	return nil, false
13701}
13702
13703// AsDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13704func (asid AzureSearchIndexDataset) AsDataset() (*Dataset, bool) {
13705	return nil, false
13706}
13707
13708// AsBasicDataset is the BasicDataset implementation for AzureSearchIndexDataset.
13709func (asid AzureSearchIndexDataset) AsBasicDataset() (BasicDataset, bool) {
13710	return &asid, true
13711}
13712
13713// UnmarshalJSON is the custom unmarshaler for AzureSearchIndexDataset struct.
13714func (asid *AzureSearchIndexDataset) UnmarshalJSON(body []byte) error {
13715	var m map[string]*json.RawMessage
13716	err := json.Unmarshal(body, &m)
13717	if err != nil {
13718		return err
13719	}
13720	for k, v := range m {
13721		switch k {
13722		case "typeProperties":
13723			if v != nil {
13724				var azureSearchIndexDatasetTypeProperties AzureSearchIndexDatasetTypeProperties
13725				err = json.Unmarshal(*v, &azureSearchIndexDatasetTypeProperties)
13726				if err != nil {
13727					return err
13728				}
13729				asid.AzureSearchIndexDatasetTypeProperties = &azureSearchIndexDatasetTypeProperties
13730			}
13731		default:
13732			if v != nil {
13733				var additionalProperties interface{}
13734				err = json.Unmarshal(*v, &additionalProperties)
13735				if err != nil {
13736					return err
13737				}
13738				if asid.AdditionalProperties == nil {
13739					asid.AdditionalProperties = make(map[string]interface{})
13740				}
13741				asid.AdditionalProperties[k] = additionalProperties
13742			}
13743		case "description":
13744			if v != nil {
13745				var description string
13746				err = json.Unmarshal(*v, &description)
13747				if err != nil {
13748					return err
13749				}
13750				asid.Description = &description
13751			}
13752		case "structure":
13753			if v != nil {
13754				var structure interface{}
13755				err = json.Unmarshal(*v, &structure)
13756				if err != nil {
13757					return err
13758				}
13759				asid.Structure = structure
13760			}
13761		case "linkedServiceName":
13762			if v != nil {
13763				var linkedServiceName LinkedServiceReference
13764				err = json.Unmarshal(*v, &linkedServiceName)
13765				if err != nil {
13766					return err
13767				}
13768				asid.LinkedServiceName = &linkedServiceName
13769			}
13770		case "parameters":
13771			if v != nil {
13772				var parameters map[string]*ParameterSpecification
13773				err = json.Unmarshal(*v, &parameters)
13774				if err != nil {
13775					return err
13776				}
13777				asid.Parameters = parameters
13778			}
13779		case "annotations":
13780			if v != nil {
13781				var annotations []interface{}
13782				err = json.Unmarshal(*v, &annotations)
13783				if err != nil {
13784					return err
13785				}
13786				asid.Annotations = &annotations
13787			}
13788		case "type":
13789			if v != nil {
13790				var typeVar TypeBasicDataset
13791				err = json.Unmarshal(*v, &typeVar)
13792				if err != nil {
13793					return err
13794				}
13795				asid.Type = typeVar
13796			}
13797		}
13798	}
13799
13800	return nil
13801}
13802
13803// AzureSearchIndexDatasetTypeProperties properties specific to this dataset type.
13804type AzureSearchIndexDatasetTypeProperties struct {
13805	// IndexName - The name of the Azure Search Index. Type: string (or Expression with resultType string).
13806	IndexName interface{} `json:"indexName,omitempty"`
13807}
13808
13809// AzureSearchIndexSink a copy activity Azure Search Index sink.
13810type AzureSearchIndexSink struct {
13811	// WriteBehavior - Specify the write behavior when upserting documents into Azure Search Index. Possible values include: 'Merge', 'Upload'
13812	WriteBehavior AzureSearchIndexWriteBehaviorType `json:"writeBehavior,omitempty"`
13813	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
13814	AdditionalProperties map[string]interface{} `json:""`
13815	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
13816	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
13817	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
13818	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
13819	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
13820	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
13821	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
13822	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
13823	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
13824	Type TypeBasicCopySink `json:"type,omitempty"`
13825}
13826
13827// MarshalJSON is the custom marshaler for AzureSearchIndexSink.
13828func (asis AzureSearchIndexSink) MarshalJSON() ([]byte, error) {
13829	asis.Type = TypeAzureSearchIndexSink
13830	objectMap := make(map[string]interface{})
13831	if asis.WriteBehavior != "" {
13832		objectMap["writeBehavior"] = asis.WriteBehavior
13833	}
13834	objectMap["writeBatchSize"] = asis.WriteBatchSize
13835	objectMap["writeBatchTimeout"] = asis.WriteBatchTimeout
13836	objectMap["sinkRetryCount"] = asis.SinkRetryCount
13837	objectMap["sinkRetryWait"] = asis.SinkRetryWait
13838	if asis.Type != "" {
13839		objectMap["type"] = asis.Type
13840	}
13841	for k, v := range asis.AdditionalProperties {
13842		objectMap[k] = v
13843	}
13844	return json.Marshal(objectMap)
13845}
13846
13847// AsSalesforceSink is the BasicCopySink implementation for AzureSearchIndexSink.
13848func (asis AzureSearchIndexSink) AsSalesforceSink() (*SalesforceSink, bool) {
13849	return nil, false
13850}
13851
13852// AsDynamicsSink is the BasicCopySink implementation for AzureSearchIndexSink.
13853func (asis AzureSearchIndexSink) AsDynamicsSink() (*DynamicsSink, bool) {
13854	return nil, false
13855}
13856
13857// AsOdbcSink is the BasicCopySink implementation for AzureSearchIndexSink.
13858func (asis AzureSearchIndexSink) AsOdbcSink() (*OdbcSink, bool) {
13859	return nil, false
13860}
13861
13862// AsAzureSearchIndexSink is the BasicCopySink implementation for AzureSearchIndexSink.
13863func (asis AzureSearchIndexSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
13864	return &asis, true
13865}
13866
13867// AsAzureDataLakeStoreSink is the BasicCopySink implementation for AzureSearchIndexSink.
13868func (asis AzureSearchIndexSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
13869	return nil, false
13870}
13871
13872// AsOracleSink is the BasicCopySink implementation for AzureSearchIndexSink.
13873func (asis AzureSearchIndexSink) AsOracleSink() (*OracleSink, bool) {
13874	return nil, false
13875}
13876
13877// AsSQLDWSink is the BasicCopySink implementation for AzureSearchIndexSink.
13878func (asis AzureSearchIndexSink) AsSQLDWSink() (*SQLDWSink, bool) {
13879	return nil, false
13880}
13881
13882// AsSQLSink is the BasicCopySink implementation for AzureSearchIndexSink.
13883func (asis AzureSearchIndexSink) AsSQLSink() (*SQLSink, bool) {
13884	return nil, false
13885}
13886
13887// AsDocumentDbCollectionSink is the BasicCopySink implementation for AzureSearchIndexSink.
13888func (asis AzureSearchIndexSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
13889	return nil, false
13890}
13891
13892// AsFileSystemSink is the BasicCopySink implementation for AzureSearchIndexSink.
13893func (asis AzureSearchIndexSink) AsFileSystemSink() (*FileSystemSink, bool) {
13894	return nil, false
13895}
13896
13897// AsBlobSink is the BasicCopySink implementation for AzureSearchIndexSink.
13898func (asis AzureSearchIndexSink) AsBlobSink() (*BlobSink, bool) {
13899	return nil, false
13900}
13901
13902// AsAzureTableSink is the BasicCopySink implementation for AzureSearchIndexSink.
13903func (asis AzureSearchIndexSink) AsAzureTableSink() (*AzureTableSink, bool) {
13904	return nil, false
13905}
13906
13907// AsAzureQueueSink is the BasicCopySink implementation for AzureSearchIndexSink.
13908func (asis AzureSearchIndexSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
13909	return nil, false
13910}
13911
13912// AsSapCloudForCustomerSink is the BasicCopySink implementation for AzureSearchIndexSink.
13913func (asis AzureSearchIndexSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
13914	return nil, false
13915}
13916
13917// AsCopySink is the BasicCopySink implementation for AzureSearchIndexSink.
13918func (asis AzureSearchIndexSink) AsCopySink() (*CopySink, bool) {
13919	return nil, false
13920}
13921
13922// AsBasicCopySink is the BasicCopySink implementation for AzureSearchIndexSink.
13923func (asis AzureSearchIndexSink) AsBasicCopySink() (BasicCopySink, bool) {
13924	return &asis, true
13925}
13926
13927// AzureSearchLinkedService linked service for Windows Azure Search Service.
13928type AzureSearchLinkedService struct {
13929	// AzureSearchLinkedServiceTypeProperties - Windows Azure Search Service linked service properties.
13930	*AzureSearchLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
13931	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
13932	AdditionalProperties map[string]interface{} `json:""`
13933	// ConnectVia - The integration runtime reference.
13934	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
13935	// Description - Linked service description.
13936	Description *string `json:"description,omitempty"`
13937	// Parameters - Parameters for linked service.
13938	Parameters map[string]*ParameterSpecification `json:"parameters"`
13939	// Annotations - List of tags that can be used for describing the Dataset.
13940	Annotations *[]interface{} `json:"annotations,omitempty"`
13941	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
13942	Type TypeBasicLinkedService `json:"type,omitempty"`
13943}
13944
13945// MarshalJSON is the custom marshaler for AzureSearchLinkedService.
13946func (asls AzureSearchLinkedService) MarshalJSON() ([]byte, error) {
13947	asls.Type = TypeAzureSearch
13948	objectMap := make(map[string]interface{})
13949	if asls.AzureSearchLinkedServiceTypeProperties != nil {
13950		objectMap["typeProperties"] = asls.AzureSearchLinkedServiceTypeProperties
13951	}
13952	if asls.ConnectVia != nil {
13953		objectMap["connectVia"] = asls.ConnectVia
13954	}
13955	if asls.Description != nil {
13956		objectMap["description"] = asls.Description
13957	}
13958	if asls.Parameters != nil {
13959		objectMap["parameters"] = asls.Parameters
13960	}
13961	if asls.Annotations != nil {
13962		objectMap["annotations"] = asls.Annotations
13963	}
13964	if asls.Type != "" {
13965		objectMap["type"] = asls.Type
13966	}
13967	for k, v := range asls.AdditionalProperties {
13968		objectMap[k] = v
13969	}
13970	return json.Marshal(objectMap)
13971}
13972
13973// AsResponsysLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13974func (asls AzureSearchLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
13975	return nil, false
13976}
13977
13978// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13979func (asls AzureSearchLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
13980	return nil, false
13981}
13982
13983// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13984func (asls AzureSearchLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
13985	return nil, false
13986}
13987
13988// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13989func (asls AzureSearchLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
13990	return nil, false
13991}
13992
13993// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13994func (asls AzureSearchLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
13995	return nil, false
13996}
13997
13998// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
13999func (asls AzureSearchLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
14000	return nil, false
14001}
14002
14003// AsVerticaLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14004func (asls AzureSearchLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
14005	return nil, false
14006}
14007
14008// AsZohoLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14009func (asls AzureSearchLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
14010	return nil, false
14011}
14012
14013// AsXeroLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14014func (asls AzureSearchLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
14015	return nil, false
14016}
14017
14018// AsSquareLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14019func (asls AzureSearchLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
14020	return nil, false
14021}
14022
14023// AsSparkLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14024func (asls AzureSearchLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
14025	return nil, false
14026}
14027
14028// AsShopifyLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14029func (asls AzureSearchLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
14030	return nil, false
14031}
14032
14033// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14034func (asls AzureSearchLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
14035	return nil, false
14036}
14037
14038// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14039func (asls AzureSearchLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
14040	return nil, false
14041}
14042
14043// AsPrestoLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14044func (asls AzureSearchLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
14045	return nil, false
14046}
14047
14048// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14049func (asls AzureSearchLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
14050	return nil, false
14051}
14052
14053// AsPaypalLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14054func (asls AzureSearchLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
14055	return nil, false
14056}
14057
14058// AsMarketoLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14059func (asls AzureSearchLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
14060	return nil, false
14061}
14062
14063// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14064func (asls AzureSearchLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
14065	return nil, false
14066}
14067
14068// AsMagentoLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14069func (asls AzureSearchLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
14070	return nil, false
14071}
14072
14073// AsJiraLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14074func (asls AzureSearchLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
14075	return nil, false
14076}
14077
14078// AsImpalaLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14079func (asls AzureSearchLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
14080	return nil, false
14081}
14082
14083// AsHubspotLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14084func (asls AzureSearchLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
14085	return nil, false
14086}
14087
14088// AsHiveLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14089func (asls AzureSearchLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
14090	return nil, false
14091}
14092
14093// AsHBaseLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14094func (asls AzureSearchLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
14095	return nil, false
14096}
14097
14098// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14099func (asls AzureSearchLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
14100	return nil, false
14101}
14102
14103// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14104func (asls AzureSearchLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
14105	return nil, false
14106}
14107
14108// AsEloquaLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14109func (asls AzureSearchLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
14110	return nil, false
14111}
14112
14113// AsDrillLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14114func (asls AzureSearchLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
14115	return nil, false
14116}
14117
14118// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14119func (asls AzureSearchLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
14120	return nil, false
14121}
14122
14123// AsConcurLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14124func (asls AzureSearchLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
14125	return nil, false
14126}
14127
14128// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14129func (asls AzureSearchLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
14130	return nil, false
14131}
14132
14133// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14134func (asls AzureSearchLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
14135	return nil, false
14136}
14137
14138// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14139func (asls AzureSearchLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
14140	return nil, false
14141}
14142
14143// AsSapBWLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14144func (asls AzureSearchLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
14145	return nil, false
14146}
14147
14148// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14149func (asls AzureSearchLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
14150	return nil, false
14151}
14152
14153// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14154func (asls AzureSearchLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
14155	return nil, false
14156}
14157
14158// AsHTTPLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14159func (asls AzureSearchLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
14160	return nil, false
14161}
14162
14163// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14164func (asls AzureSearchLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
14165	return &asls, true
14166}
14167
14168// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14169func (asls AzureSearchLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
14170	return nil, false
14171}
14172
14173// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14174func (asls AzureSearchLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
14175	return nil, false
14176}
14177
14178// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14179func (asls AzureSearchLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
14180	return nil, false
14181}
14182
14183// AsSapEccLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14184func (asls AzureSearchLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
14185	return nil, false
14186}
14187
14188// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14189func (asls AzureSearchLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
14190	return nil, false
14191}
14192
14193// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14194func (asls AzureSearchLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
14195	return nil, false
14196}
14197
14198// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14199func (asls AzureSearchLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
14200	return nil, false
14201}
14202
14203// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14204func (asls AzureSearchLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
14205	return nil, false
14206}
14207
14208// AsCassandraLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14209func (asls AzureSearchLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
14210	return nil, false
14211}
14212
14213// AsWebLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14214func (asls AzureSearchLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
14215	return nil, false
14216}
14217
14218// AsODataLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14219func (asls AzureSearchLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
14220	return nil, false
14221}
14222
14223// AsHdfsLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14224func (asls AzureSearchLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
14225	return nil, false
14226}
14227
14228// AsOdbcLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14229func (asls AzureSearchLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
14230	return nil, false
14231}
14232
14233// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14234func (asls AzureSearchLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
14235	return nil, false
14236}
14237
14238// AsTeradataLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14239func (asls AzureSearchLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
14240	return nil, false
14241}
14242
14243// AsDb2LinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14244func (asls AzureSearchLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
14245	return nil, false
14246}
14247
14248// AsSybaseLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14249func (asls AzureSearchLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
14250	return nil, false
14251}
14252
14253// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14254func (asls AzureSearchLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
14255	return nil, false
14256}
14257
14258// AsMySQLLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14259func (asls AzureSearchLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
14260	return nil, false
14261}
14262
14263// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14264func (asls AzureSearchLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
14265	return nil, false
14266}
14267
14268// AsOracleLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14269func (asls AzureSearchLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
14270	return nil, false
14271}
14272
14273// AsFileServerLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14274func (asls AzureSearchLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
14275	return nil, false
14276}
14277
14278// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14279func (asls AzureSearchLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
14280	return nil, false
14281}
14282
14283// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14284func (asls AzureSearchLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
14285	return nil, false
14286}
14287
14288// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14289func (asls AzureSearchLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
14290	return nil, false
14291}
14292
14293// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14294func (asls AzureSearchLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
14295	return nil, false
14296}
14297
14298// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14299func (asls AzureSearchLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
14300	return nil, false
14301}
14302
14303// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14304func (asls AzureSearchLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
14305	return nil, false
14306}
14307
14308// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14309func (asls AzureSearchLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
14310	return nil, false
14311}
14312
14313// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14314func (asls AzureSearchLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
14315	return nil, false
14316}
14317
14318// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14319func (asls AzureSearchLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
14320	return nil, false
14321}
14322
14323// AsLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14324func (asls AzureSearchLinkedService) AsLinkedService() (*LinkedService, bool) {
14325	return nil, false
14326}
14327
14328// AsBasicLinkedService is the BasicLinkedService implementation for AzureSearchLinkedService.
14329func (asls AzureSearchLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
14330	return &asls, true
14331}
14332
14333// UnmarshalJSON is the custom unmarshaler for AzureSearchLinkedService struct.
14334func (asls *AzureSearchLinkedService) UnmarshalJSON(body []byte) error {
14335	var m map[string]*json.RawMessage
14336	err := json.Unmarshal(body, &m)
14337	if err != nil {
14338		return err
14339	}
14340	for k, v := range m {
14341		switch k {
14342		case "typeProperties":
14343			if v != nil {
14344				var azureSearchLinkedServiceTypeProperties AzureSearchLinkedServiceTypeProperties
14345				err = json.Unmarshal(*v, &azureSearchLinkedServiceTypeProperties)
14346				if err != nil {
14347					return err
14348				}
14349				asls.AzureSearchLinkedServiceTypeProperties = &azureSearchLinkedServiceTypeProperties
14350			}
14351		default:
14352			if v != nil {
14353				var additionalProperties interface{}
14354				err = json.Unmarshal(*v, &additionalProperties)
14355				if err != nil {
14356					return err
14357				}
14358				if asls.AdditionalProperties == nil {
14359					asls.AdditionalProperties = make(map[string]interface{})
14360				}
14361				asls.AdditionalProperties[k] = additionalProperties
14362			}
14363		case "connectVia":
14364			if v != nil {
14365				var connectVia IntegrationRuntimeReference
14366				err = json.Unmarshal(*v, &connectVia)
14367				if err != nil {
14368					return err
14369				}
14370				asls.ConnectVia = &connectVia
14371			}
14372		case "description":
14373			if v != nil {
14374				var description string
14375				err = json.Unmarshal(*v, &description)
14376				if err != nil {
14377					return err
14378				}
14379				asls.Description = &description
14380			}
14381		case "parameters":
14382			if v != nil {
14383				var parameters map[string]*ParameterSpecification
14384				err = json.Unmarshal(*v, &parameters)
14385				if err != nil {
14386					return err
14387				}
14388				asls.Parameters = parameters
14389			}
14390		case "annotations":
14391			if v != nil {
14392				var annotations []interface{}
14393				err = json.Unmarshal(*v, &annotations)
14394				if err != nil {
14395					return err
14396				}
14397				asls.Annotations = &annotations
14398			}
14399		case "type":
14400			if v != nil {
14401				var typeVar TypeBasicLinkedService
14402				err = json.Unmarshal(*v, &typeVar)
14403				if err != nil {
14404					return err
14405				}
14406				asls.Type = typeVar
14407			}
14408		}
14409	}
14410
14411	return nil
14412}
14413
14414// AzureSearchLinkedServiceTypeProperties windows Azure Search Service linked service properties.
14415type AzureSearchLinkedServiceTypeProperties struct {
14416	// URL - URL for Azure Search service. Type: string (or Expression with resultType string).
14417	URL interface{} `json:"url,omitempty"`
14418	// Key - Admin Key for Azure Search service
14419	Key BasicSecretBase `json:"key,omitempty"`
14420	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
14421	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
14422}
14423
14424// UnmarshalJSON is the custom unmarshaler for AzureSearchLinkedServiceTypeProperties struct.
14425func (aslstp *AzureSearchLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
14426	var m map[string]*json.RawMessage
14427	err := json.Unmarshal(body, &m)
14428	if err != nil {
14429		return err
14430	}
14431	for k, v := range m {
14432		switch k {
14433		case "url":
14434			if v != nil {
14435				var URL interface{}
14436				err = json.Unmarshal(*v, &URL)
14437				if err != nil {
14438					return err
14439				}
14440				aslstp.URL = URL
14441			}
14442		case "key":
14443			if v != nil {
14444				key, err := unmarshalBasicSecretBase(*v)
14445				if err != nil {
14446					return err
14447				}
14448				aslstp.Key = key
14449			}
14450		case "encryptedCredential":
14451			if v != nil {
14452				var encryptedCredential interface{}
14453				err = json.Unmarshal(*v, &encryptedCredential)
14454				if err != nil {
14455					return err
14456				}
14457				aslstp.EncryptedCredential = encryptedCredential
14458			}
14459		}
14460	}
14461
14462	return nil
14463}
14464
14465// AzureSQLDatabaseLinkedService microsoft Azure SQL Database linked service.
14466type AzureSQLDatabaseLinkedService struct {
14467	// AzureSQLDatabaseLinkedServiceTypeProperties - Azure SQL Database linked service properties.
14468	*AzureSQLDatabaseLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
14469	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
14470	AdditionalProperties map[string]interface{} `json:""`
14471	// ConnectVia - The integration runtime reference.
14472	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
14473	// Description - Linked service description.
14474	Description *string `json:"description,omitempty"`
14475	// Parameters - Parameters for linked service.
14476	Parameters map[string]*ParameterSpecification `json:"parameters"`
14477	// Annotations - List of tags that can be used for describing the Dataset.
14478	Annotations *[]interface{} `json:"annotations,omitempty"`
14479	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
14480	Type TypeBasicLinkedService `json:"type,omitempty"`
14481}
14482
14483// MarshalJSON is the custom marshaler for AzureSQLDatabaseLinkedService.
14484func (asdls AzureSQLDatabaseLinkedService) MarshalJSON() ([]byte, error) {
14485	asdls.Type = TypeAzureSQLDatabase
14486	objectMap := make(map[string]interface{})
14487	if asdls.AzureSQLDatabaseLinkedServiceTypeProperties != nil {
14488		objectMap["typeProperties"] = asdls.AzureSQLDatabaseLinkedServiceTypeProperties
14489	}
14490	if asdls.ConnectVia != nil {
14491		objectMap["connectVia"] = asdls.ConnectVia
14492	}
14493	if asdls.Description != nil {
14494		objectMap["description"] = asdls.Description
14495	}
14496	if asdls.Parameters != nil {
14497		objectMap["parameters"] = asdls.Parameters
14498	}
14499	if asdls.Annotations != nil {
14500		objectMap["annotations"] = asdls.Annotations
14501	}
14502	if asdls.Type != "" {
14503		objectMap["type"] = asdls.Type
14504	}
14505	for k, v := range asdls.AdditionalProperties {
14506		objectMap[k] = v
14507	}
14508	return json.Marshal(objectMap)
14509}
14510
14511// AsResponsysLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14512func (asdls AzureSQLDatabaseLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
14513	return nil, false
14514}
14515
14516// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14517func (asdls AzureSQLDatabaseLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
14518	return nil, false
14519}
14520
14521// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14522func (asdls AzureSQLDatabaseLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
14523	return nil, false
14524}
14525
14526// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14527func (asdls AzureSQLDatabaseLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
14528	return nil, false
14529}
14530
14531// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14532func (asdls AzureSQLDatabaseLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
14533	return nil, false
14534}
14535
14536// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14537func (asdls AzureSQLDatabaseLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
14538	return nil, false
14539}
14540
14541// AsVerticaLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14542func (asdls AzureSQLDatabaseLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
14543	return nil, false
14544}
14545
14546// AsZohoLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14547func (asdls AzureSQLDatabaseLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
14548	return nil, false
14549}
14550
14551// AsXeroLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14552func (asdls AzureSQLDatabaseLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
14553	return nil, false
14554}
14555
14556// AsSquareLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14557func (asdls AzureSQLDatabaseLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
14558	return nil, false
14559}
14560
14561// AsSparkLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14562func (asdls AzureSQLDatabaseLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
14563	return nil, false
14564}
14565
14566// AsShopifyLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14567func (asdls AzureSQLDatabaseLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
14568	return nil, false
14569}
14570
14571// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14572func (asdls AzureSQLDatabaseLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
14573	return nil, false
14574}
14575
14576// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14577func (asdls AzureSQLDatabaseLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
14578	return nil, false
14579}
14580
14581// AsPrestoLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14582func (asdls AzureSQLDatabaseLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
14583	return nil, false
14584}
14585
14586// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14587func (asdls AzureSQLDatabaseLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
14588	return nil, false
14589}
14590
14591// AsPaypalLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14592func (asdls AzureSQLDatabaseLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
14593	return nil, false
14594}
14595
14596// AsMarketoLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14597func (asdls AzureSQLDatabaseLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
14598	return nil, false
14599}
14600
14601// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14602func (asdls AzureSQLDatabaseLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
14603	return nil, false
14604}
14605
14606// AsMagentoLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14607func (asdls AzureSQLDatabaseLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
14608	return nil, false
14609}
14610
14611// AsJiraLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14612func (asdls AzureSQLDatabaseLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
14613	return nil, false
14614}
14615
14616// AsImpalaLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14617func (asdls AzureSQLDatabaseLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
14618	return nil, false
14619}
14620
14621// AsHubspotLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14622func (asdls AzureSQLDatabaseLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
14623	return nil, false
14624}
14625
14626// AsHiveLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14627func (asdls AzureSQLDatabaseLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
14628	return nil, false
14629}
14630
14631// AsHBaseLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14632func (asdls AzureSQLDatabaseLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
14633	return nil, false
14634}
14635
14636// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14637func (asdls AzureSQLDatabaseLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
14638	return nil, false
14639}
14640
14641// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14642func (asdls AzureSQLDatabaseLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
14643	return nil, false
14644}
14645
14646// AsEloquaLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14647func (asdls AzureSQLDatabaseLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
14648	return nil, false
14649}
14650
14651// AsDrillLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14652func (asdls AzureSQLDatabaseLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
14653	return nil, false
14654}
14655
14656// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14657func (asdls AzureSQLDatabaseLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
14658	return nil, false
14659}
14660
14661// AsConcurLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14662func (asdls AzureSQLDatabaseLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
14663	return nil, false
14664}
14665
14666// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14667func (asdls AzureSQLDatabaseLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
14668	return nil, false
14669}
14670
14671// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14672func (asdls AzureSQLDatabaseLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
14673	return nil, false
14674}
14675
14676// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14677func (asdls AzureSQLDatabaseLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
14678	return nil, false
14679}
14680
14681// AsSapBWLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14682func (asdls AzureSQLDatabaseLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
14683	return nil, false
14684}
14685
14686// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14687func (asdls AzureSQLDatabaseLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
14688	return nil, false
14689}
14690
14691// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14692func (asdls AzureSQLDatabaseLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
14693	return nil, false
14694}
14695
14696// AsHTTPLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14697func (asdls AzureSQLDatabaseLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
14698	return nil, false
14699}
14700
14701// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14702func (asdls AzureSQLDatabaseLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
14703	return nil, false
14704}
14705
14706// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14707func (asdls AzureSQLDatabaseLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
14708	return nil, false
14709}
14710
14711// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14712func (asdls AzureSQLDatabaseLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
14713	return nil, false
14714}
14715
14716// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14717func (asdls AzureSQLDatabaseLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
14718	return nil, false
14719}
14720
14721// AsSapEccLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14722func (asdls AzureSQLDatabaseLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
14723	return nil, false
14724}
14725
14726// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14727func (asdls AzureSQLDatabaseLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
14728	return nil, false
14729}
14730
14731// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14732func (asdls AzureSQLDatabaseLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
14733	return nil, false
14734}
14735
14736// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14737func (asdls AzureSQLDatabaseLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
14738	return nil, false
14739}
14740
14741// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14742func (asdls AzureSQLDatabaseLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
14743	return nil, false
14744}
14745
14746// AsCassandraLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14747func (asdls AzureSQLDatabaseLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
14748	return nil, false
14749}
14750
14751// AsWebLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14752func (asdls AzureSQLDatabaseLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
14753	return nil, false
14754}
14755
14756// AsODataLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14757func (asdls AzureSQLDatabaseLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
14758	return nil, false
14759}
14760
14761// AsHdfsLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14762func (asdls AzureSQLDatabaseLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
14763	return nil, false
14764}
14765
14766// AsOdbcLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14767func (asdls AzureSQLDatabaseLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
14768	return nil, false
14769}
14770
14771// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14772func (asdls AzureSQLDatabaseLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
14773	return nil, false
14774}
14775
14776// AsTeradataLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14777func (asdls AzureSQLDatabaseLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
14778	return nil, false
14779}
14780
14781// AsDb2LinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14782func (asdls AzureSQLDatabaseLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
14783	return nil, false
14784}
14785
14786// AsSybaseLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14787func (asdls AzureSQLDatabaseLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
14788	return nil, false
14789}
14790
14791// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14792func (asdls AzureSQLDatabaseLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
14793	return nil, false
14794}
14795
14796// AsMySQLLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14797func (asdls AzureSQLDatabaseLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
14798	return nil, false
14799}
14800
14801// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14802func (asdls AzureSQLDatabaseLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
14803	return nil, false
14804}
14805
14806// AsOracleLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14807func (asdls AzureSQLDatabaseLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
14808	return nil, false
14809}
14810
14811// AsFileServerLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14812func (asdls AzureSQLDatabaseLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
14813	return nil, false
14814}
14815
14816// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14817func (asdls AzureSQLDatabaseLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
14818	return nil, false
14819}
14820
14821// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14822func (asdls AzureSQLDatabaseLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
14823	return nil, false
14824}
14825
14826// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14827func (asdls AzureSQLDatabaseLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
14828	return nil, false
14829}
14830
14831// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14832func (asdls AzureSQLDatabaseLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
14833	return nil, false
14834}
14835
14836// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14837func (asdls AzureSQLDatabaseLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
14838	return nil, false
14839}
14840
14841// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14842func (asdls AzureSQLDatabaseLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
14843	return &asdls, true
14844}
14845
14846// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14847func (asdls AzureSQLDatabaseLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
14848	return nil, false
14849}
14850
14851// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14852func (asdls AzureSQLDatabaseLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
14853	return nil, false
14854}
14855
14856// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14857func (asdls AzureSQLDatabaseLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
14858	return nil, false
14859}
14860
14861// AsLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14862func (asdls AzureSQLDatabaseLinkedService) AsLinkedService() (*LinkedService, bool) {
14863	return nil, false
14864}
14865
14866// AsBasicLinkedService is the BasicLinkedService implementation for AzureSQLDatabaseLinkedService.
14867func (asdls AzureSQLDatabaseLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
14868	return &asdls, true
14869}
14870
14871// UnmarshalJSON is the custom unmarshaler for AzureSQLDatabaseLinkedService struct.
14872func (asdls *AzureSQLDatabaseLinkedService) UnmarshalJSON(body []byte) error {
14873	var m map[string]*json.RawMessage
14874	err := json.Unmarshal(body, &m)
14875	if err != nil {
14876		return err
14877	}
14878	for k, v := range m {
14879		switch k {
14880		case "typeProperties":
14881			if v != nil {
14882				var azureSQLDatabaseLinkedServiceTypeProperties AzureSQLDatabaseLinkedServiceTypeProperties
14883				err = json.Unmarshal(*v, &azureSQLDatabaseLinkedServiceTypeProperties)
14884				if err != nil {
14885					return err
14886				}
14887				asdls.AzureSQLDatabaseLinkedServiceTypeProperties = &azureSQLDatabaseLinkedServiceTypeProperties
14888			}
14889		default:
14890			if v != nil {
14891				var additionalProperties interface{}
14892				err = json.Unmarshal(*v, &additionalProperties)
14893				if err != nil {
14894					return err
14895				}
14896				if asdls.AdditionalProperties == nil {
14897					asdls.AdditionalProperties = make(map[string]interface{})
14898				}
14899				asdls.AdditionalProperties[k] = additionalProperties
14900			}
14901		case "connectVia":
14902			if v != nil {
14903				var connectVia IntegrationRuntimeReference
14904				err = json.Unmarshal(*v, &connectVia)
14905				if err != nil {
14906					return err
14907				}
14908				asdls.ConnectVia = &connectVia
14909			}
14910		case "description":
14911			if v != nil {
14912				var description string
14913				err = json.Unmarshal(*v, &description)
14914				if err != nil {
14915					return err
14916				}
14917				asdls.Description = &description
14918			}
14919		case "parameters":
14920			if v != nil {
14921				var parameters map[string]*ParameterSpecification
14922				err = json.Unmarshal(*v, &parameters)
14923				if err != nil {
14924					return err
14925				}
14926				asdls.Parameters = parameters
14927			}
14928		case "annotations":
14929			if v != nil {
14930				var annotations []interface{}
14931				err = json.Unmarshal(*v, &annotations)
14932				if err != nil {
14933					return err
14934				}
14935				asdls.Annotations = &annotations
14936			}
14937		case "type":
14938			if v != nil {
14939				var typeVar TypeBasicLinkedService
14940				err = json.Unmarshal(*v, &typeVar)
14941				if err != nil {
14942					return err
14943				}
14944				asdls.Type = typeVar
14945			}
14946		}
14947	}
14948
14949	return nil
14950}
14951
14952// AzureSQLDatabaseLinkedServiceTypeProperties azure SQL Database linked service properties.
14953type AzureSQLDatabaseLinkedServiceTypeProperties struct {
14954	// ConnectionString - The connection string.
14955	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
14956	// ServicePrincipalID - The ID of the service principal used to authenticate against Azure SQL Database. Type: string (or Expression with resultType string).
14957	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
14958	// ServicePrincipalKey - The key of the service principal used to authenticate against Azure SQL Database.
14959	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
14960	// Tenant - The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
14961	Tenant interface{} `json:"tenant,omitempty"`
14962	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
14963	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
14964}
14965
14966// UnmarshalJSON is the custom unmarshaler for AzureSQLDatabaseLinkedServiceTypeProperties struct.
14967func (asdlstp *AzureSQLDatabaseLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
14968	var m map[string]*json.RawMessage
14969	err := json.Unmarshal(body, &m)
14970	if err != nil {
14971		return err
14972	}
14973	for k, v := range m {
14974		switch k {
14975		case "connectionString":
14976			if v != nil {
14977				connectionString, err := unmarshalBasicSecretBase(*v)
14978				if err != nil {
14979					return err
14980				}
14981				asdlstp.ConnectionString = connectionString
14982			}
14983		case "servicePrincipalId":
14984			if v != nil {
14985				var servicePrincipalID interface{}
14986				err = json.Unmarshal(*v, &servicePrincipalID)
14987				if err != nil {
14988					return err
14989				}
14990				asdlstp.ServicePrincipalID = servicePrincipalID
14991			}
14992		case "servicePrincipalKey":
14993			if v != nil {
14994				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
14995				if err != nil {
14996					return err
14997				}
14998				asdlstp.ServicePrincipalKey = servicePrincipalKey
14999			}
15000		case "tenant":
15001			if v != nil {
15002				var tenant interface{}
15003				err = json.Unmarshal(*v, &tenant)
15004				if err != nil {
15005					return err
15006				}
15007				asdlstp.Tenant = tenant
15008			}
15009		case "encryptedCredential":
15010			if v != nil {
15011				var encryptedCredential interface{}
15012				err = json.Unmarshal(*v, &encryptedCredential)
15013				if err != nil {
15014					return err
15015				}
15016				asdlstp.EncryptedCredential = encryptedCredential
15017			}
15018		}
15019	}
15020
15021	return nil
15022}
15023
15024// AzureSQLDWLinkedService azure SQL Data Warehouse linked service.
15025type AzureSQLDWLinkedService struct {
15026	// AzureSQLDWLinkedServiceTypeProperties - Azure SQL Data Warehouse linked service properties.
15027	*AzureSQLDWLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
15028	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
15029	AdditionalProperties map[string]interface{} `json:""`
15030	// ConnectVia - The integration runtime reference.
15031	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
15032	// Description - Linked service description.
15033	Description *string `json:"description,omitempty"`
15034	// Parameters - Parameters for linked service.
15035	Parameters map[string]*ParameterSpecification `json:"parameters"`
15036	// Annotations - List of tags that can be used for describing the Dataset.
15037	Annotations *[]interface{} `json:"annotations,omitempty"`
15038	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
15039	Type TypeBasicLinkedService `json:"type,omitempty"`
15040}
15041
15042// MarshalJSON is the custom marshaler for AzureSQLDWLinkedService.
15043func (asdls AzureSQLDWLinkedService) MarshalJSON() ([]byte, error) {
15044	asdls.Type = TypeAzureSQLDW
15045	objectMap := make(map[string]interface{})
15046	if asdls.AzureSQLDWLinkedServiceTypeProperties != nil {
15047		objectMap["typeProperties"] = asdls.AzureSQLDWLinkedServiceTypeProperties
15048	}
15049	if asdls.ConnectVia != nil {
15050		objectMap["connectVia"] = asdls.ConnectVia
15051	}
15052	if asdls.Description != nil {
15053		objectMap["description"] = asdls.Description
15054	}
15055	if asdls.Parameters != nil {
15056		objectMap["parameters"] = asdls.Parameters
15057	}
15058	if asdls.Annotations != nil {
15059		objectMap["annotations"] = asdls.Annotations
15060	}
15061	if asdls.Type != "" {
15062		objectMap["type"] = asdls.Type
15063	}
15064	for k, v := range asdls.AdditionalProperties {
15065		objectMap[k] = v
15066	}
15067	return json.Marshal(objectMap)
15068}
15069
15070// AsResponsysLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15071func (asdls AzureSQLDWLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
15072	return nil, false
15073}
15074
15075// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15076func (asdls AzureSQLDWLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
15077	return nil, false
15078}
15079
15080// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15081func (asdls AzureSQLDWLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
15082	return nil, false
15083}
15084
15085// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15086func (asdls AzureSQLDWLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
15087	return nil, false
15088}
15089
15090// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15091func (asdls AzureSQLDWLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
15092	return nil, false
15093}
15094
15095// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15096func (asdls AzureSQLDWLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
15097	return nil, false
15098}
15099
15100// AsVerticaLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15101func (asdls AzureSQLDWLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
15102	return nil, false
15103}
15104
15105// AsZohoLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15106func (asdls AzureSQLDWLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
15107	return nil, false
15108}
15109
15110// AsXeroLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15111func (asdls AzureSQLDWLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
15112	return nil, false
15113}
15114
15115// AsSquareLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15116func (asdls AzureSQLDWLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
15117	return nil, false
15118}
15119
15120// AsSparkLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15121func (asdls AzureSQLDWLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
15122	return nil, false
15123}
15124
15125// AsShopifyLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15126func (asdls AzureSQLDWLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
15127	return nil, false
15128}
15129
15130// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15131func (asdls AzureSQLDWLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
15132	return nil, false
15133}
15134
15135// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15136func (asdls AzureSQLDWLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
15137	return nil, false
15138}
15139
15140// AsPrestoLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15141func (asdls AzureSQLDWLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
15142	return nil, false
15143}
15144
15145// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15146func (asdls AzureSQLDWLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
15147	return nil, false
15148}
15149
15150// AsPaypalLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15151func (asdls AzureSQLDWLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
15152	return nil, false
15153}
15154
15155// AsMarketoLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15156func (asdls AzureSQLDWLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
15157	return nil, false
15158}
15159
15160// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15161func (asdls AzureSQLDWLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
15162	return nil, false
15163}
15164
15165// AsMagentoLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15166func (asdls AzureSQLDWLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
15167	return nil, false
15168}
15169
15170// AsJiraLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15171func (asdls AzureSQLDWLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
15172	return nil, false
15173}
15174
15175// AsImpalaLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15176func (asdls AzureSQLDWLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
15177	return nil, false
15178}
15179
15180// AsHubspotLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15181func (asdls AzureSQLDWLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
15182	return nil, false
15183}
15184
15185// AsHiveLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15186func (asdls AzureSQLDWLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
15187	return nil, false
15188}
15189
15190// AsHBaseLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15191func (asdls AzureSQLDWLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
15192	return nil, false
15193}
15194
15195// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15196func (asdls AzureSQLDWLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
15197	return nil, false
15198}
15199
15200// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15201func (asdls AzureSQLDWLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
15202	return nil, false
15203}
15204
15205// AsEloquaLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15206func (asdls AzureSQLDWLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
15207	return nil, false
15208}
15209
15210// AsDrillLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15211func (asdls AzureSQLDWLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
15212	return nil, false
15213}
15214
15215// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15216func (asdls AzureSQLDWLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
15217	return nil, false
15218}
15219
15220// AsConcurLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15221func (asdls AzureSQLDWLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
15222	return nil, false
15223}
15224
15225// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15226func (asdls AzureSQLDWLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
15227	return nil, false
15228}
15229
15230// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15231func (asdls AzureSQLDWLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
15232	return nil, false
15233}
15234
15235// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15236func (asdls AzureSQLDWLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
15237	return nil, false
15238}
15239
15240// AsSapBWLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15241func (asdls AzureSQLDWLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
15242	return nil, false
15243}
15244
15245// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15246func (asdls AzureSQLDWLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
15247	return nil, false
15248}
15249
15250// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15251func (asdls AzureSQLDWLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
15252	return nil, false
15253}
15254
15255// AsHTTPLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15256func (asdls AzureSQLDWLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
15257	return nil, false
15258}
15259
15260// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15261func (asdls AzureSQLDWLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
15262	return nil, false
15263}
15264
15265// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15266func (asdls AzureSQLDWLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
15267	return nil, false
15268}
15269
15270// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15271func (asdls AzureSQLDWLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
15272	return nil, false
15273}
15274
15275// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15276func (asdls AzureSQLDWLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
15277	return nil, false
15278}
15279
15280// AsSapEccLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15281func (asdls AzureSQLDWLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
15282	return nil, false
15283}
15284
15285// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15286func (asdls AzureSQLDWLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
15287	return nil, false
15288}
15289
15290// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15291func (asdls AzureSQLDWLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
15292	return nil, false
15293}
15294
15295// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15296func (asdls AzureSQLDWLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
15297	return nil, false
15298}
15299
15300// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15301func (asdls AzureSQLDWLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
15302	return nil, false
15303}
15304
15305// AsCassandraLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15306func (asdls AzureSQLDWLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
15307	return nil, false
15308}
15309
15310// AsWebLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15311func (asdls AzureSQLDWLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
15312	return nil, false
15313}
15314
15315// AsODataLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15316func (asdls AzureSQLDWLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
15317	return nil, false
15318}
15319
15320// AsHdfsLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15321func (asdls AzureSQLDWLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
15322	return nil, false
15323}
15324
15325// AsOdbcLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15326func (asdls AzureSQLDWLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
15327	return nil, false
15328}
15329
15330// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15331func (asdls AzureSQLDWLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
15332	return nil, false
15333}
15334
15335// AsTeradataLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15336func (asdls AzureSQLDWLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
15337	return nil, false
15338}
15339
15340// AsDb2LinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15341func (asdls AzureSQLDWLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
15342	return nil, false
15343}
15344
15345// AsSybaseLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15346func (asdls AzureSQLDWLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
15347	return nil, false
15348}
15349
15350// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15351func (asdls AzureSQLDWLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
15352	return nil, false
15353}
15354
15355// AsMySQLLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15356func (asdls AzureSQLDWLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
15357	return nil, false
15358}
15359
15360// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15361func (asdls AzureSQLDWLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
15362	return nil, false
15363}
15364
15365// AsOracleLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15366func (asdls AzureSQLDWLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
15367	return nil, false
15368}
15369
15370// AsFileServerLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15371func (asdls AzureSQLDWLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
15372	return nil, false
15373}
15374
15375// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15376func (asdls AzureSQLDWLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
15377	return nil, false
15378}
15379
15380// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15381func (asdls AzureSQLDWLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
15382	return nil, false
15383}
15384
15385// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15386func (asdls AzureSQLDWLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
15387	return nil, false
15388}
15389
15390// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15391func (asdls AzureSQLDWLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
15392	return nil, false
15393}
15394
15395// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15396func (asdls AzureSQLDWLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
15397	return nil, false
15398}
15399
15400// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15401func (asdls AzureSQLDWLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
15402	return nil, false
15403}
15404
15405// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15406func (asdls AzureSQLDWLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
15407	return nil, false
15408}
15409
15410// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15411func (asdls AzureSQLDWLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
15412	return &asdls, true
15413}
15414
15415// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15416func (asdls AzureSQLDWLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
15417	return nil, false
15418}
15419
15420// AsLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15421func (asdls AzureSQLDWLinkedService) AsLinkedService() (*LinkedService, bool) {
15422	return nil, false
15423}
15424
15425// AsBasicLinkedService is the BasicLinkedService implementation for AzureSQLDWLinkedService.
15426func (asdls AzureSQLDWLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
15427	return &asdls, true
15428}
15429
15430// UnmarshalJSON is the custom unmarshaler for AzureSQLDWLinkedService struct.
15431func (asdls *AzureSQLDWLinkedService) UnmarshalJSON(body []byte) error {
15432	var m map[string]*json.RawMessage
15433	err := json.Unmarshal(body, &m)
15434	if err != nil {
15435		return err
15436	}
15437	for k, v := range m {
15438		switch k {
15439		case "typeProperties":
15440			if v != nil {
15441				var azureSQLDWLinkedServiceTypeProperties AzureSQLDWLinkedServiceTypeProperties
15442				err = json.Unmarshal(*v, &azureSQLDWLinkedServiceTypeProperties)
15443				if err != nil {
15444					return err
15445				}
15446				asdls.AzureSQLDWLinkedServiceTypeProperties = &azureSQLDWLinkedServiceTypeProperties
15447			}
15448		default:
15449			if v != nil {
15450				var additionalProperties interface{}
15451				err = json.Unmarshal(*v, &additionalProperties)
15452				if err != nil {
15453					return err
15454				}
15455				if asdls.AdditionalProperties == nil {
15456					asdls.AdditionalProperties = make(map[string]interface{})
15457				}
15458				asdls.AdditionalProperties[k] = additionalProperties
15459			}
15460		case "connectVia":
15461			if v != nil {
15462				var connectVia IntegrationRuntimeReference
15463				err = json.Unmarshal(*v, &connectVia)
15464				if err != nil {
15465					return err
15466				}
15467				asdls.ConnectVia = &connectVia
15468			}
15469		case "description":
15470			if v != nil {
15471				var description string
15472				err = json.Unmarshal(*v, &description)
15473				if err != nil {
15474					return err
15475				}
15476				asdls.Description = &description
15477			}
15478		case "parameters":
15479			if v != nil {
15480				var parameters map[string]*ParameterSpecification
15481				err = json.Unmarshal(*v, &parameters)
15482				if err != nil {
15483					return err
15484				}
15485				asdls.Parameters = parameters
15486			}
15487		case "annotations":
15488			if v != nil {
15489				var annotations []interface{}
15490				err = json.Unmarshal(*v, &annotations)
15491				if err != nil {
15492					return err
15493				}
15494				asdls.Annotations = &annotations
15495			}
15496		case "type":
15497			if v != nil {
15498				var typeVar TypeBasicLinkedService
15499				err = json.Unmarshal(*v, &typeVar)
15500				if err != nil {
15501					return err
15502				}
15503				asdls.Type = typeVar
15504			}
15505		}
15506	}
15507
15508	return nil
15509}
15510
15511// AzureSQLDWLinkedServiceTypeProperties azure SQL Data Warehouse linked service properties.
15512type AzureSQLDWLinkedServiceTypeProperties struct {
15513	// ConnectionString - The connection string.
15514	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
15515	// ServicePrincipalID - The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string).
15516	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
15517	// ServicePrincipalKey - The key of the service principal used to authenticate against Azure SQL Data Warehouse.
15518	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
15519	// Tenant - The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
15520	Tenant interface{} `json:"tenant,omitempty"`
15521	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
15522	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
15523}
15524
15525// UnmarshalJSON is the custom unmarshaler for AzureSQLDWLinkedServiceTypeProperties struct.
15526func (asdlstp *AzureSQLDWLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
15527	var m map[string]*json.RawMessage
15528	err := json.Unmarshal(body, &m)
15529	if err != nil {
15530		return err
15531	}
15532	for k, v := range m {
15533		switch k {
15534		case "connectionString":
15535			if v != nil {
15536				connectionString, err := unmarshalBasicSecretBase(*v)
15537				if err != nil {
15538					return err
15539				}
15540				asdlstp.ConnectionString = connectionString
15541			}
15542		case "servicePrincipalId":
15543			if v != nil {
15544				var servicePrincipalID interface{}
15545				err = json.Unmarshal(*v, &servicePrincipalID)
15546				if err != nil {
15547					return err
15548				}
15549				asdlstp.ServicePrincipalID = servicePrincipalID
15550			}
15551		case "servicePrincipalKey":
15552			if v != nil {
15553				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
15554				if err != nil {
15555					return err
15556				}
15557				asdlstp.ServicePrincipalKey = servicePrincipalKey
15558			}
15559		case "tenant":
15560			if v != nil {
15561				var tenant interface{}
15562				err = json.Unmarshal(*v, &tenant)
15563				if err != nil {
15564					return err
15565				}
15566				asdlstp.Tenant = tenant
15567			}
15568		case "encryptedCredential":
15569			if v != nil {
15570				var encryptedCredential interface{}
15571				err = json.Unmarshal(*v, &encryptedCredential)
15572				if err != nil {
15573					return err
15574				}
15575				asdlstp.EncryptedCredential = encryptedCredential
15576			}
15577		}
15578	}
15579
15580	return nil
15581}
15582
15583// AzureSQLDWTableDataset the Azure SQL Data Warehouse dataset.
15584type AzureSQLDWTableDataset struct {
15585	// AzureSQLDWTableDatasetTypeProperties - Azure SQL Data Warehouse dataset properties.
15586	*AzureSQLDWTableDatasetTypeProperties `json:"typeProperties,omitempty"`
15587	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
15588	AdditionalProperties map[string]interface{} `json:""`
15589	// Description - Dataset description.
15590	Description *string `json:"description,omitempty"`
15591	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
15592	Structure interface{} `json:"structure,omitempty"`
15593	// LinkedServiceName - Linked service reference.
15594	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
15595	// Parameters - Parameters for dataset.
15596	Parameters map[string]*ParameterSpecification `json:"parameters"`
15597	// Annotations - List of tags that can be used for describing the Dataset.
15598	Annotations *[]interface{} `json:"annotations,omitempty"`
15599	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
15600	Type TypeBasicDataset `json:"type,omitempty"`
15601}
15602
15603// MarshalJSON is the custom marshaler for AzureSQLDWTableDataset.
15604func (asdtd AzureSQLDWTableDataset) MarshalJSON() ([]byte, error) {
15605	asdtd.Type = TypeAzureSQLDWTable
15606	objectMap := make(map[string]interface{})
15607	if asdtd.AzureSQLDWTableDatasetTypeProperties != nil {
15608		objectMap["typeProperties"] = asdtd.AzureSQLDWTableDatasetTypeProperties
15609	}
15610	if asdtd.Description != nil {
15611		objectMap["description"] = asdtd.Description
15612	}
15613	objectMap["structure"] = asdtd.Structure
15614	if asdtd.LinkedServiceName != nil {
15615		objectMap["linkedServiceName"] = asdtd.LinkedServiceName
15616	}
15617	if asdtd.Parameters != nil {
15618		objectMap["parameters"] = asdtd.Parameters
15619	}
15620	if asdtd.Annotations != nil {
15621		objectMap["annotations"] = asdtd.Annotations
15622	}
15623	if asdtd.Type != "" {
15624		objectMap["type"] = asdtd.Type
15625	}
15626	for k, v := range asdtd.AdditionalProperties {
15627		objectMap[k] = v
15628	}
15629	return json.Marshal(objectMap)
15630}
15631
15632// AsResponsysObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15633func (asdtd AzureSQLDWTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
15634	return nil, false
15635}
15636
15637// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15638func (asdtd AzureSQLDWTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
15639	return nil, false
15640}
15641
15642// AsVerticaTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15643func (asdtd AzureSQLDWTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
15644	return nil, false
15645}
15646
15647// AsNetezzaTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15648func (asdtd AzureSQLDWTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
15649	return nil, false
15650}
15651
15652// AsZohoObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15653func (asdtd AzureSQLDWTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
15654	return nil, false
15655}
15656
15657// AsXeroObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15658func (asdtd AzureSQLDWTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
15659	return nil, false
15660}
15661
15662// AsSquareObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15663func (asdtd AzureSQLDWTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
15664	return nil, false
15665}
15666
15667// AsSparkObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15668func (asdtd AzureSQLDWTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
15669	return nil, false
15670}
15671
15672// AsShopifyObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15673func (asdtd AzureSQLDWTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
15674	return nil, false
15675}
15676
15677// AsServiceNowObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15678func (asdtd AzureSQLDWTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
15679	return nil, false
15680}
15681
15682// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15683func (asdtd AzureSQLDWTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
15684	return nil, false
15685}
15686
15687// AsPrestoObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15688func (asdtd AzureSQLDWTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
15689	return nil, false
15690}
15691
15692// AsPhoenixObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15693func (asdtd AzureSQLDWTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
15694	return nil, false
15695}
15696
15697// AsPaypalObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15698func (asdtd AzureSQLDWTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
15699	return nil, false
15700}
15701
15702// AsMarketoObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15703func (asdtd AzureSQLDWTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
15704	return nil, false
15705}
15706
15707// AsMariaDBTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15708func (asdtd AzureSQLDWTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
15709	return nil, false
15710}
15711
15712// AsMagentoObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15713func (asdtd AzureSQLDWTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
15714	return nil, false
15715}
15716
15717// AsJiraObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15718func (asdtd AzureSQLDWTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
15719	return nil, false
15720}
15721
15722// AsImpalaObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15723func (asdtd AzureSQLDWTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
15724	return nil, false
15725}
15726
15727// AsHubspotObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15728func (asdtd AzureSQLDWTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
15729	return nil, false
15730}
15731
15732// AsHiveObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15733func (asdtd AzureSQLDWTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
15734	return nil, false
15735}
15736
15737// AsHBaseObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15738func (asdtd AzureSQLDWTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
15739	return nil, false
15740}
15741
15742// AsGreenplumTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15743func (asdtd AzureSQLDWTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
15744	return nil, false
15745}
15746
15747// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15748func (asdtd AzureSQLDWTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
15749	return nil, false
15750}
15751
15752// AsEloquaObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15753func (asdtd AzureSQLDWTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
15754	return nil, false
15755}
15756
15757// AsDrillTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15758func (asdtd AzureSQLDWTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
15759	return nil, false
15760}
15761
15762// AsCouchbaseTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15763func (asdtd AzureSQLDWTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
15764	return nil, false
15765}
15766
15767// AsConcurObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15768func (asdtd AzureSQLDWTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
15769	return nil, false
15770}
15771
15772// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15773func (asdtd AzureSQLDWTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
15774	return nil, false
15775}
15776
15777// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15778func (asdtd AzureSQLDWTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
15779	return nil, false
15780}
15781
15782// AsHTTPDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15783func (asdtd AzureSQLDWTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
15784	return nil, false
15785}
15786
15787// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15788func (asdtd AzureSQLDWTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
15789	return nil, false
15790}
15791
15792// AsWebTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15793func (asdtd AzureSQLDWTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
15794	return nil, false
15795}
15796
15797// AsSQLServerTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15798func (asdtd AzureSQLDWTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
15799	return nil, false
15800}
15801
15802// AsSapEccResourceDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15803func (asdtd AzureSQLDWTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
15804	return nil, false
15805}
15806
15807// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15808func (asdtd AzureSQLDWTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
15809	return nil, false
15810}
15811
15812// AsSalesforceObjectDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15813func (asdtd AzureSQLDWTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
15814	return nil, false
15815}
15816
15817// AsRelationalTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15818func (asdtd AzureSQLDWTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
15819	return nil, false
15820}
15821
15822// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15823func (asdtd AzureSQLDWTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
15824	return nil, false
15825}
15826
15827// AsOracleTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15828func (asdtd AzureSQLDWTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
15829	return nil, false
15830}
15831
15832// AsODataResourceDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15833func (asdtd AzureSQLDWTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
15834	return nil, false
15835}
15836
15837// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15838func (asdtd AzureSQLDWTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
15839	return nil, false
15840}
15841
15842// AsFileShareDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15843func (asdtd AzureSQLDWTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
15844	return nil, false
15845}
15846
15847// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15848func (asdtd AzureSQLDWTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
15849	return nil, false
15850}
15851
15852// AsDynamicsEntityDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15853func (asdtd AzureSQLDWTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
15854	return nil, false
15855}
15856
15857// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15858func (asdtd AzureSQLDWTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
15859	return nil, false
15860}
15861
15862// AsCustomDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15863func (asdtd AzureSQLDWTableDataset) AsCustomDataset() (*CustomDataset, bool) {
15864	return nil, false
15865}
15866
15867// AsCassandraTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15868func (asdtd AzureSQLDWTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
15869	return nil, false
15870}
15871
15872// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15873func (asdtd AzureSQLDWTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
15874	return &asdtd, true
15875}
15876
15877// AsAzureSQLTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15878func (asdtd AzureSQLDWTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
15879	return nil, false
15880}
15881
15882// AsAzureTableDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15883func (asdtd AzureSQLDWTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
15884	return nil, false
15885}
15886
15887// AsAzureBlobDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15888func (asdtd AzureSQLDWTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
15889	return nil, false
15890}
15891
15892// AsAmazonS3Dataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15893func (asdtd AzureSQLDWTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
15894	return nil, false
15895}
15896
15897// AsDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15898func (asdtd AzureSQLDWTableDataset) AsDataset() (*Dataset, bool) {
15899	return nil, false
15900}
15901
15902// AsBasicDataset is the BasicDataset implementation for AzureSQLDWTableDataset.
15903func (asdtd AzureSQLDWTableDataset) AsBasicDataset() (BasicDataset, bool) {
15904	return &asdtd, true
15905}
15906
15907// UnmarshalJSON is the custom unmarshaler for AzureSQLDWTableDataset struct.
15908func (asdtd *AzureSQLDWTableDataset) UnmarshalJSON(body []byte) error {
15909	var m map[string]*json.RawMessage
15910	err := json.Unmarshal(body, &m)
15911	if err != nil {
15912		return err
15913	}
15914	for k, v := range m {
15915		switch k {
15916		case "typeProperties":
15917			if v != nil {
15918				var azureSQLDWTableDatasetTypeProperties AzureSQLDWTableDatasetTypeProperties
15919				err = json.Unmarshal(*v, &azureSQLDWTableDatasetTypeProperties)
15920				if err != nil {
15921					return err
15922				}
15923				asdtd.AzureSQLDWTableDatasetTypeProperties = &azureSQLDWTableDatasetTypeProperties
15924			}
15925		default:
15926			if v != nil {
15927				var additionalProperties interface{}
15928				err = json.Unmarshal(*v, &additionalProperties)
15929				if err != nil {
15930					return err
15931				}
15932				if asdtd.AdditionalProperties == nil {
15933					asdtd.AdditionalProperties = make(map[string]interface{})
15934				}
15935				asdtd.AdditionalProperties[k] = additionalProperties
15936			}
15937		case "description":
15938			if v != nil {
15939				var description string
15940				err = json.Unmarshal(*v, &description)
15941				if err != nil {
15942					return err
15943				}
15944				asdtd.Description = &description
15945			}
15946		case "structure":
15947			if v != nil {
15948				var structure interface{}
15949				err = json.Unmarshal(*v, &structure)
15950				if err != nil {
15951					return err
15952				}
15953				asdtd.Structure = structure
15954			}
15955		case "linkedServiceName":
15956			if v != nil {
15957				var linkedServiceName LinkedServiceReference
15958				err = json.Unmarshal(*v, &linkedServiceName)
15959				if err != nil {
15960					return err
15961				}
15962				asdtd.LinkedServiceName = &linkedServiceName
15963			}
15964		case "parameters":
15965			if v != nil {
15966				var parameters map[string]*ParameterSpecification
15967				err = json.Unmarshal(*v, &parameters)
15968				if err != nil {
15969					return err
15970				}
15971				asdtd.Parameters = parameters
15972			}
15973		case "annotations":
15974			if v != nil {
15975				var annotations []interface{}
15976				err = json.Unmarshal(*v, &annotations)
15977				if err != nil {
15978					return err
15979				}
15980				asdtd.Annotations = &annotations
15981			}
15982		case "type":
15983			if v != nil {
15984				var typeVar TypeBasicDataset
15985				err = json.Unmarshal(*v, &typeVar)
15986				if err != nil {
15987					return err
15988				}
15989				asdtd.Type = typeVar
15990			}
15991		}
15992	}
15993
15994	return nil
15995}
15996
15997// AzureSQLDWTableDatasetTypeProperties azure SQL Data Warehouse dataset properties.
15998type AzureSQLDWTableDatasetTypeProperties struct {
15999	// TableName - The table name of the Azure SQL Data Warehouse. Type: string (or Expression with resultType string).
16000	TableName interface{} `json:"tableName,omitempty"`
16001}
16002
16003// AzureSQLTableDataset the Azure SQL Server database dataset.
16004type AzureSQLTableDataset struct {
16005	// AzureSQLTableDatasetTypeProperties - Azure SQL dataset properties.
16006	*AzureSQLTableDatasetTypeProperties `json:"typeProperties,omitempty"`
16007	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
16008	AdditionalProperties map[string]interface{} `json:""`
16009	// Description - Dataset description.
16010	Description *string `json:"description,omitempty"`
16011	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
16012	Structure interface{} `json:"structure,omitempty"`
16013	// LinkedServiceName - Linked service reference.
16014	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
16015	// Parameters - Parameters for dataset.
16016	Parameters map[string]*ParameterSpecification `json:"parameters"`
16017	// Annotations - List of tags that can be used for describing the Dataset.
16018	Annotations *[]interface{} `json:"annotations,omitempty"`
16019	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
16020	Type TypeBasicDataset `json:"type,omitempty"`
16021}
16022
16023// MarshalJSON is the custom marshaler for AzureSQLTableDataset.
16024func (astd AzureSQLTableDataset) MarshalJSON() ([]byte, error) {
16025	astd.Type = TypeAzureSQLTable
16026	objectMap := make(map[string]interface{})
16027	if astd.AzureSQLTableDatasetTypeProperties != nil {
16028		objectMap["typeProperties"] = astd.AzureSQLTableDatasetTypeProperties
16029	}
16030	if astd.Description != nil {
16031		objectMap["description"] = astd.Description
16032	}
16033	objectMap["structure"] = astd.Structure
16034	if astd.LinkedServiceName != nil {
16035		objectMap["linkedServiceName"] = astd.LinkedServiceName
16036	}
16037	if astd.Parameters != nil {
16038		objectMap["parameters"] = astd.Parameters
16039	}
16040	if astd.Annotations != nil {
16041		objectMap["annotations"] = astd.Annotations
16042	}
16043	if astd.Type != "" {
16044		objectMap["type"] = astd.Type
16045	}
16046	for k, v := range astd.AdditionalProperties {
16047		objectMap[k] = v
16048	}
16049	return json.Marshal(objectMap)
16050}
16051
16052// AsResponsysObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16053func (astd AzureSQLTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
16054	return nil, false
16055}
16056
16057// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16058func (astd AzureSQLTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
16059	return nil, false
16060}
16061
16062// AsVerticaTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16063func (astd AzureSQLTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
16064	return nil, false
16065}
16066
16067// AsNetezzaTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16068func (astd AzureSQLTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
16069	return nil, false
16070}
16071
16072// AsZohoObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16073func (astd AzureSQLTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
16074	return nil, false
16075}
16076
16077// AsXeroObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16078func (astd AzureSQLTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
16079	return nil, false
16080}
16081
16082// AsSquareObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16083func (astd AzureSQLTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
16084	return nil, false
16085}
16086
16087// AsSparkObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16088func (astd AzureSQLTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
16089	return nil, false
16090}
16091
16092// AsShopifyObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16093func (astd AzureSQLTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
16094	return nil, false
16095}
16096
16097// AsServiceNowObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16098func (astd AzureSQLTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
16099	return nil, false
16100}
16101
16102// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16103func (astd AzureSQLTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
16104	return nil, false
16105}
16106
16107// AsPrestoObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16108func (astd AzureSQLTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
16109	return nil, false
16110}
16111
16112// AsPhoenixObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16113func (astd AzureSQLTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
16114	return nil, false
16115}
16116
16117// AsPaypalObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16118func (astd AzureSQLTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
16119	return nil, false
16120}
16121
16122// AsMarketoObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16123func (astd AzureSQLTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
16124	return nil, false
16125}
16126
16127// AsMariaDBTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16128func (astd AzureSQLTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
16129	return nil, false
16130}
16131
16132// AsMagentoObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16133func (astd AzureSQLTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
16134	return nil, false
16135}
16136
16137// AsJiraObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16138func (astd AzureSQLTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
16139	return nil, false
16140}
16141
16142// AsImpalaObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16143func (astd AzureSQLTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
16144	return nil, false
16145}
16146
16147// AsHubspotObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16148func (astd AzureSQLTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
16149	return nil, false
16150}
16151
16152// AsHiveObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16153func (astd AzureSQLTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
16154	return nil, false
16155}
16156
16157// AsHBaseObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16158func (astd AzureSQLTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
16159	return nil, false
16160}
16161
16162// AsGreenplumTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16163func (astd AzureSQLTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
16164	return nil, false
16165}
16166
16167// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16168func (astd AzureSQLTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
16169	return nil, false
16170}
16171
16172// AsEloquaObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16173func (astd AzureSQLTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
16174	return nil, false
16175}
16176
16177// AsDrillTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16178func (astd AzureSQLTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
16179	return nil, false
16180}
16181
16182// AsCouchbaseTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16183func (astd AzureSQLTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
16184	return nil, false
16185}
16186
16187// AsConcurObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16188func (astd AzureSQLTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
16189	return nil, false
16190}
16191
16192// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16193func (astd AzureSQLTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
16194	return nil, false
16195}
16196
16197// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16198func (astd AzureSQLTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
16199	return nil, false
16200}
16201
16202// AsHTTPDataset is the BasicDataset implementation for AzureSQLTableDataset.
16203func (astd AzureSQLTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
16204	return nil, false
16205}
16206
16207// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureSQLTableDataset.
16208func (astd AzureSQLTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
16209	return nil, false
16210}
16211
16212// AsWebTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16213func (astd AzureSQLTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
16214	return nil, false
16215}
16216
16217// AsSQLServerTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16218func (astd AzureSQLTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
16219	return nil, false
16220}
16221
16222// AsSapEccResourceDataset is the BasicDataset implementation for AzureSQLTableDataset.
16223func (astd AzureSQLTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
16224	return nil, false
16225}
16226
16227// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureSQLTableDataset.
16228func (astd AzureSQLTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
16229	return nil, false
16230}
16231
16232// AsSalesforceObjectDataset is the BasicDataset implementation for AzureSQLTableDataset.
16233func (astd AzureSQLTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
16234	return nil, false
16235}
16236
16237// AsRelationalTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16238func (astd AzureSQLTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
16239	return nil, false
16240}
16241
16242// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16243func (astd AzureSQLTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
16244	return nil, false
16245}
16246
16247// AsOracleTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16248func (astd AzureSQLTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
16249	return nil, false
16250}
16251
16252// AsODataResourceDataset is the BasicDataset implementation for AzureSQLTableDataset.
16253func (astd AzureSQLTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
16254	return nil, false
16255}
16256
16257// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureSQLTableDataset.
16258func (astd AzureSQLTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
16259	return nil, false
16260}
16261
16262// AsFileShareDataset is the BasicDataset implementation for AzureSQLTableDataset.
16263func (astd AzureSQLTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
16264	return nil, false
16265}
16266
16267// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureSQLTableDataset.
16268func (astd AzureSQLTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
16269	return nil, false
16270}
16271
16272// AsDynamicsEntityDataset is the BasicDataset implementation for AzureSQLTableDataset.
16273func (astd AzureSQLTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
16274	return nil, false
16275}
16276
16277// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureSQLTableDataset.
16278func (astd AzureSQLTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
16279	return nil, false
16280}
16281
16282// AsCustomDataset is the BasicDataset implementation for AzureSQLTableDataset.
16283func (astd AzureSQLTableDataset) AsCustomDataset() (*CustomDataset, bool) {
16284	return nil, false
16285}
16286
16287// AsCassandraTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16288func (astd AzureSQLTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
16289	return nil, false
16290}
16291
16292// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16293func (astd AzureSQLTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
16294	return nil, false
16295}
16296
16297// AsAzureSQLTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16298func (astd AzureSQLTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
16299	return &astd, true
16300}
16301
16302// AsAzureTableDataset is the BasicDataset implementation for AzureSQLTableDataset.
16303func (astd AzureSQLTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
16304	return nil, false
16305}
16306
16307// AsAzureBlobDataset is the BasicDataset implementation for AzureSQLTableDataset.
16308func (astd AzureSQLTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
16309	return nil, false
16310}
16311
16312// AsAmazonS3Dataset is the BasicDataset implementation for AzureSQLTableDataset.
16313func (astd AzureSQLTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
16314	return nil, false
16315}
16316
16317// AsDataset is the BasicDataset implementation for AzureSQLTableDataset.
16318func (astd AzureSQLTableDataset) AsDataset() (*Dataset, bool) {
16319	return nil, false
16320}
16321
16322// AsBasicDataset is the BasicDataset implementation for AzureSQLTableDataset.
16323func (astd AzureSQLTableDataset) AsBasicDataset() (BasicDataset, bool) {
16324	return &astd, true
16325}
16326
16327// UnmarshalJSON is the custom unmarshaler for AzureSQLTableDataset struct.
16328func (astd *AzureSQLTableDataset) UnmarshalJSON(body []byte) error {
16329	var m map[string]*json.RawMessage
16330	err := json.Unmarshal(body, &m)
16331	if err != nil {
16332		return err
16333	}
16334	for k, v := range m {
16335		switch k {
16336		case "typeProperties":
16337			if v != nil {
16338				var azureSQLTableDatasetTypeProperties AzureSQLTableDatasetTypeProperties
16339				err = json.Unmarshal(*v, &azureSQLTableDatasetTypeProperties)
16340				if err != nil {
16341					return err
16342				}
16343				astd.AzureSQLTableDatasetTypeProperties = &azureSQLTableDatasetTypeProperties
16344			}
16345		default:
16346			if v != nil {
16347				var additionalProperties interface{}
16348				err = json.Unmarshal(*v, &additionalProperties)
16349				if err != nil {
16350					return err
16351				}
16352				if astd.AdditionalProperties == nil {
16353					astd.AdditionalProperties = make(map[string]interface{})
16354				}
16355				astd.AdditionalProperties[k] = additionalProperties
16356			}
16357		case "description":
16358			if v != nil {
16359				var description string
16360				err = json.Unmarshal(*v, &description)
16361				if err != nil {
16362					return err
16363				}
16364				astd.Description = &description
16365			}
16366		case "structure":
16367			if v != nil {
16368				var structure interface{}
16369				err = json.Unmarshal(*v, &structure)
16370				if err != nil {
16371					return err
16372				}
16373				astd.Structure = structure
16374			}
16375		case "linkedServiceName":
16376			if v != nil {
16377				var linkedServiceName LinkedServiceReference
16378				err = json.Unmarshal(*v, &linkedServiceName)
16379				if err != nil {
16380					return err
16381				}
16382				astd.LinkedServiceName = &linkedServiceName
16383			}
16384		case "parameters":
16385			if v != nil {
16386				var parameters map[string]*ParameterSpecification
16387				err = json.Unmarshal(*v, &parameters)
16388				if err != nil {
16389					return err
16390				}
16391				astd.Parameters = parameters
16392			}
16393		case "annotations":
16394			if v != nil {
16395				var annotations []interface{}
16396				err = json.Unmarshal(*v, &annotations)
16397				if err != nil {
16398					return err
16399				}
16400				astd.Annotations = &annotations
16401			}
16402		case "type":
16403			if v != nil {
16404				var typeVar TypeBasicDataset
16405				err = json.Unmarshal(*v, &typeVar)
16406				if err != nil {
16407					return err
16408				}
16409				astd.Type = typeVar
16410			}
16411		}
16412	}
16413
16414	return nil
16415}
16416
16417// AzureSQLTableDatasetTypeProperties azure SQL dataset properties.
16418type AzureSQLTableDatasetTypeProperties struct {
16419	// TableName - The table name of the Azure SQL database. Type: string (or Expression with resultType string).
16420	TableName interface{} `json:"tableName,omitempty"`
16421}
16422
16423// AzureStorageLinkedService the storage account linked service.
16424type AzureStorageLinkedService struct {
16425	// AzureStorageLinkedServiceTypeProperties - Azure Storage linked service properties.
16426	*AzureStorageLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
16427	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
16428	AdditionalProperties map[string]interface{} `json:""`
16429	// ConnectVia - The integration runtime reference.
16430	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
16431	// Description - Linked service description.
16432	Description *string `json:"description,omitempty"`
16433	// Parameters - Parameters for linked service.
16434	Parameters map[string]*ParameterSpecification `json:"parameters"`
16435	// Annotations - List of tags that can be used for describing the Dataset.
16436	Annotations *[]interface{} `json:"annotations,omitempty"`
16437	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
16438	Type TypeBasicLinkedService `json:"type,omitempty"`
16439}
16440
16441// MarshalJSON is the custom marshaler for AzureStorageLinkedService.
16442func (asls AzureStorageLinkedService) MarshalJSON() ([]byte, error) {
16443	asls.Type = TypeAzureStorage
16444	objectMap := make(map[string]interface{})
16445	if asls.AzureStorageLinkedServiceTypeProperties != nil {
16446		objectMap["typeProperties"] = asls.AzureStorageLinkedServiceTypeProperties
16447	}
16448	if asls.ConnectVia != nil {
16449		objectMap["connectVia"] = asls.ConnectVia
16450	}
16451	if asls.Description != nil {
16452		objectMap["description"] = asls.Description
16453	}
16454	if asls.Parameters != nil {
16455		objectMap["parameters"] = asls.Parameters
16456	}
16457	if asls.Annotations != nil {
16458		objectMap["annotations"] = asls.Annotations
16459	}
16460	if asls.Type != "" {
16461		objectMap["type"] = asls.Type
16462	}
16463	for k, v := range asls.AdditionalProperties {
16464		objectMap[k] = v
16465	}
16466	return json.Marshal(objectMap)
16467}
16468
16469// AsResponsysLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16470func (asls AzureStorageLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
16471	return nil, false
16472}
16473
16474// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16475func (asls AzureStorageLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
16476	return nil, false
16477}
16478
16479// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16480func (asls AzureStorageLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
16481	return nil, false
16482}
16483
16484// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16485func (asls AzureStorageLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
16486	return nil, false
16487}
16488
16489// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16490func (asls AzureStorageLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
16491	return nil, false
16492}
16493
16494// AsNetezzaLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16495func (asls AzureStorageLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
16496	return nil, false
16497}
16498
16499// AsVerticaLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16500func (asls AzureStorageLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
16501	return nil, false
16502}
16503
16504// AsZohoLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16505func (asls AzureStorageLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
16506	return nil, false
16507}
16508
16509// AsXeroLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16510func (asls AzureStorageLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
16511	return nil, false
16512}
16513
16514// AsSquareLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16515func (asls AzureStorageLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
16516	return nil, false
16517}
16518
16519// AsSparkLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16520func (asls AzureStorageLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
16521	return nil, false
16522}
16523
16524// AsShopifyLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16525func (asls AzureStorageLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
16526	return nil, false
16527}
16528
16529// AsServiceNowLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16530func (asls AzureStorageLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
16531	return nil, false
16532}
16533
16534// AsQuickBooksLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16535func (asls AzureStorageLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
16536	return nil, false
16537}
16538
16539// AsPrestoLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16540func (asls AzureStorageLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
16541	return nil, false
16542}
16543
16544// AsPhoenixLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16545func (asls AzureStorageLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
16546	return nil, false
16547}
16548
16549// AsPaypalLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16550func (asls AzureStorageLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
16551	return nil, false
16552}
16553
16554// AsMarketoLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16555func (asls AzureStorageLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
16556	return nil, false
16557}
16558
16559// AsMariaDBLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16560func (asls AzureStorageLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
16561	return nil, false
16562}
16563
16564// AsMagentoLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16565func (asls AzureStorageLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
16566	return nil, false
16567}
16568
16569// AsJiraLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16570func (asls AzureStorageLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
16571	return nil, false
16572}
16573
16574// AsImpalaLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16575func (asls AzureStorageLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
16576	return nil, false
16577}
16578
16579// AsHubspotLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16580func (asls AzureStorageLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
16581	return nil, false
16582}
16583
16584// AsHiveLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16585func (asls AzureStorageLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
16586	return nil, false
16587}
16588
16589// AsHBaseLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16590func (asls AzureStorageLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
16591	return nil, false
16592}
16593
16594// AsGreenplumLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16595func (asls AzureStorageLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
16596	return nil, false
16597}
16598
16599// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16600func (asls AzureStorageLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
16601	return nil, false
16602}
16603
16604// AsEloquaLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16605func (asls AzureStorageLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
16606	return nil, false
16607}
16608
16609// AsDrillLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16610func (asls AzureStorageLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
16611	return nil, false
16612}
16613
16614// AsCouchbaseLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16615func (asls AzureStorageLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
16616	return nil, false
16617}
16618
16619// AsConcurLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16620func (asls AzureStorageLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
16621	return nil, false
16622}
16623
16624// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16625func (asls AzureStorageLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
16626	return nil, false
16627}
16628
16629// AsAmazonMWSLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16630func (asls AzureStorageLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
16631	return nil, false
16632}
16633
16634// AsSapHanaLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16635func (asls AzureStorageLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
16636	return nil, false
16637}
16638
16639// AsSapBWLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16640func (asls AzureStorageLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
16641	return nil, false
16642}
16643
16644// AsSftpServerLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16645func (asls AzureStorageLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
16646	return nil, false
16647}
16648
16649// AsFtpServerLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16650func (asls AzureStorageLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
16651	return nil, false
16652}
16653
16654// AsHTTPLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16655func (asls AzureStorageLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
16656	return nil, false
16657}
16658
16659// AsAzureSearchLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16660func (asls AzureStorageLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
16661	return nil, false
16662}
16663
16664// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16665func (asls AzureStorageLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
16666	return nil, false
16667}
16668
16669// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16670func (asls AzureStorageLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
16671	return nil, false
16672}
16673
16674// AsAmazonS3LinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16675func (asls AzureStorageLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
16676	return nil, false
16677}
16678
16679// AsSapEccLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16680func (asls AzureStorageLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
16681	return nil, false
16682}
16683
16684// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16685func (asls AzureStorageLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
16686	return nil, false
16687}
16688
16689// AsSalesforceLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16690func (asls AzureStorageLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
16691	return nil, false
16692}
16693
16694// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16695func (asls AzureStorageLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
16696	return nil, false
16697}
16698
16699// AsMongoDbLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16700func (asls AzureStorageLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
16701	return nil, false
16702}
16703
16704// AsCassandraLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16705func (asls AzureStorageLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
16706	return nil, false
16707}
16708
16709// AsWebLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16710func (asls AzureStorageLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
16711	return nil, false
16712}
16713
16714// AsODataLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16715func (asls AzureStorageLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
16716	return nil, false
16717}
16718
16719// AsHdfsLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16720func (asls AzureStorageLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
16721	return nil, false
16722}
16723
16724// AsOdbcLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16725func (asls AzureStorageLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
16726	return nil, false
16727}
16728
16729// AsAzureMLLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16730func (asls AzureStorageLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
16731	return nil, false
16732}
16733
16734// AsTeradataLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16735func (asls AzureStorageLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
16736	return nil, false
16737}
16738
16739// AsDb2LinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16740func (asls AzureStorageLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
16741	return nil, false
16742}
16743
16744// AsSybaseLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16745func (asls AzureStorageLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
16746	return nil, false
16747}
16748
16749// AsPostgreSQLLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16750func (asls AzureStorageLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
16751	return nil, false
16752}
16753
16754// AsMySQLLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16755func (asls AzureStorageLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
16756	return nil, false
16757}
16758
16759// AsAzureMySQLLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16760func (asls AzureStorageLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
16761	return nil, false
16762}
16763
16764// AsOracleLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16765func (asls AzureStorageLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
16766	return nil, false
16767}
16768
16769// AsFileServerLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16770func (asls AzureStorageLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
16771	return nil, false
16772}
16773
16774// AsHDInsightLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16775func (asls AzureStorageLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
16776	return nil, false
16777}
16778
16779// AsDynamicsLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16780func (asls AzureStorageLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
16781	return nil, false
16782}
16783
16784// AsCosmosDbLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16785func (asls AzureStorageLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
16786	return nil, false
16787}
16788
16789// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16790func (asls AzureStorageLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
16791	return nil, false
16792}
16793
16794// AsAzureBatchLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16795func (asls AzureStorageLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
16796	return nil, false
16797}
16798
16799// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16800func (asls AzureStorageLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
16801	return nil, false
16802}
16803
16804// AsSQLServerLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16805func (asls AzureStorageLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
16806	return nil, false
16807}
16808
16809// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16810func (asls AzureStorageLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
16811	return nil, false
16812}
16813
16814// AsAzureStorageLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16815func (asls AzureStorageLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
16816	return &asls, true
16817}
16818
16819// AsLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16820func (asls AzureStorageLinkedService) AsLinkedService() (*LinkedService, bool) {
16821	return nil, false
16822}
16823
16824// AsBasicLinkedService is the BasicLinkedService implementation for AzureStorageLinkedService.
16825func (asls AzureStorageLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
16826	return &asls, true
16827}
16828
16829// UnmarshalJSON is the custom unmarshaler for AzureStorageLinkedService struct.
16830func (asls *AzureStorageLinkedService) UnmarshalJSON(body []byte) error {
16831	var m map[string]*json.RawMessage
16832	err := json.Unmarshal(body, &m)
16833	if err != nil {
16834		return err
16835	}
16836	for k, v := range m {
16837		switch k {
16838		case "typeProperties":
16839			if v != nil {
16840				var azureStorageLinkedServiceTypeProperties AzureStorageLinkedServiceTypeProperties
16841				err = json.Unmarshal(*v, &azureStorageLinkedServiceTypeProperties)
16842				if err != nil {
16843					return err
16844				}
16845				asls.AzureStorageLinkedServiceTypeProperties = &azureStorageLinkedServiceTypeProperties
16846			}
16847		default:
16848			if v != nil {
16849				var additionalProperties interface{}
16850				err = json.Unmarshal(*v, &additionalProperties)
16851				if err != nil {
16852					return err
16853				}
16854				if asls.AdditionalProperties == nil {
16855					asls.AdditionalProperties = make(map[string]interface{})
16856				}
16857				asls.AdditionalProperties[k] = additionalProperties
16858			}
16859		case "connectVia":
16860			if v != nil {
16861				var connectVia IntegrationRuntimeReference
16862				err = json.Unmarshal(*v, &connectVia)
16863				if err != nil {
16864					return err
16865				}
16866				asls.ConnectVia = &connectVia
16867			}
16868		case "description":
16869			if v != nil {
16870				var description string
16871				err = json.Unmarshal(*v, &description)
16872				if err != nil {
16873					return err
16874				}
16875				asls.Description = &description
16876			}
16877		case "parameters":
16878			if v != nil {
16879				var parameters map[string]*ParameterSpecification
16880				err = json.Unmarshal(*v, &parameters)
16881				if err != nil {
16882					return err
16883				}
16884				asls.Parameters = parameters
16885			}
16886		case "annotations":
16887			if v != nil {
16888				var annotations []interface{}
16889				err = json.Unmarshal(*v, &annotations)
16890				if err != nil {
16891					return err
16892				}
16893				asls.Annotations = &annotations
16894			}
16895		case "type":
16896			if v != nil {
16897				var typeVar TypeBasicLinkedService
16898				err = json.Unmarshal(*v, &typeVar)
16899				if err != nil {
16900					return err
16901				}
16902				asls.Type = typeVar
16903			}
16904		}
16905	}
16906
16907	return nil
16908}
16909
16910// AzureStorageLinkedServiceTypeProperties azure Storage linked service properties.
16911type AzureStorageLinkedServiceTypeProperties struct {
16912	// ConnectionString - The connection string. It is mutually exclusive with sasUri property.
16913	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
16914	// SasURI - SAS URI of the Azure Storage resource. It is mutually exclusive with connectionString property.
16915	SasURI BasicSecretBase `json:"sasUri,omitempty"`
16916	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
16917	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
16918}
16919
16920// UnmarshalJSON is the custom unmarshaler for AzureStorageLinkedServiceTypeProperties struct.
16921func (aslstp *AzureStorageLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
16922	var m map[string]*json.RawMessage
16923	err := json.Unmarshal(body, &m)
16924	if err != nil {
16925		return err
16926	}
16927	for k, v := range m {
16928		switch k {
16929		case "connectionString":
16930			if v != nil {
16931				connectionString, err := unmarshalBasicSecretBase(*v)
16932				if err != nil {
16933					return err
16934				}
16935				aslstp.ConnectionString = connectionString
16936			}
16937		case "sasUri":
16938			if v != nil {
16939				sasURI, err := unmarshalBasicSecretBase(*v)
16940				if err != nil {
16941					return err
16942				}
16943				aslstp.SasURI = sasURI
16944			}
16945		case "encryptedCredential":
16946			if v != nil {
16947				var encryptedCredential interface{}
16948				err = json.Unmarshal(*v, &encryptedCredential)
16949				if err != nil {
16950					return err
16951				}
16952				aslstp.EncryptedCredential = encryptedCredential
16953			}
16954		}
16955	}
16956
16957	return nil
16958}
16959
16960// AzureTableDataset the Azure Table storage dataset.
16961type AzureTableDataset struct {
16962	// AzureTableDatasetTypeProperties - Azure Table dataset properties.
16963	*AzureTableDatasetTypeProperties `json:"typeProperties,omitempty"`
16964	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
16965	AdditionalProperties map[string]interface{} `json:""`
16966	// Description - Dataset description.
16967	Description *string `json:"description,omitempty"`
16968	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
16969	Structure interface{} `json:"structure,omitempty"`
16970	// LinkedServiceName - Linked service reference.
16971	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
16972	// Parameters - Parameters for dataset.
16973	Parameters map[string]*ParameterSpecification `json:"parameters"`
16974	// Annotations - List of tags that can be used for describing the Dataset.
16975	Annotations *[]interface{} `json:"annotations,omitempty"`
16976	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
16977	Type TypeBasicDataset `json:"type,omitempty"`
16978}
16979
16980// MarshalJSON is the custom marshaler for AzureTableDataset.
16981func (atd AzureTableDataset) MarshalJSON() ([]byte, error) {
16982	atd.Type = TypeAzureTable
16983	objectMap := make(map[string]interface{})
16984	if atd.AzureTableDatasetTypeProperties != nil {
16985		objectMap["typeProperties"] = atd.AzureTableDatasetTypeProperties
16986	}
16987	if atd.Description != nil {
16988		objectMap["description"] = atd.Description
16989	}
16990	objectMap["structure"] = atd.Structure
16991	if atd.LinkedServiceName != nil {
16992		objectMap["linkedServiceName"] = atd.LinkedServiceName
16993	}
16994	if atd.Parameters != nil {
16995		objectMap["parameters"] = atd.Parameters
16996	}
16997	if atd.Annotations != nil {
16998		objectMap["annotations"] = atd.Annotations
16999	}
17000	if atd.Type != "" {
17001		objectMap["type"] = atd.Type
17002	}
17003	for k, v := range atd.AdditionalProperties {
17004		objectMap[k] = v
17005	}
17006	return json.Marshal(objectMap)
17007}
17008
17009// AsResponsysObjectDataset is the BasicDataset implementation for AzureTableDataset.
17010func (atd AzureTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
17011	return nil, false
17012}
17013
17014// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for AzureTableDataset.
17015func (atd AzureTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
17016	return nil, false
17017}
17018
17019// AsVerticaTableDataset is the BasicDataset implementation for AzureTableDataset.
17020func (atd AzureTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
17021	return nil, false
17022}
17023
17024// AsNetezzaTableDataset is the BasicDataset implementation for AzureTableDataset.
17025func (atd AzureTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
17026	return nil, false
17027}
17028
17029// AsZohoObjectDataset is the BasicDataset implementation for AzureTableDataset.
17030func (atd AzureTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
17031	return nil, false
17032}
17033
17034// AsXeroObjectDataset is the BasicDataset implementation for AzureTableDataset.
17035func (atd AzureTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
17036	return nil, false
17037}
17038
17039// AsSquareObjectDataset is the BasicDataset implementation for AzureTableDataset.
17040func (atd AzureTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
17041	return nil, false
17042}
17043
17044// AsSparkObjectDataset is the BasicDataset implementation for AzureTableDataset.
17045func (atd AzureTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
17046	return nil, false
17047}
17048
17049// AsShopifyObjectDataset is the BasicDataset implementation for AzureTableDataset.
17050func (atd AzureTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
17051	return nil, false
17052}
17053
17054// AsServiceNowObjectDataset is the BasicDataset implementation for AzureTableDataset.
17055func (atd AzureTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
17056	return nil, false
17057}
17058
17059// AsQuickBooksObjectDataset is the BasicDataset implementation for AzureTableDataset.
17060func (atd AzureTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
17061	return nil, false
17062}
17063
17064// AsPrestoObjectDataset is the BasicDataset implementation for AzureTableDataset.
17065func (atd AzureTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
17066	return nil, false
17067}
17068
17069// AsPhoenixObjectDataset is the BasicDataset implementation for AzureTableDataset.
17070func (atd AzureTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
17071	return nil, false
17072}
17073
17074// AsPaypalObjectDataset is the BasicDataset implementation for AzureTableDataset.
17075func (atd AzureTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
17076	return nil, false
17077}
17078
17079// AsMarketoObjectDataset is the BasicDataset implementation for AzureTableDataset.
17080func (atd AzureTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
17081	return nil, false
17082}
17083
17084// AsMariaDBTableDataset is the BasicDataset implementation for AzureTableDataset.
17085func (atd AzureTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
17086	return nil, false
17087}
17088
17089// AsMagentoObjectDataset is the BasicDataset implementation for AzureTableDataset.
17090func (atd AzureTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
17091	return nil, false
17092}
17093
17094// AsJiraObjectDataset is the BasicDataset implementation for AzureTableDataset.
17095func (atd AzureTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
17096	return nil, false
17097}
17098
17099// AsImpalaObjectDataset is the BasicDataset implementation for AzureTableDataset.
17100func (atd AzureTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
17101	return nil, false
17102}
17103
17104// AsHubspotObjectDataset is the BasicDataset implementation for AzureTableDataset.
17105func (atd AzureTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
17106	return nil, false
17107}
17108
17109// AsHiveObjectDataset is the BasicDataset implementation for AzureTableDataset.
17110func (atd AzureTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
17111	return nil, false
17112}
17113
17114// AsHBaseObjectDataset is the BasicDataset implementation for AzureTableDataset.
17115func (atd AzureTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
17116	return nil, false
17117}
17118
17119// AsGreenplumTableDataset is the BasicDataset implementation for AzureTableDataset.
17120func (atd AzureTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
17121	return nil, false
17122}
17123
17124// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for AzureTableDataset.
17125func (atd AzureTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
17126	return nil, false
17127}
17128
17129// AsEloquaObjectDataset is the BasicDataset implementation for AzureTableDataset.
17130func (atd AzureTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
17131	return nil, false
17132}
17133
17134// AsDrillTableDataset is the BasicDataset implementation for AzureTableDataset.
17135func (atd AzureTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
17136	return nil, false
17137}
17138
17139// AsCouchbaseTableDataset is the BasicDataset implementation for AzureTableDataset.
17140func (atd AzureTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
17141	return nil, false
17142}
17143
17144// AsConcurObjectDataset is the BasicDataset implementation for AzureTableDataset.
17145func (atd AzureTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
17146	return nil, false
17147}
17148
17149// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for AzureTableDataset.
17150func (atd AzureTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
17151	return nil, false
17152}
17153
17154// AsAmazonMWSObjectDataset is the BasicDataset implementation for AzureTableDataset.
17155func (atd AzureTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
17156	return nil, false
17157}
17158
17159// AsHTTPDataset is the BasicDataset implementation for AzureTableDataset.
17160func (atd AzureTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
17161	return nil, false
17162}
17163
17164// AsAzureSearchIndexDataset is the BasicDataset implementation for AzureTableDataset.
17165func (atd AzureTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
17166	return nil, false
17167}
17168
17169// AsWebTableDataset is the BasicDataset implementation for AzureTableDataset.
17170func (atd AzureTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
17171	return nil, false
17172}
17173
17174// AsSQLServerTableDataset is the BasicDataset implementation for AzureTableDataset.
17175func (atd AzureTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
17176	return nil, false
17177}
17178
17179// AsSapEccResourceDataset is the BasicDataset implementation for AzureTableDataset.
17180func (atd AzureTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
17181	return nil, false
17182}
17183
17184// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for AzureTableDataset.
17185func (atd AzureTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
17186	return nil, false
17187}
17188
17189// AsSalesforceObjectDataset is the BasicDataset implementation for AzureTableDataset.
17190func (atd AzureTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
17191	return nil, false
17192}
17193
17194// AsRelationalTableDataset is the BasicDataset implementation for AzureTableDataset.
17195func (atd AzureTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
17196	return nil, false
17197}
17198
17199// AsAzureMySQLTableDataset is the BasicDataset implementation for AzureTableDataset.
17200func (atd AzureTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
17201	return nil, false
17202}
17203
17204// AsOracleTableDataset is the BasicDataset implementation for AzureTableDataset.
17205func (atd AzureTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
17206	return nil, false
17207}
17208
17209// AsODataResourceDataset is the BasicDataset implementation for AzureTableDataset.
17210func (atd AzureTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
17211	return nil, false
17212}
17213
17214// AsMongoDbCollectionDataset is the BasicDataset implementation for AzureTableDataset.
17215func (atd AzureTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
17216	return nil, false
17217}
17218
17219// AsFileShareDataset is the BasicDataset implementation for AzureTableDataset.
17220func (atd AzureTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
17221	return nil, false
17222}
17223
17224// AsAzureDataLakeStoreDataset is the BasicDataset implementation for AzureTableDataset.
17225func (atd AzureTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
17226	return nil, false
17227}
17228
17229// AsDynamicsEntityDataset is the BasicDataset implementation for AzureTableDataset.
17230func (atd AzureTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
17231	return nil, false
17232}
17233
17234// AsDocumentDbCollectionDataset is the BasicDataset implementation for AzureTableDataset.
17235func (atd AzureTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
17236	return nil, false
17237}
17238
17239// AsCustomDataset is the BasicDataset implementation for AzureTableDataset.
17240func (atd AzureTableDataset) AsCustomDataset() (*CustomDataset, bool) {
17241	return nil, false
17242}
17243
17244// AsCassandraTableDataset is the BasicDataset implementation for AzureTableDataset.
17245func (atd AzureTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
17246	return nil, false
17247}
17248
17249// AsAzureSQLDWTableDataset is the BasicDataset implementation for AzureTableDataset.
17250func (atd AzureTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
17251	return nil, false
17252}
17253
17254// AsAzureSQLTableDataset is the BasicDataset implementation for AzureTableDataset.
17255func (atd AzureTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
17256	return nil, false
17257}
17258
17259// AsAzureTableDataset is the BasicDataset implementation for AzureTableDataset.
17260func (atd AzureTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
17261	return &atd, true
17262}
17263
17264// AsAzureBlobDataset is the BasicDataset implementation for AzureTableDataset.
17265func (atd AzureTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
17266	return nil, false
17267}
17268
17269// AsAmazonS3Dataset is the BasicDataset implementation for AzureTableDataset.
17270func (atd AzureTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
17271	return nil, false
17272}
17273
17274// AsDataset is the BasicDataset implementation for AzureTableDataset.
17275func (atd AzureTableDataset) AsDataset() (*Dataset, bool) {
17276	return nil, false
17277}
17278
17279// AsBasicDataset is the BasicDataset implementation for AzureTableDataset.
17280func (atd AzureTableDataset) AsBasicDataset() (BasicDataset, bool) {
17281	return &atd, true
17282}
17283
17284// UnmarshalJSON is the custom unmarshaler for AzureTableDataset struct.
17285func (atd *AzureTableDataset) UnmarshalJSON(body []byte) error {
17286	var m map[string]*json.RawMessage
17287	err := json.Unmarshal(body, &m)
17288	if err != nil {
17289		return err
17290	}
17291	for k, v := range m {
17292		switch k {
17293		case "typeProperties":
17294			if v != nil {
17295				var azureTableDatasetTypeProperties AzureTableDatasetTypeProperties
17296				err = json.Unmarshal(*v, &azureTableDatasetTypeProperties)
17297				if err != nil {
17298					return err
17299				}
17300				atd.AzureTableDatasetTypeProperties = &azureTableDatasetTypeProperties
17301			}
17302		default:
17303			if v != nil {
17304				var additionalProperties interface{}
17305				err = json.Unmarshal(*v, &additionalProperties)
17306				if err != nil {
17307					return err
17308				}
17309				if atd.AdditionalProperties == nil {
17310					atd.AdditionalProperties = make(map[string]interface{})
17311				}
17312				atd.AdditionalProperties[k] = additionalProperties
17313			}
17314		case "description":
17315			if v != nil {
17316				var description string
17317				err = json.Unmarshal(*v, &description)
17318				if err != nil {
17319					return err
17320				}
17321				atd.Description = &description
17322			}
17323		case "structure":
17324			if v != nil {
17325				var structure interface{}
17326				err = json.Unmarshal(*v, &structure)
17327				if err != nil {
17328					return err
17329				}
17330				atd.Structure = structure
17331			}
17332		case "linkedServiceName":
17333			if v != nil {
17334				var linkedServiceName LinkedServiceReference
17335				err = json.Unmarshal(*v, &linkedServiceName)
17336				if err != nil {
17337					return err
17338				}
17339				atd.LinkedServiceName = &linkedServiceName
17340			}
17341		case "parameters":
17342			if v != nil {
17343				var parameters map[string]*ParameterSpecification
17344				err = json.Unmarshal(*v, &parameters)
17345				if err != nil {
17346					return err
17347				}
17348				atd.Parameters = parameters
17349			}
17350		case "annotations":
17351			if v != nil {
17352				var annotations []interface{}
17353				err = json.Unmarshal(*v, &annotations)
17354				if err != nil {
17355					return err
17356				}
17357				atd.Annotations = &annotations
17358			}
17359		case "type":
17360			if v != nil {
17361				var typeVar TypeBasicDataset
17362				err = json.Unmarshal(*v, &typeVar)
17363				if err != nil {
17364					return err
17365				}
17366				atd.Type = typeVar
17367			}
17368		}
17369	}
17370
17371	return nil
17372}
17373
17374// AzureTableDatasetTypeProperties azure Table dataset properties.
17375type AzureTableDatasetTypeProperties struct {
17376	// TableName - The table name of the Azure Table storage. Type: string (or Expression with resultType string).
17377	TableName interface{} `json:"tableName,omitempty"`
17378}
17379
17380// AzureTableSink a copy activity Azure Table sink.
17381type AzureTableSink struct {
17382	// AzureTableDefaultPartitionKeyValue - Azure Table default partition key value. Type: string (or Expression with resultType string).
17383	AzureTableDefaultPartitionKeyValue interface{} `json:"azureTableDefaultPartitionKeyValue,omitempty"`
17384	// AzureTablePartitionKeyName - Azure Table partition key name. Type: string (or Expression with resultType string).
17385	AzureTablePartitionKeyName interface{} `json:"azureTablePartitionKeyName,omitempty"`
17386	// AzureTableRowKeyName - Azure Table row key name. Type: string (or Expression with resultType string).
17387	AzureTableRowKeyName interface{} `json:"azureTableRowKeyName,omitempty"`
17388	// AzureTableInsertType - Azure Table insert type. Type: string (or Expression with resultType string).
17389	AzureTableInsertType interface{} `json:"azureTableInsertType,omitempty"`
17390	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
17391	AdditionalProperties map[string]interface{} `json:""`
17392	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
17393	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
17394	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17395	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
17396	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
17397	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
17398	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17399	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
17400	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
17401	Type TypeBasicCopySink `json:"type,omitempty"`
17402}
17403
17404// MarshalJSON is the custom marshaler for AzureTableSink.
17405func (ats AzureTableSink) MarshalJSON() ([]byte, error) {
17406	ats.Type = TypeAzureTableSink
17407	objectMap := make(map[string]interface{})
17408	objectMap["azureTableDefaultPartitionKeyValue"] = ats.AzureTableDefaultPartitionKeyValue
17409	objectMap["azureTablePartitionKeyName"] = ats.AzureTablePartitionKeyName
17410	objectMap["azureTableRowKeyName"] = ats.AzureTableRowKeyName
17411	objectMap["azureTableInsertType"] = ats.AzureTableInsertType
17412	objectMap["writeBatchSize"] = ats.WriteBatchSize
17413	objectMap["writeBatchTimeout"] = ats.WriteBatchTimeout
17414	objectMap["sinkRetryCount"] = ats.SinkRetryCount
17415	objectMap["sinkRetryWait"] = ats.SinkRetryWait
17416	if ats.Type != "" {
17417		objectMap["type"] = ats.Type
17418	}
17419	for k, v := range ats.AdditionalProperties {
17420		objectMap[k] = v
17421	}
17422	return json.Marshal(objectMap)
17423}
17424
17425// AsSalesforceSink is the BasicCopySink implementation for AzureTableSink.
17426func (ats AzureTableSink) AsSalesforceSink() (*SalesforceSink, bool) {
17427	return nil, false
17428}
17429
17430// AsDynamicsSink is the BasicCopySink implementation for AzureTableSink.
17431func (ats AzureTableSink) AsDynamicsSink() (*DynamicsSink, bool) {
17432	return nil, false
17433}
17434
17435// AsOdbcSink is the BasicCopySink implementation for AzureTableSink.
17436func (ats AzureTableSink) AsOdbcSink() (*OdbcSink, bool) {
17437	return nil, false
17438}
17439
17440// AsAzureSearchIndexSink is the BasicCopySink implementation for AzureTableSink.
17441func (ats AzureTableSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
17442	return nil, false
17443}
17444
17445// AsAzureDataLakeStoreSink is the BasicCopySink implementation for AzureTableSink.
17446func (ats AzureTableSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
17447	return nil, false
17448}
17449
17450// AsOracleSink is the BasicCopySink implementation for AzureTableSink.
17451func (ats AzureTableSink) AsOracleSink() (*OracleSink, bool) {
17452	return nil, false
17453}
17454
17455// AsSQLDWSink is the BasicCopySink implementation for AzureTableSink.
17456func (ats AzureTableSink) AsSQLDWSink() (*SQLDWSink, bool) {
17457	return nil, false
17458}
17459
17460// AsSQLSink is the BasicCopySink implementation for AzureTableSink.
17461func (ats AzureTableSink) AsSQLSink() (*SQLSink, bool) {
17462	return nil, false
17463}
17464
17465// AsDocumentDbCollectionSink is the BasicCopySink implementation for AzureTableSink.
17466func (ats AzureTableSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
17467	return nil, false
17468}
17469
17470// AsFileSystemSink is the BasicCopySink implementation for AzureTableSink.
17471func (ats AzureTableSink) AsFileSystemSink() (*FileSystemSink, bool) {
17472	return nil, false
17473}
17474
17475// AsBlobSink is the BasicCopySink implementation for AzureTableSink.
17476func (ats AzureTableSink) AsBlobSink() (*BlobSink, bool) {
17477	return nil, false
17478}
17479
17480// AsAzureTableSink is the BasicCopySink implementation for AzureTableSink.
17481func (ats AzureTableSink) AsAzureTableSink() (*AzureTableSink, bool) {
17482	return &ats, true
17483}
17484
17485// AsAzureQueueSink is the BasicCopySink implementation for AzureTableSink.
17486func (ats AzureTableSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
17487	return nil, false
17488}
17489
17490// AsSapCloudForCustomerSink is the BasicCopySink implementation for AzureTableSink.
17491func (ats AzureTableSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
17492	return nil, false
17493}
17494
17495// AsCopySink is the BasicCopySink implementation for AzureTableSink.
17496func (ats AzureTableSink) AsCopySink() (*CopySink, bool) {
17497	return nil, false
17498}
17499
17500// AsBasicCopySink is the BasicCopySink implementation for AzureTableSink.
17501func (ats AzureTableSink) AsBasicCopySink() (BasicCopySink, bool) {
17502	return &ats, true
17503}
17504
17505// AzureTableSource a copy activity Azure Table source.
17506type AzureTableSource struct {
17507	// AzureTableSourceQuery - Azure Table source query. Type: string (or Expression with resultType string).
17508	AzureTableSourceQuery interface{} `json:"azureTableSourceQuery,omitempty"`
17509	// AzureTableSourceIgnoreTableNotFound - Azure Table source ignore table not found. Type: boolean (or Expression with resultType boolean).
17510	AzureTableSourceIgnoreTableNotFound interface{} `json:"azureTableSourceIgnoreTableNotFound,omitempty"`
17511	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
17512	AdditionalProperties map[string]interface{} `json:""`
17513	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
17514	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
17515	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17516	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
17517	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
17518	Type TypeBasicCopySource `json:"type,omitempty"`
17519}
17520
17521// MarshalJSON is the custom marshaler for AzureTableSource.
17522func (ats AzureTableSource) MarshalJSON() ([]byte, error) {
17523	ats.Type = TypeAzureTableSource
17524	objectMap := make(map[string]interface{})
17525	objectMap["azureTableSourceQuery"] = ats.AzureTableSourceQuery
17526	objectMap["azureTableSourceIgnoreTableNotFound"] = ats.AzureTableSourceIgnoreTableNotFound
17527	objectMap["sourceRetryCount"] = ats.SourceRetryCount
17528	objectMap["sourceRetryWait"] = ats.SourceRetryWait
17529	if ats.Type != "" {
17530		objectMap["type"] = ats.Type
17531	}
17532	for k, v := range ats.AdditionalProperties {
17533		objectMap[k] = v
17534	}
17535	return json.Marshal(objectMap)
17536}
17537
17538// AsAmazonRedshiftSource is the BasicCopySource implementation for AzureTableSource.
17539func (ats AzureTableSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
17540	return nil, false
17541}
17542
17543// AsResponsysSource is the BasicCopySource implementation for AzureTableSource.
17544func (ats AzureTableSource) AsResponsysSource() (*ResponsysSource, bool) {
17545	return nil, false
17546}
17547
17548// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for AzureTableSource.
17549func (ats AzureTableSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
17550	return nil, false
17551}
17552
17553// AsVerticaSource is the BasicCopySource implementation for AzureTableSource.
17554func (ats AzureTableSource) AsVerticaSource() (*VerticaSource, bool) {
17555	return nil, false
17556}
17557
17558// AsNetezzaSource is the BasicCopySource implementation for AzureTableSource.
17559func (ats AzureTableSource) AsNetezzaSource() (*NetezzaSource, bool) {
17560	return nil, false
17561}
17562
17563// AsZohoSource is the BasicCopySource implementation for AzureTableSource.
17564func (ats AzureTableSource) AsZohoSource() (*ZohoSource, bool) {
17565	return nil, false
17566}
17567
17568// AsXeroSource is the BasicCopySource implementation for AzureTableSource.
17569func (ats AzureTableSource) AsXeroSource() (*XeroSource, bool) {
17570	return nil, false
17571}
17572
17573// AsSquareSource is the BasicCopySource implementation for AzureTableSource.
17574func (ats AzureTableSource) AsSquareSource() (*SquareSource, bool) {
17575	return nil, false
17576}
17577
17578// AsSparkSource is the BasicCopySource implementation for AzureTableSource.
17579func (ats AzureTableSource) AsSparkSource() (*SparkSource, bool) {
17580	return nil, false
17581}
17582
17583// AsShopifySource is the BasicCopySource implementation for AzureTableSource.
17584func (ats AzureTableSource) AsShopifySource() (*ShopifySource, bool) {
17585	return nil, false
17586}
17587
17588// AsServiceNowSource is the BasicCopySource implementation for AzureTableSource.
17589func (ats AzureTableSource) AsServiceNowSource() (*ServiceNowSource, bool) {
17590	return nil, false
17591}
17592
17593// AsQuickBooksSource is the BasicCopySource implementation for AzureTableSource.
17594func (ats AzureTableSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
17595	return nil, false
17596}
17597
17598// AsPrestoSource is the BasicCopySource implementation for AzureTableSource.
17599func (ats AzureTableSource) AsPrestoSource() (*PrestoSource, bool) {
17600	return nil, false
17601}
17602
17603// AsPhoenixSource is the BasicCopySource implementation for AzureTableSource.
17604func (ats AzureTableSource) AsPhoenixSource() (*PhoenixSource, bool) {
17605	return nil, false
17606}
17607
17608// AsPaypalSource is the BasicCopySource implementation for AzureTableSource.
17609func (ats AzureTableSource) AsPaypalSource() (*PaypalSource, bool) {
17610	return nil, false
17611}
17612
17613// AsMarketoSource is the BasicCopySource implementation for AzureTableSource.
17614func (ats AzureTableSource) AsMarketoSource() (*MarketoSource, bool) {
17615	return nil, false
17616}
17617
17618// AsMariaDBSource is the BasicCopySource implementation for AzureTableSource.
17619func (ats AzureTableSource) AsMariaDBSource() (*MariaDBSource, bool) {
17620	return nil, false
17621}
17622
17623// AsMagentoSource is the BasicCopySource implementation for AzureTableSource.
17624func (ats AzureTableSource) AsMagentoSource() (*MagentoSource, bool) {
17625	return nil, false
17626}
17627
17628// AsJiraSource is the BasicCopySource implementation for AzureTableSource.
17629func (ats AzureTableSource) AsJiraSource() (*JiraSource, bool) {
17630	return nil, false
17631}
17632
17633// AsImpalaSource is the BasicCopySource implementation for AzureTableSource.
17634func (ats AzureTableSource) AsImpalaSource() (*ImpalaSource, bool) {
17635	return nil, false
17636}
17637
17638// AsHubspotSource is the BasicCopySource implementation for AzureTableSource.
17639func (ats AzureTableSource) AsHubspotSource() (*HubspotSource, bool) {
17640	return nil, false
17641}
17642
17643// AsHiveSource is the BasicCopySource implementation for AzureTableSource.
17644func (ats AzureTableSource) AsHiveSource() (*HiveSource, bool) {
17645	return nil, false
17646}
17647
17648// AsHBaseSource is the BasicCopySource implementation for AzureTableSource.
17649func (ats AzureTableSource) AsHBaseSource() (*HBaseSource, bool) {
17650	return nil, false
17651}
17652
17653// AsGreenplumSource is the BasicCopySource implementation for AzureTableSource.
17654func (ats AzureTableSource) AsGreenplumSource() (*GreenplumSource, bool) {
17655	return nil, false
17656}
17657
17658// AsGoogleBigQuerySource is the BasicCopySource implementation for AzureTableSource.
17659func (ats AzureTableSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
17660	return nil, false
17661}
17662
17663// AsEloquaSource is the BasicCopySource implementation for AzureTableSource.
17664func (ats AzureTableSource) AsEloquaSource() (*EloquaSource, bool) {
17665	return nil, false
17666}
17667
17668// AsDrillSource is the BasicCopySource implementation for AzureTableSource.
17669func (ats AzureTableSource) AsDrillSource() (*DrillSource, bool) {
17670	return nil, false
17671}
17672
17673// AsCouchbaseSource is the BasicCopySource implementation for AzureTableSource.
17674func (ats AzureTableSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
17675	return nil, false
17676}
17677
17678// AsConcurSource is the BasicCopySource implementation for AzureTableSource.
17679func (ats AzureTableSource) AsConcurSource() (*ConcurSource, bool) {
17680	return nil, false
17681}
17682
17683// AsAzurePostgreSQLSource is the BasicCopySource implementation for AzureTableSource.
17684func (ats AzureTableSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
17685	return nil, false
17686}
17687
17688// AsAmazonMWSSource is the BasicCopySource implementation for AzureTableSource.
17689func (ats AzureTableSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
17690	return nil, false
17691}
17692
17693// AsHTTPSource is the BasicCopySource implementation for AzureTableSource.
17694func (ats AzureTableSource) AsHTTPSource() (*HTTPSource, bool) {
17695	return nil, false
17696}
17697
17698// AsAzureDataLakeStoreSource is the BasicCopySource implementation for AzureTableSource.
17699func (ats AzureTableSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
17700	return nil, false
17701}
17702
17703// AsMongoDbSource is the BasicCopySource implementation for AzureTableSource.
17704func (ats AzureTableSource) AsMongoDbSource() (*MongoDbSource, bool) {
17705	return nil, false
17706}
17707
17708// AsCassandraSource is the BasicCopySource implementation for AzureTableSource.
17709func (ats AzureTableSource) AsCassandraSource() (*CassandraSource, bool) {
17710	return nil, false
17711}
17712
17713// AsWebSource is the BasicCopySource implementation for AzureTableSource.
17714func (ats AzureTableSource) AsWebSource() (*WebSource, bool) {
17715	return nil, false
17716}
17717
17718// AsOracleSource is the BasicCopySource implementation for AzureTableSource.
17719func (ats AzureTableSource) AsOracleSource() (*OracleSource, bool) {
17720	return nil, false
17721}
17722
17723// AsAzureMySQLSource is the BasicCopySource implementation for AzureTableSource.
17724func (ats AzureTableSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
17725	return nil, false
17726}
17727
17728// AsHdfsSource is the BasicCopySource implementation for AzureTableSource.
17729func (ats AzureTableSource) AsHdfsSource() (*HdfsSource, bool) {
17730	return nil, false
17731}
17732
17733// AsFileSystemSource is the BasicCopySource implementation for AzureTableSource.
17734func (ats AzureTableSource) AsFileSystemSource() (*FileSystemSource, bool) {
17735	return nil, false
17736}
17737
17738// AsSQLDWSource is the BasicCopySource implementation for AzureTableSource.
17739func (ats AzureTableSource) AsSQLDWSource() (*SQLDWSource, bool) {
17740	return nil, false
17741}
17742
17743// AsSQLSource is the BasicCopySource implementation for AzureTableSource.
17744func (ats AzureTableSource) AsSQLSource() (*SQLSource, bool) {
17745	return nil, false
17746}
17747
17748// AsSapEccSource is the BasicCopySource implementation for AzureTableSource.
17749func (ats AzureTableSource) AsSapEccSource() (*SapEccSource, bool) {
17750	return nil, false
17751}
17752
17753// AsSapCloudForCustomerSource is the BasicCopySource implementation for AzureTableSource.
17754func (ats AzureTableSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
17755	return nil, false
17756}
17757
17758// AsSalesforceSource is the BasicCopySource implementation for AzureTableSource.
17759func (ats AzureTableSource) AsSalesforceSource() (*SalesforceSource, bool) {
17760	return nil, false
17761}
17762
17763// AsRelationalSource is the BasicCopySource implementation for AzureTableSource.
17764func (ats AzureTableSource) AsRelationalSource() (*RelationalSource, bool) {
17765	return nil, false
17766}
17767
17768// AsDynamicsSource is the BasicCopySource implementation for AzureTableSource.
17769func (ats AzureTableSource) AsDynamicsSource() (*DynamicsSource, bool) {
17770	return nil, false
17771}
17772
17773// AsDocumentDbCollectionSource is the BasicCopySource implementation for AzureTableSource.
17774func (ats AzureTableSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
17775	return nil, false
17776}
17777
17778// AsBlobSource is the BasicCopySource implementation for AzureTableSource.
17779func (ats AzureTableSource) AsBlobSource() (*BlobSource, bool) {
17780	return nil, false
17781}
17782
17783// AsAzureTableSource is the BasicCopySource implementation for AzureTableSource.
17784func (ats AzureTableSource) AsAzureTableSource() (*AzureTableSource, bool) {
17785	return &ats, true
17786}
17787
17788// AsCopySource is the BasicCopySource implementation for AzureTableSource.
17789func (ats AzureTableSource) AsCopySource() (*CopySource, bool) {
17790	return nil, false
17791}
17792
17793// AsBasicCopySource is the BasicCopySource implementation for AzureTableSource.
17794func (ats AzureTableSource) AsBasicCopySource() (BasicCopySource, bool) {
17795	return &ats, true
17796}
17797
17798// BlobSink a copy activity Azure Blob sink.
17799type BlobSink struct {
17800	// BlobWriterOverwriteFiles - Blob writer overwrite files. Type: boolean (or Expression with resultType boolean).
17801	BlobWriterOverwriteFiles interface{} `json:"blobWriterOverwriteFiles,omitempty"`
17802	// BlobWriterDateTimeFormat - Blob writer date time format. Type: string (or Expression with resultType string).
17803	BlobWriterDateTimeFormat interface{} `json:"blobWriterDateTimeFormat,omitempty"`
17804	// BlobWriterAddHeader - Blob writer add header. Type: boolean (or Expression with resultType boolean).
17805	BlobWriterAddHeader interface{} `json:"blobWriterAddHeader,omitempty"`
17806	// CopyBehavior - The type of copy behavior for copy sink. Possible values include: 'PreserveHierarchy', 'FlattenHierarchy', 'MergeFiles'
17807	CopyBehavior CopyBehaviorType `json:"copyBehavior,omitempty"`
17808	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
17809	AdditionalProperties map[string]interface{} `json:""`
17810	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
17811	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
17812	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17813	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
17814	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
17815	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
17816	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17817	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
17818	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
17819	Type TypeBasicCopySink `json:"type,omitempty"`
17820}
17821
17822// MarshalJSON is the custom marshaler for BlobSink.
17823func (bs BlobSink) MarshalJSON() ([]byte, error) {
17824	bs.Type = TypeBlobSink
17825	objectMap := make(map[string]interface{})
17826	objectMap["blobWriterOverwriteFiles"] = bs.BlobWriterOverwriteFiles
17827	objectMap["blobWriterDateTimeFormat"] = bs.BlobWriterDateTimeFormat
17828	objectMap["blobWriterAddHeader"] = bs.BlobWriterAddHeader
17829	if bs.CopyBehavior != "" {
17830		objectMap["copyBehavior"] = bs.CopyBehavior
17831	}
17832	objectMap["writeBatchSize"] = bs.WriteBatchSize
17833	objectMap["writeBatchTimeout"] = bs.WriteBatchTimeout
17834	objectMap["sinkRetryCount"] = bs.SinkRetryCount
17835	objectMap["sinkRetryWait"] = bs.SinkRetryWait
17836	if bs.Type != "" {
17837		objectMap["type"] = bs.Type
17838	}
17839	for k, v := range bs.AdditionalProperties {
17840		objectMap[k] = v
17841	}
17842	return json.Marshal(objectMap)
17843}
17844
17845// AsSalesforceSink is the BasicCopySink implementation for BlobSink.
17846func (bs BlobSink) AsSalesforceSink() (*SalesforceSink, bool) {
17847	return nil, false
17848}
17849
17850// AsDynamicsSink is the BasicCopySink implementation for BlobSink.
17851func (bs BlobSink) AsDynamicsSink() (*DynamicsSink, bool) {
17852	return nil, false
17853}
17854
17855// AsOdbcSink is the BasicCopySink implementation for BlobSink.
17856func (bs BlobSink) AsOdbcSink() (*OdbcSink, bool) {
17857	return nil, false
17858}
17859
17860// AsAzureSearchIndexSink is the BasicCopySink implementation for BlobSink.
17861func (bs BlobSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
17862	return nil, false
17863}
17864
17865// AsAzureDataLakeStoreSink is the BasicCopySink implementation for BlobSink.
17866func (bs BlobSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
17867	return nil, false
17868}
17869
17870// AsOracleSink is the BasicCopySink implementation for BlobSink.
17871func (bs BlobSink) AsOracleSink() (*OracleSink, bool) {
17872	return nil, false
17873}
17874
17875// AsSQLDWSink is the BasicCopySink implementation for BlobSink.
17876func (bs BlobSink) AsSQLDWSink() (*SQLDWSink, bool) {
17877	return nil, false
17878}
17879
17880// AsSQLSink is the BasicCopySink implementation for BlobSink.
17881func (bs BlobSink) AsSQLSink() (*SQLSink, bool) {
17882	return nil, false
17883}
17884
17885// AsDocumentDbCollectionSink is the BasicCopySink implementation for BlobSink.
17886func (bs BlobSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
17887	return nil, false
17888}
17889
17890// AsFileSystemSink is the BasicCopySink implementation for BlobSink.
17891func (bs BlobSink) AsFileSystemSink() (*FileSystemSink, bool) {
17892	return nil, false
17893}
17894
17895// AsBlobSink is the BasicCopySink implementation for BlobSink.
17896func (bs BlobSink) AsBlobSink() (*BlobSink, bool) {
17897	return &bs, true
17898}
17899
17900// AsAzureTableSink is the BasicCopySink implementation for BlobSink.
17901func (bs BlobSink) AsAzureTableSink() (*AzureTableSink, bool) {
17902	return nil, false
17903}
17904
17905// AsAzureQueueSink is the BasicCopySink implementation for BlobSink.
17906func (bs BlobSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
17907	return nil, false
17908}
17909
17910// AsSapCloudForCustomerSink is the BasicCopySink implementation for BlobSink.
17911func (bs BlobSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
17912	return nil, false
17913}
17914
17915// AsCopySink is the BasicCopySink implementation for BlobSink.
17916func (bs BlobSink) AsCopySink() (*CopySink, bool) {
17917	return nil, false
17918}
17919
17920// AsBasicCopySink is the BasicCopySink implementation for BlobSink.
17921func (bs BlobSink) AsBasicCopySink() (BasicCopySink, bool) {
17922	return &bs, true
17923}
17924
17925// BlobSource a copy activity Azure Blob source.
17926type BlobSource struct {
17927	// TreatEmptyAsNull - Treat empty as null. Type: boolean (or Expression with resultType boolean).
17928	TreatEmptyAsNull interface{} `json:"treatEmptyAsNull,omitempty"`
17929	// SkipHeaderLineCount - Number of header lines to skip from each blob. Type: integer (or Expression with resultType integer).
17930	SkipHeaderLineCount interface{} `json:"skipHeaderLineCount,omitempty"`
17931	// Recursive - If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean).
17932	Recursive interface{} `json:"recursive,omitempty"`
17933	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
17934	AdditionalProperties map[string]interface{} `json:""`
17935	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
17936	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
17937	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
17938	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
17939	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
17940	Type TypeBasicCopySource `json:"type,omitempty"`
17941}
17942
17943// MarshalJSON is the custom marshaler for BlobSource.
17944func (bs BlobSource) MarshalJSON() ([]byte, error) {
17945	bs.Type = TypeBlobSource
17946	objectMap := make(map[string]interface{})
17947	objectMap["treatEmptyAsNull"] = bs.TreatEmptyAsNull
17948	objectMap["skipHeaderLineCount"] = bs.SkipHeaderLineCount
17949	objectMap["recursive"] = bs.Recursive
17950	objectMap["sourceRetryCount"] = bs.SourceRetryCount
17951	objectMap["sourceRetryWait"] = bs.SourceRetryWait
17952	if bs.Type != "" {
17953		objectMap["type"] = bs.Type
17954	}
17955	for k, v := range bs.AdditionalProperties {
17956		objectMap[k] = v
17957	}
17958	return json.Marshal(objectMap)
17959}
17960
17961// AsAmazonRedshiftSource is the BasicCopySource implementation for BlobSource.
17962func (bs BlobSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
17963	return nil, false
17964}
17965
17966// AsResponsysSource is the BasicCopySource implementation for BlobSource.
17967func (bs BlobSource) AsResponsysSource() (*ResponsysSource, bool) {
17968	return nil, false
17969}
17970
17971// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for BlobSource.
17972func (bs BlobSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
17973	return nil, false
17974}
17975
17976// AsVerticaSource is the BasicCopySource implementation for BlobSource.
17977func (bs BlobSource) AsVerticaSource() (*VerticaSource, bool) {
17978	return nil, false
17979}
17980
17981// AsNetezzaSource is the BasicCopySource implementation for BlobSource.
17982func (bs BlobSource) AsNetezzaSource() (*NetezzaSource, bool) {
17983	return nil, false
17984}
17985
17986// AsZohoSource is the BasicCopySource implementation for BlobSource.
17987func (bs BlobSource) AsZohoSource() (*ZohoSource, bool) {
17988	return nil, false
17989}
17990
17991// AsXeroSource is the BasicCopySource implementation for BlobSource.
17992func (bs BlobSource) AsXeroSource() (*XeroSource, bool) {
17993	return nil, false
17994}
17995
17996// AsSquareSource is the BasicCopySource implementation for BlobSource.
17997func (bs BlobSource) AsSquareSource() (*SquareSource, bool) {
17998	return nil, false
17999}
18000
18001// AsSparkSource is the BasicCopySource implementation for BlobSource.
18002func (bs BlobSource) AsSparkSource() (*SparkSource, bool) {
18003	return nil, false
18004}
18005
18006// AsShopifySource is the BasicCopySource implementation for BlobSource.
18007func (bs BlobSource) AsShopifySource() (*ShopifySource, bool) {
18008	return nil, false
18009}
18010
18011// AsServiceNowSource is the BasicCopySource implementation for BlobSource.
18012func (bs BlobSource) AsServiceNowSource() (*ServiceNowSource, bool) {
18013	return nil, false
18014}
18015
18016// AsQuickBooksSource is the BasicCopySource implementation for BlobSource.
18017func (bs BlobSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
18018	return nil, false
18019}
18020
18021// AsPrestoSource is the BasicCopySource implementation for BlobSource.
18022func (bs BlobSource) AsPrestoSource() (*PrestoSource, bool) {
18023	return nil, false
18024}
18025
18026// AsPhoenixSource is the BasicCopySource implementation for BlobSource.
18027func (bs BlobSource) AsPhoenixSource() (*PhoenixSource, bool) {
18028	return nil, false
18029}
18030
18031// AsPaypalSource is the BasicCopySource implementation for BlobSource.
18032func (bs BlobSource) AsPaypalSource() (*PaypalSource, bool) {
18033	return nil, false
18034}
18035
18036// AsMarketoSource is the BasicCopySource implementation for BlobSource.
18037func (bs BlobSource) AsMarketoSource() (*MarketoSource, bool) {
18038	return nil, false
18039}
18040
18041// AsMariaDBSource is the BasicCopySource implementation for BlobSource.
18042func (bs BlobSource) AsMariaDBSource() (*MariaDBSource, bool) {
18043	return nil, false
18044}
18045
18046// AsMagentoSource is the BasicCopySource implementation for BlobSource.
18047func (bs BlobSource) AsMagentoSource() (*MagentoSource, bool) {
18048	return nil, false
18049}
18050
18051// AsJiraSource is the BasicCopySource implementation for BlobSource.
18052func (bs BlobSource) AsJiraSource() (*JiraSource, bool) {
18053	return nil, false
18054}
18055
18056// AsImpalaSource is the BasicCopySource implementation for BlobSource.
18057func (bs BlobSource) AsImpalaSource() (*ImpalaSource, bool) {
18058	return nil, false
18059}
18060
18061// AsHubspotSource is the BasicCopySource implementation for BlobSource.
18062func (bs BlobSource) AsHubspotSource() (*HubspotSource, bool) {
18063	return nil, false
18064}
18065
18066// AsHiveSource is the BasicCopySource implementation for BlobSource.
18067func (bs BlobSource) AsHiveSource() (*HiveSource, bool) {
18068	return nil, false
18069}
18070
18071// AsHBaseSource is the BasicCopySource implementation for BlobSource.
18072func (bs BlobSource) AsHBaseSource() (*HBaseSource, bool) {
18073	return nil, false
18074}
18075
18076// AsGreenplumSource is the BasicCopySource implementation for BlobSource.
18077func (bs BlobSource) AsGreenplumSource() (*GreenplumSource, bool) {
18078	return nil, false
18079}
18080
18081// AsGoogleBigQuerySource is the BasicCopySource implementation for BlobSource.
18082func (bs BlobSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
18083	return nil, false
18084}
18085
18086// AsEloquaSource is the BasicCopySource implementation for BlobSource.
18087func (bs BlobSource) AsEloquaSource() (*EloquaSource, bool) {
18088	return nil, false
18089}
18090
18091// AsDrillSource is the BasicCopySource implementation for BlobSource.
18092func (bs BlobSource) AsDrillSource() (*DrillSource, bool) {
18093	return nil, false
18094}
18095
18096// AsCouchbaseSource is the BasicCopySource implementation for BlobSource.
18097func (bs BlobSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
18098	return nil, false
18099}
18100
18101// AsConcurSource is the BasicCopySource implementation for BlobSource.
18102func (bs BlobSource) AsConcurSource() (*ConcurSource, bool) {
18103	return nil, false
18104}
18105
18106// AsAzurePostgreSQLSource is the BasicCopySource implementation for BlobSource.
18107func (bs BlobSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
18108	return nil, false
18109}
18110
18111// AsAmazonMWSSource is the BasicCopySource implementation for BlobSource.
18112func (bs BlobSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
18113	return nil, false
18114}
18115
18116// AsHTTPSource is the BasicCopySource implementation for BlobSource.
18117func (bs BlobSource) AsHTTPSource() (*HTTPSource, bool) {
18118	return nil, false
18119}
18120
18121// AsAzureDataLakeStoreSource is the BasicCopySource implementation for BlobSource.
18122func (bs BlobSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
18123	return nil, false
18124}
18125
18126// AsMongoDbSource is the BasicCopySource implementation for BlobSource.
18127func (bs BlobSource) AsMongoDbSource() (*MongoDbSource, bool) {
18128	return nil, false
18129}
18130
18131// AsCassandraSource is the BasicCopySource implementation for BlobSource.
18132func (bs BlobSource) AsCassandraSource() (*CassandraSource, bool) {
18133	return nil, false
18134}
18135
18136// AsWebSource is the BasicCopySource implementation for BlobSource.
18137func (bs BlobSource) AsWebSource() (*WebSource, bool) {
18138	return nil, false
18139}
18140
18141// AsOracleSource is the BasicCopySource implementation for BlobSource.
18142func (bs BlobSource) AsOracleSource() (*OracleSource, bool) {
18143	return nil, false
18144}
18145
18146// AsAzureMySQLSource is the BasicCopySource implementation for BlobSource.
18147func (bs BlobSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
18148	return nil, false
18149}
18150
18151// AsHdfsSource is the BasicCopySource implementation for BlobSource.
18152func (bs BlobSource) AsHdfsSource() (*HdfsSource, bool) {
18153	return nil, false
18154}
18155
18156// AsFileSystemSource is the BasicCopySource implementation for BlobSource.
18157func (bs BlobSource) AsFileSystemSource() (*FileSystemSource, bool) {
18158	return nil, false
18159}
18160
18161// AsSQLDWSource is the BasicCopySource implementation for BlobSource.
18162func (bs BlobSource) AsSQLDWSource() (*SQLDWSource, bool) {
18163	return nil, false
18164}
18165
18166// AsSQLSource is the BasicCopySource implementation for BlobSource.
18167func (bs BlobSource) AsSQLSource() (*SQLSource, bool) {
18168	return nil, false
18169}
18170
18171// AsSapEccSource is the BasicCopySource implementation for BlobSource.
18172func (bs BlobSource) AsSapEccSource() (*SapEccSource, bool) {
18173	return nil, false
18174}
18175
18176// AsSapCloudForCustomerSource is the BasicCopySource implementation for BlobSource.
18177func (bs BlobSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
18178	return nil, false
18179}
18180
18181// AsSalesforceSource is the BasicCopySource implementation for BlobSource.
18182func (bs BlobSource) AsSalesforceSource() (*SalesforceSource, bool) {
18183	return nil, false
18184}
18185
18186// AsRelationalSource is the BasicCopySource implementation for BlobSource.
18187func (bs BlobSource) AsRelationalSource() (*RelationalSource, bool) {
18188	return nil, false
18189}
18190
18191// AsDynamicsSource is the BasicCopySource implementation for BlobSource.
18192func (bs BlobSource) AsDynamicsSource() (*DynamicsSource, bool) {
18193	return nil, false
18194}
18195
18196// AsDocumentDbCollectionSource is the BasicCopySource implementation for BlobSource.
18197func (bs BlobSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
18198	return nil, false
18199}
18200
18201// AsBlobSource is the BasicCopySource implementation for BlobSource.
18202func (bs BlobSource) AsBlobSource() (*BlobSource, bool) {
18203	return &bs, true
18204}
18205
18206// AsAzureTableSource is the BasicCopySource implementation for BlobSource.
18207func (bs BlobSource) AsAzureTableSource() (*AzureTableSource, bool) {
18208	return nil, false
18209}
18210
18211// AsCopySource is the BasicCopySource implementation for BlobSource.
18212func (bs BlobSource) AsCopySource() (*CopySource, bool) {
18213	return nil, false
18214}
18215
18216// AsBasicCopySource is the BasicCopySource implementation for BlobSource.
18217func (bs BlobSource) AsBasicCopySource() (BasicCopySource, bool) {
18218	return &bs, true
18219}
18220
18221// BlobTrigger trigger that runs everytime the selected Blob container changes.
18222type BlobTrigger struct {
18223	// BlobTriggerTypeProperties - Blob Trigger properties.
18224	*BlobTriggerTypeProperties `json:"typeProperties,omitempty"`
18225	// Pipelines - Pipelines that need to be started.
18226	Pipelines *[]TriggerPipelineReference `json:"pipelines,omitempty"`
18227	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
18228	AdditionalProperties map[string]interface{} `json:""`
18229	// Description - Trigger description.
18230	Description *string `json:"description,omitempty"`
18231	// RuntimeState - Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger. Possible values include: 'TriggerRuntimeStateStarted', 'TriggerRuntimeStateStopped', 'TriggerRuntimeStateDisabled'
18232	RuntimeState TriggerRuntimeState `json:"runtimeState,omitempty"`
18233	// Type - Possible values include: 'TypeTrigger', 'TypeTumblingWindowTrigger', 'TypeBlobTrigger', 'TypeScheduleTrigger', 'TypeMultiplePipelineTrigger'
18234	Type TypeBasicTrigger `json:"type,omitempty"`
18235}
18236
18237// MarshalJSON is the custom marshaler for BlobTrigger.
18238func (bt BlobTrigger) MarshalJSON() ([]byte, error) {
18239	bt.Type = TypeBlobTrigger
18240	objectMap := make(map[string]interface{})
18241	if bt.BlobTriggerTypeProperties != nil {
18242		objectMap["typeProperties"] = bt.BlobTriggerTypeProperties
18243	}
18244	if bt.Pipelines != nil {
18245		objectMap["pipelines"] = bt.Pipelines
18246	}
18247	if bt.Description != nil {
18248		objectMap["description"] = bt.Description
18249	}
18250	if bt.RuntimeState != "" {
18251		objectMap["runtimeState"] = bt.RuntimeState
18252	}
18253	if bt.Type != "" {
18254		objectMap["type"] = bt.Type
18255	}
18256	for k, v := range bt.AdditionalProperties {
18257		objectMap[k] = v
18258	}
18259	return json.Marshal(objectMap)
18260}
18261
18262// AsTumblingWindowTrigger is the BasicTrigger implementation for BlobTrigger.
18263func (bt BlobTrigger) AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool) {
18264	return nil, false
18265}
18266
18267// AsBlobTrigger is the BasicTrigger implementation for BlobTrigger.
18268func (bt BlobTrigger) AsBlobTrigger() (*BlobTrigger, bool) {
18269	return &bt, true
18270}
18271
18272// AsScheduleTrigger is the BasicTrigger implementation for BlobTrigger.
18273func (bt BlobTrigger) AsScheduleTrigger() (*ScheduleTrigger, bool) {
18274	return nil, false
18275}
18276
18277// AsMultiplePipelineTrigger is the BasicTrigger implementation for BlobTrigger.
18278func (bt BlobTrigger) AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool) {
18279	return nil, false
18280}
18281
18282// AsBasicMultiplePipelineTrigger is the BasicTrigger implementation for BlobTrigger.
18283func (bt BlobTrigger) AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool) {
18284	return &bt, true
18285}
18286
18287// AsTrigger is the BasicTrigger implementation for BlobTrigger.
18288func (bt BlobTrigger) AsTrigger() (*Trigger, bool) {
18289	return nil, false
18290}
18291
18292// AsBasicTrigger is the BasicTrigger implementation for BlobTrigger.
18293func (bt BlobTrigger) AsBasicTrigger() (BasicTrigger, bool) {
18294	return &bt, true
18295}
18296
18297// UnmarshalJSON is the custom unmarshaler for BlobTrigger struct.
18298func (bt *BlobTrigger) UnmarshalJSON(body []byte) error {
18299	var m map[string]*json.RawMessage
18300	err := json.Unmarshal(body, &m)
18301	if err != nil {
18302		return err
18303	}
18304	for k, v := range m {
18305		switch k {
18306		case "typeProperties":
18307			if v != nil {
18308				var blobTriggerTypeProperties BlobTriggerTypeProperties
18309				err = json.Unmarshal(*v, &blobTriggerTypeProperties)
18310				if err != nil {
18311					return err
18312				}
18313				bt.BlobTriggerTypeProperties = &blobTriggerTypeProperties
18314			}
18315		case "pipelines":
18316			if v != nil {
18317				var pipelines []TriggerPipelineReference
18318				err = json.Unmarshal(*v, &pipelines)
18319				if err != nil {
18320					return err
18321				}
18322				bt.Pipelines = &pipelines
18323			}
18324		default:
18325			if v != nil {
18326				var additionalProperties interface{}
18327				err = json.Unmarshal(*v, &additionalProperties)
18328				if err != nil {
18329					return err
18330				}
18331				if bt.AdditionalProperties == nil {
18332					bt.AdditionalProperties = make(map[string]interface{})
18333				}
18334				bt.AdditionalProperties[k] = additionalProperties
18335			}
18336		case "description":
18337			if v != nil {
18338				var description string
18339				err = json.Unmarshal(*v, &description)
18340				if err != nil {
18341					return err
18342				}
18343				bt.Description = &description
18344			}
18345		case "runtimeState":
18346			if v != nil {
18347				var runtimeState TriggerRuntimeState
18348				err = json.Unmarshal(*v, &runtimeState)
18349				if err != nil {
18350					return err
18351				}
18352				bt.RuntimeState = runtimeState
18353			}
18354		case "type":
18355			if v != nil {
18356				var typeVar TypeBasicTrigger
18357				err = json.Unmarshal(*v, &typeVar)
18358				if err != nil {
18359					return err
18360				}
18361				bt.Type = typeVar
18362			}
18363		}
18364	}
18365
18366	return nil
18367}
18368
18369// BlobTriggerTypeProperties blob Trigger properties.
18370type BlobTriggerTypeProperties struct {
18371	// FolderPath - The path of the container/folder that will trigger the pipeline.
18372	FolderPath *string `json:"folderPath,omitempty"`
18373	// MaxConcurrency - The max number of parallel files to handle when it is triggered.
18374	MaxConcurrency *int32 `json:"maxConcurrency,omitempty"`
18375	// LinkedService - The Azure Storage linked service reference.
18376	LinkedService *LinkedServiceReference `json:"linkedService,omitempty"`
18377}
18378
18379// CassandraLinkedService linked service for Cassandra data source.
18380type CassandraLinkedService struct {
18381	// CassandraLinkedServiceTypeProperties - Cassandra linked service properties.
18382	*CassandraLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
18383	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
18384	AdditionalProperties map[string]interface{} `json:""`
18385	// ConnectVia - The integration runtime reference.
18386	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
18387	// Description - Linked service description.
18388	Description *string `json:"description,omitempty"`
18389	// Parameters - Parameters for linked service.
18390	Parameters map[string]*ParameterSpecification `json:"parameters"`
18391	// Annotations - List of tags that can be used for describing the Dataset.
18392	Annotations *[]interface{} `json:"annotations,omitempty"`
18393	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
18394	Type TypeBasicLinkedService `json:"type,omitempty"`
18395}
18396
18397// MarshalJSON is the custom marshaler for CassandraLinkedService.
18398func (cls CassandraLinkedService) MarshalJSON() ([]byte, error) {
18399	cls.Type = TypeCassandra
18400	objectMap := make(map[string]interface{})
18401	if cls.CassandraLinkedServiceTypeProperties != nil {
18402		objectMap["typeProperties"] = cls.CassandraLinkedServiceTypeProperties
18403	}
18404	if cls.ConnectVia != nil {
18405		objectMap["connectVia"] = cls.ConnectVia
18406	}
18407	if cls.Description != nil {
18408		objectMap["description"] = cls.Description
18409	}
18410	if cls.Parameters != nil {
18411		objectMap["parameters"] = cls.Parameters
18412	}
18413	if cls.Annotations != nil {
18414		objectMap["annotations"] = cls.Annotations
18415	}
18416	if cls.Type != "" {
18417		objectMap["type"] = cls.Type
18418	}
18419	for k, v := range cls.AdditionalProperties {
18420		objectMap[k] = v
18421	}
18422	return json.Marshal(objectMap)
18423}
18424
18425// AsResponsysLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18426func (cls CassandraLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
18427	return nil, false
18428}
18429
18430// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18431func (cls CassandraLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
18432	return nil, false
18433}
18434
18435// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18436func (cls CassandraLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
18437	return nil, false
18438}
18439
18440// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18441func (cls CassandraLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
18442	return nil, false
18443}
18444
18445// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18446func (cls CassandraLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
18447	return nil, false
18448}
18449
18450// AsNetezzaLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18451func (cls CassandraLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
18452	return nil, false
18453}
18454
18455// AsVerticaLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18456func (cls CassandraLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
18457	return nil, false
18458}
18459
18460// AsZohoLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18461func (cls CassandraLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
18462	return nil, false
18463}
18464
18465// AsXeroLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18466func (cls CassandraLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
18467	return nil, false
18468}
18469
18470// AsSquareLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18471func (cls CassandraLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
18472	return nil, false
18473}
18474
18475// AsSparkLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18476func (cls CassandraLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
18477	return nil, false
18478}
18479
18480// AsShopifyLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18481func (cls CassandraLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
18482	return nil, false
18483}
18484
18485// AsServiceNowLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18486func (cls CassandraLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
18487	return nil, false
18488}
18489
18490// AsQuickBooksLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18491func (cls CassandraLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
18492	return nil, false
18493}
18494
18495// AsPrestoLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18496func (cls CassandraLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
18497	return nil, false
18498}
18499
18500// AsPhoenixLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18501func (cls CassandraLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
18502	return nil, false
18503}
18504
18505// AsPaypalLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18506func (cls CassandraLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
18507	return nil, false
18508}
18509
18510// AsMarketoLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18511func (cls CassandraLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
18512	return nil, false
18513}
18514
18515// AsMariaDBLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18516func (cls CassandraLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
18517	return nil, false
18518}
18519
18520// AsMagentoLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18521func (cls CassandraLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
18522	return nil, false
18523}
18524
18525// AsJiraLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18526func (cls CassandraLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
18527	return nil, false
18528}
18529
18530// AsImpalaLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18531func (cls CassandraLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
18532	return nil, false
18533}
18534
18535// AsHubspotLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18536func (cls CassandraLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
18537	return nil, false
18538}
18539
18540// AsHiveLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18541func (cls CassandraLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
18542	return nil, false
18543}
18544
18545// AsHBaseLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18546func (cls CassandraLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
18547	return nil, false
18548}
18549
18550// AsGreenplumLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18551func (cls CassandraLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
18552	return nil, false
18553}
18554
18555// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18556func (cls CassandraLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
18557	return nil, false
18558}
18559
18560// AsEloquaLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18561func (cls CassandraLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
18562	return nil, false
18563}
18564
18565// AsDrillLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18566func (cls CassandraLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
18567	return nil, false
18568}
18569
18570// AsCouchbaseLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18571func (cls CassandraLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
18572	return nil, false
18573}
18574
18575// AsConcurLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18576func (cls CassandraLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
18577	return nil, false
18578}
18579
18580// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18581func (cls CassandraLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
18582	return nil, false
18583}
18584
18585// AsAmazonMWSLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18586func (cls CassandraLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
18587	return nil, false
18588}
18589
18590// AsSapHanaLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18591func (cls CassandraLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
18592	return nil, false
18593}
18594
18595// AsSapBWLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18596func (cls CassandraLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
18597	return nil, false
18598}
18599
18600// AsSftpServerLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18601func (cls CassandraLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
18602	return nil, false
18603}
18604
18605// AsFtpServerLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18606func (cls CassandraLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
18607	return nil, false
18608}
18609
18610// AsHTTPLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18611func (cls CassandraLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
18612	return nil, false
18613}
18614
18615// AsAzureSearchLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18616func (cls CassandraLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
18617	return nil, false
18618}
18619
18620// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18621func (cls CassandraLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
18622	return nil, false
18623}
18624
18625// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18626func (cls CassandraLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
18627	return nil, false
18628}
18629
18630// AsAmazonS3LinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18631func (cls CassandraLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
18632	return nil, false
18633}
18634
18635// AsSapEccLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18636func (cls CassandraLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
18637	return nil, false
18638}
18639
18640// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18641func (cls CassandraLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
18642	return nil, false
18643}
18644
18645// AsSalesforceLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18646func (cls CassandraLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
18647	return nil, false
18648}
18649
18650// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18651func (cls CassandraLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
18652	return nil, false
18653}
18654
18655// AsMongoDbLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18656func (cls CassandraLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
18657	return nil, false
18658}
18659
18660// AsCassandraLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18661func (cls CassandraLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
18662	return &cls, true
18663}
18664
18665// AsWebLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18666func (cls CassandraLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
18667	return nil, false
18668}
18669
18670// AsODataLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18671func (cls CassandraLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
18672	return nil, false
18673}
18674
18675// AsHdfsLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18676func (cls CassandraLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
18677	return nil, false
18678}
18679
18680// AsOdbcLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18681func (cls CassandraLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
18682	return nil, false
18683}
18684
18685// AsAzureMLLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18686func (cls CassandraLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
18687	return nil, false
18688}
18689
18690// AsTeradataLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18691func (cls CassandraLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
18692	return nil, false
18693}
18694
18695// AsDb2LinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18696func (cls CassandraLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
18697	return nil, false
18698}
18699
18700// AsSybaseLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18701func (cls CassandraLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
18702	return nil, false
18703}
18704
18705// AsPostgreSQLLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18706func (cls CassandraLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
18707	return nil, false
18708}
18709
18710// AsMySQLLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18711func (cls CassandraLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
18712	return nil, false
18713}
18714
18715// AsAzureMySQLLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18716func (cls CassandraLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
18717	return nil, false
18718}
18719
18720// AsOracleLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18721func (cls CassandraLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
18722	return nil, false
18723}
18724
18725// AsFileServerLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18726func (cls CassandraLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
18727	return nil, false
18728}
18729
18730// AsHDInsightLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18731func (cls CassandraLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
18732	return nil, false
18733}
18734
18735// AsDynamicsLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18736func (cls CassandraLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
18737	return nil, false
18738}
18739
18740// AsCosmosDbLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18741func (cls CassandraLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
18742	return nil, false
18743}
18744
18745// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18746func (cls CassandraLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
18747	return nil, false
18748}
18749
18750// AsAzureBatchLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18751func (cls CassandraLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
18752	return nil, false
18753}
18754
18755// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18756func (cls CassandraLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
18757	return nil, false
18758}
18759
18760// AsSQLServerLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18761func (cls CassandraLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
18762	return nil, false
18763}
18764
18765// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18766func (cls CassandraLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
18767	return nil, false
18768}
18769
18770// AsAzureStorageLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18771func (cls CassandraLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
18772	return nil, false
18773}
18774
18775// AsLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18776func (cls CassandraLinkedService) AsLinkedService() (*LinkedService, bool) {
18777	return nil, false
18778}
18779
18780// AsBasicLinkedService is the BasicLinkedService implementation for CassandraLinkedService.
18781func (cls CassandraLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
18782	return &cls, true
18783}
18784
18785// UnmarshalJSON is the custom unmarshaler for CassandraLinkedService struct.
18786func (cls *CassandraLinkedService) UnmarshalJSON(body []byte) error {
18787	var m map[string]*json.RawMessage
18788	err := json.Unmarshal(body, &m)
18789	if err != nil {
18790		return err
18791	}
18792	for k, v := range m {
18793		switch k {
18794		case "typeProperties":
18795			if v != nil {
18796				var cassandraLinkedServiceTypeProperties CassandraLinkedServiceTypeProperties
18797				err = json.Unmarshal(*v, &cassandraLinkedServiceTypeProperties)
18798				if err != nil {
18799					return err
18800				}
18801				cls.CassandraLinkedServiceTypeProperties = &cassandraLinkedServiceTypeProperties
18802			}
18803		default:
18804			if v != nil {
18805				var additionalProperties interface{}
18806				err = json.Unmarshal(*v, &additionalProperties)
18807				if err != nil {
18808					return err
18809				}
18810				if cls.AdditionalProperties == nil {
18811					cls.AdditionalProperties = make(map[string]interface{})
18812				}
18813				cls.AdditionalProperties[k] = additionalProperties
18814			}
18815		case "connectVia":
18816			if v != nil {
18817				var connectVia IntegrationRuntimeReference
18818				err = json.Unmarshal(*v, &connectVia)
18819				if err != nil {
18820					return err
18821				}
18822				cls.ConnectVia = &connectVia
18823			}
18824		case "description":
18825			if v != nil {
18826				var description string
18827				err = json.Unmarshal(*v, &description)
18828				if err != nil {
18829					return err
18830				}
18831				cls.Description = &description
18832			}
18833		case "parameters":
18834			if v != nil {
18835				var parameters map[string]*ParameterSpecification
18836				err = json.Unmarshal(*v, &parameters)
18837				if err != nil {
18838					return err
18839				}
18840				cls.Parameters = parameters
18841			}
18842		case "annotations":
18843			if v != nil {
18844				var annotations []interface{}
18845				err = json.Unmarshal(*v, &annotations)
18846				if err != nil {
18847					return err
18848				}
18849				cls.Annotations = &annotations
18850			}
18851		case "type":
18852			if v != nil {
18853				var typeVar TypeBasicLinkedService
18854				err = json.Unmarshal(*v, &typeVar)
18855				if err != nil {
18856					return err
18857				}
18858				cls.Type = typeVar
18859			}
18860		}
18861	}
18862
18863	return nil
18864}
18865
18866// CassandraLinkedServiceTypeProperties cassandra linked service properties.
18867type CassandraLinkedServiceTypeProperties struct {
18868	// Host - Host name for connection. Type: string (or Expression with resultType string).
18869	Host interface{} `json:"host,omitempty"`
18870	// AuthenticationType - AuthenticationType to be used for connection. Type: string (or Expression with resultType string).
18871	AuthenticationType interface{} `json:"authenticationType,omitempty"`
18872	// Port - The port for the connection. Type: integer (or Expression with resultType integer).
18873	Port interface{} `json:"port,omitempty"`
18874	// Username - Username for authentication. Type: string (or Expression with resultType string).
18875	Username interface{} `json:"username,omitempty"`
18876	// Password - Password for authentication.
18877	Password BasicSecretBase `json:"password,omitempty"`
18878	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
18879	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
18880}
18881
18882// UnmarshalJSON is the custom unmarshaler for CassandraLinkedServiceTypeProperties struct.
18883func (clstp *CassandraLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
18884	var m map[string]*json.RawMessage
18885	err := json.Unmarshal(body, &m)
18886	if err != nil {
18887		return err
18888	}
18889	for k, v := range m {
18890		switch k {
18891		case "host":
18892			if v != nil {
18893				var host interface{}
18894				err = json.Unmarshal(*v, &host)
18895				if err != nil {
18896					return err
18897				}
18898				clstp.Host = host
18899			}
18900		case "authenticationType":
18901			if v != nil {
18902				var authenticationType interface{}
18903				err = json.Unmarshal(*v, &authenticationType)
18904				if err != nil {
18905					return err
18906				}
18907				clstp.AuthenticationType = authenticationType
18908			}
18909		case "port":
18910			if v != nil {
18911				var port interface{}
18912				err = json.Unmarshal(*v, &port)
18913				if err != nil {
18914					return err
18915				}
18916				clstp.Port = port
18917			}
18918		case "username":
18919			if v != nil {
18920				var username interface{}
18921				err = json.Unmarshal(*v, &username)
18922				if err != nil {
18923					return err
18924				}
18925				clstp.Username = username
18926			}
18927		case "password":
18928			if v != nil {
18929				password, err := unmarshalBasicSecretBase(*v)
18930				if err != nil {
18931					return err
18932				}
18933				clstp.Password = password
18934			}
18935		case "encryptedCredential":
18936			if v != nil {
18937				var encryptedCredential interface{}
18938				err = json.Unmarshal(*v, &encryptedCredential)
18939				if err != nil {
18940					return err
18941				}
18942				clstp.EncryptedCredential = encryptedCredential
18943			}
18944		}
18945	}
18946
18947	return nil
18948}
18949
18950// CassandraSource a copy activity source for a Cassandra database.
18951type CassandraSource struct {
18952	// Query - Database query. Should be a SQL-92 query expression or Cassandra Query Language (CQL) command. Type: string (or Expression with resultType string).
18953	Query interface{} `json:"query,omitempty"`
18954	// ConsistencyLevel - The consistency level specifies how many Cassandra servers must respond to a read request before returning data to the client application. Cassandra checks the specified number of Cassandra servers for data to satisfy the read request. Must be one of cassandraSourceReadConsistencyLevels. The default value is 'ONE'. It is case-insensitive. Possible values include: 'ALL', 'EACHQUORUM', 'QUORUM', 'LOCALQUORUM', 'ONE', 'TWO', 'THREE', 'LOCALONE', 'SERIAL', 'LOCALSERIAL'
18955	ConsistencyLevel CassandraSourceReadConsistencyLevels `json:"consistencyLevel,omitempty"`
18956	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
18957	AdditionalProperties map[string]interface{} `json:""`
18958	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
18959	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
18960	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
18961	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
18962	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
18963	Type TypeBasicCopySource `json:"type,omitempty"`
18964}
18965
18966// MarshalJSON is the custom marshaler for CassandraSource.
18967func (cs CassandraSource) MarshalJSON() ([]byte, error) {
18968	cs.Type = TypeCassandraSource
18969	objectMap := make(map[string]interface{})
18970	objectMap["query"] = cs.Query
18971	if cs.ConsistencyLevel != "" {
18972		objectMap["consistencyLevel"] = cs.ConsistencyLevel
18973	}
18974	objectMap["sourceRetryCount"] = cs.SourceRetryCount
18975	objectMap["sourceRetryWait"] = cs.SourceRetryWait
18976	if cs.Type != "" {
18977		objectMap["type"] = cs.Type
18978	}
18979	for k, v := range cs.AdditionalProperties {
18980		objectMap[k] = v
18981	}
18982	return json.Marshal(objectMap)
18983}
18984
18985// AsAmazonRedshiftSource is the BasicCopySource implementation for CassandraSource.
18986func (cs CassandraSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
18987	return nil, false
18988}
18989
18990// AsResponsysSource is the BasicCopySource implementation for CassandraSource.
18991func (cs CassandraSource) AsResponsysSource() (*ResponsysSource, bool) {
18992	return nil, false
18993}
18994
18995// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for CassandraSource.
18996func (cs CassandraSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
18997	return nil, false
18998}
18999
19000// AsVerticaSource is the BasicCopySource implementation for CassandraSource.
19001func (cs CassandraSource) AsVerticaSource() (*VerticaSource, bool) {
19002	return nil, false
19003}
19004
19005// AsNetezzaSource is the BasicCopySource implementation for CassandraSource.
19006func (cs CassandraSource) AsNetezzaSource() (*NetezzaSource, bool) {
19007	return nil, false
19008}
19009
19010// AsZohoSource is the BasicCopySource implementation for CassandraSource.
19011func (cs CassandraSource) AsZohoSource() (*ZohoSource, bool) {
19012	return nil, false
19013}
19014
19015// AsXeroSource is the BasicCopySource implementation for CassandraSource.
19016func (cs CassandraSource) AsXeroSource() (*XeroSource, bool) {
19017	return nil, false
19018}
19019
19020// AsSquareSource is the BasicCopySource implementation for CassandraSource.
19021func (cs CassandraSource) AsSquareSource() (*SquareSource, bool) {
19022	return nil, false
19023}
19024
19025// AsSparkSource is the BasicCopySource implementation for CassandraSource.
19026func (cs CassandraSource) AsSparkSource() (*SparkSource, bool) {
19027	return nil, false
19028}
19029
19030// AsShopifySource is the BasicCopySource implementation for CassandraSource.
19031func (cs CassandraSource) AsShopifySource() (*ShopifySource, bool) {
19032	return nil, false
19033}
19034
19035// AsServiceNowSource is the BasicCopySource implementation for CassandraSource.
19036func (cs CassandraSource) AsServiceNowSource() (*ServiceNowSource, bool) {
19037	return nil, false
19038}
19039
19040// AsQuickBooksSource is the BasicCopySource implementation for CassandraSource.
19041func (cs CassandraSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
19042	return nil, false
19043}
19044
19045// AsPrestoSource is the BasicCopySource implementation for CassandraSource.
19046func (cs CassandraSource) AsPrestoSource() (*PrestoSource, bool) {
19047	return nil, false
19048}
19049
19050// AsPhoenixSource is the BasicCopySource implementation for CassandraSource.
19051func (cs CassandraSource) AsPhoenixSource() (*PhoenixSource, bool) {
19052	return nil, false
19053}
19054
19055// AsPaypalSource is the BasicCopySource implementation for CassandraSource.
19056func (cs CassandraSource) AsPaypalSource() (*PaypalSource, bool) {
19057	return nil, false
19058}
19059
19060// AsMarketoSource is the BasicCopySource implementation for CassandraSource.
19061func (cs CassandraSource) AsMarketoSource() (*MarketoSource, bool) {
19062	return nil, false
19063}
19064
19065// AsMariaDBSource is the BasicCopySource implementation for CassandraSource.
19066func (cs CassandraSource) AsMariaDBSource() (*MariaDBSource, bool) {
19067	return nil, false
19068}
19069
19070// AsMagentoSource is the BasicCopySource implementation for CassandraSource.
19071func (cs CassandraSource) AsMagentoSource() (*MagentoSource, bool) {
19072	return nil, false
19073}
19074
19075// AsJiraSource is the BasicCopySource implementation for CassandraSource.
19076func (cs CassandraSource) AsJiraSource() (*JiraSource, bool) {
19077	return nil, false
19078}
19079
19080// AsImpalaSource is the BasicCopySource implementation for CassandraSource.
19081func (cs CassandraSource) AsImpalaSource() (*ImpalaSource, bool) {
19082	return nil, false
19083}
19084
19085// AsHubspotSource is the BasicCopySource implementation for CassandraSource.
19086func (cs CassandraSource) AsHubspotSource() (*HubspotSource, bool) {
19087	return nil, false
19088}
19089
19090// AsHiveSource is the BasicCopySource implementation for CassandraSource.
19091func (cs CassandraSource) AsHiveSource() (*HiveSource, bool) {
19092	return nil, false
19093}
19094
19095// AsHBaseSource is the BasicCopySource implementation for CassandraSource.
19096func (cs CassandraSource) AsHBaseSource() (*HBaseSource, bool) {
19097	return nil, false
19098}
19099
19100// AsGreenplumSource is the BasicCopySource implementation for CassandraSource.
19101func (cs CassandraSource) AsGreenplumSource() (*GreenplumSource, bool) {
19102	return nil, false
19103}
19104
19105// AsGoogleBigQuerySource is the BasicCopySource implementation for CassandraSource.
19106func (cs CassandraSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
19107	return nil, false
19108}
19109
19110// AsEloquaSource is the BasicCopySource implementation for CassandraSource.
19111func (cs CassandraSource) AsEloquaSource() (*EloquaSource, bool) {
19112	return nil, false
19113}
19114
19115// AsDrillSource is the BasicCopySource implementation for CassandraSource.
19116func (cs CassandraSource) AsDrillSource() (*DrillSource, bool) {
19117	return nil, false
19118}
19119
19120// AsCouchbaseSource is the BasicCopySource implementation for CassandraSource.
19121func (cs CassandraSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
19122	return nil, false
19123}
19124
19125// AsConcurSource is the BasicCopySource implementation for CassandraSource.
19126func (cs CassandraSource) AsConcurSource() (*ConcurSource, bool) {
19127	return nil, false
19128}
19129
19130// AsAzurePostgreSQLSource is the BasicCopySource implementation for CassandraSource.
19131func (cs CassandraSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
19132	return nil, false
19133}
19134
19135// AsAmazonMWSSource is the BasicCopySource implementation for CassandraSource.
19136func (cs CassandraSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
19137	return nil, false
19138}
19139
19140// AsHTTPSource is the BasicCopySource implementation for CassandraSource.
19141func (cs CassandraSource) AsHTTPSource() (*HTTPSource, bool) {
19142	return nil, false
19143}
19144
19145// AsAzureDataLakeStoreSource is the BasicCopySource implementation for CassandraSource.
19146func (cs CassandraSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
19147	return nil, false
19148}
19149
19150// AsMongoDbSource is the BasicCopySource implementation for CassandraSource.
19151func (cs CassandraSource) AsMongoDbSource() (*MongoDbSource, bool) {
19152	return nil, false
19153}
19154
19155// AsCassandraSource is the BasicCopySource implementation for CassandraSource.
19156func (cs CassandraSource) AsCassandraSource() (*CassandraSource, bool) {
19157	return &cs, true
19158}
19159
19160// AsWebSource is the BasicCopySource implementation for CassandraSource.
19161func (cs CassandraSource) AsWebSource() (*WebSource, bool) {
19162	return nil, false
19163}
19164
19165// AsOracleSource is the BasicCopySource implementation for CassandraSource.
19166func (cs CassandraSource) AsOracleSource() (*OracleSource, bool) {
19167	return nil, false
19168}
19169
19170// AsAzureMySQLSource is the BasicCopySource implementation for CassandraSource.
19171func (cs CassandraSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
19172	return nil, false
19173}
19174
19175// AsHdfsSource is the BasicCopySource implementation for CassandraSource.
19176func (cs CassandraSource) AsHdfsSource() (*HdfsSource, bool) {
19177	return nil, false
19178}
19179
19180// AsFileSystemSource is the BasicCopySource implementation for CassandraSource.
19181func (cs CassandraSource) AsFileSystemSource() (*FileSystemSource, bool) {
19182	return nil, false
19183}
19184
19185// AsSQLDWSource is the BasicCopySource implementation for CassandraSource.
19186func (cs CassandraSource) AsSQLDWSource() (*SQLDWSource, bool) {
19187	return nil, false
19188}
19189
19190// AsSQLSource is the BasicCopySource implementation for CassandraSource.
19191func (cs CassandraSource) AsSQLSource() (*SQLSource, bool) {
19192	return nil, false
19193}
19194
19195// AsSapEccSource is the BasicCopySource implementation for CassandraSource.
19196func (cs CassandraSource) AsSapEccSource() (*SapEccSource, bool) {
19197	return nil, false
19198}
19199
19200// AsSapCloudForCustomerSource is the BasicCopySource implementation for CassandraSource.
19201func (cs CassandraSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
19202	return nil, false
19203}
19204
19205// AsSalesforceSource is the BasicCopySource implementation for CassandraSource.
19206func (cs CassandraSource) AsSalesforceSource() (*SalesforceSource, bool) {
19207	return nil, false
19208}
19209
19210// AsRelationalSource is the BasicCopySource implementation for CassandraSource.
19211func (cs CassandraSource) AsRelationalSource() (*RelationalSource, bool) {
19212	return nil, false
19213}
19214
19215// AsDynamicsSource is the BasicCopySource implementation for CassandraSource.
19216func (cs CassandraSource) AsDynamicsSource() (*DynamicsSource, bool) {
19217	return nil, false
19218}
19219
19220// AsDocumentDbCollectionSource is the BasicCopySource implementation for CassandraSource.
19221func (cs CassandraSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
19222	return nil, false
19223}
19224
19225// AsBlobSource is the BasicCopySource implementation for CassandraSource.
19226func (cs CassandraSource) AsBlobSource() (*BlobSource, bool) {
19227	return nil, false
19228}
19229
19230// AsAzureTableSource is the BasicCopySource implementation for CassandraSource.
19231func (cs CassandraSource) AsAzureTableSource() (*AzureTableSource, bool) {
19232	return nil, false
19233}
19234
19235// AsCopySource is the BasicCopySource implementation for CassandraSource.
19236func (cs CassandraSource) AsCopySource() (*CopySource, bool) {
19237	return nil, false
19238}
19239
19240// AsBasicCopySource is the BasicCopySource implementation for CassandraSource.
19241func (cs CassandraSource) AsBasicCopySource() (BasicCopySource, bool) {
19242	return &cs, true
19243}
19244
19245// CassandraTableDataset the Cassandra database dataset.
19246type CassandraTableDataset struct {
19247	// CassandraTableDatasetTypeProperties - Cassandra dataset properties.
19248	*CassandraTableDatasetTypeProperties `json:"typeProperties,omitempty"`
19249	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
19250	AdditionalProperties map[string]interface{} `json:""`
19251	// Description - Dataset description.
19252	Description *string `json:"description,omitempty"`
19253	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
19254	Structure interface{} `json:"structure,omitempty"`
19255	// LinkedServiceName - Linked service reference.
19256	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
19257	// Parameters - Parameters for dataset.
19258	Parameters map[string]*ParameterSpecification `json:"parameters"`
19259	// Annotations - List of tags that can be used for describing the Dataset.
19260	Annotations *[]interface{} `json:"annotations,omitempty"`
19261	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
19262	Type TypeBasicDataset `json:"type,omitempty"`
19263}
19264
19265// MarshalJSON is the custom marshaler for CassandraTableDataset.
19266func (ctd CassandraTableDataset) MarshalJSON() ([]byte, error) {
19267	ctd.Type = TypeCassandraTable
19268	objectMap := make(map[string]interface{})
19269	if ctd.CassandraTableDatasetTypeProperties != nil {
19270		objectMap["typeProperties"] = ctd.CassandraTableDatasetTypeProperties
19271	}
19272	if ctd.Description != nil {
19273		objectMap["description"] = ctd.Description
19274	}
19275	objectMap["structure"] = ctd.Structure
19276	if ctd.LinkedServiceName != nil {
19277		objectMap["linkedServiceName"] = ctd.LinkedServiceName
19278	}
19279	if ctd.Parameters != nil {
19280		objectMap["parameters"] = ctd.Parameters
19281	}
19282	if ctd.Annotations != nil {
19283		objectMap["annotations"] = ctd.Annotations
19284	}
19285	if ctd.Type != "" {
19286		objectMap["type"] = ctd.Type
19287	}
19288	for k, v := range ctd.AdditionalProperties {
19289		objectMap[k] = v
19290	}
19291	return json.Marshal(objectMap)
19292}
19293
19294// AsResponsysObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19295func (ctd CassandraTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
19296	return nil, false
19297}
19298
19299// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19300func (ctd CassandraTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
19301	return nil, false
19302}
19303
19304// AsVerticaTableDataset is the BasicDataset implementation for CassandraTableDataset.
19305func (ctd CassandraTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
19306	return nil, false
19307}
19308
19309// AsNetezzaTableDataset is the BasicDataset implementation for CassandraTableDataset.
19310func (ctd CassandraTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
19311	return nil, false
19312}
19313
19314// AsZohoObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19315func (ctd CassandraTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
19316	return nil, false
19317}
19318
19319// AsXeroObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19320func (ctd CassandraTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
19321	return nil, false
19322}
19323
19324// AsSquareObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19325func (ctd CassandraTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
19326	return nil, false
19327}
19328
19329// AsSparkObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19330func (ctd CassandraTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
19331	return nil, false
19332}
19333
19334// AsShopifyObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19335func (ctd CassandraTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
19336	return nil, false
19337}
19338
19339// AsServiceNowObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19340func (ctd CassandraTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
19341	return nil, false
19342}
19343
19344// AsQuickBooksObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19345func (ctd CassandraTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
19346	return nil, false
19347}
19348
19349// AsPrestoObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19350func (ctd CassandraTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
19351	return nil, false
19352}
19353
19354// AsPhoenixObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19355func (ctd CassandraTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
19356	return nil, false
19357}
19358
19359// AsPaypalObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19360func (ctd CassandraTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
19361	return nil, false
19362}
19363
19364// AsMarketoObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19365func (ctd CassandraTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
19366	return nil, false
19367}
19368
19369// AsMariaDBTableDataset is the BasicDataset implementation for CassandraTableDataset.
19370func (ctd CassandraTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
19371	return nil, false
19372}
19373
19374// AsMagentoObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19375func (ctd CassandraTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
19376	return nil, false
19377}
19378
19379// AsJiraObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19380func (ctd CassandraTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
19381	return nil, false
19382}
19383
19384// AsImpalaObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19385func (ctd CassandraTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
19386	return nil, false
19387}
19388
19389// AsHubspotObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19390func (ctd CassandraTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
19391	return nil, false
19392}
19393
19394// AsHiveObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19395func (ctd CassandraTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
19396	return nil, false
19397}
19398
19399// AsHBaseObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19400func (ctd CassandraTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
19401	return nil, false
19402}
19403
19404// AsGreenplumTableDataset is the BasicDataset implementation for CassandraTableDataset.
19405func (ctd CassandraTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
19406	return nil, false
19407}
19408
19409// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19410func (ctd CassandraTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
19411	return nil, false
19412}
19413
19414// AsEloquaObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19415func (ctd CassandraTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
19416	return nil, false
19417}
19418
19419// AsDrillTableDataset is the BasicDataset implementation for CassandraTableDataset.
19420func (ctd CassandraTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
19421	return nil, false
19422}
19423
19424// AsCouchbaseTableDataset is the BasicDataset implementation for CassandraTableDataset.
19425func (ctd CassandraTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
19426	return nil, false
19427}
19428
19429// AsConcurObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19430func (ctd CassandraTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
19431	return nil, false
19432}
19433
19434// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for CassandraTableDataset.
19435func (ctd CassandraTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
19436	return nil, false
19437}
19438
19439// AsAmazonMWSObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19440func (ctd CassandraTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
19441	return nil, false
19442}
19443
19444// AsHTTPDataset is the BasicDataset implementation for CassandraTableDataset.
19445func (ctd CassandraTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
19446	return nil, false
19447}
19448
19449// AsAzureSearchIndexDataset is the BasicDataset implementation for CassandraTableDataset.
19450func (ctd CassandraTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
19451	return nil, false
19452}
19453
19454// AsWebTableDataset is the BasicDataset implementation for CassandraTableDataset.
19455func (ctd CassandraTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
19456	return nil, false
19457}
19458
19459// AsSQLServerTableDataset is the BasicDataset implementation for CassandraTableDataset.
19460func (ctd CassandraTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
19461	return nil, false
19462}
19463
19464// AsSapEccResourceDataset is the BasicDataset implementation for CassandraTableDataset.
19465func (ctd CassandraTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
19466	return nil, false
19467}
19468
19469// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for CassandraTableDataset.
19470func (ctd CassandraTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
19471	return nil, false
19472}
19473
19474// AsSalesforceObjectDataset is the BasicDataset implementation for CassandraTableDataset.
19475func (ctd CassandraTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
19476	return nil, false
19477}
19478
19479// AsRelationalTableDataset is the BasicDataset implementation for CassandraTableDataset.
19480func (ctd CassandraTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
19481	return nil, false
19482}
19483
19484// AsAzureMySQLTableDataset is the BasicDataset implementation for CassandraTableDataset.
19485func (ctd CassandraTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
19486	return nil, false
19487}
19488
19489// AsOracleTableDataset is the BasicDataset implementation for CassandraTableDataset.
19490func (ctd CassandraTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
19491	return nil, false
19492}
19493
19494// AsODataResourceDataset is the BasicDataset implementation for CassandraTableDataset.
19495func (ctd CassandraTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
19496	return nil, false
19497}
19498
19499// AsMongoDbCollectionDataset is the BasicDataset implementation for CassandraTableDataset.
19500func (ctd CassandraTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
19501	return nil, false
19502}
19503
19504// AsFileShareDataset is the BasicDataset implementation for CassandraTableDataset.
19505func (ctd CassandraTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
19506	return nil, false
19507}
19508
19509// AsAzureDataLakeStoreDataset is the BasicDataset implementation for CassandraTableDataset.
19510func (ctd CassandraTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
19511	return nil, false
19512}
19513
19514// AsDynamicsEntityDataset is the BasicDataset implementation for CassandraTableDataset.
19515func (ctd CassandraTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
19516	return nil, false
19517}
19518
19519// AsDocumentDbCollectionDataset is the BasicDataset implementation for CassandraTableDataset.
19520func (ctd CassandraTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
19521	return nil, false
19522}
19523
19524// AsCustomDataset is the BasicDataset implementation for CassandraTableDataset.
19525func (ctd CassandraTableDataset) AsCustomDataset() (*CustomDataset, bool) {
19526	return nil, false
19527}
19528
19529// AsCassandraTableDataset is the BasicDataset implementation for CassandraTableDataset.
19530func (ctd CassandraTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
19531	return &ctd, true
19532}
19533
19534// AsAzureSQLDWTableDataset is the BasicDataset implementation for CassandraTableDataset.
19535func (ctd CassandraTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
19536	return nil, false
19537}
19538
19539// AsAzureSQLTableDataset is the BasicDataset implementation for CassandraTableDataset.
19540func (ctd CassandraTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
19541	return nil, false
19542}
19543
19544// AsAzureTableDataset is the BasicDataset implementation for CassandraTableDataset.
19545func (ctd CassandraTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
19546	return nil, false
19547}
19548
19549// AsAzureBlobDataset is the BasicDataset implementation for CassandraTableDataset.
19550func (ctd CassandraTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
19551	return nil, false
19552}
19553
19554// AsAmazonS3Dataset is the BasicDataset implementation for CassandraTableDataset.
19555func (ctd CassandraTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
19556	return nil, false
19557}
19558
19559// AsDataset is the BasicDataset implementation for CassandraTableDataset.
19560func (ctd CassandraTableDataset) AsDataset() (*Dataset, bool) {
19561	return nil, false
19562}
19563
19564// AsBasicDataset is the BasicDataset implementation for CassandraTableDataset.
19565func (ctd CassandraTableDataset) AsBasicDataset() (BasicDataset, bool) {
19566	return &ctd, true
19567}
19568
19569// UnmarshalJSON is the custom unmarshaler for CassandraTableDataset struct.
19570func (ctd *CassandraTableDataset) UnmarshalJSON(body []byte) error {
19571	var m map[string]*json.RawMessage
19572	err := json.Unmarshal(body, &m)
19573	if err != nil {
19574		return err
19575	}
19576	for k, v := range m {
19577		switch k {
19578		case "typeProperties":
19579			if v != nil {
19580				var cassandraTableDatasetTypeProperties CassandraTableDatasetTypeProperties
19581				err = json.Unmarshal(*v, &cassandraTableDatasetTypeProperties)
19582				if err != nil {
19583					return err
19584				}
19585				ctd.CassandraTableDatasetTypeProperties = &cassandraTableDatasetTypeProperties
19586			}
19587		default:
19588			if v != nil {
19589				var additionalProperties interface{}
19590				err = json.Unmarshal(*v, &additionalProperties)
19591				if err != nil {
19592					return err
19593				}
19594				if ctd.AdditionalProperties == nil {
19595					ctd.AdditionalProperties = make(map[string]interface{})
19596				}
19597				ctd.AdditionalProperties[k] = additionalProperties
19598			}
19599		case "description":
19600			if v != nil {
19601				var description string
19602				err = json.Unmarshal(*v, &description)
19603				if err != nil {
19604					return err
19605				}
19606				ctd.Description = &description
19607			}
19608		case "structure":
19609			if v != nil {
19610				var structure interface{}
19611				err = json.Unmarshal(*v, &structure)
19612				if err != nil {
19613					return err
19614				}
19615				ctd.Structure = structure
19616			}
19617		case "linkedServiceName":
19618			if v != nil {
19619				var linkedServiceName LinkedServiceReference
19620				err = json.Unmarshal(*v, &linkedServiceName)
19621				if err != nil {
19622					return err
19623				}
19624				ctd.LinkedServiceName = &linkedServiceName
19625			}
19626		case "parameters":
19627			if v != nil {
19628				var parameters map[string]*ParameterSpecification
19629				err = json.Unmarshal(*v, &parameters)
19630				if err != nil {
19631					return err
19632				}
19633				ctd.Parameters = parameters
19634			}
19635		case "annotations":
19636			if v != nil {
19637				var annotations []interface{}
19638				err = json.Unmarshal(*v, &annotations)
19639				if err != nil {
19640					return err
19641				}
19642				ctd.Annotations = &annotations
19643			}
19644		case "type":
19645			if v != nil {
19646				var typeVar TypeBasicDataset
19647				err = json.Unmarshal(*v, &typeVar)
19648				if err != nil {
19649					return err
19650				}
19651				ctd.Type = typeVar
19652			}
19653		}
19654	}
19655
19656	return nil
19657}
19658
19659// CassandraTableDatasetTypeProperties cassandra dataset properties.
19660type CassandraTableDatasetTypeProperties struct {
19661	// TableName - The table name of the Cassandra database. Type: string (or Expression with resultType string).
19662	TableName interface{} `json:"tableName,omitempty"`
19663	// Keyspace - The keyspace of the Cassandra database. Type: string (or Expression with resultType string).
19664	Keyspace interface{} `json:"keyspace,omitempty"`
19665}
19666
19667// ConcurLinkedService concur Serivce linked service.
19668type ConcurLinkedService struct {
19669	// ConcurLinkedServiceTypeProperties - Concur Serivce linked service properties.
19670	*ConcurLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
19671	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
19672	AdditionalProperties map[string]interface{} `json:""`
19673	// ConnectVia - The integration runtime reference.
19674	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
19675	// Description - Linked service description.
19676	Description *string `json:"description,omitempty"`
19677	// Parameters - Parameters for linked service.
19678	Parameters map[string]*ParameterSpecification `json:"parameters"`
19679	// Annotations - List of tags that can be used for describing the Dataset.
19680	Annotations *[]interface{} `json:"annotations,omitempty"`
19681	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
19682	Type TypeBasicLinkedService `json:"type,omitempty"`
19683}
19684
19685// MarshalJSON is the custom marshaler for ConcurLinkedService.
19686func (cls ConcurLinkedService) MarshalJSON() ([]byte, error) {
19687	cls.Type = TypeConcur
19688	objectMap := make(map[string]interface{})
19689	if cls.ConcurLinkedServiceTypeProperties != nil {
19690		objectMap["typeProperties"] = cls.ConcurLinkedServiceTypeProperties
19691	}
19692	if cls.ConnectVia != nil {
19693		objectMap["connectVia"] = cls.ConnectVia
19694	}
19695	if cls.Description != nil {
19696		objectMap["description"] = cls.Description
19697	}
19698	if cls.Parameters != nil {
19699		objectMap["parameters"] = cls.Parameters
19700	}
19701	if cls.Annotations != nil {
19702		objectMap["annotations"] = cls.Annotations
19703	}
19704	if cls.Type != "" {
19705		objectMap["type"] = cls.Type
19706	}
19707	for k, v := range cls.AdditionalProperties {
19708		objectMap[k] = v
19709	}
19710	return json.Marshal(objectMap)
19711}
19712
19713// AsResponsysLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19714func (cls ConcurLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
19715	return nil, false
19716}
19717
19718// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19719func (cls ConcurLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
19720	return nil, false
19721}
19722
19723// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19724func (cls ConcurLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
19725	return nil, false
19726}
19727
19728// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19729func (cls ConcurLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
19730	return nil, false
19731}
19732
19733// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19734func (cls ConcurLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
19735	return nil, false
19736}
19737
19738// AsNetezzaLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19739func (cls ConcurLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
19740	return nil, false
19741}
19742
19743// AsVerticaLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19744func (cls ConcurLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
19745	return nil, false
19746}
19747
19748// AsZohoLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19749func (cls ConcurLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
19750	return nil, false
19751}
19752
19753// AsXeroLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19754func (cls ConcurLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
19755	return nil, false
19756}
19757
19758// AsSquareLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19759func (cls ConcurLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
19760	return nil, false
19761}
19762
19763// AsSparkLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19764func (cls ConcurLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
19765	return nil, false
19766}
19767
19768// AsShopifyLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19769func (cls ConcurLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
19770	return nil, false
19771}
19772
19773// AsServiceNowLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19774func (cls ConcurLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
19775	return nil, false
19776}
19777
19778// AsQuickBooksLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19779func (cls ConcurLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
19780	return nil, false
19781}
19782
19783// AsPrestoLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19784func (cls ConcurLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
19785	return nil, false
19786}
19787
19788// AsPhoenixLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19789func (cls ConcurLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
19790	return nil, false
19791}
19792
19793// AsPaypalLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19794func (cls ConcurLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
19795	return nil, false
19796}
19797
19798// AsMarketoLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19799func (cls ConcurLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
19800	return nil, false
19801}
19802
19803// AsMariaDBLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19804func (cls ConcurLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
19805	return nil, false
19806}
19807
19808// AsMagentoLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19809func (cls ConcurLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
19810	return nil, false
19811}
19812
19813// AsJiraLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19814func (cls ConcurLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
19815	return nil, false
19816}
19817
19818// AsImpalaLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19819func (cls ConcurLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
19820	return nil, false
19821}
19822
19823// AsHubspotLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19824func (cls ConcurLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
19825	return nil, false
19826}
19827
19828// AsHiveLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19829func (cls ConcurLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
19830	return nil, false
19831}
19832
19833// AsHBaseLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19834func (cls ConcurLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
19835	return nil, false
19836}
19837
19838// AsGreenplumLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19839func (cls ConcurLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
19840	return nil, false
19841}
19842
19843// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19844func (cls ConcurLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
19845	return nil, false
19846}
19847
19848// AsEloquaLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19849func (cls ConcurLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
19850	return nil, false
19851}
19852
19853// AsDrillLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19854func (cls ConcurLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
19855	return nil, false
19856}
19857
19858// AsCouchbaseLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19859func (cls ConcurLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
19860	return nil, false
19861}
19862
19863// AsConcurLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19864func (cls ConcurLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
19865	return &cls, true
19866}
19867
19868// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19869func (cls ConcurLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
19870	return nil, false
19871}
19872
19873// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19874func (cls ConcurLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
19875	return nil, false
19876}
19877
19878// AsSapHanaLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19879func (cls ConcurLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
19880	return nil, false
19881}
19882
19883// AsSapBWLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19884func (cls ConcurLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
19885	return nil, false
19886}
19887
19888// AsSftpServerLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19889func (cls ConcurLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
19890	return nil, false
19891}
19892
19893// AsFtpServerLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19894func (cls ConcurLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
19895	return nil, false
19896}
19897
19898// AsHTTPLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19899func (cls ConcurLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
19900	return nil, false
19901}
19902
19903// AsAzureSearchLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19904func (cls ConcurLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
19905	return nil, false
19906}
19907
19908// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19909func (cls ConcurLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
19910	return nil, false
19911}
19912
19913// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19914func (cls ConcurLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
19915	return nil, false
19916}
19917
19918// AsAmazonS3LinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19919func (cls ConcurLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
19920	return nil, false
19921}
19922
19923// AsSapEccLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19924func (cls ConcurLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
19925	return nil, false
19926}
19927
19928// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19929func (cls ConcurLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
19930	return nil, false
19931}
19932
19933// AsSalesforceLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19934func (cls ConcurLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
19935	return nil, false
19936}
19937
19938// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19939func (cls ConcurLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
19940	return nil, false
19941}
19942
19943// AsMongoDbLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19944func (cls ConcurLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
19945	return nil, false
19946}
19947
19948// AsCassandraLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19949func (cls ConcurLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
19950	return nil, false
19951}
19952
19953// AsWebLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19954func (cls ConcurLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
19955	return nil, false
19956}
19957
19958// AsODataLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19959func (cls ConcurLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
19960	return nil, false
19961}
19962
19963// AsHdfsLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19964func (cls ConcurLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
19965	return nil, false
19966}
19967
19968// AsOdbcLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19969func (cls ConcurLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
19970	return nil, false
19971}
19972
19973// AsAzureMLLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19974func (cls ConcurLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
19975	return nil, false
19976}
19977
19978// AsTeradataLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19979func (cls ConcurLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
19980	return nil, false
19981}
19982
19983// AsDb2LinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19984func (cls ConcurLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
19985	return nil, false
19986}
19987
19988// AsSybaseLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19989func (cls ConcurLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
19990	return nil, false
19991}
19992
19993// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19994func (cls ConcurLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
19995	return nil, false
19996}
19997
19998// AsMySQLLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
19999func (cls ConcurLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
20000	return nil, false
20001}
20002
20003// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20004func (cls ConcurLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
20005	return nil, false
20006}
20007
20008// AsOracleLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20009func (cls ConcurLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
20010	return nil, false
20011}
20012
20013// AsFileServerLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20014func (cls ConcurLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
20015	return nil, false
20016}
20017
20018// AsHDInsightLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20019func (cls ConcurLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
20020	return nil, false
20021}
20022
20023// AsDynamicsLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20024func (cls ConcurLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
20025	return nil, false
20026}
20027
20028// AsCosmosDbLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20029func (cls ConcurLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
20030	return nil, false
20031}
20032
20033// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20034func (cls ConcurLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
20035	return nil, false
20036}
20037
20038// AsAzureBatchLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20039func (cls ConcurLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
20040	return nil, false
20041}
20042
20043// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20044func (cls ConcurLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
20045	return nil, false
20046}
20047
20048// AsSQLServerLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20049func (cls ConcurLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
20050	return nil, false
20051}
20052
20053// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20054func (cls ConcurLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
20055	return nil, false
20056}
20057
20058// AsAzureStorageLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20059func (cls ConcurLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
20060	return nil, false
20061}
20062
20063// AsLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20064func (cls ConcurLinkedService) AsLinkedService() (*LinkedService, bool) {
20065	return nil, false
20066}
20067
20068// AsBasicLinkedService is the BasicLinkedService implementation for ConcurLinkedService.
20069func (cls ConcurLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
20070	return &cls, true
20071}
20072
20073// UnmarshalJSON is the custom unmarshaler for ConcurLinkedService struct.
20074func (cls *ConcurLinkedService) UnmarshalJSON(body []byte) error {
20075	var m map[string]*json.RawMessage
20076	err := json.Unmarshal(body, &m)
20077	if err != nil {
20078		return err
20079	}
20080	for k, v := range m {
20081		switch k {
20082		case "typeProperties":
20083			if v != nil {
20084				var concurLinkedServiceTypeProperties ConcurLinkedServiceTypeProperties
20085				err = json.Unmarshal(*v, &concurLinkedServiceTypeProperties)
20086				if err != nil {
20087					return err
20088				}
20089				cls.ConcurLinkedServiceTypeProperties = &concurLinkedServiceTypeProperties
20090			}
20091		default:
20092			if v != nil {
20093				var additionalProperties interface{}
20094				err = json.Unmarshal(*v, &additionalProperties)
20095				if err != nil {
20096					return err
20097				}
20098				if cls.AdditionalProperties == nil {
20099					cls.AdditionalProperties = make(map[string]interface{})
20100				}
20101				cls.AdditionalProperties[k] = additionalProperties
20102			}
20103		case "connectVia":
20104			if v != nil {
20105				var connectVia IntegrationRuntimeReference
20106				err = json.Unmarshal(*v, &connectVia)
20107				if err != nil {
20108					return err
20109				}
20110				cls.ConnectVia = &connectVia
20111			}
20112		case "description":
20113			if v != nil {
20114				var description string
20115				err = json.Unmarshal(*v, &description)
20116				if err != nil {
20117					return err
20118				}
20119				cls.Description = &description
20120			}
20121		case "parameters":
20122			if v != nil {
20123				var parameters map[string]*ParameterSpecification
20124				err = json.Unmarshal(*v, &parameters)
20125				if err != nil {
20126					return err
20127				}
20128				cls.Parameters = parameters
20129			}
20130		case "annotations":
20131			if v != nil {
20132				var annotations []interface{}
20133				err = json.Unmarshal(*v, &annotations)
20134				if err != nil {
20135					return err
20136				}
20137				cls.Annotations = &annotations
20138			}
20139		case "type":
20140			if v != nil {
20141				var typeVar TypeBasicLinkedService
20142				err = json.Unmarshal(*v, &typeVar)
20143				if err != nil {
20144					return err
20145				}
20146				cls.Type = typeVar
20147			}
20148		}
20149	}
20150
20151	return nil
20152}
20153
20154// ConcurLinkedServiceTypeProperties concur Serivce linked service properties.
20155type ConcurLinkedServiceTypeProperties struct {
20156	// ClientID - Application client_id supplied by Concur App Management.
20157	ClientID interface{} `json:"clientId,omitempty"`
20158	// Username - The user name that you use to access Concur Service.
20159	Username interface{} `json:"username,omitempty"`
20160	// Password - The password corresponding to the user name that you provided in the username field.
20161	Password BasicSecretBase `json:"password,omitempty"`
20162	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
20163	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
20164	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
20165	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
20166	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
20167	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
20168	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
20169	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
20170}
20171
20172// UnmarshalJSON is the custom unmarshaler for ConcurLinkedServiceTypeProperties struct.
20173func (clstp *ConcurLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
20174	var m map[string]*json.RawMessage
20175	err := json.Unmarshal(body, &m)
20176	if err != nil {
20177		return err
20178	}
20179	for k, v := range m {
20180		switch k {
20181		case "clientId":
20182			if v != nil {
20183				var clientID interface{}
20184				err = json.Unmarshal(*v, &clientID)
20185				if err != nil {
20186					return err
20187				}
20188				clstp.ClientID = clientID
20189			}
20190		case "username":
20191			if v != nil {
20192				var username interface{}
20193				err = json.Unmarshal(*v, &username)
20194				if err != nil {
20195					return err
20196				}
20197				clstp.Username = username
20198			}
20199		case "password":
20200			if v != nil {
20201				password, err := unmarshalBasicSecretBase(*v)
20202				if err != nil {
20203					return err
20204				}
20205				clstp.Password = password
20206			}
20207		case "useEncryptedEndpoints":
20208			if v != nil {
20209				var useEncryptedEndpoints interface{}
20210				err = json.Unmarshal(*v, &useEncryptedEndpoints)
20211				if err != nil {
20212					return err
20213				}
20214				clstp.UseEncryptedEndpoints = useEncryptedEndpoints
20215			}
20216		case "useHostVerification":
20217			if v != nil {
20218				var useHostVerification interface{}
20219				err = json.Unmarshal(*v, &useHostVerification)
20220				if err != nil {
20221					return err
20222				}
20223				clstp.UseHostVerification = useHostVerification
20224			}
20225		case "usePeerVerification":
20226			if v != nil {
20227				var usePeerVerification interface{}
20228				err = json.Unmarshal(*v, &usePeerVerification)
20229				if err != nil {
20230					return err
20231				}
20232				clstp.UsePeerVerification = usePeerVerification
20233			}
20234		case "encryptedCredential":
20235			if v != nil {
20236				var encryptedCredential interface{}
20237				err = json.Unmarshal(*v, &encryptedCredential)
20238				if err != nil {
20239					return err
20240				}
20241				clstp.EncryptedCredential = encryptedCredential
20242			}
20243		}
20244	}
20245
20246	return nil
20247}
20248
20249// ConcurObjectDataset concur Serivce dataset.
20250type ConcurObjectDataset struct {
20251	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
20252	AdditionalProperties map[string]interface{} `json:""`
20253	// Description - Dataset description.
20254	Description *string `json:"description,omitempty"`
20255	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
20256	Structure interface{} `json:"structure,omitempty"`
20257	// LinkedServiceName - Linked service reference.
20258	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
20259	// Parameters - Parameters for dataset.
20260	Parameters map[string]*ParameterSpecification `json:"parameters"`
20261	// Annotations - List of tags that can be used for describing the Dataset.
20262	Annotations *[]interface{} `json:"annotations,omitempty"`
20263	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
20264	Type TypeBasicDataset `json:"type,omitempty"`
20265}
20266
20267// MarshalJSON is the custom marshaler for ConcurObjectDataset.
20268func (cod ConcurObjectDataset) MarshalJSON() ([]byte, error) {
20269	cod.Type = TypeConcurObject
20270	objectMap := make(map[string]interface{})
20271	if cod.Description != nil {
20272		objectMap["description"] = cod.Description
20273	}
20274	objectMap["structure"] = cod.Structure
20275	if cod.LinkedServiceName != nil {
20276		objectMap["linkedServiceName"] = cod.LinkedServiceName
20277	}
20278	if cod.Parameters != nil {
20279		objectMap["parameters"] = cod.Parameters
20280	}
20281	if cod.Annotations != nil {
20282		objectMap["annotations"] = cod.Annotations
20283	}
20284	if cod.Type != "" {
20285		objectMap["type"] = cod.Type
20286	}
20287	for k, v := range cod.AdditionalProperties {
20288		objectMap[k] = v
20289	}
20290	return json.Marshal(objectMap)
20291}
20292
20293// AsResponsysObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20294func (cod ConcurObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
20295	return nil, false
20296}
20297
20298// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20299func (cod ConcurObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
20300	return nil, false
20301}
20302
20303// AsVerticaTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20304func (cod ConcurObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
20305	return nil, false
20306}
20307
20308// AsNetezzaTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20309func (cod ConcurObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
20310	return nil, false
20311}
20312
20313// AsZohoObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20314func (cod ConcurObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
20315	return nil, false
20316}
20317
20318// AsXeroObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20319func (cod ConcurObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
20320	return nil, false
20321}
20322
20323// AsSquareObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20324func (cod ConcurObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
20325	return nil, false
20326}
20327
20328// AsSparkObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20329func (cod ConcurObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
20330	return nil, false
20331}
20332
20333// AsShopifyObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20334func (cod ConcurObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
20335	return nil, false
20336}
20337
20338// AsServiceNowObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20339func (cod ConcurObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
20340	return nil, false
20341}
20342
20343// AsQuickBooksObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20344func (cod ConcurObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
20345	return nil, false
20346}
20347
20348// AsPrestoObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20349func (cod ConcurObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
20350	return nil, false
20351}
20352
20353// AsPhoenixObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20354func (cod ConcurObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
20355	return nil, false
20356}
20357
20358// AsPaypalObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20359func (cod ConcurObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
20360	return nil, false
20361}
20362
20363// AsMarketoObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20364func (cod ConcurObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
20365	return nil, false
20366}
20367
20368// AsMariaDBTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20369func (cod ConcurObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
20370	return nil, false
20371}
20372
20373// AsMagentoObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20374func (cod ConcurObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
20375	return nil, false
20376}
20377
20378// AsJiraObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20379func (cod ConcurObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
20380	return nil, false
20381}
20382
20383// AsImpalaObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20384func (cod ConcurObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
20385	return nil, false
20386}
20387
20388// AsHubspotObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20389func (cod ConcurObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
20390	return nil, false
20391}
20392
20393// AsHiveObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20394func (cod ConcurObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
20395	return nil, false
20396}
20397
20398// AsHBaseObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20399func (cod ConcurObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
20400	return nil, false
20401}
20402
20403// AsGreenplumTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20404func (cod ConcurObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
20405	return nil, false
20406}
20407
20408// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20409func (cod ConcurObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
20410	return nil, false
20411}
20412
20413// AsEloquaObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20414func (cod ConcurObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
20415	return nil, false
20416}
20417
20418// AsDrillTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20419func (cod ConcurObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
20420	return nil, false
20421}
20422
20423// AsCouchbaseTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20424func (cod ConcurObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
20425	return nil, false
20426}
20427
20428// AsConcurObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20429func (cod ConcurObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
20430	return &cod, true
20431}
20432
20433// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20434func (cod ConcurObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
20435	return nil, false
20436}
20437
20438// AsAmazonMWSObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20439func (cod ConcurObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
20440	return nil, false
20441}
20442
20443// AsHTTPDataset is the BasicDataset implementation for ConcurObjectDataset.
20444func (cod ConcurObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
20445	return nil, false
20446}
20447
20448// AsAzureSearchIndexDataset is the BasicDataset implementation for ConcurObjectDataset.
20449func (cod ConcurObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
20450	return nil, false
20451}
20452
20453// AsWebTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20454func (cod ConcurObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
20455	return nil, false
20456}
20457
20458// AsSQLServerTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20459func (cod ConcurObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
20460	return nil, false
20461}
20462
20463// AsSapEccResourceDataset is the BasicDataset implementation for ConcurObjectDataset.
20464func (cod ConcurObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
20465	return nil, false
20466}
20467
20468// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ConcurObjectDataset.
20469func (cod ConcurObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
20470	return nil, false
20471}
20472
20473// AsSalesforceObjectDataset is the BasicDataset implementation for ConcurObjectDataset.
20474func (cod ConcurObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
20475	return nil, false
20476}
20477
20478// AsRelationalTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20479func (cod ConcurObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
20480	return nil, false
20481}
20482
20483// AsAzureMySQLTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20484func (cod ConcurObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
20485	return nil, false
20486}
20487
20488// AsOracleTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20489func (cod ConcurObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
20490	return nil, false
20491}
20492
20493// AsODataResourceDataset is the BasicDataset implementation for ConcurObjectDataset.
20494func (cod ConcurObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
20495	return nil, false
20496}
20497
20498// AsMongoDbCollectionDataset is the BasicDataset implementation for ConcurObjectDataset.
20499func (cod ConcurObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
20500	return nil, false
20501}
20502
20503// AsFileShareDataset is the BasicDataset implementation for ConcurObjectDataset.
20504func (cod ConcurObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
20505	return nil, false
20506}
20507
20508// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ConcurObjectDataset.
20509func (cod ConcurObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
20510	return nil, false
20511}
20512
20513// AsDynamicsEntityDataset is the BasicDataset implementation for ConcurObjectDataset.
20514func (cod ConcurObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
20515	return nil, false
20516}
20517
20518// AsDocumentDbCollectionDataset is the BasicDataset implementation for ConcurObjectDataset.
20519func (cod ConcurObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
20520	return nil, false
20521}
20522
20523// AsCustomDataset is the BasicDataset implementation for ConcurObjectDataset.
20524func (cod ConcurObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
20525	return nil, false
20526}
20527
20528// AsCassandraTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20529func (cod ConcurObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
20530	return nil, false
20531}
20532
20533// AsAzureSQLDWTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20534func (cod ConcurObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
20535	return nil, false
20536}
20537
20538// AsAzureSQLTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20539func (cod ConcurObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
20540	return nil, false
20541}
20542
20543// AsAzureTableDataset is the BasicDataset implementation for ConcurObjectDataset.
20544func (cod ConcurObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
20545	return nil, false
20546}
20547
20548// AsAzureBlobDataset is the BasicDataset implementation for ConcurObjectDataset.
20549func (cod ConcurObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
20550	return nil, false
20551}
20552
20553// AsAmazonS3Dataset is the BasicDataset implementation for ConcurObjectDataset.
20554func (cod ConcurObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
20555	return nil, false
20556}
20557
20558// AsDataset is the BasicDataset implementation for ConcurObjectDataset.
20559func (cod ConcurObjectDataset) AsDataset() (*Dataset, bool) {
20560	return nil, false
20561}
20562
20563// AsBasicDataset is the BasicDataset implementation for ConcurObjectDataset.
20564func (cod ConcurObjectDataset) AsBasicDataset() (BasicDataset, bool) {
20565	return &cod, true
20566}
20567
20568// ConcurSource a copy activity Concur Serivce source.
20569type ConcurSource struct {
20570	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
20571	Query interface{} `json:"query,omitempty"`
20572	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
20573	AdditionalProperties map[string]interface{} `json:""`
20574	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
20575	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
20576	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
20577	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
20578	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
20579	Type TypeBasicCopySource `json:"type,omitempty"`
20580}
20581
20582// MarshalJSON is the custom marshaler for ConcurSource.
20583func (cs ConcurSource) MarshalJSON() ([]byte, error) {
20584	cs.Type = TypeConcurSource
20585	objectMap := make(map[string]interface{})
20586	objectMap["query"] = cs.Query
20587	objectMap["sourceRetryCount"] = cs.SourceRetryCount
20588	objectMap["sourceRetryWait"] = cs.SourceRetryWait
20589	if cs.Type != "" {
20590		objectMap["type"] = cs.Type
20591	}
20592	for k, v := range cs.AdditionalProperties {
20593		objectMap[k] = v
20594	}
20595	return json.Marshal(objectMap)
20596}
20597
20598// AsAmazonRedshiftSource is the BasicCopySource implementation for ConcurSource.
20599func (cs ConcurSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
20600	return nil, false
20601}
20602
20603// AsResponsysSource is the BasicCopySource implementation for ConcurSource.
20604func (cs ConcurSource) AsResponsysSource() (*ResponsysSource, bool) {
20605	return nil, false
20606}
20607
20608// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ConcurSource.
20609func (cs ConcurSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
20610	return nil, false
20611}
20612
20613// AsVerticaSource is the BasicCopySource implementation for ConcurSource.
20614func (cs ConcurSource) AsVerticaSource() (*VerticaSource, bool) {
20615	return nil, false
20616}
20617
20618// AsNetezzaSource is the BasicCopySource implementation for ConcurSource.
20619func (cs ConcurSource) AsNetezzaSource() (*NetezzaSource, bool) {
20620	return nil, false
20621}
20622
20623// AsZohoSource is the BasicCopySource implementation for ConcurSource.
20624func (cs ConcurSource) AsZohoSource() (*ZohoSource, bool) {
20625	return nil, false
20626}
20627
20628// AsXeroSource is the BasicCopySource implementation for ConcurSource.
20629func (cs ConcurSource) AsXeroSource() (*XeroSource, bool) {
20630	return nil, false
20631}
20632
20633// AsSquareSource is the BasicCopySource implementation for ConcurSource.
20634func (cs ConcurSource) AsSquareSource() (*SquareSource, bool) {
20635	return nil, false
20636}
20637
20638// AsSparkSource is the BasicCopySource implementation for ConcurSource.
20639func (cs ConcurSource) AsSparkSource() (*SparkSource, bool) {
20640	return nil, false
20641}
20642
20643// AsShopifySource is the BasicCopySource implementation for ConcurSource.
20644func (cs ConcurSource) AsShopifySource() (*ShopifySource, bool) {
20645	return nil, false
20646}
20647
20648// AsServiceNowSource is the BasicCopySource implementation for ConcurSource.
20649func (cs ConcurSource) AsServiceNowSource() (*ServiceNowSource, bool) {
20650	return nil, false
20651}
20652
20653// AsQuickBooksSource is the BasicCopySource implementation for ConcurSource.
20654func (cs ConcurSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
20655	return nil, false
20656}
20657
20658// AsPrestoSource is the BasicCopySource implementation for ConcurSource.
20659func (cs ConcurSource) AsPrestoSource() (*PrestoSource, bool) {
20660	return nil, false
20661}
20662
20663// AsPhoenixSource is the BasicCopySource implementation for ConcurSource.
20664func (cs ConcurSource) AsPhoenixSource() (*PhoenixSource, bool) {
20665	return nil, false
20666}
20667
20668// AsPaypalSource is the BasicCopySource implementation for ConcurSource.
20669func (cs ConcurSource) AsPaypalSource() (*PaypalSource, bool) {
20670	return nil, false
20671}
20672
20673// AsMarketoSource is the BasicCopySource implementation for ConcurSource.
20674func (cs ConcurSource) AsMarketoSource() (*MarketoSource, bool) {
20675	return nil, false
20676}
20677
20678// AsMariaDBSource is the BasicCopySource implementation for ConcurSource.
20679func (cs ConcurSource) AsMariaDBSource() (*MariaDBSource, bool) {
20680	return nil, false
20681}
20682
20683// AsMagentoSource is the BasicCopySource implementation for ConcurSource.
20684func (cs ConcurSource) AsMagentoSource() (*MagentoSource, bool) {
20685	return nil, false
20686}
20687
20688// AsJiraSource is the BasicCopySource implementation for ConcurSource.
20689func (cs ConcurSource) AsJiraSource() (*JiraSource, bool) {
20690	return nil, false
20691}
20692
20693// AsImpalaSource is the BasicCopySource implementation for ConcurSource.
20694func (cs ConcurSource) AsImpalaSource() (*ImpalaSource, bool) {
20695	return nil, false
20696}
20697
20698// AsHubspotSource is the BasicCopySource implementation for ConcurSource.
20699func (cs ConcurSource) AsHubspotSource() (*HubspotSource, bool) {
20700	return nil, false
20701}
20702
20703// AsHiveSource is the BasicCopySource implementation for ConcurSource.
20704func (cs ConcurSource) AsHiveSource() (*HiveSource, bool) {
20705	return nil, false
20706}
20707
20708// AsHBaseSource is the BasicCopySource implementation for ConcurSource.
20709func (cs ConcurSource) AsHBaseSource() (*HBaseSource, bool) {
20710	return nil, false
20711}
20712
20713// AsGreenplumSource is the BasicCopySource implementation for ConcurSource.
20714func (cs ConcurSource) AsGreenplumSource() (*GreenplumSource, bool) {
20715	return nil, false
20716}
20717
20718// AsGoogleBigQuerySource is the BasicCopySource implementation for ConcurSource.
20719func (cs ConcurSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
20720	return nil, false
20721}
20722
20723// AsEloquaSource is the BasicCopySource implementation for ConcurSource.
20724func (cs ConcurSource) AsEloquaSource() (*EloquaSource, bool) {
20725	return nil, false
20726}
20727
20728// AsDrillSource is the BasicCopySource implementation for ConcurSource.
20729func (cs ConcurSource) AsDrillSource() (*DrillSource, bool) {
20730	return nil, false
20731}
20732
20733// AsCouchbaseSource is the BasicCopySource implementation for ConcurSource.
20734func (cs ConcurSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
20735	return nil, false
20736}
20737
20738// AsConcurSource is the BasicCopySource implementation for ConcurSource.
20739func (cs ConcurSource) AsConcurSource() (*ConcurSource, bool) {
20740	return &cs, true
20741}
20742
20743// AsAzurePostgreSQLSource is the BasicCopySource implementation for ConcurSource.
20744func (cs ConcurSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
20745	return nil, false
20746}
20747
20748// AsAmazonMWSSource is the BasicCopySource implementation for ConcurSource.
20749func (cs ConcurSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
20750	return nil, false
20751}
20752
20753// AsHTTPSource is the BasicCopySource implementation for ConcurSource.
20754func (cs ConcurSource) AsHTTPSource() (*HTTPSource, bool) {
20755	return nil, false
20756}
20757
20758// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ConcurSource.
20759func (cs ConcurSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
20760	return nil, false
20761}
20762
20763// AsMongoDbSource is the BasicCopySource implementation for ConcurSource.
20764func (cs ConcurSource) AsMongoDbSource() (*MongoDbSource, bool) {
20765	return nil, false
20766}
20767
20768// AsCassandraSource is the BasicCopySource implementation for ConcurSource.
20769func (cs ConcurSource) AsCassandraSource() (*CassandraSource, bool) {
20770	return nil, false
20771}
20772
20773// AsWebSource is the BasicCopySource implementation for ConcurSource.
20774func (cs ConcurSource) AsWebSource() (*WebSource, bool) {
20775	return nil, false
20776}
20777
20778// AsOracleSource is the BasicCopySource implementation for ConcurSource.
20779func (cs ConcurSource) AsOracleSource() (*OracleSource, bool) {
20780	return nil, false
20781}
20782
20783// AsAzureMySQLSource is the BasicCopySource implementation for ConcurSource.
20784func (cs ConcurSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
20785	return nil, false
20786}
20787
20788// AsHdfsSource is the BasicCopySource implementation for ConcurSource.
20789func (cs ConcurSource) AsHdfsSource() (*HdfsSource, bool) {
20790	return nil, false
20791}
20792
20793// AsFileSystemSource is the BasicCopySource implementation for ConcurSource.
20794func (cs ConcurSource) AsFileSystemSource() (*FileSystemSource, bool) {
20795	return nil, false
20796}
20797
20798// AsSQLDWSource is the BasicCopySource implementation for ConcurSource.
20799func (cs ConcurSource) AsSQLDWSource() (*SQLDWSource, bool) {
20800	return nil, false
20801}
20802
20803// AsSQLSource is the BasicCopySource implementation for ConcurSource.
20804func (cs ConcurSource) AsSQLSource() (*SQLSource, bool) {
20805	return nil, false
20806}
20807
20808// AsSapEccSource is the BasicCopySource implementation for ConcurSource.
20809func (cs ConcurSource) AsSapEccSource() (*SapEccSource, bool) {
20810	return nil, false
20811}
20812
20813// AsSapCloudForCustomerSource is the BasicCopySource implementation for ConcurSource.
20814func (cs ConcurSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
20815	return nil, false
20816}
20817
20818// AsSalesforceSource is the BasicCopySource implementation for ConcurSource.
20819func (cs ConcurSource) AsSalesforceSource() (*SalesforceSource, bool) {
20820	return nil, false
20821}
20822
20823// AsRelationalSource is the BasicCopySource implementation for ConcurSource.
20824func (cs ConcurSource) AsRelationalSource() (*RelationalSource, bool) {
20825	return nil, false
20826}
20827
20828// AsDynamicsSource is the BasicCopySource implementation for ConcurSource.
20829func (cs ConcurSource) AsDynamicsSource() (*DynamicsSource, bool) {
20830	return nil, false
20831}
20832
20833// AsDocumentDbCollectionSource is the BasicCopySource implementation for ConcurSource.
20834func (cs ConcurSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
20835	return nil, false
20836}
20837
20838// AsBlobSource is the BasicCopySource implementation for ConcurSource.
20839func (cs ConcurSource) AsBlobSource() (*BlobSource, bool) {
20840	return nil, false
20841}
20842
20843// AsAzureTableSource is the BasicCopySource implementation for ConcurSource.
20844func (cs ConcurSource) AsAzureTableSource() (*AzureTableSource, bool) {
20845	return nil, false
20846}
20847
20848// AsCopySource is the BasicCopySource implementation for ConcurSource.
20849func (cs ConcurSource) AsCopySource() (*CopySource, bool) {
20850	return nil, false
20851}
20852
20853// AsBasicCopySource is the BasicCopySource implementation for ConcurSource.
20854func (cs ConcurSource) AsBasicCopySource() (BasicCopySource, bool) {
20855	return &cs, true
20856}
20857
20858// BasicControlActivity base class for all control activities like IfCondition, ForEach , Until.
20859type BasicControlActivity interface {
20860	AsFilterActivity() (*FilterActivity, bool)
20861	AsUntilActivity() (*UntilActivity, bool)
20862	AsWaitActivity() (*WaitActivity, bool)
20863	AsForEachActivity() (*ForEachActivity, bool)
20864	AsIfConditionActivity() (*IfConditionActivity, bool)
20865	AsExecutePipelineActivity() (*ExecutePipelineActivity, bool)
20866	AsControlActivity() (*ControlActivity, bool)
20867}
20868
20869// ControlActivity base class for all control activities like IfCondition, ForEach , Until.
20870type ControlActivity struct {
20871	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
20872	AdditionalProperties map[string]interface{} `json:""`
20873	// Name - Activity name.
20874	Name *string `json:"name,omitempty"`
20875	// Description - Activity description.
20876	Description *string `json:"description,omitempty"`
20877	// DependsOn - Activity depends on condition.
20878	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
20879	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
20880	Type TypeBasicActivity `json:"type,omitempty"`
20881}
20882
20883func unmarshalBasicControlActivity(body []byte) (BasicControlActivity, error) {
20884	var m map[string]interface{}
20885	err := json.Unmarshal(body, &m)
20886	if err != nil {
20887		return nil, err
20888	}
20889
20890	switch m["type"] {
20891	case string(TypeFilter):
20892		var fa FilterActivity
20893		err := json.Unmarshal(body, &fa)
20894		return fa, err
20895	case string(TypeUntil):
20896		var ua UntilActivity
20897		err := json.Unmarshal(body, &ua)
20898		return ua, err
20899	case string(TypeWait):
20900		var wa WaitActivity
20901		err := json.Unmarshal(body, &wa)
20902		return wa, err
20903	case string(TypeForEach):
20904		var fea ForEachActivity
20905		err := json.Unmarshal(body, &fea)
20906		return fea, err
20907	case string(TypeIfCondition):
20908		var ica IfConditionActivity
20909		err := json.Unmarshal(body, &ica)
20910		return ica, err
20911	case string(TypeExecutePipeline):
20912		var epa ExecutePipelineActivity
20913		err := json.Unmarshal(body, &epa)
20914		return epa, err
20915	default:
20916		var ca ControlActivity
20917		err := json.Unmarshal(body, &ca)
20918		return ca, err
20919	}
20920}
20921func unmarshalBasicControlActivityArray(body []byte) ([]BasicControlActivity, error) {
20922	var rawMessages []*json.RawMessage
20923	err := json.Unmarshal(body, &rawMessages)
20924	if err != nil {
20925		return nil, err
20926	}
20927
20928	caArray := make([]BasicControlActivity, len(rawMessages))
20929
20930	for index, rawMessage := range rawMessages {
20931		ca, err := unmarshalBasicControlActivity(*rawMessage)
20932		if err != nil {
20933			return nil, err
20934		}
20935		caArray[index] = ca
20936	}
20937	return caArray, nil
20938}
20939
20940// MarshalJSON is the custom marshaler for ControlActivity.
20941func (ca ControlActivity) MarshalJSON() ([]byte, error) {
20942	ca.Type = TypeContainer
20943	objectMap := make(map[string]interface{})
20944	if ca.Name != nil {
20945		objectMap["name"] = ca.Name
20946	}
20947	if ca.Description != nil {
20948		objectMap["description"] = ca.Description
20949	}
20950	if ca.DependsOn != nil {
20951		objectMap["dependsOn"] = ca.DependsOn
20952	}
20953	if ca.Type != "" {
20954		objectMap["type"] = ca.Type
20955	}
20956	for k, v := range ca.AdditionalProperties {
20957		objectMap[k] = v
20958	}
20959	return json.Marshal(objectMap)
20960}
20961
20962// AsDatabricksNotebookActivity is the BasicActivity implementation for ControlActivity.
20963func (ca ControlActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
20964	return nil, false
20965}
20966
20967// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for ControlActivity.
20968func (ca ControlActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
20969	return nil, false
20970}
20971
20972// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for ControlActivity.
20973func (ca ControlActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
20974	return nil, false
20975}
20976
20977// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for ControlActivity.
20978func (ca ControlActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
20979	return nil, false
20980}
20981
20982// AsGetMetadataActivity is the BasicActivity implementation for ControlActivity.
20983func (ca ControlActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
20984	return nil, false
20985}
20986
20987// AsWebActivity is the BasicActivity implementation for ControlActivity.
20988func (ca ControlActivity) AsWebActivity() (*WebActivity, bool) {
20989	return nil, false
20990}
20991
20992// AsLookupActivity is the BasicActivity implementation for ControlActivity.
20993func (ca ControlActivity) AsLookupActivity() (*LookupActivity, bool) {
20994	return nil, false
20995}
20996
20997// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for ControlActivity.
20998func (ca ControlActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
20999	return nil, false
21000}
21001
21002// AsCustomActivity is the BasicActivity implementation for ControlActivity.
21003func (ca ControlActivity) AsCustomActivity() (*CustomActivity, bool) {
21004	return nil, false
21005}
21006
21007// AsExecuteSSISPackageActivity is the BasicActivity implementation for ControlActivity.
21008func (ca ControlActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
21009	return nil, false
21010}
21011
21012// AsHDInsightSparkActivity is the BasicActivity implementation for ControlActivity.
21013func (ca ControlActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
21014	return nil, false
21015}
21016
21017// AsHDInsightStreamingActivity is the BasicActivity implementation for ControlActivity.
21018func (ca ControlActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
21019	return nil, false
21020}
21021
21022// AsHDInsightMapReduceActivity is the BasicActivity implementation for ControlActivity.
21023func (ca ControlActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
21024	return nil, false
21025}
21026
21027// AsHDInsightPigActivity is the BasicActivity implementation for ControlActivity.
21028func (ca ControlActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
21029	return nil, false
21030}
21031
21032// AsHDInsightHiveActivity is the BasicActivity implementation for ControlActivity.
21033func (ca ControlActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
21034	return nil, false
21035}
21036
21037// AsCopyActivity is the BasicActivity implementation for ControlActivity.
21038func (ca ControlActivity) AsCopyActivity() (*CopyActivity, bool) {
21039	return nil, false
21040}
21041
21042// AsExecutionActivity is the BasicActivity implementation for ControlActivity.
21043func (ca ControlActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
21044	return nil, false
21045}
21046
21047// AsBasicExecutionActivity is the BasicActivity implementation for ControlActivity.
21048func (ca ControlActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
21049	return nil, false
21050}
21051
21052// AsFilterActivity is the BasicActivity implementation for ControlActivity.
21053func (ca ControlActivity) AsFilterActivity() (*FilterActivity, bool) {
21054	return nil, false
21055}
21056
21057// AsUntilActivity is the BasicActivity implementation for ControlActivity.
21058func (ca ControlActivity) AsUntilActivity() (*UntilActivity, bool) {
21059	return nil, false
21060}
21061
21062// AsWaitActivity is the BasicActivity implementation for ControlActivity.
21063func (ca ControlActivity) AsWaitActivity() (*WaitActivity, bool) {
21064	return nil, false
21065}
21066
21067// AsForEachActivity is the BasicActivity implementation for ControlActivity.
21068func (ca ControlActivity) AsForEachActivity() (*ForEachActivity, bool) {
21069	return nil, false
21070}
21071
21072// AsIfConditionActivity is the BasicActivity implementation for ControlActivity.
21073func (ca ControlActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
21074	return nil, false
21075}
21076
21077// AsExecutePipelineActivity is the BasicActivity implementation for ControlActivity.
21078func (ca ControlActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
21079	return nil, false
21080}
21081
21082// AsControlActivity is the BasicActivity implementation for ControlActivity.
21083func (ca ControlActivity) AsControlActivity() (*ControlActivity, bool) {
21084	return &ca, true
21085}
21086
21087// AsBasicControlActivity is the BasicActivity implementation for ControlActivity.
21088func (ca ControlActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
21089	return &ca, true
21090}
21091
21092// AsActivity is the BasicActivity implementation for ControlActivity.
21093func (ca ControlActivity) AsActivity() (*Activity, bool) {
21094	return nil, false
21095}
21096
21097// AsBasicActivity is the BasicActivity implementation for ControlActivity.
21098func (ca ControlActivity) AsBasicActivity() (BasicActivity, bool) {
21099	return &ca, true
21100}
21101
21102// CopyActivity copy activity.
21103type CopyActivity struct {
21104	// CopyActivityTypeProperties - Copy activity properties.
21105	*CopyActivityTypeProperties `json:"typeProperties,omitempty"`
21106	// Inputs - List of inputs for the activity.
21107	Inputs *[]DatasetReference `json:"inputs,omitempty"`
21108	// Outputs - List of outputs for the activity.
21109	Outputs *[]DatasetReference `json:"outputs,omitempty"`
21110	// LinkedServiceName - Linked service reference.
21111	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
21112	// Policy - Activity policy.
21113	Policy *ActivityPolicy `json:"policy,omitempty"`
21114	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
21115	AdditionalProperties map[string]interface{} `json:""`
21116	// Name - Activity name.
21117	Name *string `json:"name,omitempty"`
21118	// Description - Activity description.
21119	Description *string `json:"description,omitempty"`
21120	// DependsOn - Activity depends on condition.
21121	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
21122	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
21123	Type TypeBasicActivity `json:"type,omitempty"`
21124}
21125
21126// MarshalJSON is the custom marshaler for CopyActivity.
21127func (ca CopyActivity) MarshalJSON() ([]byte, error) {
21128	ca.Type = TypeCopy
21129	objectMap := make(map[string]interface{})
21130	if ca.CopyActivityTypeProperties != nil {
21131		objectMap["typeProperties"] = ca.CopyActivityTypeProperties
21132	}
21133	if ca.Inputs != nil {
21134		objectMap["inputs"] = ca.Inputs
21135	}
21136	if ca.Outputs != nil {
21137		objectMap["outputs"] = ca.Outputs
21138	}
21139	if ca.LinkedServiceName != nil {
21140		objectMap["linkedServiceName"] = ca.LinkedServiceName
21141	}
21142	if ca.Policy != nil {
21143		objectMap["policy"] = ca.Policy
21144	}
21145	if ca.Name != nil {
21146		objectMap["name"] = ca.Name
21147	}
21148	if ca.Description != nil {
21149		objectMap["description"] = ca.Description
21150	}
21151	if ca.DependsOn != nil {
21152		objectMap["dependsOn"] = ca.DependsOn
21153	}
21154	if ca.Type != "" {
21155		objectMap["type"] = ca.Type
21156	}
21157	for k, v := range ca.AdditionalProperties {
21158		objectMap[k] = v
21159	}
21160	return json.Marshal(objectMap)
21161}
21162
21163// AsDatabricksNotebookActivity is the BasicActivity implementation for CopyActivity.
21164func (ca CopyActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
21165	return nil, false
21166}
21167
21168// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for CopyActivity.
21169func (ca CopyActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
21170	return nil, false
21171}
21172
21173// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for CopyActivity.
21174func (ca CopyActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
21175	return nil, false
21176}
21177
21178// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for CopyActivity.
21179func (ca CopyActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
21180	return nil, false
21181}
21182
21183// AsGetMetadataActivity is the BasicActivity implementation for CopyActivity.
21184func (ca CopyActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
21185	return nil, false
21186}
21187
21188// AsWebActivity is the BasicActivity implementation for CopyActivity.
21189func (ca CopyActivity) AsWebActivity() (*WebActivity, bool) {
21190	return nil, false
21191}
21192
21193// AsLookupActivity is the BasicActivity implementation for CopyActivity.
21194func (ca CopyActivity) AsLookupActivity() (*LookupActivity, bool) {
21195	return nil, false
21196}
21197
21198// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for CopyActivity.
21199func (ca CopyActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
21200	return nil, false
21201}
21202
21203// AsCustomActivity is the BasicActivity implementation for CopyActivity.
21204func (ca CopyActivity) AsCustomActivity() (*CustomActivity, bool) {
21205	return nil, false
21206}
21207
21208// AsExecuteSSISPackageActivity is the BasicActivity implementation for CopyActivity.
21209func (ca CopyActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
21210	return nil, false
21211}
21212
21213// AsHDInsightSparkActivity is the BasicActivity implementation for CopyActivity.
21214func (ca CopyActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
21215	return nil, false
21216}
21217
21218// AsHDInsightStreamingActivity is the BasicActivity implementation for CopyActivity.
21219func (ca CopyActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
21220	return nil, false
21221}
21222
21223// AsHDInsightMapReduceActivity is the BasicActivity implementation for CopyActivity.
21224func (ca CopyActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
21225	return nil, false
21226}
21227
21228// AsHDInsightPigActivity is the BasicActivity implementation for CopyActivity.
21229func (ca CopyActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
21230	return nil, false
21231}
21232
21233// AsHDInsightHiveActivity is the BasicActivity implementation for CopyActivity.
21234func (ca CopyActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
21235	return nil, false
21236}
21237
21238// AsCopyActivity is the BasicActivity implementation for CopyActivity.
21239func (ca CopyActivity) AsCopyActivity() (*CopyActivity, bool) {
21240	return &ca, true
21241}
21242
21243// AsExecutionActivity is the BasicActivity implementation for CopyActivity.
21244func (ca CopyActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
21245	return nil, false
21246}
21247
21248// AsBasicExecutionActivity is the BasicActivity implementation for CopyActivity.
21249func (ca CopyActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
21250	return &ca, true
21251}
21252
21253// AsFilterActivity is the BasicActivity implementation for CopyActivity.
21254func (ca CopyActivity) AsFilterActivity() (*FilterActivity, bool) {
21255	return nil, false
21256}
21257
21258// AsUntilActivity is the BasicActivity implementation for CopyActivity.
21259func (ca CopyActivity) AsUntilActivity() (*UntilActivity, bool) {
21260	return nil, false
21261}
21262
21263// AsWaitActivity is the BasicActivity implementation for CopyActivity.
21264func (ca CopyActivity) AsWaitActivity() (*WaitActivity, bool) {
21265	return nil, false
21266}
21267
21268// AsForEachActivity is the BasicActivity implementation for CopyActivity.
21269func (ca CopyActivity) AsForEachActivity() (*ForEachActivity, bool) {
21270	return nil, false
21271}
21272
21273// AsIfConditionActivity is the BasicActivity implementation for CopyActivity.
21274func (ca CopyActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
21275	return nil, false
21276}
21277
21278// AsExecutePipelineActivity is the BasicActivity implementation for CopyActivity.
21279func (ca CopyActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
21280	return nil, false
21281}
21282
21283// AsControlActivity is the BasicActivity implementation for CopyActivity.
21284func (ca CopyActivity) AsControlActivity() (*ControlActivity, bool) {
21285	return nil, false
21286}
21287
21288// AsBasicControlActivity is the BasicActivity implementation for CopyActivity.
21289func (ca CopyActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
21290	return nil, false
21291}
21292
21293// AsActivity is the BasicActivity implementation for CopyActivity.
21294func (ca CopyActivity) AsActivity() (*Activity, bool) {
21295	return nil, false
21296}
21297
21298// AsBasicActivity is the BasicActivity implementation for CopyActivity.
21299func (ca CopyActivity) AsBasicActivity() (BasicActivity, bool) {
21300	return &ca, true
21301}
21302
21303// UnmarshalJSON is the custom unmarshaler for CopyActivity struct.
21304func (ca *CopyActivity) UnmarshalJSON(body []byte) error {
21305	var m map[string]*json.RawMessage
21306	err := json.Unmarshal(body, &m)
21307	if err != nil {
21308		return err
21309	}
21310	for k, v := range m {
21311		switch k {
21312		case "typeProperties":
21313			if v != nil {
21314				var copyActivityTypeProperties CopyActivityTypeProperties
21315				err = json.Unmarshal(*v, &copyActivityTypeProperties)
21316				if err != nil {
21317					return err
21318				}
21319				ca.CopyActivityTypeProperties = &copyActivityTypeProperties
21320			}
21321		case "inputs":
21322			if v != nil {
21323				var inputs []DatasetReference
21324				err = json.Unmarshal(*v, &inputs)
21325				if err != nil {
21326					return err
21327				}
21328				ca.Inputs = &inputs
21329			}
21330		case "outputs":
21331			if v != nil {
21332				var outputs []DatasetReference
21333				err = json.Unmarshal(*v, &outputs)
21334				if err != nil {
21335					return err
21336				}
21337				ca.Outputs = &outputs
21338			}
21339		case "linkedServiceName":
21340			if v != nil {
21341				var linkedServiceName LinkedServiceReference
21342				err = json.Unmarshal(*v, &linkedServiceName)
21343				if err != nil {
21344					return err
21345				}
21346				ca.LinkedServiceName = &linkedServiceName
21347			}
21348		case "policy":
21349			if v != nil {
21350				var policy ActivityPolicy
21351				err = json.Unmarshal(*v, &policy)
21352				if err != nil {
21353					return err
21354				}
21355				ca.Policy = &policy
21356			}
21357		default:
21358			if v != nil {
21359				var additionalProperties interface{}
21360				err = json.Unmarshal(*v, &additionalProperties)
21361				if err != nil {
21362					return err
21363				}
21364				if ca.AdditionalProperties == nil {
21365					ca.AdditionalProperties = make(map[string]interface{})
21366				}
21367				ca.AdditionalProperties[k] = additionalProperties
21368			}
21369		case "name":
21370			if v != nil {
21371				var name string
21372				err = json.Unmarshal(*v, &name)
21373				if err != nil {
21374					return err
21375				}
21376				ca.Name = &name
21377			}
21378		case "description":
21379			if v != nil {
21380				var description string
21381				err = json.Unmarshal(*v, &description)
21382				if err != nil {
21383					return err
21384				}
21385				ca.Description = &description
21386			}
21387		case "dependsOn":
21388			if v != nil {
21389				var dependsOn []ActivityDependency
21390				err = json.Unmarshal(*v, &dependsOn)
21391				if err != nil {
21392					return err
21393				}
21394				ca.DependsOn = &dependsOn
21395			}
21396		case "type":
21397			if v != nil {
21398				var typeVar TypeBasicActivity
21399				err = json.Unmarshal(*v, &typeVar)
21400				if err != nil {
21401					return err
21402				}
21403				ca.Type = typeVar
21404			}
21405		}
21406	}
21407
21408	return nil
21409}
21410
21411// CopyActivityTypeProperties copy activity properties.
21412type CopyActivityTypeProperties struct {
21413	// Source - Copy activity source.
21414	Source BasicCopySource `json:"source,omitempty"`
21415	// Sink - Copy activity sink.
21416	Sink BasicCopySink `json:"sink,omitempty"`
21417	// Translator - Copy activity translator. If not specificed, tabular translator is used.
21418	Translator BasicCopyTranslator `json:"translator,omitempty"`
21419	// EnableStaging - Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean).
21420	EnableStaging interface{} `json:"enableStaging,omitempty"`
21421	// StagingSettings - Specifies interim staging settings when EnableStaging is true.
21422	StagingSettings *StagingSettings `json:"stagingSettings,omitempty"`
21423	// ParallelCopies - Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0.
21424	ParallelCopies interface{} `json:"parallelCopies,omitempty"`
21425	// CloudDataMovementUnits - Maximum number of cloud data movement units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0.
21426	CloudDataMovementUnits interface{} `json:"cloudDataMovementUnits,omitempty"`
21427	// EnableSkipIncompatibleRow - Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean).
21428	EnableSkipIncompatibleRow interface{} `json:"enableSkipIncompatibleRow,omitempty"`
21429	// RedirectIncompatibleRowSettings - Redirect incompatible row settings when EnableSkipIncompatibleRow is true.
21430	RedirectIncompatibleRowSettings *RedirectIncompatibleRowSettings `json:"redirectIncompatibleRowSettings,omitempty"`
21431}
21432
21433// UnmarshalJSON is the custom unmarshaler for CopyActivityTypeProperties struct.
21434func (catp *CopyActivityTypeProperties) UnmarshalJSON(body []byte) error {
21435	var m map[string]*json.RawMessage
21436	err := json.Unmarshal(body, &m)
21437	if err != nil {
21438		return err
21439	}
21440	for k, v := range m {
21441		switch k {
21442		case "source":
21443			if v != nil {
21444				source, err := unmarshalBasicCopySource(*v)
21445				if err != nil {
21446					return err
21447				}
21448				catp.Source = source
21449			}
21450		case "sink":
21451			if v != nil {
21452				sink, err := unmarshalBasicCopySink(*v)
21453				if err != nil {
21454					return err
21455				}
21456				catp.Sink = sink
21457			}
21458		case "translator":
21459			if v != nil {
21460				translator, err := unmarshalBasicCopyTranslator(*v)
21461				if err != nil {
21462					return err
21463				}
21464				catp.Translator = translator
21465			}
21466		case "enableStaging":
21467			if v != nil {
21468				var enableStaging interface{}
21469				err = json.Unmarshal(*v, &enableStaging)
21470				if err != nil {
21471					return err
21472				}
21473				catp.EnableStaging = enableStaging
21474			}
21475		case "stagingSettings":
21476			if v != nil {
21477				var stagingSettings StagingSettings
21478				err = json.Unmarshal(*v, &stagingSettings)
21479				if err != nil {
21480					return err
21481				}
21482				catp.StagingSettings = &stagingSettings
21483			}
21484		case "parallelCopies":
21485			if v != nil {
21486				var parallelCopies interface{}
21487				err = json.Unmarshal(*v, &parallelCopies)
21488				if err != nil {
21489					return err
21490				}
21491				catp.ParallelCopies = parallelCopies
21492			}
21493		case "cloudDataMovementUnits":
21494			if v != nil {
21495				var cloudDataMovementUnits interface{}
21496				err = json.Unmarshal(*v, &cloudDataMovementUnits)
21497				if err != nil {
21498					return err
21499				}
21500				catp.CloudDataMovementUnits = cloudDataMovementUnits
21501			}
21502		case "enableSkipIncompatibleRow":
21503			if v != nil {
21504				var enableSkipIncompatibleRow interface{}
21505				err = json.Unmarshal(*v, &enableSkipIncompatibleRow)
21506				if err != nil {
21507					return err
21508				}
21509				catp.EnableSkipIncompatibleRow = enableSkipIncompatibleRow
21510			}
21511		case "redirectIncompatibleRowSettings":
21512			if v != nil {
21513				var redirectIncompatibleRowSettings RedirectIncompatibleRowSettings
21514				err = json.Unmarshal(*v, &redirectIncompatibleRowSettings)
21515				if err != nil {
21516					return err
21517				}
21518				catp.RedirectIncompatibleRowSettings = &redirectIncompatibleRowSettings
21519			}
21520		}
21521	}
21522
21523	return nil
21524}
21525
21526// BasicCopySink a copy activity sink.
21527type BasicCopySink interface {
21528	AsSalesforceSink() (*SalesforceSink, bool)
21529	AsDynamicsSink() (*DynamicsSink, bool)
21530	AsOdbcSink() (*OdbcSink, bool)
21531	AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool)
21532	AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool)
21533	AsOracleSink() (*OracleSink, bool)
21534	AsSQLDWSink() (*SQLDWSink, bool)
21535	AsSQLSink() (*SQLSink, bool)
21536	AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool)
21537	AsFileSystemSink() (*FileSystemSink, bool)
21538	AsBlobSink() (*BlobSink, bool)
21539	AsAzureTableSink() (*AzureTableSink, bool)
21540	AsAzureQueueSink() (*AzureQueueSink, bool)
21541	AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool)
21542	AsCopySink() (*CopySink, bool)
21543}
21544
21545// CopySink a copy activity sink.
21546type CopySink struct {
21547	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
21548	AdditionalProperties map[string]interface{} `json:""`
21549	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
21550	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
21551	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
21552	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
21553	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
21554	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
21555	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
21556	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
21557	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
21558	Type TypeBasicCopySink `json:"type,omitempty"`
21559}
21560
21561func unmarshalBasicCopySink(body []byte) (BasicCopySink, error) {
21562	var m map[string]interface{}
21563	err := json.Unmarshal(body, &m)
21564	if err != nil {
21565		return nil, err
21566	}
21567
21568	switch m["type"] {
21569	case string(TypeSalesforceSink):
21570		var ss SalesforceSink
21571		err := json.Unmarshal(body, &ss)
21572		return ss, err
21573	case string(TypeDynamicsSink):
21574		var ds DynamicsSink
21575		err := json.Unmarshal(body, &ds)
21576		return ds, err
21577	case string(TypeOdbcSink):
21578		var osVar OdbcSink
21579		err := json.Unmarshal(body, &osVar)
21580		return osVar, err
21581	case string(TypeAzureSearchIndexSink):
21582		var asis AzureSearchIndexSink
21583		err := json.Unmarshal(body, &asis)
21584		return asis, err
21585	case string(TypeAzureDataLakeStoreSink):
21586		var adlss AzureDataLakeStoreSink
21587		err := json.Unmarshal(body, &adlss)
21588		return adlss, err
21589	case string(TypeOracleSink):
21590		var osVar OracleSink
21591		err := json.Unmarshal(body, &osVar)
21592		return osVar, err
21593	case string(TypeSQLDWSink):
21594		var sds SQLDWSink
21595		err := json.Unmarshal(body, &sds)
21596		return sds, err
21597	case string(TypeSQLSink):
21598		var ss SQLSink
21599		err := json.Unmarshal(body, &ss)
21600		return ss, err
21601	case string(TypeDocumentDbCollectionSink):
21602		var ddcs DocumentDbCollectionSink
21603		err := json.Unmarshal(body, &ddcs)
21604		return ddcs, err
21605	case string(TypeFileSystemSink):
21606		var fss FileSystemSink
21607		err := json.Unmarshal(body, &fss)
21608		return fss, err
21609	case string(TypeBlobSink):
21610		var bs BlobSink
21611		err := json.Unmarshal(body, &bs)
21612		return bs, err
21613	case string(TypeAzureTableSink):
21614		var ats AzureTableSink
21615		err := json.Unmarshal(body, &ats)
21616		return ats, err
21617	case string(TypeAzureQueueSink):
21618		var aqs AzureQueueSink
21619		err := json.Unmarshal(body, &aqs)
21620		return aqs, err
21621	case string(TypeSapCloudForCustomerSink):
21622		var scfcs SapCloudForCustomerSink
21623		err := json.Unmarshal(body, &scfcs)
21624		return scfcs, err
21625	default:
21626		var cs CopySink
21627		err := json.Unmarshal(body, &cs)
21628		return cs, err
21629	}
21630}
21631func unmarshalBasicCopySinkArray(body []byte) ([]BasicCopySink, error) {
21632	var rawMessages []*json.RawMessage
21633	err := json.Unmarshal(body, &rawMessages)
21634	if err != nil {
21635		return nil, err
21636	}
21637
21638	csArray := make([]BasicCopySink, len(rawMessages))
21639
21640	for index, rawMessage := range rawMessages {
21641		cs, err := unmarshalBasicCopySink(*rawMessage)
21642		if err != nil {
21643			return nil, err
21644		}
21645		csArray[index] = cs
21646	}
21647	return csArray, nil
21648}
21649
21650// MarshalJSON is the custom marshaler for CopySink.
21651func (cs CopySink) MarshalJSON() ([]byte, error) {
21652	cs.Type = TypeCopySink
21653	objectMap := make(map[string]interface{})
21654	objectMap["writeBatchSize"] = cs.WriteBatchSize
21655	objectMap["writeBatchTimeout"] = cs.WriteBatchTimeout
21656	objectMap["sinkRetryCount"] = cs.SinkRetryCount
21657	objectMap["sinkRetryWait"] = cs.SinkRetryWait
21658	if cs.Type != "" {
21659		objectMap["type"] = cs.Type
21660	}
21661	for k, v := range cs.AdditionalProperties {
21662		objectMap[k] = v
21663	}
21664	return json.Marshal(objectMap)
21665}
21666
21667// AsSalesforceSink is the BasicCopySink implementation for CopySink.
21668func (cs CopySink) AsSalesforceSink() (*SalesforceSink, bool) {
21669	return nil, false
21670}
21671
21672// AsDynamicsSink is the BasicCopySink implementation for CopySink.
21673func (cs CopySink) AsDynamicsSink() (*DynamicsSink, bool) {
21674	return nil, false
21675}
21676
21677// AsOdbcSink is the BasicCopySink implementation for CopySink.
21678func (cs CopySink) AsOdbcSink() (*OdbcSink, bool) {
21679	return nil, false
21680}
21681
21682// AsAzureSearchIndexSink is the BasicCopySink implementation for CopySink.
21683func (cs CopySink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
21684	return nil, false
21685}
21686
21687// AsAzureDataLakeStoreSink is the BasicCopySink implementation for CopySink.
21688func (cs CopySink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
21689	return nil, false
21690}
21691
21692// AsOracleSink is the BasicCopySink implementation for CopySink.
21693func (cs CopySink) AsOracleSink() (*OracleSink, bool) {
21694	return nil, false
21695}
21696
21697// AsSQLDWSink is the BasicCopySink implementation for CopySink.
21698func (cs CopySink) AsSQLDWSink() (*SQLDWSink, bool) {
21699	return nil, false
21700}
21701
21702// AsSQLSink is the BasicCopySink implementation for CopySink.
21703func (cs CopySink) AsSQLSink() (*SQLSink, bool) {
21704	return nil, false
21705}
21706
21707// AsDocumentDbCollectionSink is the BasicCopySink implementation for CopySink.
21708func (cs CopySink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
21709	return nil, false
21710}
21711
21712// AsFileSystemSink is the BasicCopySink implementation for CopySink.
21713func (cs CopySink) AsFileSystemSink() (*FileSystemSink, bool) {
21714	return nil, false
21715}
21716
21717// AsBlobSink is the BasicCopySink implementation for CopySink.
21718func (cs CopySink) AsBlobSink() (*BlobSink, bool) {
21719	return nil, false
21720}
21721
21722// AsAzureTableSink is the BasicCopySink implementation for CopySink.
21723func (cs CopySink) AsAzureTableSink() (*AzureTableSink, bool) {
21724	return nil, false
21725}
21726
21727// AsAzureQueueSink is the BasicCopySink implementation for CopySink.
21728func (cs CopySink) AsAzureQueueSink() (*AzureQueueSink, bool) {
21729	return nil, false
21730}
21731
21732// AsSapCloudForCustomerSink is the BasicCopySink implementation for CopySink.
21733func (cs CopySink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
21734	return nil, false
21735}
21736
21737// AsCopySink is the BasicCopySink implementation for CopySink.
21738func (cs CopySink) AsCopySink() (*CopySink, bool) {
21739	return &cs, true
21740}
21741
21742// AsBasicCopySink is the BasicCopySink implementation for CopySink.
21743func (cs CopySink) AsBasicCopySink() (BasicCopySink, bool) {
21744	return &cs, true
21745}
21746
21747// BasicCopySource a copy activity source.
21748type BasicCopySource interface {
21749	AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool)
21750	AsResponsysSource() (*ResponsysSource, bool)
21751	AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool)
21752	AsVerticaSource() (*VerticaSource, bool)
21753	AsNetezzaSource() (*NetezzaSource, bool)
21754	AsZohoSource() (*ZohoSource, bool)
21755	AsXeroSource() (*XeroSource, bool)
21756	AsSquareSource() (*SquareSource, bool)
21757	AsSparkSource() (*SparkSource, bool)
21758	AsShopifySource() (*ShopifySource, bool)
21759	AsServiceNowSource() (*ServiceNowSource, bool)
21760	AsQuickBooksSource() (*QuickBooksSource, bool)
21761	AsPrestoSource() (*PrestoSource, bool)
21762	AsPhoenixSource() (*PhoenixSource, bool)
21763	AsPaypalSource() (*PaypalSource, bool)
21764	AsMarketoSource() (*MarketoSource, bool)
21765	AsMariaDBSource() (*MariaDBSource, bool)
21766	AsMagentoSource() (*MagentoSource, bool)
21767	AsJiraSource() (*JiraSource, bool)
21768	AsImpalaSource() (*ImpalaSource, bool)
21769	AsHubspotSource() (*HubspotSource, bool)
21770	AsHiveSource() (*HiveSource, bool)
21771	AsHBaseSource() (*HBaseSource, bool)
21772	AsGreenplumSource() (*GreenplumSource, bool)
21773	AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool)
21774	AsEloquaSource() (*EloquaSource, bool)
21775	AsDrillSource() (*DrillSource, bool)
21776	AsCouchbaseSource() (*CouchbaseSource, bool)
21777	AsConcurSource() (*ConcurSource, bool)
21778	AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool)
21779	AsAmazonMWSSource() (*AmazonMWSSource, bool)
21780	AsHTTPSource() (*HTTPSource, bool)
21781	AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool)
21782	AsMongoDbSource() (*MongoDbSource, bool)
21783	AsCassandraSource() (*CassandraSource, bool)
21784	AsWebSource() (*WebSource, bool)
21785	AsOracleSource() (*OracleSource, bool)
21786	AsAzureMySQLSource() (*AzureMySQLSource, bool)
21787	AsHdfsSource() (*HdfsSource, bool)
21788	AsFileSystemSource() (*FileSystemSource, bool)
21789	AsSQLDWSource() (*SQLDWSource, bool)
21790	AsSQLSource() (*SQLSource, bool)
21791	AsSapEccSource() (*SapEccSource, bool)
21792	AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool)
21793	AsSalesforceSource() (*SalesforceSource, bool)
21794	AsRelationalSource() (*RelationalSource, bool)
21795	AsDynamicsSource() (*DynamicsSource, bool)
21796	AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool)
21797	AsBlobSource() (*BlobSource, bool)
21798	AsAzureTableSource() (*AzureTableSource, bool)
21799	AsCopySource() (*CopySource, bool)
21800}
21801
21802// CopySource a copy activity source.
21803type CopySource struct {
21804	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
21805	AdditionalProperties map[string]interface{} `json:""`
21806	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
21807	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
21808	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
21809	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
21810	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
21811	Type TypeBasicCopySource `json:"type,omitempty"`
21812}
21813
21814func unmarshalBasicCopySource(body []byte) (BasicCopySource, error) {
21815	var m map[string]interface{}
21816	err := json.Unmarshal(body, &m)
21817	if err != nil {
21818		return nil, err
21819	}
21820
21821	switch m["type"] {
21822	case string(TypeAmazonRedshiftSource):
21823		var ars AmazonRedshiftSource
21824		err := json.Unmarshal(body, &ars)
21825		return ars, err
21826	case string(TypeResponsysSource):
21827		var rs ResponsysSource
21828		err := json.Unmarshal(body, &rs)
21829		return rs, err
21830	case string(TypeSalesforceMarketingCloudSource):
21831		var smcs SalesforceMarketingCloudSource
21832		err := json.Unmarshal(body, &smcs)
21833		return smcs, err
21834	case string(TypeVerticaSource):
21835		var vs VerticaSource
21836		err := json.Unmarshal(body, &vs)
21837		return vs, err
21838	case string(TypeNetezzaSource):
21839		var ns NetezzaSource
21840		err := json.Unmarshal(body, &ns)
21841		return ns, err
21842	case string(TypeZohoSource):
21843		var zs ZohoSource
21844		err := json.Unmarshal(body, &zs)
21845		return zs, err
21846	case string(TypeXeroSource):
21847		var xs XeroSource
21848		err := json.Unmarshal(body, &xs)
21849		return xs, err
21850	case string(TypeSquareSource):
21851		var ss SquareSource
21852		err := json.Unmarshal(body, &ss)
21853		return ss, err
21854	case string(TypeSparkSource):
21855		var ss SparkSource
21856		err := json.Unmarshal(body, &ss)
21857		return ss, err
21858	case string(TypeShopifySource):
21859		var ss ShopifySource
21860		err := json.Unmarshal(body, &ss)
21861		return ss, err
21862	case string(TypeServiceNowSource):
21863		var sns ServiceNowSource
21864		err := json.Unmarshal(body, &sns)
21865		return sns, err
21866	case string(TypeQuickBooksSource):
21867		var qbs QuickBooksSource
21868		err := json.Unmarshal(body, &qbs)
21869		return qbs, err
21870	case string(TypePrestoSource):
21871		var ps PrestoSource
21872		err := json.Unmarshal(body, &ps)
21873		return ps, err
21874	case string(TypePhoenixSource):
21875		var ps PhoenixSource
21876		err := json.Unmarshal(body, &ps)
21877		return ps, err
21878	case string(TypePaypalSource):
21879		var ps PaypalSource
21880		err := json.Unmarshal(body, &ps)
21881		return ps, err
21882	case string(TypeMarketoSource):
21883		var ms MarketoSource
21884		err := json.Unmarshal(body, &ms)
21885		return ms, err
21886	case string(TypeMariaDBSource):
21887		var mds MariaDBSource
21888		err := json.Unmarshal(body, &mds)
21889		return mds, err
21890	case string(TypeMagentoSource):
21891		var ms MagentoSource
21892		err := json.Unmarshal(body, &ms)
21893		return ms, err
21894	case string(TypeJiraSource):
21895		var js JiraSource
21896		err := json.Unmarshal(body, &js)
21897		return js, err
21898	case string(TypeImpalaSource):
21899		var is ImpalaSource
21900		err := json.Unmarshal(body, &is)
21901		return is, err
21902	case string(TypeHubspotSource):
21903		var hs HubspotSource
21904		err := json.Unmarshal(body, &hs)
21905		return hs, err
21906	case string(TypeHiveSource):
21907		var hs HiveSource
21908		err := json.Unmarshal(body, &hs)
21909		return hs, err
21910	case string(TypeHBaseSource):
21911		var hbs HBaseSource
21912		err := json.Unmarshal(body, &hbs)
21913		return hbs, err
21914	case string(TypeGreenplumSource):
21915		var gs GreenplumSource
21916		err := json.Unmarshal(body, &gs)
21917		return gs, err
21918	case string(TypeGoogleBigQuerySource):
21919		var gbqs GoogleBigQuerySource
21920		err := json.Unmarshal(body, &gbqs)
21921		return gbqs, err
21922	case string(TypeEloquaSource):
21923		var es EloquaSource
21924		err := json.Unmarshal(body, &es)
21925		return es, err
21926	case string(TypeDrillSource):
21927		var ds DrillSource
21928		err := json.Unmarshal(body, &ds)
21929		return ds, err
21930	case string(TypeCouchbaseSource):
21931		var cs CouchbaseSource
21932		err := json.Unmarshal(body, &cs)
21933		return cs, err
21934	case string(TypeConcurSource):
21935		var cs ConcurSource
21936		err := json.Unmarshal(body, &cs)
21937		return cs, err
21938	case string(TypeAzurePostgreSQLSource):
21939		var apss AzurePostgreSQLSource
21940		err := json.Unmarshal(body, &apss)
21941		return apss, err
21942	case string(TypeAmazonMWSSource):
21943		var ams AmazonMWSSource
21944		err := json.Unmarshal(body, &ams)
21945		return ams, err
21946	case string(TypeHTTPSource):
21947		var hs HTTPSource
21948		err := json.Unmarshal(body, &hs)
21949		return hs, err
21950	case string(TypeAzureDataLakeStoreSource):
21951		var adlss AzureDataLakeStoreSource
21952		err := json.Unmarshal(body, &adlss)
21953		return adlss, err
21954	case string(TypeMongoDbSource):
21955		var mds MongoDbSource
21956		err := json.Unmarshal(body, &mds)
21957		return mds, err
21958	case string(TypeCassandraSource):
21959		var cs CassandraSource
21960		err := json.Unmarshal(body, &cs)
21961		return cs, err
21962	case string(TypeWebSource):
21963		var ws WebSource
21964		err := json.Unmarshal(body, &ws)
21965		return ws, err
21966	case string(TypeOracleSource):
21967		var osVar OracleSource
21968		err := json.Unmarshal(body, &osVar)
21969		return osVar, err
21970	case string(TypeAzureMySQLSource):
21971		var amss AzureMySQLSource
21972		err := json.Unmarshal(body, &amss)
21973		return amss, err
21974	case string(TypeHdfsSource):
21975		var hs HdfsSource
21976		err := json.Unmarshal(body, &hs)
21977		return hs, err
21978	case string(TypeFileSystemSource):
21979		var fss FileSystemSource
21980		err := json.Unmarshal(body, &fss)
21981		return fss, err
21982	case string(TypeSQLDWSource):
21983		var sds SQLDWSource
21984		err := json.Unmarshal(body, &sds)
21985		return sds, err
21986	case string(TypeSQLSource):
21987		var ss SQLSource
21988		err := json.Unmarshal(body, &ss)
21989		return ss, err
21990	case string(TypeSapEccSource):
21991		var ses SapEccSource
21992		err := json.Unmarshal(body, &ses)
21993		return ses, err
21994	case string(TypeSapCloudForCustomerSource):
21995		var scfcs SapCloudForCustomerSource
21996		err := json.Unmarshal(body, &scfcs)
21997		return scfcs, err
21998	case string(TypeSalesforceSource):
21999		var ss SalesforceSource
22000		err := json.Unmarshal(body, &ss)
22001		return ss, err
22002	case string(TypeRelationalSource):
22003		var rs RelationalSource
22004		err := json.Unmarshal(body, &rs)
22005		return rs, err
22006	case string(TypeDynamicsSource):
22007		var ds DynamicsSource
22008		err := json.Unmarshal(body, &ds)
22009		return ds, err
22010	case string(TypeDocumentDbCollectionSource):
22011		var ddcs DocumentDbCollectionSource
22012		err := json.Unmarshal(body, &ddcs)
22013		return ddcs, err
22014	case string(TypeBlobSource):
22015		var bs BlobSource
22016		err := json.Unmarshal(body, &bs)
22017		return bs, err
22018	case string(TypeAzureTableSource):
22019		var ats AzureTableSource
22020		err := json.Unmarshal(body, &ats)
22021		return ats, err
22022	default:
22023		var cs CopySource
22024		err := json.Unmarshal(body, &cs)
22025		return cs, err
22026	}
22027}
22028func unmarshalBasicCopySourceArray(body []byte) ([]BasicCopySource, error) {
22029	var rawMessages []*json.RawMessage
22030	err := json.Unmarshal(body, &rawMessages)
22031	if err != nil {
22032		return nil, err
22033	}
22034
22035	csArray := make([]BasicCopySource, len(rawMessages))
22036
22037	for index, rawMessage := range rawMessages {
22038		cs, err := unmarshalBasicCopySource(*rawMessage)
22039		if err != nil {
22040			return nil, err
22041		}
22042		csArray[index] = cs
22043	}
22044	return csArray, nil
22045}
22046
22047// MarshalJSON is the custom marshaler for CopySource.
22048func (cs CopySource) MarshalJSON() ([]byte, error) {
22049	cs.Type = TypeCopySource
22050	objectMap := make(map[string]interface{})
22051	objectMap["sourceRetryCount"] = cs.SourceRetryCount
22052	objectMap["sourceRetryWait"] = cs.SourceRetryWait
22053	if cs.Type != "" {
22054		objectMap["type"] = cs.Type
22055	}
22056	for k, v := range cs.AdditionalProperties {
22057		objectMap[k] = v
22058	}
22059	return json.Marshal(objectMap)
22060}
22061
22062// AsAmazonRedshiftSource is the BasicCopySource implementation for CopySource.
22063func (cs CopySource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
22064	return nil, false
22065}
22066
22067// AsResponsysSource is the BasicCopySource implementation for CopySource.
22068func (cs CopySource) AsResponsysSource() (*ResponsysSource, bool) {
22069	return nil, false
22070}
22071
22072// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for CopySource.
22073func (cs CopySource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
22074	return nil, false
22075}
22076
22077// AsVerticaSource is the BasicCopySource implementation for CopySource.
22078func (cs CopySource) AsVerticaSource() (*VerticaSource, bool) {
22079	return nil, false
22080}
22081
22082// AsNetezzaSource is the BasicCopySource implementation for CopySource.
22083func (cs CopySource) AsNetezzaSource() (*NetezzaSource, bool) {
22084	return nil, false
22085}
22086
22087// AsZohoSource is the BasicCopySource implementation for CopySource.
22088func (cs CopySource) AsZohoSource() (*ZohoSource, bool) {
22089	return nil, false
22090}
22091
22092// AsXeroSource is the BasicCopySource implementation for CopySource.
22093func (cs CopySource) AsXeroSource() (*XeroSource, bool) {
22094	return nil, false
22095}
22096
22097// AsSquareSource is the BasicCopySource implementation for CopySource.
22098func (cs CopySource) AsSquareSource() (*SquareSource, bool) {
22099	return nil, false
22100}
22101
22102// AsSparkSource is the BasicCopySource implementation for CopySource.
22103func (cs CopySource) AsSparkSource() (*SparkSource, bool) {
22104	return nil, false
22105}
22106
22107// AsShopifySource is the BasicCopySource implementation for CopySource.
22108func (cs CopySource) AsShopifySource() (*ShopifySource, bool) {
22109	return nil, false
22110}
22111
22112// AsServiceNowSource is the BasicCopySource implementation for CopySource.
22113func (cs CopySource) AsServiceNowSource() (*ServiceNowSource, bool) {
22114	return nil, false
22115}
22116
22117// AsQuickBooksSource is the BasicCopySource implementation for CopySource.
22118func (cs CopySource) AsQuickBooksSource() (*QuickBooksSource, bool) {
22119	return nil, false
22120}
22121
22122// AsPrestoSource is the BasicCopySource implementation for CopySource.
22123func (cs CopySource) AsPrestoSource() (*PrestoSource, bool) {
22124	return nil, false
22125}
22126
22127// AsPhoenixSource is the BasicCopySource implementation for CopySource.
22128func (cs CopySource) AsPhoenixSource() (*PhoenixSource, bool) {
22129	return nil, false
22130}
22131
22132// AsPaypalSource is the BasicCopySource implementation for CopySource.
22133func (cs CopySource) AsPaypalSource() (*PaypalSource, bool) {
22134	return nil, false
22135}
22136
22137// AsMarketoSource is the BasicCopySource implementation for CopySource.
22138func (cs CopySource) AsMarketoSource() (*MarketoSource, bool) {
22139	return nil, false
22140}
22141
22142// AsMariaDBSource is the BasicCopySource implementation for CopySource.
22143func (cs CopySource) AsMariaDBSource() (*MariaDBSource, bool) {
22144	return nil, false
22145}
22146
22147// AsMagentoSource is the BasicCopySource implementation for CopySource.
22148func (cs CopySource) AsMagentoSource() (*MagentoSource, bool) {
22149	return nil, false
22150}
22151
22152// AsJiraSource is the BasicCopySource implementation for CopySource.
22153func (cs CopySource) AsJiraSource() (*JiraSource, bool) {
22154	return nil, false
22155}
22156
22157// AsImpalaSource is the BasicCopySource implementation for CopySource.
22158func (cs CopySource) AsImpalaSource() (*ImpalaSource, bool) {
22159	return nil, false
22160}
22161
22162// AsHubspotSource is the BasicCopySource implementation for CopySource.
22163func (cs CopySource) AsHubspotSource() (*HubspotSource, bool) {
22164	return nil, false
22165}
22166
22167// AsHiveSource is the BasicCopySource implementation for CopySource.
22168func (cs CopySource) AsHiveSource() (*HiveSource, bool) {
22169	return nil, false
22170}
22171
22172// AsHBaseSource is the BasicCopySource implementation for CopySource.
22173func (cs CopySource) AsHBaseSource() (*HBaseSource, bool) {
22174	return nil, false
22175}
22176
22177// AsGreenplumSource is the BasicCopySource implementation for CopySource.
22178func (cs CopySource) AsGreenplumSource() (*GreenplumSource, bool) {
22179	return nil, false
22180}
22181
22182// AsGoogleBigQuerySource is the BasicCopySource implementation for CopySource.
22183func (cs CopySource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
22184	return nil, false
22185}
22186
22187// AsEloquaSource is the BasicCopySource implementation for CopySource.
22188func (cs CopySource) AsEloquaSource() (*EloquaSource, bool) {
22189	return nil, false
22190}
22191
22192// AsDrillSource is the BasicCopySource implementation for CopySource.
22193func (cs CopySource) AsDrillSource() (*DrillSource, bool) {
22194	return nil, false
22195}
22196
22197// AsCouchbaseSource is the BasicCopySource implementation for CopySource.
22198func (cs CopySource) AsCouchbaseSource() (*CouchbaseSource, bool) {
22199	return nil, false
22200}
22201
22202// AsConcurSource is the BasicCopySource implementation for CopySource.
22203func (cs CopySource) AsConcurSource() (*ConcurSource, bool) {
22204	return nil, false
22205}
22206
22207// AsAzurePostgreSQLSource is the BasicCopySource implementation for CopySource.
22208func (cs CopySource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
22209	return nil, false
22210}
22211
22212// AsAmazonMWSSource is the BasicCopySource implementation for CopySource.
22213func (cs CopySource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
22214	return nil, false
22215}
22216
22217// AsHTTPSource is the BasicCopySource implementation for CopySource.
22218func (cs CopySource) AsHTTPSource() (*HTTPSource, bool) {
22219	return nil, false
22220}
22221
22222// AsAzureDataLakeStoreSource is the BasicCopySource implementation for CopySource.
22223func (cs CopySource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
22224	return nil, false
22225}
22226
22227// AsMongoDbSource is the BasicCopySource implementation for CopySource.
22228func (cs CopySource) AsMongoDbSource() (*MongoDbSource, bool) {
22229	return nil, false
22230}
22231
22232// AsCassandraSource is the BasicCopySource implementation for CopySource.
22233func (cs CopySource) AsCassandraSource() (*CassandraSource, bool) {
22234	return nil, false
22235}
22236
22237// AsWebSource is the BasicCopySource implementation for CopySource.
22238func (cs CopySource) AsWebSource() (*WebSource, bool) {
22239	return nil, false
22240}
22241
22242// AsOracleSource is the BasicCopySource implementation for CopySource.
22243func (cs CopySource) AsOracleSource() (*OracleSource, bool) {
22244	return nil, false
22245}
22246
22247// AsAzureMySQLSource is the BasicCopySource implementation for CopySource.
22248func (cs CopySource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
22249	return nil, false
22250}
22251
22252// AsHdfsSource is the BasicCopySource implementation for CopySource.
22253func (cs CopySource) AsHdfsSource() (*HdfsSource, bool) {
22254	return nil, false
22255}
22256
22257// AsFileSystemSource is the BasicCopySource implementation for CopySource.
22258func (cs CopySource) AsFileSystemSource() (*FileSystemSource, bool) {
22259	return nil, false
22260}
22261
22262// AsSQLDWSource is the BasicCopySource implementation for CopySource.
22263func (cs CopySource) AsSQLDWSource() (*SQLDWSource, bool) {
22264	return nil, false
22265}
22266
22267// AsSQLSource is the BasicCopySource implementation for CopySource.
22268func (cs CopySource) AsSQLSource() (*SQLSource, bool) {
22269	return nil, false
22270}
22271
22272// AsSapEccSource is the BasicCopySource implementation for CopySource.
22273func (cs CopySource) AsSapEccSource() (*SapEccSource, bool) {
22274	return nil, false
22275}
22276
22277// AsSapCloudForCustomerSource is the BasicCopySource implementation for CopySource.
22278func (cs CopySource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
22279	return nil, false
22280}
22281
22282// AsSalesforceSource is the BasicCopySource implementation for CopySource.
22283func (cs CopySource) AsSalesforceSource() (*SalesforceSource, bool) {
22284	return nil, false
22285}
22286
22287// AsRelationalSource is the BasicCopySource implementation for CopySource.
22288func (cs CopySource) AsRelationalSource() (*RelationalSource, bool) {
22289	return nil, false
22290}
22291
22292// AsDynamicsSource is the BasicCopySource implementation for CopySource.
22293func (cs CopySource) AsDynamicsSource() (*DynamicsSource, bool) {
22294	return nil, false
22295}
22296
22297// AsDocumentDbCollectionSource is the BasicCopySource implementation for CopySource.
22298func (cs CopySource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
22299	return nil, false
22300}
22301
22302// AsBlobSource is the BasicCopySource implementation for CopySource.
22303func (cs CopySource) AsBlobSource() (*BlobSource, bool) {
22304	return nil, false
22305}
22306
22307// AsAzureTableSource is the BasicCopySource implementation for CopySource.
22308func (cs CopySource) AsAzureTableSource() (*AzureTableSource, bool) {
22309	return nil, false
22310}
22311
22312// AsCopySource is the BasicCopySource implementation for CopySource.
22313func (cs CopySource) AsCopySource() (*CopySource, bool) {
22314	return &cs, true
22315}
22316
22317// AsBasicCopySource is the BasicCopySource implementation for CopySource.
22318func (cs CopySource) AsBasicCopySource() (BasicCopySource, bool) {
22319	return &cs, true
22320}
22321
22322// BasicCopyTranslator a copy activity translator.
22323type BasicCopyTranslator interface {
22324	AsTabularTranslator() (*TabularTranslator, bool)
22325	AsCopyTranslator() (*CopyTranslator, bool)
22326}
22327
22328// CopyTranslator a copy activity translator.
22329type CopyTranslator struct {
22330	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
22331	AdditionalProperties map[string]interface{} `json:""`
22332	// Type - Possible values include: 'TypeCopyTranslator', 'TypeTabularTranslator'
22333	Type TypeBasicCopyTranslator `json:"type,omitempty"`
22334}
22335
22336func unmarshalBasicCopyTranslator(body []byte) (BasicCopyTranslator, error) {
22337	var m map[string]interface{}
22338	err := json.Unmarshal(body, &m)
22339	if err != nil {
22340		return nil, err
22341	}
22342
22343	switch m["type"] {
22344	case string(TypeTabularTranslator):
22345		var tt TabularTranslator
22346		err := json.Unmarshal(body, &tt)
22347		return tt, err
22348	default:
22349		var ct CopyTranslator
22350		err := json.Unmarshal(body, &ct)
22351		return ct, err
22352	}
22353}
22354func unmarshalBasicCopyTranslatorArray(body []byte) ([]BasicCopyTranslator, error) {
22355	var rawMessages []*json.RawMessage
22356	err := json.Unmarshal(body, &rawMessages)
22357	if err != nil {
22358		return nil, err
22359	}
22360
22361	ctArray := make([]BasicCopyTranslator, len(rawMessages))
22362
22363	for index, rawMessage := range rawMessages {
22364		ct, err := unmarshalBasicCopyTranslator(*rawMessage)
22365		if err != nil {
22366			return nil, err
22367		}
22368		ctArray[index] = ct
22369	}
22370	return ctArray, nil
22371}
22372
22373// MarshalJSON is the custom marshaler for CopyTranslator.
22374func (ct CopyTranslator) MarshalJSON() ([]byte, error) {
22375	ct.Type = TypeCopyTranslator
22376	objectMap := make(map[string]interface{})
22377	if ct.Type != "" {
22378		objectMap["type"] = ct.Type
22379	}
22380	for k, v := range ct.AdditionalProperties {
22381		objectMap[k] = v
22382	}
22383	return json.Marshal(objectMap)
22384}
22385
22386// AsTabularTranslator is the BasicCopyTranslator implementation for CopyTranslator.
22387func (ct CopyTranslator) AsTabularTranslator() (*TabularTranslator, bool) {
22388	return nil, false
22389}
22390
22391// AsCopyTranslator is the BasicCopyTranslator implementation for CopyTranslator.
22392func (ct CopyTranslator) AsCopyTranslator() (*CopyTranslator, bool) {
22393	return &ct, true
22394}
22395
22396// AsBasicCopyTranslator is the BasicCopyTranslator implementation for CopyTranslator.
22397func (ct CopyTranslator) AsBasicCopyTranslator() (BasicCopyTranslator, bool) {
22398	return &ct, true
22399}
22400
22401// CosmosDbLinkedService microsoft Azure Cosmos Database (CosmosDB) linked service.
22402type CosmosDbLinkedService struct {
22403	// CosmosDbLinkedServiceTypeProperties - CosmosDB linked service properties.
22404	*CosmosDbLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
22405	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
22406	AdditionalProperties map[string]interface{} `json:""`
22407	// ConnectVia - The integration runtime reference.
22408	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
22409	// Description - Linked service description.
22410	Description *string `json:"description,omitempty"`
22411	// Parameters - Parameters for linked service.
22412	Parameters map[string]*ParameterSpecification `json:"parameters"`
22413	// Annotations - List of tags that can be used for describing the Dataset.
22414	Annotations *[]interface{} `json:"annotations,omitempty"`
22415	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
22416	Type TypeBasicLinkedService `json:"type,omitempty"`
22417}
22418
22419// MarshalJSON is the custom marshaler for CosmosDbLinkedService.
22420func (cdls CosmosDbLinkedService) MarshalJSON() ([]byte, error) {
22421	cdls.Type = TypeCosmosDb
22422	objectMap := make(map[string]interface{})
22423	if cdls.CosmosDbLinkedServiceTypeProperties != nil {
22424		objectMap["typeProperties"] = cdls.CosmosDbLinkedServiceTypeProperties
22425	}
22426	if cdls.ConnectVia != nil {
22427		objectMap["connectVia"] = cdls.ConnectVia
22428	}
22429	if cdls.Description != nil {
22430		objectMap["description"] = cdls.Description
22431	}
22432	if cdls.Parameters != nil {
22433		objectMap["parameters"] = cdls.Parameters
22434	}
22435	if cdls.Annotations != nil {
22436		objectMap["annotations"] = cdls.Annotations
22437	}
22438	if cdls.Type != "" {
22439		objectMap["type"] = cdls.Type
22440	}
22441	for k, v := range cdls.AdditionalProperties {
22442		objectMap[k] = v
22443	}
22444	return json.Marshal(objectMap)
22445}
22446
22447// AsResponsysLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22448func (cdls CosmosDbLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
22449	return nil, false
22450}
22451
22452// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22453func (cdls CosmosDbLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
22454	return nil, false
22455}
22456
22457// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22458func (cdls CosmosDbLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
22459	return nil, false
22460}
22461
22462// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22463func (cdls CosmosDbLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
22464	return nil, false
22465}
22466
22467// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22468func (cdls CosmosDbLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
22469	return nil, false
22470}
22471
22472// AsNetezzaLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22473func (cdls CosmosDbLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
22474	return nil, false
22475}
22476
22477// AsVerticaLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22478func (cdls CosmosDbLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
22479	return nil, false
22480}
22481
22482// AsZohoLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22483func (cdls CosmosDbLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
22484	return nil, false
22485}
22486
22487// AsXeroLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22488func (cdls CosmosDbLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
22489	return nil, false
22490}
22491
22492// AsSquareLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22493func (cdls CosmosDbLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
22494	return nil, false
22495}
22496
22497// AsSparkLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22498func (cdls CosmosDbLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
22499	return nil, false
22500}
22501
22502// AsShopifyLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22503func (cdls CosmosDbLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
22504	return nil, false
22505}
22506
22507// AsServiceNowLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22508func (cdls CosmosDbLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
22509	return nil, false
22510}
22511
22512// AsQuickBooksLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22513func (cdls CosmosDbLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
22514	return nil, false
22515}
22516
22517// AsPrestoLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22518func (cdls CosmosDbLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
22519	return nil, false
22520}
22521
22522// AsPhoenixLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22523func (cdls CosmosDbLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
22524	return nil, false
22525}
22526
22527// AsPaypalLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22528func (cdls CosmosDbLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
22529	return nil, false
22530}
22531
22532// AsMarketoLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22533func (cdls CosmosDbLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
22534	return nil, false
22535}
22536
22537// AsMariaDBLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22538func (cdls CosmosDbLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
22539	return nil, false
22540}
22541
22542// AsMagentoLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22543func (cdls CosmosDbLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
22544	return nil, false
22545}
22546
22547// AsJiraLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22548func (cdls CosmosDbLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
22549	return nil, false
22550}
22551
22552// AsImpalaLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22553func (cdls CosmosDbLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
22554	return nil, false
22555}
22556
22557// AsHubspotLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22558func (cdls CosmosDbLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
22559	return nil, false
22560}
22561
22562// AsHiveLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22563func (cdls CosmosDbLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
22564	return nil, false
22565}
22566
22567// AsHBaseLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22568func (cdls CosmosDbLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
22569	return nil, false
22570}
22571
22572// AsGreenplumLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22573func (cdls CosmosDbLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
22574	return nil, false
22575}
22576
22577// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22578func (cdls CosmosDbLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
22579	return nil, false
22580}
22581
22582// AsEloquaLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22583func (cdls CosmosDbLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
22584	return nil, false
22585}
22586
22587// AsDrillLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22588func (cdls CosmosDbLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
22589	return nil, false
22590}
22591
22592// AsCouchbaseLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22593func (cdls CosmosDbLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
22594	return nil, false
22595}
22596
22597// AsConcurLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22598func (cdls CosmosDbLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
22599	return nil, false
22600}
22601
22602// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22603func (cdls CosmosDbLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
22604	return nil, false
22605}
22606
22607// AsAmazonMWSLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22608func (cdls CosmosDbLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
22609	return nil, false
22610}
22611
22612// AsSapHanaLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22613func (cdls CosmosDbLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
22614	return nil, false
22615}
22616
22617// AsSapBWLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22618func (cdls CosmosDbLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
22619	return nil, false
22620}
22621
22622// AsSftpServerLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22623func (cdls CosmosDbLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
22624	return nil, false
22625}
22626
22627// AsFtpServerLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22628func (cdls CosmosDbLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
22629	return nil, false
22630}
22631
22632// AsHTTPLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22633func (cdls CosmosDbLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
22634	return nil, false
22635}
22636
22637// AsAzureSearchLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22638func (cdls CosmosDbLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
22639	return nil, false
22640}
22641
22642// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22643func (cdls CosmosDbLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
22644	return nil, false
22645}
22646
22647// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22648func (cdls CosmosDbLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
22649	return nil, false
22650}
22651
22652// AsAmazonS3LinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22653func (cdls CosmosDbLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
22654	return nil, false
22655}
22656
22657// AsSapEccLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22658func (cdls CosmosDbLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
22659	return nil, false
22660}
22661
22662// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22663func (cdls CosmosDbLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
22664	return nil, false
22665}
22666
22667// AsSalesforceLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22668func (cdls CosmosDbLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
22669	return nil, false
22670}
22671
22672// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22673func (cdls CosmosDbLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
22674	return nil, false
22675}
22676
22677// AsMongoDbLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22678func (cdls CosmosDbLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
22679	return nil, false
22680}
22681
22682// AsCassandraLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22683func (cdls CosmosDbLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
22684	return nil, false
22685}
22686
22687// AsWebLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22688func (cdls CosmosDbLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
22689	return nil, false
22690}
22691
22692// AsODataLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22693func (cdls CosmosDbLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
22694	return nil, false
22695}
22696
22697// AsHdfsLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22698func (cdls CosmosDbLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
22699	return nil, false
22700}
22701
22702// AsOdbcLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22703func (cdls CosmosDbLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
22704	return nil, false
22705}
22706
22707// AsAzureMLLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22708func (cdls CosmosDbLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
22709	return nil, false
22710}
22711
22712// AsTeradataLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22713func (cdls CosmosDbLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
22714	return nil, false
22715}
22716
22717// AsDb2LinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22718func (cdls CosmosDbLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
22719	return nil, false
22720}
22721
22722// AsSybaseLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22723func (cdls CosmosDbLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
22724	return nil, false
22725}
22726
22727// AsPostgreSQLLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22728func (cdls CosmosDbLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
22729	return nil, false
22730}
22731
22732// AsMySQLLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22733func (cdls CosmosDbLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
22734	return nil, false
22735}
22736
22737// AsAzureMySQLLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22738func (cdls CosmosDbLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
22739	return nil, false
22740}
22741
22742// AsOracleLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22743func (cdls CosmosDbLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
22744	return nil, false
22745}
22746
22747// AsFileServerLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22748func (cdls CosmosDbLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
22749	return nil, false
22750}
22751
22752// AsHDInsightLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22753func (cdls CosmosDbLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
22754	return nil, false
22755}
22756
22757// AsDynamicsLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22758func (cdls CosmosDbLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
22759	return nil, false
22760}
22761
22762// AsCosmosDbLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22763func (cdls CosmosDbLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
22764	return &cdls, true
22765}
22766
22767// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22768func (cdls CosmosDbLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
22769	return nil, false
22770}
22771
22772// AsAzureBatchLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22773func (cdls CosmosDbLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
22774	return nil, false
22775}
22776
22777// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22778func (cdls CosmosDbLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
22779	return nil, false
22780}
22781
22782// AsSQLServerLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22783func (cdls CosmosDbLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
22784	return nil, false
22785}
22786
22787// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22788func (cdls CosmosDbLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
22789	return nil, false
22790}
22791
22792// AsAzureStorageLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22793func (cdls CosmosDbLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
22794	return nil, false
22795}
22796
22797// AsLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22798func (cdls CosmosDbLinkedService) AsLinkedService() (*LinkedService, bool) {
22799	return nil, false
22800}
22801
22802// AsBasicLinkedService is the BasicLinkedService implementation for CosmosDbLinkedService.
22803func (cdls CosmosDbLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
22804	return &cdls, true
22805}
22806
22807// UnmarshalJSON is the custom unmarshaler for CosmosDbLinkedService struct.
22808func (cdls *CosmosDbLinkedService) UnmarshalJSON(body []byte) error {
22809	var m map[string]*json.RawMessage
22810	err := json.Unmarshal(body, &m)
22811	if err != nil {
22812		return err
22813	}
22814	for k, v := range m {
22815		switch k {
22816		case "typeProperties":
22817			if v != nil {
22818				var cosmosDbLinkedServiceTypeProperties CosmosDbLinkedServiceTypeProperties
22819				err = json.Unmarshal(*v, &cosmosDbLinkedServiceTypeProperties)
22820				if err != nil {
22821					return err
22822				}
22823				cdls.CosmosDbLinkedServiceTypeProperties = &cosmosDbLinkedServiceTypeProperties
22824			}
22825		default:
22826			if v != nil {
22827				var additionalProperties interface{}
22828				err = json.Unmarshal(*v, &additionalProperties)
22829				if err != nil {
22830					return err
22831				}
22832				if cdls.AdditionalProperties == nil {
22833					cdls.AdditionalProperties = make(map[string]interface{})
22834				}
22835				cdls.AdditionalProperties[k] = additionalProperties
22836			}
22837		case "connectVia":
22838			if v != nil {
22839				var connectVia IntegrationRuntimeReference
22840				err = json.Unmarshal(*v, &connectVia)
22841				if err != nil {
22842					return err
22843				}
22844				cdls.ConnectVia = &connectVia
22845			}
22846		case "description":
22847			if v != nil {
22848				var description string
22849				err = json.Unmarshal(*v, &description)
22850				if err != nil {
22851					return err
22852				}
22853				cdls.Description = &description
22854			}
22855		case "parameters":
22856			if v != nil {
22857				var parameters map[string]*ParameterSpecification
22858				err = json.Unmarshal(*v, &parameters)
22859				if err != nil {
22860					return err
22861				}
22862				cdls.Parameters = parameters
22863			}
22864		case "annotations":
22865			if v != nil {
22866				var annotations []interface{}
22867				err = json.Unmarshal(*v, &annotations)
22868				if err != nil {
22869					return err
22870				}
22871				cdls.Annotations = &annotations
22872			}
22873		case "type":
22874			if v != nil {
22875				var typeVar TypeBasicLinkedService
22876				err = json.Unmarshal(*v, &typeVar)
22877				if err != nil {
22878					return err
22879				}
22880				cdls.Type = typeVar
22881			}
22882		}
22883	}
22884
22885	return nil
22886}
22887
22888// CosmosDbLinkedServiceTypeProperties cosmosDB linked service properties.
22889type CosmosDbLinkedServiceTypeProperties struct {
22890	// ConnectionString - The connection string.
22891	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
22892	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
22893	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
22894}
22895
22896// UnmarshalJSON is the custom unmarshaler for CosmosDbLinkedServiceTypeProperties struct.
22897func (cdlstp *CosmosDbLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
22898	var m map[string]*json.RawMessage
22899	err := json.Unmarshal(body, &m)
22900	if err != nil {
22901		return err
22902	}
22903	for k, v := range m {
22904		switch k {
22905		case "connectionString":
22906			if v != nil {
22907				connectionString, err := unmarshalBasicSecretBase(*v)
22908				if err != nil {
22909					return err
22910				}
22911				cdlstp.ConnectionString = connectionString
22912			}
22913		case "encryptedCredential":
22914			if v != nil {
22915				var encryptedCredential interface{}
22916				err = json.Unmarshal(*v, &encryptedCredential)
22917				if err != nil {
22918					return err
22919				}
22920				cdlstp.EncryptedCredential = encryptedCredential
22921			}
22922		}
22923	}
22924
22925	return nil
22926}
22927
22928// CouchbaseLinkedService couchbase server linked service.
22929type CouchbaseLinkedService struct {
22930	// CouchbaseLinkedServiceTypeProperties - Couchbase server linked service properties.
22931	*CouchbaseLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
22932	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
22933	AdditionalProperties map[string]interface{} `json:""`
22934	// ConnectVia - The integration runtime reference.
22935	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
22936	// Description - Linked service description.
22937	Description *string `json:"description,omitempty"`
22938	// Parameters - Parameters for linked service.
22939	Parameters map[string]*ParameterSpecification `json:"parameters"`
22940	// Annotations - List of tags that can be used for describing the Dataset.
22941	Annotations *[]interface{} `json:"annotations,omitempty"`
22942	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
22943	Type TypeBasicLinkedService `json:"type,omitempty"`
22944}
22945
22946// MarshalJSON is the custom marshaler for CouchbaseLinkedService.
22947func (cls CouchbaseLinkedService) MarshalJSON() ([]byte, error) {
22948	cls.Type = TypeCouchbase
22949	objectMap := make(map[string]interface{})
22950	if cls.CouchbaseLinkedServiceTypeProperties != nil {
22951		objectMap["typeProperties"] = cls.CouchbaseLinkedServiceTypeProperties
22952	}
22953	if cls.ConnectVia != nil {
22954		objectMap["connectVia"] = cls.ConnectVia
22955	}
22956	if cls.Description != nil {
22957		objectMap["description"] = cls.Description
22958	}
22959	if cls.Parameters != nil {
22960		objectMap["parameters"] = cls.Parameters
22961	}
22962	if cls.Annotations != nil {
22963		objectMap["annotations"] = cls.Annotations
22964	}
22965	if cls.Type != "" {
22966		objectMap["type"] = cls.Type
22967	}
22968	for k, v := range cls.AdditionalProperties {
22969		objectMap[k] = v
22970	}
22971	return json.Marshal(objectMap)
22972}
22973
22974// AsResponsysLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
22975func (cls CouchbaseLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
22976	return nil, false
22977}
22978
22979// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
22980func (cls CouchbaseLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
22981	return nil, false
22982}
22983
22984// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
22985func (cls CouchbaseLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
22986	return nil, false
22987}
22988
22989// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
22990func (cls CouchbaseLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
22991	return nil, false
22992}
22993
22994// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
22995func (cls CouchbaseLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
22996	return nil, false
22997}
22998
22999// AsNetezzaLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23000func (cls CouchbaseLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
23001	return nil, false
23002}
23003
23004// AsVerticaLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23005func (cls CouchbaseLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
23006	return nil, false
23007}
23008
23009// AsZohoLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23010func (cls CouchbaseLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
23011	return nil, false
23012}
23013
23014// AsXeroLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23015func (cls CouchbaseLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
23016	return nil, false
23017}
23018
23019// AsSquareLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23020func (cls CouchbaseLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
23021	return nil, false
23022}
23023
23024// AsSparkLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23025func (cls CouchbaseLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
23026	return nil, false
23027}
23028
23029// AsShopifyLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23030func (cls CouchbaseLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
23031	return nil, false
23032}
23033
23034// AsServiceNowLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23035func (cls CouchbaseLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
23036	return nil, false
23037}
23038
23039// AsQuickBooksLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23040func (cls CouchbaseLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
23041	return nil, false
23042}
23043
23044// AsPrestoLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23045func (cls CouchbaseLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
23046	return nil, false
23047}
23048
23049// AsPhoenixLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23050func (cls CouchbaseLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
23051	return nil, false
23052}
23053
23054// AsPaypalLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23055func (cls CouchbaseLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
23056	return nil, false
23057}
23058
23059// AsMarketoLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23060func (cls CouchbaseLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
23061	return nil, false
23062}
23063
23064// AsMariaDBLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23065func (cls CouchbaseLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
23066	return nil, false
23067}
23068
23069// AsMagentoLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23070func (cls CouchbaseLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
23071	return nil, false
23072}
23073
23074// AsJiraLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23075func (cls CouchbaseLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
23076	return nil, false
23077}
23078
23079// AsImpalaLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23080func (cls CouchbaseLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
23081	return nil, false
23082}
23083
23084// AsHubspotLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23085func (cls CouchbaseLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
23086	return nil, false
23087}
23088
23089// AsHiveLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23090func (cls CouchbaseLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
23091	return nil, false
23092}
23093
23094// AsHBaseLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23095func (cls CouchbaseLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
23096	return nil, false
23097}
23098
23099// AsGreenplumLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23100func (cls CouchbaseLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
23101	return nil, false
23102}
23103
23104// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23105func (cls CouchbaseLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
23106	return nil, false
23107}
23108
23109// AsEloquaLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23110func (cls CouchbaseLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
23111	return nil, false
23112}
23113
23114// AsDrillLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23115func (cls CouchbaseLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
23116	return nil, false
23117}
23118
23119// AsCouchbaseLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23120func (cls CouchbaseLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
23121	return &cls, true
23122}
23123
23124// AsConcurLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23125func (cls CouchbaseLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
23126	return nil, false
23127}
23128
23129// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23130func (cls CouchbaseLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
23131	return nil, false
23132}
23133
23134// AsAmazonMWSLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23135func (cls CouchbaseLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
23136	return nil, false
23137}
23138
23139// AsSapHanaLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23140func (cls CouchbaseLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
23141	return nil, false
23142}
23143
23144// AsSapBWLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23145func (cls CouchbaseLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
23146	return nil, false
23147}
23148
23149// AsSftpServerLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23150func (cls CouchbaseLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
23151	return nil, false
23152}
23153
23154// AsFtpServerLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23155func (cls CouchbaseLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
23156	return nil, false
23157}
23158
23159// AsHTTPLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23160func (cls CouchbaseLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
23161	return nil, false
23162}
23163
23164// AsAzureSearchLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23165func (cls CouchbaseLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
23166	return nil, false
23167}
23168
23169// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23170func (cls CouchbaseLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
23171	return nil, false
23172}
23173
23174// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23175func (cls CouchbaseLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
23176	return nil, false
23177}
23178
23179// AsAmazonS3LinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23180func (cls CouchbaseLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
23181	return nil, false
23182}
23183
23184// AsSapEccLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23185func (cls CouchbaseLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
23186	return nil, false
23187}
23188
23189// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23190func (cls CouchbaseLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
23191	return nil, false
23192}
23193
23194// AsSalesforceLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23195func (cls CouchbaseLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
23196	return nil, false
23197}
23198
23199// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23200func (cls CouchbaseLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
23201	return nil, false
23202}
23203
23204// AsMongoDbLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23205func (cls CouchbaseLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
23206	return nil, false
23207}
23208
23209// AsCassandraLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23210func (cls CouchbaseLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
23211	return nil, false
23212}
23213
23214// AsWebLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23215func (cls CouchbaseLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
23216	return nil, false
23217}
23218
23219// AsODataLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23220func (cls CouchbaseLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
23221	return nil, false
23222}
23223
23224// AsHdfsLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23225func (cls CouchbaseLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
23226	return nil, false
23227}
23228
23229// AsOdbcLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23230func (cls CouchbaseLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
23231	return nil, false
23232}
23233
23234// AsAzureMLLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23235func (cls CouchbaseLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
23236	return nil, false
23237}
23238
23239// AsTeradataLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23240func (cls CouchbaseLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
23241	return nil, false
23242}
23243
23244// AsDb2LinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23245func (cls CouchbaseLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
23246	return nil, false
23247}
23248
23249// AsSybaseLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23250func (cls CouchbaseLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
23251	return nil, false
23252}
23253
23254// AsPostgreSQLLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23255func (cls CouchbaseLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
23256	return nil, false
23257}
23258
23259// AsMySQLLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23260func (cls CouchbaseLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
23261	return nil, false
23262}
23263
23264// AsAzureMySQLLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23265func (cls CouchbaseLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
23266	return nil, false
23267}
23268
23269// AsOracleLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23270func (cls CouchbaseLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
23271	return nil, false
23272}
23273
23274// AsFileServerLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23275func (cls CouchbaseLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
23276	return nil, false
23277}
23278
23279// AsHDInsightLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23280func (cls CouchbaseLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
23281	return nil, false
23282}
23283
23284// AsDynamicsLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23285func (cls CouchbaseLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
23286	return nil, false
23287}
23288
23289// AsCosmosDbLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23290func (cls CouchbaseLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
23291	return nil, false
23292}
23293
23294// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23295func (cls CouchbaseLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
23296	return nil, false
23297}
23298
23299// AsAzureBatchLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23300func (cls CouchbaseLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
23301	return nil, false
23302}
23303
23304// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23305func (cls CouchbaseLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
23306	return nil, false
23307}
23308
23309// AsSQLServerLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23310func (cls CouchbaseLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
23311	return nil, false
23312}
23313
23314// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23315func (cls CouchbaseLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
23316	return nil, false
23317}
23318
23319// AsAzureStorageLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23320func (cls CouchbaseLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
23321	return nil, false
23322}
23323
23324// AsLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23325func (cls CouchbaseLinkedService) AsLinkedService() (*LinkedService, bool) {
23326	return nil, false
23327}
23328
23329// AsBasicLinkedService is the BasicLinkedService implementation for CouchbaseLinkedService.
23330func (cls CouchbaseLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
23331	return &cls, true
23332}
23333
23334// UnmarshalJSON is the custom unmarshaler for CouchbaseLinkedService struct.
23335func (cls *CouchbaseLinkedService) UnmarshalJSON(body []byte) error {
23336	var m map[string]*json.RawMessage
23337	err := json.Unmarshal(body, &m)
23338	if err != nil {
23339		return err
23340	}
23341	for k, v := range m {
23342		switch k {
23343		case "typeProperties":
23344			if v != nil {
23345				var couchbaseLinkedServiceTypeProperties CouchbaseLinkedServiceTypeProperties
23346				err = json.Unmarshal(*v, &couchbaseLinkedServiceTypeProperties)
23347				if err != nil {
23348					return err
23349				}
23350				cls.CouchbaseLinkedServiceTypeProperties = &couchbaseLinkedServiceTypeProperties
23351			}
23352		default:
23353			if v != nil {
23354				var additionalProperties interface{}
23355				err = json.Unmarshal(*v, &additionalProperties)
23356				if err != nil {
23357					return err
23358				}
23359				if cls.AdditionalProperties == nil {
23360					cls.AdditionalProperties = make(map[string]interface{})
23361				}
23362				cls.AdditionalProperties[k] = additionalProperties
23363			}
23364		case "connectVia":
23365			if v != nil {
23366				var connectVia IntegrationRuntimeReference
23367				err = json.Unmarshal(*v, &connectVia)
23368				if err != nil {
23369					return err
23370				}
23371				cls.ConnectVia = &connectVia
23372			}
23373		case "description":
23374			if v != nil {
23375				var description string
23376				err = json.Unmarshal(*v, &description)
23377				if err != nil {
23378					return err
23379				}
23380				cls.Description = &description
23381			}
23382		case "parameters":
23383			if v != nil {
23384				var parameters map[string]*ParameterSpecification
23385				err = json.Unmarshal(*v, &parameters)
23386				if err != nil {
23387					return err
23388				}
23389				cls.Parameters = parameters
23390			}
23391		case "annotations":
23392			if v != nil {
23393				var annotations []interface{}
23394				err = json.Unmarshal(*v, &annotations)
23395				if err != nil {
23396					return err
23397				}
23398				cls.Annotations = &annotations
23399			}
23400		case "type":
23401			if v != nil {
23402				var typeVar TypeBasicLinkedService
23403				err = json.Unmarshal(*v, &typeVar)
23404				if err != nil {
23405					return err
23406				}
23407				cls.Type = typeVar
23408			}
23409		}
23410	}
23411
23412	return nil
23413}
23414
23415// CouchbaseLinkedServiceTypeProperties couchbase server linked service properties.
23416type CouchbaseLinkedServiceTypeProperties struct {
23417	// ConnectionString - An ODBC connection string.
23418	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
23419	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
23420	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
23421}
23422
23423// UnmarshalJSON is the custom unmarshaler for CouchbaseLinkedServiceTypeProperties struct.
23424func (clstp *CouchbaseLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
23425	var m map[string]*json.RawMessage
23426	err := json.Unmarshal(body, &m)
23427	if err != nil {
23428		return err
23429	}
23430	for k, v := range m {
23431		switch k {
23432		case "connectionString":
23433			if v != nil {
23434				connectionString, err := unmarshalBasicSecretBase(*v)
23435				if err != nil {
23436					return err
23437				}
23438				clstp.ConnectionString = connectionString
23439			}
23440		case "encryptedCredential":
23441			if v != nil {
23442				var encryptedCredential interface{}
23443				err = json.Unmarshal(*v, &encryptedCredential)
23444				if err != nil {
23445					return err
23446				}
23447				clstp.EncryptedCredential = encryptedCredential
23448			}
23449		}
23450	}
23451
23452	return nil
23453}
23454
23455// CouchbaseSource a copy activity Couchbase server source.
23456type CouchbaseSource struct {
23457	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
23458	Query interface{} `json:"query,omitempty"`
23459	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
23460	AdditionalProperties map[string]interface{} `json:""`
23461	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
23462	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
23463	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
23464	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
23465	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
23466	Type TypeBasicCopySource `json:"type,omitempty"`
23467}
23468
23469// MarshalJSON is the custom marshaler for CouchbaseSource.
23470func (cs CouchbaseSource) MarshalJSON() ([]byte, error) {
23471	cs.Type = TypeCouchbaseSource
23472	objectMap := make(map[string]interface{})
23473	objectMap["query"] = cs.Query
23474	objectMap["sourceRetryCount"] = cs.SourceRetryCount
23475	objectMap["sourceRetryWait"] = cs.SourceRetryWait
23476	if cs.Type != "" {
23477		objectMap["type"] = cs.Type
23478	}
23479	for k, v := range cs.AdditionalProperties {
23480		objectMap[k] = v
23481	}
23482	return json.Marshal(objectMap)
23483}
23484
23485// AsAmazonRedshiftSource is the BasicCopySource implementation for CouchbaseSource.
23486func (cs CouchbaseSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
23487	return nil, false
23488}
23489
23490// AsResponsysSource is the BasicCopySource implementation for CouchbaseSource.
23491func (cs CouchbaseSource) AsResponsysSource() (*ResponsysSource, bool) {
23492	return nil, false
23493}
23494
23495// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for CouchbaseSource.
23496func (cs CouchbaseSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
23497	return nil, false
23498}
23499
23500// AsVerticaSource is the BasicCopySource implementation for CouchbaseSource.
23501func (cs CouchbaseSource) AsVerticaSource() (*VerticaSource, bool) {
23502	return nil, false
23503}
23504
23505// AsNetezzaSource is the BasicCopySource implementation for CouchbaseSource.
23506func (cs CouchbaseSource) AsNetezzaSource() (*NetezzaSource, bool) {
23507	return nil, false
23508}
23509
23510// AsZohoSource is the BasicCopySource implementation for CouchbaseSource.
23511func (cs CouchbaseSource) AsZohoSource() (*ZohoSource, bool) {
23512	return nil, false
23513}
23514
23515// AsXeroSource is the BasicCopySource implementation for CouchbaseSource.
23516func (cs CouchbaseSource) AsXeroSource() (*XeroSource, bool) {
23517	return nil, false
23518}
23519
23520// AsSquareSource is the BasicCopySource implementation for CouchbaseSource.
23521func (cs CouchbaseSource) AsSquareSource() (*SquareSource, bool) {
23522	return nil, false
23523}
23524
23525// AsSparkSource is the BasicCopySource implementation for CouchbaseSource.
23526func (cs CouchbaseSource) AsSparkSource() (*SparkSource, bool) {
23527	return nil, false
23528}
23529
23530// AsShopifySource is the BasicCopySource implementation for CouchbaseSource.
23531func (cs CouchbaseSource) AsShopifySource() (*ShopifySource, bool) {
23532	return nil, false
23533}
23534
23535// AsServiceNowSource is the BasicCopySource implementation for CouchbaseSource.
23536func (cs CouchbaseSource) AsServiceNowSource() (*ServiceNowSource, bool) {
23537	return nil, false
23538}
23539
23540// AsQuickBooksSource is the BasicCopySource implementation for CouchbaseSource.
23541func (cs CouchbaseSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
23542	return nil, false
23543}
23544
23545// AsPrestoSource is the BasicCopySource implementation for CouchbaseSource.
23546func (cs CouchbaseSource) AsPrestoSource() (*PrestoSource, bool) {
23547	return nil, false
23548}
23549
23550// AsPhoenixSource is the BasicCopySource implementation for CouchbaseSource.
23551func (cs CouchbaseSource) AsPhoenixSource() (*PhoenixSource, bool) {
23552	return nil, false
23553}
23554
23555// AsPaypalSource is the BasicCopySource implementation for CouchbaseSource.
23556func (cs CouchbaseSource) AsPaypalSource() (*PaypalSource, bool) {
23557	return nil, false
23558}
23559
23560// AsMarketoSource is the BasicCopySource implementation for CouchbaseSource.
23561func (cs CouchbaseSource) AsMarketoSource() (*MarketoSource, bool) {
23562	return nil, false
23563}
23564
23565// AsMariaDBSource is the BasicCopySource implementation for CouchbaseSource.
23566func (cs CouchbaseSource) AsMariaDBSource() (*MariaDBSource, bool) {
23567	return nil, false
23568}
23569
23570// AsMagentoSource is the BasicCopySource implementation for CouchbaseSource.
23571func (cs CouchbaseSource) AsMagentoSource() (*MagentoSource, bool) {
23572	return nil, false
23573}
23574
23575// AsJiraSource is the BasicCopySource implementation for CouchbaseSource.
23576func (cs CouchbaseSource) AsJiraSource() (*JiraSource, bool) {
23577	return nil, false
23578}
23579
23580// AsImpalaSource is the BasicCopySource implementation for CouchbaseSource.
23581func (cs CouchbaseSource) AsImpalaSource() (*ImpalaSource, bool) {
23582	return nil, false
23583}
23584
23585// AsHubspotSource is the BasicCopySource implementation for CouchbaseSource.
23586func (cs CouchbaseSource) AsHubspotSource() (*HubspotSource, bool) {
23587	return nil, false
23588}
23589
23590// AsHiveSource is the BasicCopySource implementation for CouchbaseSource.
23591func (cs CouchbaseSource) AsHiveSource() (*HiveSource, bool) {
23592	return nil, false
23593}
23594
23595// AsHBaseSource is the BasicCopySource implementation for CouchbaseSource.
23596func (cs CouchbaseSource) AsHBaseSource() (*HBaseSource, bool) {
23597	return nil, false
23598}
23599
23600// AsGreenplumSource is the BasicCopySource implementation for CouchbaseSource.
23601func (cs CouchbaseSource) AsGreenplumSource() (*GreenplumSource, bool) {
23602	return nil, false
23603}
23604
23605// AsGoogleBigQuerySource is the BasicCopySource implementation for CouchbaseSource.
23606func (cs CouchbaseSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
23607	return nil, false
23608}
23609
23610// AsEloquaSource is the BasicCopySource implementation for CouchbaseSource.
23611func (cs CouchbaseSource) AsEloquaSource() (*EloquaSource, bool) {
23612	return nil, false
23613}
23614
23615// AsDrillSource is the BasicCopySource implementation for CouchbaseSource.
23616func (cs CouchbaseSource) AsDrillSource() (*DrillSource, bool) {
23617	return nil, false
23618}
23619
23620// AsCouchbaseSource is the BasicCopySource implementation for CouchbaseSource.
23621func (cs CouchbaseSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
23622	return &cs, true
23623}
23624
23625// AsConcurSource is the BasicCopySource implementation for CouchbaseSource.
23626func (cs CouchbaseSource) AsConcurSource() (*ConcurSource, bool) {
23627	return nil, false
23628}
23629
23630// AsAzurePostgreSQLSource is the BasicCopySource implementation for CouchbaseSource.
23631func (cs CouchbaseSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
23632	return nil, false
23633}
23634
23635// AsAmazonMWSSource is the BasicCopySource implementation for CouchbaseSource.
23636func (cs CouchbaseSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
23637	return nil, false
23638}
23639
23640// AsHTTPSource is the BasicCopySource implementation for CouchbaseSource.
23641func (cs CouchbaseSource) AsHTTPSource() (*HTTPSource, bool) {
23642	return nil, false
23643}
23644
23645// AsAzureDataLakeStoreSource is the BasicCopySource implementation for CouchbaseSource.
23646func (cs CouchbaseSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
23647	return nil, false
23648}
23649
23650// AsMongoDbSource is the BasicCopySource implementation for CouchbaseSource.
23651func (cs CouchbaseSource) AsMongoDbSource() (*MongoDbSource, bool) {
23652	return nil, false
23653}
23654
23655// AsCassandraSource is the BasicCopySource implementation for CouchbaseSource.
23656func (cs CouchbaseSource) AsCassandraSource() (*CassandraSource, bool) {
23657	return nil, false
23658}
23659
23660// AsWebSource is the BasicCopySource implementation for CouchbaseSource.
23661func (cs CouchbaseSource) AsWebSource() (*WebSource, bool) {
23662	return nil, false
23663}
23664
23665// AsOracleSource is the BasicCopySource implementation for CouchbaseSource.
23666func (cs CouchbaseSource) AsOracleSource() (*OracleSource, bool) {
23667	return nil, false
23668}
23669
23670// AsAzureMySQLSource is the BasicCopySource implementation for CouchbaseSource.
23671func (cs CouchbaseSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
23672	return nil, false
23673}
23674
23675// AsHdfsSource is the BasicCopySource implementation for CouchbaseSource.
23676func (cs CouchbaseSource) AsHdfsSource() (*HdfsSource, bool) {
23677	return nil, false
23678}
23679
23680// AsFileSystemSource is the BasicCopySource implementation for CouchbaseSource.
23681func (cs CouchbaseSource) AsFileSystemSource() (*FileSystemSource, bool) {
23682	return nil, false
23683}
23684
23685// AsSQLDWSource is the BasicCopySource implementation for CouchbaseSource.
23686func (cs CouchbaseSource) AsSQLDWSource() (*SQLDWSource, bool) {
23687	return nil, false
23688}
23689
23690// AsSQLSource is the BasicCopySource implementation for CouchbaseSource.
23691func (cs CouchbaseSource) AsSQLSource() (*SQLSource, bool) {
23692	return nil, false
23693}
23694
23695// AsSapEccSource is the BasicCopySource implementation for CouchbaseSource.
23696func (cs CouchbaseSource) AsSapEccSource() (*SapEccSource, bool) {
23697	return nil, false
23698}
23699
23700// AsSapCloudForCustomerSource is the BasicCopySource implementation for CouchbaseSource.
23701func (cs CouchbaseSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
23702	return nil, false
23703}
23704
23705// AsSalesforceSource is the BasicCopySource implementation for CouchbaseSource.
23706func (cs CouchbaseSource) AsSalesforceSource() (*SalesforceSource, bool) {
23707	return nil, false
23708}
23709
23710// AsRelationalSource is the BasicCopySource implementation for CouchbaseSource.
23711func (cs CouchbaseSource) AsRelationalSource() (*RelationalSource, bool) {
23712	return nil, false
23713}
23714
23715// AsDynamicsSource is the BasicCopySource implementation for CouchbaseSource.
23716func (cs CouchbaseSource) AsDynamicsSource() (*DynamicsSource, bool) {
23717	return nil, false
23718}
23719
23720// AsDocumentDbCollectionSource is the BasicCopySource implementation for CouchbaseSource.
23721func (cs CouchbaseSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
23722	return nil, false
23723}
23724
23725// AsBlobSource is the BasicCopySource implementation for CouchbaseSource.
23726func (cs CouchbaseSource) AsBlobSource() (*BlobSource, bool) {
23727	return nil, false
23728}
23729
23730// AsAzureTableSource is the BasicCopySource implementation for CouchbaseSource.
23731func (cs CouchbaseSource) AsAzureTableSource() (*AzureTableSource, bool) {
23732	return nil, false
23733}
23734
23735// AsCopySource is the BasicCopySource implementation for CouchbaseSource.
23736func (cs CouchbaseSource) AsCopySource() (*CopySource, bool) {
23737	return nil, false
23738}
23739
23740// AsBasicCopySource is the BasicCopySource implementation for CouchbaseSource.
23741func (cs CouchbaseSource) AsBasicCopySource() (BasicCopySource, bool) {
23742	return &cs, true
23743}
23744
23745// CouchbaseTableDataset couchbase server dataset.
23746type CouchbaseTableDataset struct {
23747	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
23748	AdditionalProperties map[string]interface{} `json:""`
23749	// Description - Dataset description.
23750	Description *string `json:"description,omitempty"`
23751	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
23752	Structure interface{} `json:"structure,omitempty"`
23753	// LinkedServiceName - Linked service reference.
23754	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
23755	// Parameters - Parameters for dataset.
23756	Parameters map[string]*ParameterSpecification `json:"parameters"`
23757	// Annotations - List of tags that can be used for describing the Dataset.
23758	Annotations *[]interface{} `json:"annotations,omitempty"`
23759	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
23760	Type TypeBasicDataset `json:"type,omitempty"`
23761}
23762
23763// MarshalJSON is the custom marshaler for CouchbaseTableDataset.
23764func (ctd CouchbaseTableDataset) MarshalJSON() ([]byte, error) {
23765	ctd.Type = TypeCouchbaseTable
23766	objectMap := make(map[string]interface{})
23767	if ctd.Description != nil {
23768		objectMap["description"] = ctd.Description
23769	}
23770	objectMap["structure"] = ctd.Structure
23771	if ctd.LinkedServiceName != nil {
23772		objectMap["linkedServiceName"] = ctd.LinkedServiceName
23773	}
23774	if ctd.Parameters != nil {
23775		objectMap["parameters"] = ctd.Parameters
23776	}
23777	if ctd.Annotations != nil {
23778		objectMap["annotations"] = ctd.Annotations
23779	}
23780	if ctd.Type != "" {
23781		objectMap["type"] = ctd.Type
23782	}
23783	for k, v := range ctd.AdditionalProperties {
23784		objectMap[k] = v
23785	}
23786	return json.Marshal(objectMap)
23787}
23788
23789// AsResponsysObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23790func (ctd CouchbaseTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
23791	return nil, false
23792}
23793
23794// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23795func (ctd CouchbaseTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
23796	return nil, false
23797}
23798
23799// AsVerticaTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23800func (ctd CouchbaseTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
23801	return nil, false
23802}
23803
23804// AsNetezzaTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23805func (ctd CouchbaseTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
23806	return nil, false
23807}
23808
23809// AsZohoObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23810func (ctd CouchbaseTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
23811	return nil, false
23812}
23813
23814// AsXeroObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23815func (ctd CouchbaseTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
23816	return nil, false
23817}
23818
23819// AsSquareObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23820func (ctd CouchbaseTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
23821	return nil, false
23822}
23823
23824// AsSparkObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23825func (ctd CouchbaseTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
23826	return nil, false
23827}
23828
23829// AsShopifyObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23830func (ctd CouchbaseTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
23831	return nil, false
23832}
23833
23834// AsServiceNowObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23835func (ctd CouchbaseTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
23836	return nil, false
23837}
23838
23839// AsQuickBooksObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23840func (ctd CouchbaseTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
23841	return nil, false
23842}
23843
23844// AsPrestoObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23845func (ctd CouchbaseTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
23846	return nil, false
23847}
23848
23849// AsPhoenixObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23850func (ctd CouchbaseTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
23851	return nil, false
23852}
23853
23854// AsPaypalObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23855func (ctd CouchbaseTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
23856	return nil, false
23857}
23858
23859// AsMarketoObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23860func (ctd CouchbaseTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
23861	return nil, false
23862}
23863
23864// AsMariaDBTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23865func (ctd CouchbaseTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
23866	return nil, false
23867}
23868
23869// AsMagentoObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23870func (ctd CouchbaseTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
23871	return nil, false
23872}
23873
23874// AsJiraObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23875func (ctd CouchbaseTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
23876	return nil, false
23877}
23878
23879// AsImpalaObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23880func (ctd CouchbaseTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
23881	return nil, false
23882}
23883
23884// AsHubspotObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23885func (ctd CouchbaseTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
23886	return nil, false
23887}
23888
23889// AsHiveObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23890func (ctd CouchbaseTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
23891	return nil, false
23892}
23893
23894// AsHBaseObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23895func (ctd CouchbaseTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
23896	return nil, false
23897}
23898
23899// AsGreenplumTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23900func (ctd CouchbaseTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
23901	return nil, false
23902}
23903
23904// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23905func (ctd CouchbaseTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
23906	return nil, false
23907}
23908
23909// AsEloquaObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23910func (ctd CouchbaseTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
23911	return nil, false
23912}
23913
23914// AsDrillTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23915func (ctd CouchbaseTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
23916	return nil, false
23917}
23918
23919// AsCouchbaseTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23920func (ctd CouchbaseTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
23921	return &ctd, true
23922}
23923
23924// AsConcurObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23925func (ctd CouchbaseTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
23926	return nil, false
23927}
23928
23929// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23930func (ctd CouchbaseTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
23931	return nil, false
23932}
23933
23934// AsAmazonMWSObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23935func (ctd CouchbaseTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
23936	return nil, false
23937}
23938
23939// AsHTTPDataset is the BasicDataset implementation for CouchbaseTableDataset.
23940func (ctd CouchbaseTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
23941	return nil, false
23942}
23943
23944// AsAzureSearchIndexDataset is the BasicDataset implementation for CouchbaseTableDataset.
23945func (ctd CouchbaseTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
23946	return nil, false
23947}
23948
23949// AsWebTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23950func (ctd CouchbaseTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
23951	return nil, false
23952}
23953
23954// AsSQLServerTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23955func (ctd CouchbaseTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
23956	return nil, false
23957}
23958
23959// AsSapEccResourceDataset is the BasicDataset implementation for CouchbaseTableDataset.
23960func (ctd CouchbaseTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
23961	return nil, false
23962}
23963
23964// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for CouchbaseTableDataset.
23965func (ctd CouchbaseTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
23966	return nil, false
23967}
23968
23969// AsSalesforceObjectDataset is the BasicDataset implementation for CouchbaseTableDataset.
23970func (ctd CouchbaseTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
23971	return nil, false
23972}
23973
23974// AsRelationalTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23975func (ctd CouchbaseTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
23976	return nil, false
23977}
23978
23979// AsAzureMySQLTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23980func (ctd CouchbaseTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
23981	return nil, false
23982}
23983
23984// AsOracleTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
23985func (ctd CouchbaseTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
23986	return nil, false
23987}
23988
23989// AsODataResourceDataset is the BasicDataset implementation for CouchbaseTableDataset.
23990func (ctd CouchbaseTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
23991	return nil, false
23992}
23993
23994// AsMongoDbCollectionDataset is the BasicDataset implementation for CouchbaseTableDataset.
23995func (ctd CouchbaseTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
23996	return nil, false
23997}
23998
23999// AsFileShareDataset is the BasicDataset implementation for CouchbaseTableDataset.
24000func (ctd CouchbaseTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
24001	return nil, false
24002}
24003
24004// AsAzureDataLakeStoreDataset is the BasicDataset implementation for CouchbaseTableDataset.
24005func (ctd CouchbaseTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
24006	return nil, false
24007}
24008
24009// AsDynamicsEntityDataset is the BasicDataset implementation for CouchbaseTableDataset.
24010func (ctd CouchbaseTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
24011	return nil, false
24012}
24013
24014// AsDocumentDbCollectionDataset is the BasicDataset implementation for CouchbaseTableDataset.
24015func (ctd CouchbaseTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
24016	return nil, false
24017}
24018
24019// AsCustomDataset is the BasicDataset implementation for CouchbaseTableDataset.
24020func (ctd CouchbaseTableDataset) AsCustomDataset() (*CustomDataset, bool) {
24021	return nil, false
24022}
24023
24024// AsCassandraTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
24025func (ctd CouchbaseTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
24026	return nil, false
24027}
24028
24029// AsAzureSQLDWTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
24030func (ctd CouchbaseTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
24031	return nil, false
24032}
24033
24034// AsAzureSQLTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
24035func (ctd CouchbaseTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
24036	return nil, false
24037}
24038
24039// AsAzureTableDataset is the BasicDataset implementation for CouchbaseTableDataset.
24040func (ctd CouchbaseTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
24041	return nil, false
24042}
24043
24044// AsAzureBlobDataset is the BasicDataset implementation for CouchbaseTableDataset.
24045func (ctd CouchbaseTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
24046	return nil, false
24047}
24048
24049// AsAmazonS3Dataset is the BasicDataset implementation for CouchbaseTableDataset.
24050func (ctd CouchbaseTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
24051	return nil, false
24052}
24053
24054// AsDataset is the BasicDataset implementation for CouchbaseTableDataset.
24055func (ctd CouchbaseTableDataset) AsDataset() (*Dataset, bool) {
24056	return nil, false
24057}
24058
24059// AsBasicDataset is the BasicDataset implementation for CouchbaseTableDataset.
24060func (ctd CouchbaseTableDataset) AsBasicDataset() (BasicDataset, bool) {
24061	return &ctd, true
24062}
24063
24064// CreateRunResponse response body with a run identifier.
24065type CreateRunResponse struct {
24066	autorest.Response `json:"-"`
24067	// RunID - Identifier of a run.
24068	RunID *string `json:"runId,omitempty"`
24069}
24070
24071// CustomActivity custom activity type.
24072type CustomActivity struct {
24073	// CustomActivityTypeProperties - Custom activity properties.
24074	*CustomActivityTypeProperties `json:"typeProperties,omitempty"`
24075	// LinkedServiceName - Linked service reference.
24076	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
24077	// Policy - Activity policy.
24078	Policy *ActivityPolicy `json:"policy,omitempty"`
24079	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
24080	AdditionalProperties map[string]interface{} `json:""`
24081	// Name - Activity name.
24082	Name *string `json:"name,omitempty"`
24083	// Description - Activity description.
24084	Description *string `json:"description,omitempty"`
24085	// DependsOn - Activity depends on condition.
24086	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
24087	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
24088	Type TypeBasicActivity `json:"type,omitempty"`
24089}
24090
24091// MarshalJSON is the custom marshaler for CustomActivity.
24092func (ca CustomActivity) MarshalJSON() ([]byte, error) {
24093	ca.Type = TypeCustom
24094	objectMap := make(map[string]interface{})
24095	if ca.CustomActivityTypeProperties != nil {
24096		objectMap["typeProperties"] = ca.CustomActivityTypeProperties
24097	}
24098	if ca.LinkedServiceName != nil {
24099		objectMap["linkedServiceName"] = ca.LinkedServiceName
24100	}
24101	if ca.Policy != nil {
24102		objectMap["policy"] = ca.Policy
24103	}
24104	if ca.Name != nil {
24105		objectMap["name"] = ca.Name
24106	}
24107	if ca.Description != nil {
24108		objectMap["description"] = ca.Description
24109	}
24110	if ca.DependsOn != nil {
24111		objectMap["dependsOn"] = ca.DependsOn
24112	}
24113	if ca.Type != "" {
24114		objectMap["type"] = ca.Type
24115	}
24116	for k, v := range ca.AdditionalProperties {
24117		objectMap[k] = v
24118	}
24119	return json.Marshal(objectMap)
24120}
24121
24122// AsDatabricksNotebookActivity is the BasicActivity implementation for CustomActivity.
24123func (ca CustomActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
24124	return nil, false
24125}
24126
24127// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for CustomActivity.
24128func (ca CustomActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
24129	return nil, false
24130}
24131
24132// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for CustomActivity.
24133func (ca CustomActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
24134	return nil, false
24135}
24136
24137// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for CustomActivity.
24138func (ca CustomActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
24139	return nil, false
24140}
24141
24142// AsGetMetadataActivity is the BasicActivity implementation for CustomActivity.
24143func (ca CustomActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
24144	return nil, false
24145}
24146
24147// AsWebActivity is the BasicActivity implementation for CustomActivity.
24148func (ca CustomActivity) AsWebActivity() (*WebActivity, bool) {
24149	return nil, false
24150}
24151
24152// AsLookupActivity is the BasicActivity implementation for CustomActivity.
24153func (ca CustomActivity) AsLookupActivity() (*LookupActivity, bool) {
24154	return nil, false
24155}
24156
24157// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for CustomActivity.
24158func (ca CustomActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
24159	return nil, false
24160}
24161
24162// AsCustomActivity is the BasicActivity implementation for CustomActivity.
24163func (ca CustomActivity) AsCustomActivity() (*CustomActivity, bool) {
24164	return &ca, true
24165}
24166
24167// AsExecuteSSISPackageActivity is the BasicActivity implementation for CustomActivity.
24168func (ca CustomActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
24169	return nil, false
24170}
24171
24172// AsHDInsightSparkActivity is the BasicActivity implementation for CustomActivity.
24173func (ca CustomActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
24174	return nil, false
24175}
24176
24177// AsHDInsightStreamingActivity is the BasicActivity implementation for CustomActivity.
24178func (ca CustomActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
24179	return nil, false
24180}
24181
24182// AsHDInsightMapReduceActivity is the BasicActivity implementation for CustomActivity.
24183func (ca CustomActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
24184	return nil, false
24185}
24186
24187// AsHDInsightPigActivity is the BasicActivity implementation for CustomActivity.
24188func (ca CustomActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
24189	return nil, false
24190}
24191
24192// AsHDInsightHiveActivity is the BasicActivity implementation for CustomActivity.
24193func (ca CustomActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
24194	return nil, false
24195}
24196
24197// AsCopyActivity is the BasicActivity implementation for CustomActivity.
24198func (ca CustomActivity) AsCopyActivity() (*CopyActivity, bool) {
24199	return nil, false
24200}
24201
24202// AsExecutionActivity is the BasicActivity implementation for CustomActivity.
24203func (ca CustomActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
24204	return nil, false
24205}
24206
24207// AsBasicExecutionActivity is the BasicActivity implementation for CustomActivity.
24208func (ca CustomActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
24209	return &ca, true
24210}
24211
24212// AsFilterActivity is the BasicActivity implementation for CustomActivity.
24213func (ca CustomActivity) AsFilterActivity() (*FilterActivity, bool) {
24214	return nil, false
24215}
24216
24217// AsUntilActivity is the BasicActivity implementation for CustomActivity.
24218func (ca CustomActivity) AsUntilActivity() (*UntilActivity, bool) {
24219	return nil, false
24220}
24221
24222// AsWaitActivity is the BasicActivity implementation for CustomActivity.
24223func (ca CustomActivity) AsWaitActivity() (*WaitActivity, bool) {
24224	return nil, false
24225}
24226
24227// AsForEachActivity is the BasicActivity implementation for CustomActivity.
24228func (ca CustomActivity) AsForEachActivity() (*ForEachActivity, bool) {
24229	return nil, false
24230}
24231
24232// AsIfConditionActivity is the BasicActivity implementation for CustomActivity.
24233func (ca CustomActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
24234	return nil, false
24235}
24236
24237// AsExecutePipelineActivity is the BasicActivity implementation for CustomActivity.
24238func (ca CustomActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
24239	return nil, false
24240}
24241
24242// AsControlActivity is the BasicActivity implementation for CustomActivity.
24243func (ca CustomActivity) AsControlActivity() (*ControlActivity, bool) {
24244	return nil, false
24245}
24246
24247// AsBasicControlActivity is the BasicActivity implementation for CustomActivity.
24248func (ca CustomActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
24249	return nil, false
24250}
24251
24252// AsActivity is the BasicActivity implementation for CustomActivity.
24253func (ca CustomActivity) AsActivity() (*Activity, bool) {
24254	return nil, false
24255}
24256
24257// AsBasicActivity is the BasicActivity implementation for CustomActivity.
24258func (ca CustomActivity) AsBasicActivity() (BasicActivity, bool) {
24259	return &ca, true
24260}
24261
24262// UnmarshalJSON is the custom unmarshaler for CustomActivity struct.
24263func (ca *CustomActivity) UnmarshalJSON(body []byte) error {
24264	var m map[string]*json.RawMessage
24265	err := json.Unmarshal(body, &m)
24266	if err != nil {
24267		return err
24268	}
24269	for k, v := range m {
24270		switch k {
24271		case "typeProperties":
24272			if v != nil {
24273				var customActivityTypeProperties CustomActivityTypeProperties
24274				err = json.Unmarshal(*v, &customActivityTypeProperties)
24275				if err != nil {
24276					return err
24277				}
24278				ca.CustomActivityTypeProperties = &customActivityTypeProperties
24279			}
24280		case "linkedServiceName":
24281			if v != nil {
24282				var linkedServiceName LinkedServiceReference
24283				err = json.Unmarshal(*v, &linkedServiceName)
24284				if err != nil {
24285					return err
24286				}
24287				ca.LinkedServiceName = &linkedServiceName
24288			}
24289		case "policy":
24290			if v != nil {
24291				var policy ActivityPolicy
24292				err = json.Unmarshal(*v, &policy)
24293				if err != nil {
24294					return err
24295				}
24296				ca.Policy = &policy
24297			}
24298		default:
24299			if v != nil {
24300				var additionalProperties interface{}
24301				err = json.Unmarshal(*v, &additionalProperties)
24302				if err != nil {
24303					return err
24304				}
24305				if ca.AdditionalProperties == nil {
24306					ca.AdditionalProperties = make(map[string]interface{})
24307				}
24308				ca.AdditionalProperties[k] = additionalProperties
24309			}
24310		case "name":
24311			if v != nil {
24312				var name string
24313				err = json.Unmarshal(*v, &name)
24314				if err != nil {
24315					return err
24316				}
24317				ca.Name = &name
24318			}
24319		case "description":
24320			if v != nil {
24321				var description string
24322				err = json.Unmarshal(*v, &description)
24323				if err != nil {
24324					return err
24325				}
24326				ca.Description = &description
24327			}
24328		case "dependsOn":
24329			if v != nil {
24330				var dependsOn []ActivityDependency
24331				err = json.Unmarshal(*v, &dependsOn)
24332				if err != nil {
24333					return err
24334				}
24335				ca.DependsOn = &dependsOn
24336			}
24337		case "type":
24338			if v != nil {
24339				var typeVar TypeBasicActivity
24340				err = json.Unmarshal(*v, &typeVar)
24341				if err != nil {
24342					return err
24343				}
24344				ca.Type = typeVar
24345			}
24346		}
24347	}
24348
24349	return nil
24350}
24351
24352// CustomActivityReferenceObject reference objects for custom activity
24353type CustomActivityReferenceObject struct {
24354	// LinkedServices - Linked service references.
24355	LinkedServices *[]LinkedServiceReference `json:"linkedServices,omitempty"`
24356	// Datasets - Dataset references.
24357	Datasets *[]DatasetReference `json:"datasets,omitempty"`
24358}
24359
24360// CustomActivityTypeProperties custom activity properties.
24361type CustomActivityTypeProperties struct {
24362	// Command - Command for custom activity Type: string (or Expression with resultType string).
24363	Command interface{} `json:"command,omitempty"`
24364	// ResourceLinkedService - Resource linked service reference.
24365	ResourceLinkedService *LinkedServiceReference `json:"resourceLinkedService,omitempty"`
24366	// FolderPath - Folder path for resource files Type: string (or Expression with resultType string).
24367	FolderPath interface{} `json:"folderPath,omitempty"`
24368	// ReferenceObjects - Reference objects
24369	ReferenceObjects *CustomActivityReferenceObject `json:"referenceObjects,omitempty"`
24370	// ExtendedProperties - User defined property bag. There is no restriction on the keys or values that can be used. The user specified custom activity has the full responsibility to consume and interpret the content defined.
24371	ExtendedProperties map[string]interface{} `json:"extendedProperties"`
24372}
24373
24374// MarshalJSON is the custom marshaler for CustomActivityTypeProperties.
24375func (catp CustomActivityTypeProperties) MarshalJSON() ([]byte, error) {
24376	objectMap := make(map[string]interface{})
24377	objectMap["command"] = catp.Command
24378	if catp.ResourceLinkedService != nil {
24379		objectMap["resourceLinkedService"] = catp.ResourceLinkedService
24380	}
24381	objectMap["folderPath"] = catp.FolderPath
24382	if catp.ReferenceObjects != nil {
24383		objectMap["referenceObjects"] = catp.ReferenceObjects
24384	}
24385	if catp.ExtendedProperties != nil {
24386		objectMap["extendedProperties"] = catp.ExtendedProperties
24387	}
24388	return json.Marshal(objectMap)
24389}
24390
24391// CustomDataset the custom dataset.
24392type CustomDataset struct {
24393	// TypeProperties - Custom dataset properties.
24394	TypeProperties interface{} `json:"typeProperties,omitempty"`
24395	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
24396	AdditionalProperties map[string]interface{} `json:""`
24397	// Description - Dataset description.
24398	Description *string `json:"description,omitempty"`
24399	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
24400	Structure interface{} `json:"structure,omitempty"`
24401	// LinkedServiceName - Linked service reference.
24402	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
24403	// Parameters - Parameters for dataset.
24404	Parameters map[string]*ParameterSpecification `json:"parameters"`
24405	// Annotations - List of tags that can be used for describing the Dataset.
24406	Annotations *[]interface{} `json:"annotations,omitempty"`
24407	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
24408	Type TypeBasicDataset `json:"type,omitempty"`
24409}
24410
24411// MarshalJSON is the custom marshaler for CustomDataset.
24412func (cd CustomDataset) MarshalJSON() ([]byte, error) {
24413	cd.Type = TypeCustomDataset
24414	objectMap := make(map[string]interface{})
24415	objectMap["typeProperties"] = cd.TypeProperties
24416	if cd.Description != nil {
24417		objectMap["description"] = cd.Description
24418	}
24419	objectMap["structure"] = cd.Structure
24420	if cd.LinkedServiceName != nil {
24421		objectMap["linkedServiceName"] = cd.LinkedServiceName
24422	}
24423	if cd.Parameters != nil {
24424		objectMap["parameters"] = cd.Parameters
24425	}
24426	if cd.Annotations != nil {
24427		objectMap["annotations"] = cd.Annotations
24428	}
24429	if cd.Type != "" {
24430		objectMap["type"] = cd.Type
24431	}
24432	for k, v := range cd.AdditionalProperties {
24433		objectMap[k] = v
24434	}
24435	return json.Marshal(objectMap)
24436}
24437
24438// AsResponsysObjectDataset is the BasicDataset implementation for CustomDataset.
24439func (cd CustomDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
24440	return nil, false
24441}
24442
24443// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for CustomDataset.
24444func (cd CustomDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
24445	return nil, false
24446}
24447
24448// AsVerticaTableDataset is the BasicDataset implementation for CustomDataset.
24449func (cd CustomDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
24450	return nil, false
24451}
24452
24453// AsNetezzaTableDataset is the BasicDataset implementation for CustomDataset.
24454func (cd CustomDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
24455	return nil, false
24456}
24457
24458// AsZohoObjectDataset is the BasicDataset implementation for CustomDataset.
24459func (cd CustomDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
24460	return nil, false
24461}
24462
24463// AsXeroObjectDataset is the BasicDataset implementation for CustomDataset.
24464func (cd CustomDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
24465	return nil, false
24466}
24467
24468// AsSquareObjectDataset is the BasicDataset implementation for CustomDataset.
24469func (cd CustomDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
24470	return nil, false
24471}
24472
24473// AsSparkObjectDataset is the BasicDataset implementation for CustomDataset.
24474func (cd CustomDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
24475	return nil, false
24476}
24477
24478// AsShopifyObjectDataset is the BasicDataset implementation for CustomDataset.
24479func (cd CustomDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
24480	return nil, false
24481}
24482
24483// AsServiceNowObjectDataset is the BasicDataset implementation for CustomDataset.
24484func (cd CustomDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
24485	return nil, false
24486}
24487
24488// AsQuickBooksObjectDataset is the BasicDataset implementation for CustomDataset.
24489func (cd CustomDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
24490	return nil, false
24491}
24492
24493// AsPrestoObjectDataset is the BasicDataset implementation for CustomDataset.
24494func (cd CustomDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
24495	return nil, false
24496}
24497
24498// AsPhoenixObjectDataset is the BasicDataset implementation for CustomDataset.
24499func (cd CustomDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
24500	return nil, false
24501}
24502
24503// AsPaypalObjectDataset is the BasicDataset implementation for CustomDataset.
24504func (cd CustomDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
24505	return nil, false
24506}
24507
24508// AsMarketoObjectDataset is the BasicDataset implementation for CustomDataset.
24509func (cd CustomDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
24510	return nil, false
24511}
24512
24513// AsMariaDBTableDataset is the BasicDataset implementation for CustomDataset.
24514func (cd CustomDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
24515	return nil, false
24516}
24517
24518// AsMagentoObjectDataset is the BasicDataset implementation for CustomDataset.
24519func (cd CustomDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
24520	return nil, false
24521}
24522
24523// AsJiraObjectDataset is the BasicDataset implementation for CustomDataset.
24524func (cd CustomDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
24525	return nil, false
24526}
24527
24528// AsImpalaObjectDataset is the BasicDataset implementation for CustomDataset.
24529func (cd CustomDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
24530	return nil, false
24531}
24532
24533// AsHubspotObjectDataset is the BasicDataset implementation for CustomDataset.
24534func (cd CustomDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
24535	return nil, false
24536}
24537
24538// AsHiveObjectDataset is the BasicDataset implementation for CustomDataset.
24539func (cd CustomDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
24540	return nil, false
24541}
24542
24543// AsHBaseObjectDataset is the BasicDataset implementation for CustomDataset.
24544func (cd CustomDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
24545	return nil, false
24546}
24547
24548// AsGreenplumTableDataset is the BasicDataset implementation for CustomDataset.
24549func (cd CustomDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
24550	return nil, false
24551}
24552
24553// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for CustomDataset.
24554func (cd CustomDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
24555	return nil, false
24556}
24557
24558// AsEloquaObjectDataset is the BasicDataset implementation for CustomDataset.
24559func (cd CustomDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
24560	return nil, false
24561}
24562
24563// AsDrillTableDataset is the BasicDataset implementation for CustomDataset.
24564func (cd CustomDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
24565	return nil, false
24566}
24567
24568// AsCouchbaseTableDataset is the BasicDataset implementation for CustomDataset.
24569func (cd CustomDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
24570	return nil, false
24571}
24572
24573// AsConcurObjectDataset is the BasicDataset implementation for CustomDataset.
24574func (cd CustomDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
24575	return nil, false
24576}
24577
24578// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for CustomDataset.
24579func (cd CustomDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
24580	return nil, false
24581}
24582
24583// AsAmazonMWSObjectDataset is the BasicDataset implementation for CustomDataset.
24584func (cd CustomDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
24585	return nil, false
24586}
24587
24588// AsHTTPDataset is the BasicDataset implementation for CustomDataset.
24589func (cd CustomDataset) AsHTTPDataset() (*HTTPDataset, bool) {
24590	return nil, false
24591}
24592
24593// AsAzureSearchIndexDataset is the BasicDataset implementation for CustomDataset.
24594func (cd CustomDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
24595	return nil, false
24596}
24597
24598// AsWebTableDataset is the BasicDataset implementation for CustomDataset.
24599func (cd CustomDataset) AsWebTableDataset() (*WebTableDataset, bool) {
24600	return nil, false
24601}
24602
24603// AsSQLServerTableDataset is the BasicDataset implementation for CustomDataset.
24604func (cd CustomDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
24605	return nil, false
24606}
24607
24608// AsSapEccResourceDataset is the BasicDataset implementation for CustomDataset.
24609func (cd CustomDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
24610	return nil, false
24611}
24612
24613// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for CustomDataset.
24614func (cd CustomDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
24615	return nil, false
24616}
24617
24618// AsSalesforceObjectDataset is the BasicDataset implementation for CustomDataset.
24619func (cd CustomDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
24620	return nil, false
24621}
24622
24623// AsRelationalTableDataset is the BasicDataset implementation for CustomDataset.
24624func (cd CustomDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
24625	return nil, false
24626}
24627
24628// AsAzureMySQLTableDataset is the BasicDataset implementation for CustomDataset.
24629func (cd CustomDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
24630	return nil, false
24631}
24632
24633// AsOracleTableDataset is the BasicDataset implementation for CustomDataset.
24634func (cd CustomDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
24635	return nil, false
24636}
24637
24638// AsODataResourceDataset is the BasicDataset implementation for CustomDataset.
24639func (cd CustomDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
24640	return nil, false
24641}
24642
24643// AsMongoDbCollectionDataset is the BasicDataset implementation for CustomDataset.
24644func (cd CustomDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
24645	return nil, false
24646}
24647
24648// AsFileShareDataset is the BasicDataset implementation for CustomDataset.
24649func (cd CustomDataset) AsFileShareDataset() (*FileShareDataset, bool) {
24650	return nil, false
24651}
24652
24653// AsAzureDataLakeStoreDataset is the BasicDataset implementation for CustomDataset.
24654func (cd CustomDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
24655	return nil, false
24656}
24657
24658// AsDynamicsEntityDataset is the BasicDataset implementation for CustomDataset.
24659func (cd CustomDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
24660	return nil, false
24661}
24662
24663// AsDocumentDbCollectionDataset is the BasicDataset implementation for CustomDataset.
24664func (cd CustomDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
24665	return nil, false
24666}
24667
24668// AsCustomDataset is the BasicDataset implementation for CustomDataset.
24669func (cd CustomDataset) AsCustomDataset() (*CustomDataset, bool) {
24670	return &cd, true
24671}
24672
24673// AsCassandraTableDataset is the BasicDataset implementation for CustomDataset.
24674func (cd CustomDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
24675	return nil, false
24676}
24677
24678// AsAzureSQLDWTableDataset is the BasicDataset implementation for CustomDataset.
24679func (cd CustomDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
24680	return nil, false
24681}
24682
24683// AsAzureSQLTableDataset is the BasicDataset implementation for CustomDataset.
24684func (cd CustomDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
24685	return nil, false
24686}
24687
24688// AsAzureTableDataset is the BasicDataset implementation for CustomDataset.
24689func (cd CustomDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
24690	return nil, false
24691}
24692
24693// AsAzureBlobDataset is the BasicDataset implementation for CustomDataset.
24694func (cd CustomDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
24695	return nil, false
24696}
24697
24698// AsAmazonS3Dataset is the BasicDataset implementation for CustomDataset.
24699func (cd CustomDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
24700	return nil, false
24701}
24702
24703// AsDataset is the BasicDataset implementation for CustomDataset.
24704func (cd CustomDataset) AsDataset() (*Dataset, bool) {
24705	return nil, false
24706}
24707
24708// AsBasicDataset is the BasicDataset implementation for CustomDataset.
24709func (cd CustomDataset) AsBasicDataset() (BasicDataset, bool) {
24710	return &cd, true
24711}
24712
24713// CustomDataSourceLinkedService custom linked service.
24714type CustomDataSourceLinkedService struct {
24715	// TypeProperties - Custom linked service properties.
24716	TypeProperties interface{} `json:"typeProperties,omitempty"`
24717	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
24718	AdditionalProperties map[string]interface{} `json:""`
24719	// ConnectVia - The integration runtime reference.
24720	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
24721	// Description - Linked service description.
24722	Description *string `json:"description,omitempty"`
24723	// Parameters - Parameters for linked service.
24724	Parameters map[string]*ParameterSpecification `json:"parameters"`
24725	// Annotations - List of tags that can be used for describing the Dataset.
24726	Annotations *[]interface{} `json:"annotations,omitempty"`
24727	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
24728	Type TypeBasicLinkedService `json:"type,omitempty"`
24729}
24730
24731// MarshalJSON is the custom marshaler for CustomDataSourceLinkedService.
24732func (cdsls CustomDataSourceLinkedService) MarshalJSON() ([]byte, error) {
24733	cdsls.Type = TypeCustomDataSource
24734	objectMap := make(map[string]interface{})
24735	objectMap["typeProperties"] = cdsls.TypeProperties
24736	if cdsls.ConnectVia != nil {
24737		objectMap["connectVia"] = cdsls.ConnectVia
24738	}
24739	if cdsls.Description != nil {
24740		objectMap["description"] = cdsls.Description
24741	}
24742	if cdsls.Parameters != nil {
24743		objectMap["parameters"] = cdsls.Parameters
24744	}
24745	if cdsls.Annotations != nil {
24746		objectMap["annotations"] = cdsls.Annotations
24747	}
24748	if cdsls.Type != "" {
24749		objectMap["type"] = cdsls.Type
24750	}
24751	for k, v := range cdsls.AdditionalProperties {
24752		objectMap[k] = v
24753	}
24754	return json.Marshal(objectMap)
24755}
24756
24757// AsResponsysLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24758func (cdsls CustomDataSourceLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
24759	return nil, false
24760}
24761
24762// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24763func (cdsls CustomDataSourceLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
24764	return nil, false
24765}
24766
24767// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24768func (cdsls CustomDataSourceLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
24769	return nil, false
24770}
24771
24772// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24773func (cdsls CustomDataSourceLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
24774	return nil, false
24775}
24776
24777// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24778func (cdsls CustomDataSourceLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
24779	return nil, false
24780}
24781
24782// AsNetezzaLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24783func (cdsls CustomDataSourceLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
24784	return nil, false
24785}
24786
24787// AsVerticaLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24788func (cdsls CustomDataSourceLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
24789	return nil, false
24790}
24791
24792// AsZohoLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24793func (cdsls CustomDataSourceLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
24794	return nil, false
24795}
24796
24797// AsXeroLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24798func (cdsls CustomDataSourceLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
24799	return nil, false
24800}
24801
24802// AsSquareLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24803func (cdsls CustomDataSourceLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
24804	return nil, false
24805}
24806
24807// AsSparkLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24808func (cdsls CustomDataSourceLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
24809	return nil, false
24810}
24811
24812// AsShopifyLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24813func (cdsls CustomDataSourceLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
24814	return nil, false
24815}
24816
24817// AsServiceNowLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24818func (cdsls CustomDataSourceLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
24819	return nil, false
24820}
24821
24822// AsQuickBooksLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24823func (cdsls CustomDataSourceLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
24824	return nil, false
24825}
24826
24827// AsPrestoLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24828func (cdsls CustomDataSourceLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
24829	return nil, false
24830}
24831
24832// AsPhoenixLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24833func (cdsls CustomDataSourceLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
24834	return nil, false
24835}
24836
24837// AsPaypalLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24838func (cdsls CustomDataSourceLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
24839	return nil, false
24840}
24841
24842// AsMarketoLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24843func (cdsls CustomDataSourceLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
24844	return nil, false
24845}
24846
24847// AsMariaDBLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24848func (cdsls CustomDataSourceLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
24849	return nil, false
24850}
24851
24852// AsMagentoLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24853func (cdsls CustomDataSourceLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
24854	return nil, false
24855}
24856
24857// AsJiraLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24858func (cdsls CustomDataSourceLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
24859	return nil, false
24860}
24861
24862// AsImpalaLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24863func (cdsls CustomDataSourceLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
24864	return nil, false
24865}
24866
24867// AsHubspotLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24868func (cdsls CustomDataSourceLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
24869	return nil, false
24870}
24871
24872// AsHiveLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24873func (cdsls CustomDataSourceLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
24874	return nil, false
24875}
24876
24877// AsHBaseLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24878func (cdsls CustomDataSourceLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
24879	return nil, false
24880}
24881
24882// AsGreenplumLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24883func (cdsls CustomDataSourceLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
24884	return nil, false
24885}
24886
24887// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24888func (cdsls CustomDataSourceLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
24889	return nil, false
24890}
24891
24892// AsEloquaLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24893func (cdsls CustomDataSourceLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
24894	return nil, false
24895}
24896
24897// AsDrillLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24898func (cdsls CustomDataSourceLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
24899	return nil, false
24900}
24901
24902// AsCouchbaseLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24903func (cdsls CustomDataSourceLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
24904	return nil, false
24905}
24906
24907// AsConcurLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24908func (cdsls CustomDataSourceLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
24909	return nil, false
24910}
24911
24912// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24913func (cdsls CustomDataSourceLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
24914	return nil, false
24915}
24916
24917// AsAmazonMWSLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24918func (cdsls CustomDataSourceLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
24919	return nil, false
24920}
24921
24922// AsSapHanaLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24923func (cdsls CustomDataSourceLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
24924	return nil, false
24925}
24926
24927// AsSapBWLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24928func (cdsls CustomDataSourceLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
24929	return nil, false
24930}
24931
24932// AsSftpServerLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24933func (cdsls CustomDataSourceLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
24934	return nil, false
24935}
24936
24937// AsFtpServerLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24938func (cdsls CustomDataSourceLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
24939	return nil, false
24940}
24941
24942// AsHTTPLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24943func (cdsls CustomDataSourceLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
24944	return nil, false
24945}
24946
24947// AsAzureSearchLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24948func (cdsls CustomDataSourceLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
24949	return nil, false
24950}
24951
24952// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24953func (cdsls CustomDataSourceLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
24954	return &cdsls, true
24955}
24956
24957// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24958func (cdsls CustomDataSourceLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
24959	return nil, false
24960}
24961
24962// AsAmazonS3LinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24963func (cdsls CustomDataSourceLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
24964	return nil, false
24965}
24966
24967// AsSapEccLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24968func (cdsls CustomDataSourceLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
24969	return nil, false
24970}
24971
24972// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24973func (cdsls CustomDataSourceLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
24974	return nil, false
24975}
24976
24977// AsSalesforceLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24978func (cdsls CustomDataSourceLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
24979	return nil, false
24980}
24981
24982// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24983func (cdsls CustomDataSourceLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
24984	return nil, false
24985}
24986
24987// AsMongoDbLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24988func (cdsls CustomDataSourceLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
24989	return nil, false
24990}
24991
24992// AsCassandraLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24993func (cdsls CustomDataSourceLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
24994	return nil, false
24995}
24996
24997// AsWebLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
24998func (cdsls CustomDataSourceLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
24999	return nil, false
25000}
25001
25002// AsODataLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25003func (cdsls CustomDataSourceLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
25004	return nil, false
25005}
25006
25007// AsHdfsLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25008func (cdsls CustomDataSourceLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
25009	return nil, false
25010}
25011
25012// AsOdbcLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25013func (cdsls CustomDataSourceLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
25014	return nil, false
25015}
25016
25017// AsAzureMLLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25018func (cdsls CustomDataSourceLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
25019	return nil, false
25020}
25021
25022// AsTeradataLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25023func (cdsls CustomDataSourceLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
25024	return nil, false
25025}
25026
25027// AsDb2LinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25028func (cdsls CustomDataSourceLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
25029	return nil, false
25030}
25031
25032// AsSybaseLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25033func (cdsls CustomDataSourceLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
25034	return nil, false
25035}
25036
25037// AsPostgreSQLLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25038func (cdsls CustomDataSourceLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
25039	return nil, false
25040}
25041
25042// AsMySQLLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25043func (cdsls CustomDataSourceLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
25044	return nil, false
25045}
25046
25047// AsAzureMySQLLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25048func (cdsls CustomDataSourceLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
25049	return nil, false
25050}
25051
25052// AsOracleLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25053func (cdsls CustomDataSourceLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
25054	return nil, false
25055}
25056
25057// AsFileServerLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25058func (cdsls CustomDataSourceLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
25059	return nil, false
25060}
25061
25062// AsHDInsightLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25063func (cdsls CustomDataSourceLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
25064	return nil, false
25065}
25066
25067// AsDynamicsLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25068func (cdsls CustomDataSourceLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
25069	return nil, false
25070}
25071
25072// AsCosmosDbLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25073func (cdsls CustomDataSourceLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
25074	return nil, false
25075}
25076
25077// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25078func (cdsls CustomDataSourceLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
25079	return nil, false
25080}
25081
25082// AsAzureBatchLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25083func (cdsls CustomDataSourceLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
25084	return nil, false
25085}
25086
25087// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25088func (cdsls CustomDataSourceLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
25089	return nil, false
25090}
25091
25092// AsSQLServerLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25093func (cdsls CustomDataSourceLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
25094	return nil, false
25095}
25096
25097// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25098func (cdsls CustomDataSourceLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
25099	return nil, false
25100}
25101
25102// AsAzureStorageLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25103func (cdsls CustomDataSourceLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
25104	return nil, false
25105}
25106
25107// AsLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25108func (cdsls CustomDataSourceLinkedService) AsLinkedService() (*LinkedService, bool) {
25109	return nil, false
25110}
25111
25112// AsBasicLinkedService is the BasicLinkedService implementation for CustomDataSourceLinkedService.
25113func (cdsls CustomDataSourceLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
25114	return &cdsls, true
25115}
25116
25117// DatabricksNotebookActivity databricksNotebook activity.
25118type DatabricksNotebookActivity struct {
25119	// DatabricksNotebookActivityTypeProperties - Databricks Notebook activity properties.
25120	*DatabricksNotebookActivityTypeProperties `json:"typeProperties,omitempty"`
25121	// LinkedServiceName - Linked service reference.
25122	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
25123	// Policy - Activity policy.
25124	Policy *ActivityPolicy `json:"policy,omitempty"`
25125	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
25126	AdditionalProperties map[string]interface{} `json:""`
25127	// Name - Activity name.
25128	Name *string `json:"name,omitempty"`
25129	// Description - Activity description.
25130	Description *string `json:"description,omitempty"`
25131	// DependsOn - Activity depends on condition.
25132	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
25133	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
25134	Type TypeBasicActivity `json:"type,omitempty"`
25135}
25136
25137// MarshalJSON is the custom marshaler for DatabricksNotebookActivity.
25138func (dna DatabricksNotebookActivity) MarshalJSON() ([]byte, error) {
25139	dna.Type = TypeDatabricksNotebook
25140	objectMap := make(map[string]interface{})
25141	if dna.DatabricksNotebookActivityTypeProperties != nil {
25142		objectMap["typeProperties"] = dna.DatabricksNotebookActivityTypeProperties
25143	}
25144	if dna.LinkedServiceName != nil {
25145		objectMap["linkedServiceName"] = dna.LinkedServiceName
25146	}
25147	if dna.Policy != nil {
25148		objectMap["policy"] = dna.Policy
25149	}
25150	if dna.Name != nil {
25151		objectMap["name"] = dna.Name
25152	}
25153	if dna.Description != nil {
25154		objectMap["description"] = dna.Description
25155	}
25156	if dna.DependsOn != nil {
25157		objectMap["dependsOn"] = dna.DependsOn
25158	}
25159	if dna.Type != "" {
25160		objectMap["type"] = dna.Type
25161	}
25162	for k, v := range dna.AdditionalProperties {
25163		objectMap[k] = v
25164	}
25165	return json.Marshal(objectMap)
25166}
25167
25168// AsDatabricksNotebookActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25169func (dna DatabricksNotebookActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
25170	return &dna, true
25171}
25172
25173// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25174func (dna DatabricksNotebookActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
25175	return nil, false
25176}
25177
25178// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25179func (dna DatabricksNotebookActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
25180	return nil, false
25181}
25182
25183// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25184func (dna DatabricksNotebookActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
25185	return nil, false
25186}
25187
25188// AsGetMetadataActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25189func (dna DatabricksNotebookActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
25190	return nil, false
25191}
25192
25193// AsWebActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25194func (dna DatabricksNotebookActivity) AsWebActivity() (*WebActivity, bool) {
25195	return nil, false
25196}
25197
25198// AsLookupActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25199func (dna DatabricksNotebookActivity) AsLookupActivity() (*LookupActivity, bool) {
25200	return nil, false
25201}
25202
25203// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25204func (dna DatabricksNotebookActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
25205	return nil, false
25206}
25207
25208// AsCustomActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25209func (dna DatabricksNotebookActivity) AsCustomActivity() (*CustomActivity, bool) {
25210	return nil, false
25211}
25212
25213// AsExecuteSSISPackageActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25214func (dna DatabricksNotebookActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
25215	return nil, false
25216}
25217
25218// AsHDInsightSparkActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25219func (dna DatabricksNotebookActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
25220	return nil, false
25221}
25222
25223// AsHDInsightStreamingActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25224func (dna DatabricksNotebookActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
25225	return nil, false
25226}
25227
25228// AsHDInsightMapReduceActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25229func (dna DatabricksNotebookActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
25230	return nil, false
25231}
25232
25233// AsHDInsightPigActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25234func (dna DatabricksNotebookActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
25235	return nil, false
25236}
25237
25238// AsHDInsightHiveActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25239func (dna DatabricksNotebookActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
25240	return nil, false
25241}
25242
25243// AsCopyActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25244func (dna DatabricksNotebookActivity) AsCopyActivity() (*CopyActivity, bool) {
25245	return nil, false
25246}
25247
25248// AsExecutionActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25249func (dna DatabricksNotebookActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
25250	return nil, false
25251}
25252
25253// AsBasicExecutionActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25254func (dna DatabricksNotebookActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
25255	return &dna, true
25256}
25257
25258// AsFilterActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25259func (dna DatabricksNotebookActivity) AsFilterActivity() (*FilterActivity, bool) {
25260	return nil, false
25261}
25262
25263// AsUntilActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25264func (dna DatabricksNotebookActivity) AsUntilActivity() (*UntilActivity, bool) {
25265	return nil, false
25266}
25267
25268// AsWaitActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25269func (dna DatabricksNotebookActivity) AsWaitActivity() (*WaitActivity, bool) {
25270	return nil, false
25271}
25272
25273// AsForEachActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25274func (dna DatabricksNotebookActivity) AsForEachActivity() (*ForEachActivity, bool) {
25275	return nil, false
25276}
25277
25278// AsIfConditionActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25279func (dna DatabricksNotebookActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
25280	return nil, false
25281}
25282
25283// AsExecutePipelineActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25284func (dna DatabricksNotebookActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
25285	return nil, false
25286}
25287
25288// AsControlActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25289func (dna DatabricksNotebookActivity) AsControlActivity() (*ControlActivity, bool) {
25290	return nil, false
25291}
25292
25293// AsBasicControlActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25294func (dna DatabricksNotebookActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
25295	return nil, false
25296}
25297
25298// AsActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25299func (dna DatabricksNotebookActivity) AsActivity() (*Activity, bool) {
25300	return nil, false
25301}
25302
25303// AsBasicActivity is the BasicActivity implementation for DatabricksNotebookActivity.
25304func (dna DatabricksNotebookActivity) AsBasicActivity() (BasicActivity, bool) {
25305	return &dna, true
25306}
25307
25308// UnmarshalJSON is the custom unmarshaler for DatabricksNotebookActivity struct.
25309func (dna *DatabricksNotebookActivity) UnmarshalJSON(body []byte) error {
25310	var m map[string]*json.RawMessage
25311	err := json.Unmarshal(body, &m)
25312	if err != nil {
25313		return err
25314	}
25315	for k, v := range m {
25316		switch k {
25317		case "typeProperties":
25318			if v != nil {
25319				var databricksNotebookActivityTypeProperties DatabricksNotebookActivityTypeProperties
25320				err = json.Unmarshal(*v, &databricksNotebookActivityTypeProperties)
25321				if err != nil {
25322					return err
25323				}
25324				dna.DatabricksNotebookActivityTypeProperties = &databricksNotebookActivityTypeProperties
25325			}
25326		case "linkedServiceName":
25327			if v != nil {
25328				var linkedServiceName LinkedServiceReference
25329				err = json.Unmarshal(*v, &linkedServiceName)
25330				if err != nil {
25331					return err
25332				}
25333				dna.LinkedServiceName = &linkedServiceName
25334			}
25335		case "policy":
25336			if v != nil {
25337				var policy ActivityPolicy
25338				err = json.Unmarshal(*v, &policy)
25339				if err != nil {
25340					return err
25341				}
25342				dna.Policy = &policy
25343			}
25344		default:
25345			if v != nil {
25346				var additionalProperties interface{}
25347				err = json.Unmarshal(*v, &additionalProperties)
25348				if err != nil {
25349					return err
25350				}
25351				if dna.AdditionalProperties == nil {
25352					dna.AdditionalProperties = make(map[string]interface{})
25353				}
25354				dna.AdditionalProperties[k] = additionalProperties
25355			}
25356		case "name":
25357			if v != nil {
25358				var name string
25359				err = json.Unmarshal(*v, &name)
25360				if err != nil {
25361					return err
25362				}
25363				dna.Name = &name
25364			}
25365		case "description":
25366			if v != nil {
25367				var description string
25368				err = json.Unmarshal(*v, &description)
25369				if err != nil {
25370					return err
25371				}
25372				dna.Description = &description
25373			}
25374		case "dependsOn":
25375			if v != nil {
25376				var dependsOn []ActivityDependency
25377				err = json.Unmarshal(*v, &dependsOn)
25378				if err != nil {
25379					return err
25380				}
25381				dna.DependsOn = &dependsOn
25382			}
25383		case "type":
25384			if v != nil {
25385				var typeVar TypeBasicActivity
25386				err = json.Unmarshal(*v, &typeVar)
25387				if err != nil {
25388					return err
25389				}
25390				dna.Type = typeVar
25391			}
25392		}
25393	}
25394
25395	return nil
25396}
25397
25398// DatabricksNotebookActivityTypeProperties databricks Notebook activity properties.
25399type DatabricksNotebookActivityTypeProperties struct {
25400	// NotebookPath - The absolute path of the notebook to be run in the Databricks Workspace. This path must begin with a slash. Type: string (or Expression with resultType string).
25401	NotebookPath interface{} `json:"notebookPath,omitempty"`
25402	// BaseParameters - Base parameters to be used for each run of this job.If the notebook takes a parameter that is not specified, the default value from the notebook will be used.
25403	BaseParameters map[string]interface{} `json:"baseParameters"`
25404}
25405
25406// MarshalJSON is the custom marshaler for DatabricksNotebookActivityTypeProperties.
25407func (dnatp DatabricksNotebookActivityTypeProperties) MarshalJSON() ([]byte, error) {
25408	objectMap := make(map[string]interface{})
25409	objectMap["notebookPath"] = dnatp.NotebookPath
25410	if dnatp.BaseParameters != nil {
25411		objectMap["baseParameters"] = dnatp.BaseParameters
25412	}
25413	return json.Marshal(objectMap)
25414}
25415
25416// DataLakeAnalyticsUSQLActivity data Lake Analytics U-SQL activity.
25417type DataLakeAnalyticsUSQLActivity struct {
25418	// DataLakeAnalyticsUSQLActivityTypeProperties - Data Lake Analytics U-SQL activity properties.
25419	*DataLakeAnalyticsUSQLActivityTypeProperties `json:"typeProperties,omitempty"`
25420	// LinkedServiceName - Linked service reference.
25421	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
25422	// Policy - Activity policy.
25423	Policy *ActivityPolicy `json:"policy,omitempty"`
25424	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
25425	AdditionalProperties map[string]interface{} `json:""`
25426	// Name - Activity name.
25427	Name *string `json:"name,omitempty"`
25428	// Description - Activity description.
25429	Description *string `json:"description,omitempty"`
25430	// DependsOn - Activity depends on condition.
25431	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
25432	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
25433	Type TypeBasicActivity `json:"type,omitempty"`
25434}
25435
25436// MarshalJSON is the custom marshaler for DataLakeAnalyticsUSQLActivity.
25437func (dlaua DataLakeAnalyticsUSQLActivity) MarshalJSON() ([]byte, error) {
25438	dlaua.Type = TypeDataLakeAnalyticsUSQL
25439	objectMap := make(map[string]interface{})
25440	if dlaua.DataLakeAnalyticsUSQLActivityTypeProperties != nil {
25441		objectMap["typeProperties"] = dlaua.DataLakeAnalyticsUSQLActivityTypeProperties
25442	}
25443	if dlaua.LinkedServiceName != nil {
25444		objectMap["linkedServiceName"] = dlaua.LinkedServiceName
25445	}
25446	if dlaua.Policy != nil {
25447		objectMap["policy"] = dlaua.Policy
25448	}
25449	if dlaua.Name != nil {
25450		objectMap["name"] = dlaua.Name
25451	}
25452	if dlaua.Description != nil {
25453		objectMap["description"] = dlaua.Description
25454	}
25455	if dlaua.DependsOn != nil {
25456		objectMap["dependsOn"] = dlaua.DependsOn
25457	}
25458	if dlaua.Type != "" {
25459		objectMap["type"] = dlaua.Type
25460	}
25461	for k, v := range dlaua.AdditionalProperties {
25462		objectMap[k] = v
25463	}
25464	return json.Marshal(objectMap)
25465}
25466
25467// AsDatabricksNotebookActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25468func (dlaua DataLakeAnalyticsUSQLActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
25469	return nil, false
25470}
25471
25472// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25473func (dlaua DataLakeAnalyticsUSQLActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
25474	return &dlaua, true
25475}
25476
25477// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25478func (dlaua DataLakeAnalyticsUSQLActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
25479	return nil, false
25480}
25481
25482// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25483func (dlaua DataLakeAnalyticsUSQLActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
25484	return nil, false
25485}
25486
25487// AsGetMetadataActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25488func (dlaua DataLakeAnalyticsUSQLActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
25489	return nil, false
25490}
25491
25492// AsWebActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25493func (dlaua DataLakeAnalyticsUSQLActivity) AsWebActivity() (*WebActivity, bool) {
25494	return nil, false
25495}
25496
25497// AsLookupActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25498func (dlaua DataLakeAnalyticsUSQLActivity) AsLookupActivity() (*LookupActivity, bool) {
25499	return nil, false
25500}
25501
25502// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25503func (dlaua DataLakeAnalyticsUSQLActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
25504	return nil, false
25505}
25506
25507// AsCustomActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25508func (dlaua DataLakeAnalyticsUSQLActivity) AsCustomActivity() (*CustomActivity, bool) {
25509	return nil, false
25510}
25511
25512// AsExecuteSSISPackageActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25513func (dlaua DataLakeAnalyticsUSQLActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
25514	return nil, false
25515}
25516
25517// AsHDInsightSparkActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25518func (dlaua DataLakeAnalyticsUSQLActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
25519	return nil, false
25520}
25521
25522// AsHDInsightStreamingActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25523func (dlaua DataLakeAnalyticsUSQLActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
25524	return nil, false
25525}
25526
25527// AsHDInsightMapReduceActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25528func (dlaua DataLakeAnalyticsUSQLActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
25529	return nil, false
25530}
25531
25532// AsHDInsightPigActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25533func (dlaua DataLakeAnalyticsUSQLActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
25534	return nil, false
25535}
25536
25537// AsHDInsightHiveActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25538func (dlaua DataLakeAnalyticsUSQLActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
25539	return nil, false
25540}
25541
25542// AsCopyActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25543func (dlaua DataLakeAnalyticsUSQLActivity) AsCopyActivity() (*CopyActivity, bool) {
25544	return nil, false
25545}
25546
25547// AsExecutionActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25548func (dlaua DataLakeAnalyticsUSQLActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
25549	return nil, false
25550}
25551
25552// AsBasicExecutionActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25553func (dlaua DataLakeAnalyticsUSQLActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
25554	return &dlaua, true
25555}
25556
25557// AsFilterActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25558func (dlaua DataLakeAnalyticsUSQLActivity) AsFilterActivity() (*FilterActivity, bool) {
25559	return nil, false
25560}
25561
25562// AsUntilActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25563func (dlaua DataLakeAnalyticsUSQLActivity) AsUntilActivity() (*UntilActivity, bool) {
25564	return nil, false
25565}
25566
25567// AsWaitActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25568func (dlaua DataLakeAnalyticsUSQLActivity) AsWaitActivity() (*WaitActivity, bool) {
25569	return nil, false
25570}
25571
25572// AsForEachActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25573func (dlaua DataLakeAnalyticsUSQLActivity) AsForEachActivity() (*ForEachActivity, bool) {
25574	return nil, false
25575}
25576
25577// AsIfConditionActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25578func (dlaua DataLakeAnalyticsUSQLActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
25579	return nil, false
25580}
25581
25582// AsExecutePipelineActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25583func (dlaua DataLakeAnalyticsUSQLActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
25584	return nil, false
25585}
25586
25587// AsControlActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25588func (dlaua DataLakeAnalyticsUSQLActivity) AsControlActivity() (*ControlActivity, bool) {
25589	return nil, false
25590}
25591
25592// AsBasicControlActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25593func (dlaua DataLakeAnalyticsUSQLActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
25594	return nil, false
25595}
25596
25597// AsActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25598func (dlaua DataLakeAnalyticsUSQLActivity) AsActivity() (*Activity, bool) {
25599	return nil, false
25600}
25601
25602// AsBasicActivity is the BasicActivity implementation for DataLakeAnalyticsUSQLActivity.
25603func (dlaua DataLakeAnalyticsUSQLActivity) AsBasicActivity() (BasicActivity, bool) {
25604	return &dlaua, true
25605}
25606
25607// UnmarshalJSON is the custom unmarshaler for DataLakeAnalyticsUSQLActivity struct.
25608func (dlaua *DataLakeAnalyticsUSQLActivity) UnmarshalJSON(body []byte) error {
25609	var m map[string]*json.RawMessage
25610	err := json.Unmarshal(body, &m)
25611	if err != nil {
25612		return err
25613	}
25614	for k, v := range m {
25615		switch k {
25616		case "typeProperties":
25617			if v != nil {
25618				var dataLakeAnalyticsUSQLActivityTypeProperties DataLakeAnalyticsUSQLActivityTypeProperties
25619				err = json.Unmarshal(*v, &dataLakeAnalyticsUSQLActivityTypeProperties)
25620				if err != nil {
25621					return err
25622				}
25623				dlaua.DataLakeAnalyticsUSQLActivityTypeProperties = &dataLakeAnalyticsUSQLActivityTypeProperties
25624			}
25625		case "linkedServiceName":
25626			if v != nil {
25627				var linkedServiceName LinkedServiceReference
25628				err = json.Unmarshal(*v, &linkedServiceName)
25629				if err != nil {
25630					return err
25631				}
25632				dlaua.LinkedServiceName = &linkedServiceName
25633			}
25634		case "policy":
25635			if v != nil {
25636				var policy ActivityPolicy
25637				err = json.Unmarshal(*v, &policy)
25638				if err != nil {
25639					return err
25640				}
25641				dlaua.Policy = &policy
25642			}
25643		default:
25644			if v != nil {
25645				var additionalProperties interface{}
25646				err = json.Unmarshal(*v, &additionalProperties)
25647				if err != nil {
25648					return err
25649				}
25650				if dlaua.AdditionalProperties == nil {
25651					dlaua.AdditionalProperties = make(map[string]interface{})
25652				}
25653				dlaua.AdditionalProperties[k] = additionalProperties
25654			}
25655		case "name":
25656			if v != nil {
25657				var name string
25658				err = json.Unmarshal(*v, &name)
25659				if err != nil {
25660					return err
25661				}
25662				dlaua.Name = &name
25663			}
25664		case "description":
25665			if v != nil {
25666				var description string
25667				err = json.Unmarshal(*v, &description)
25668				if err != nil {
25669					return err
25670				}
25671				dlaua.Description = &description
25672			}
25673		case "dependsOn":
25674			if v != nil {
25675				var dependsOn []ActivityDependency
25676				err = json.Unmarshal(*v, &dependsOn)
25677				if err != nil {
25678					return err
25679				}
25680				dlaua.DependsOn = &dependsOn
25681			}
25682		case "type":
25683			if v != nil {
25684				var typeVar TypeBasicActivity
25685				err = json.Unmarshal(*v, &typeVar)
25686				if err != nil {
25687					return err
25688				}
25689				dlaua.Type = typeVar
25690			}
25691		}
25692	}
25693
25694	return nil
25695}
25696
25697// DataLakeAnalyticsUSQLActivityTypeProperties dataLakeAnalyticsU-SQL activity properties.
25698type DataLakeAnalyticsUSQLActivityTypeProperties struct {
25699	// ScriptPath - Case-sensitive path to folder that contains the U-SQL script. Type: string (or Expression with resultType string).
25700	ScriptPath interface{} `json:"scriptPath,omitempty"`
25701	// ScriptLinkedService - Script linked service reference.
25702	ScriptLinkedService *LinkedServiceReference `json:"scriptLinkedService,omitempty"`
25703	// DegreeOfParallelism - The maximum number of nodes simultaneously used to run the job. Default value is 1. Type: integer (or Expression with resultType integer), minimum: 1.
25704	DegreeOfParallelism interface{} `json:"degreeOfParallelism,omitempty"`
25705	// Priority - Determines which jobs out of all that are queued should be selected to run first. The lower the number, the higher the priority. Default value is 1000. Type: integer (or Expression with resultType integer), minimum: 1.
25706	Priority interface{} `json:"priority,omitempty"`
25707	// Parameters - Parameters for U-SQL job request.
25708	Parameters map[string]interface{} `json:"parameters"`
25709	// RuntimeVersion - Runtime version of the U-SQL engine to use. Type: string (or Expression with resultType string).
25710	RuntimeVersion interface{} `json:"runtimeVersion,omitempty"`
25711	// CompilationMode - Compilation mode of U-SQL. Must be one of these values : Semantic, Full and SingleBox. Type: string (or Expression with resultType string).
25712	CompilationMode interface{} `json:"compilationMode,omitempty"`
25713}
25714
25715// MarshalJSON is the custom marshaler for DataLakeAnalyticsUSQLActivityTypeProperties.
25716func (dlauatp DataLakeAnalyticsUSQLActivityTypeProperties) MarshalJSON() ([]byte, error) {
25717	objectMap := make(map[string]interface{})
25718	objectMap["scriptPath"] = dlauatp.ScriptPath
25719	if dlauatp.ScriptLinkedService != nil {
25720		objectMap["scriptLinkedService"] = dlauatp.ScriptLinkedService
25721	}
25722	objectMap["degreeOfParallelism"] = dlauatp.DegreeOfParallelism
25723	objectMap["priority"] = dlauatp.Priority
25724	if dlauatp.Parameters != nil {
25725		objectMap["parameters"] = dlauatp.Parameters
25726	}
25727	objectMap["runtimeVersion"] = dlauatp.RuntimeVersion
25728	objectMap["compilationMode"] = dlauatp.CompilationMode
25729	return json.Marshal(objectMap)
25730}
25731
25732// BasicDataset the Azure Data Factory nested object which identifies data within different data stores, such as
25733// tables, files, folders, and documents.
25734type BasicDataset interface {
25735	AsResponsysObjectDataset() (*ResponsysObjectDataset, bool)
25736	AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool)
25737	AsVerticaTableDataset() (*VerticaTableDataset, bool)
25738	AsNetezzaTableDataset() (*NetezzaTableDataset, bool)
25739	AsZohoObjectDataset() (*ZohoObjectDataset, bool)
25740	AsXeroObjectDataset() (*XeroObjectDataset, bool)
25741	AsSquareObjectDataset() (*SquareObjectDataset, bool)
25742	AsSparkObjectDataset() (*SparkObjectDataset, bool)
25743	AsShopifyObjectDataset() (*ShopifyObjectDataset, bool)
25744	AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool)
25745	AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool)
25746	AsPrestoObjectDataset() (*PrestoObjectDataset, bool)
25747	AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool)
25748	AsPaypalObjectDataset() (*PaypalObjectDataset, bool)
25749	AsMarketoObjectDataset() (*MarketoObjectDataset, bool)
25750	AsMariaDBTableDataset() (*MariaDBTableDataset, bool)
25751	AsMagentoObjectDataset() (*MagentoObjectDataset, bool)
25752	AsJiraObjectDataset() (*JiraObjectDataset, bool)
25753	AsImpalaObjectDataset() (*ImpalaObjectDataset, bool)
25754	AsHubspotObjectDataset() (*HubspotObjectDataset, bool)
25755	AsHiveObjectDataset() (*HiveObjectDataset, bool)
25756	AsHBaseObjectDataset() (*HBaseObjectDataset, bool)
25757	AsGreenplumTableDataset() (*GreenplumTableDataset, bool)
25758	AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool)
25759	AsEloquaObjectDataset() (*EloquaObjectDataset, bool)
25760	AsDrillTableDataset() (*DrillTableDataset, bool)
25761	AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool)
25762	AsConcurObjectDataset() (*ConcurObjectDataset, bool)
25763	AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool)
25764	AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool)
25765	AsHTTPDataset() (*HTTPDataset, bool)
25766	AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool)
25767	AsWebTableDataset() (*WebTableDataset, bool)
25768	AsSQLServerTableDataset() (*SQLServerTableDataset, bool)
25769	AsSapEccResourceDataset() (*SapEccResourceDataset, bool)
25770	AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool)
25771	AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool)
25772	AsRelationalTableDataset() (*RelationalTableDataset, bool)
25773	AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool)
25774	AsOracleTableDataset() (*OracleTableDataset, bool)
25775	AsODataResourceDataset() (*ODataResourceDataset, bool)
25776	AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool)
25777	AsFileShareDataset() (*FileShareDataset, bool)
25778	AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool)
25779	AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool)
25780	AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool)
25781	AsCustomDataset() (*CustomDataset, bool)
25782	AsCassandraTableDataset() (*CassandraTableDataset, bool)
25783	AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool)
25784	AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool)
25785	AsAzureTableDataset() (*AzureTableDataset, bool)
25786	AsAzureBlobDataset() (*AzureBlobDataset, bool)
25787	AsAmazonS3Dataset() (*AmazonS3Dataset, bool)
25788	AsDataset() (*Dataset, bool)
25789}
25790
25791// Dataset the Azure Data Factory nested object which identifies data within different data stores, such as tables,
25792// files, folders, and documents.
25793type Dataset struct {
25794	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
25795	AdditionalProperties map[string]interface{} `json:""`
25796	// Description - Dataset description.
25797	Description *string `json:"description,omitempty"`
25798	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
25799	Structure interface{} `json:"structure,omitempty"`
25800	// LinkedServiceName - Linked service reference.
25801	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
25802	// Parameters - Parameters for dataset.
25803	Parameters map[string]*ParameterSpecification `json:"parameters"`
25804	// Annotations - List of tags that can be used for describing the Dataset.
25805	Annotations *[]interface{} `json:"annotations,omitempty"`
25806	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
25807	Type TypeBasicDataset `json:"type,omitempty"`
25808}
25809
25810func unmarshalBasicDataset(body []byte) (BasicDataset, error) {
25811	var m map[string]interface{}
25812	err := json.Unmarshal(body, &m)
25813	if err != nil {
25814		return nil, err
25815	}
25816
25817	switch m["type"] {
25818	case string(TypeResponsysObject):
25819		var rod ResponsysObjectDataset
25820		err := json.Unmarshal(body, &rod)
25821		return rod, err
25822	case string(TypeSalesforceMarketingCloudObject):
25823		var smcod SalesforceMarketingCloudObjectDataset
25824		err := json.Unmarshal(body, &smcod)
25825		return smcod, err
25826	case string(TypeVerticaTable):
25827		var vtd VerticaTableDataset
25828		err := json.Unmarshal(body, &vtd)
25829		return vtd, err
25830	case string(TypeNetezzaTable):
25831		var ntd NetezzaTableDataset
25832		err := json.Unmarshal(body, &ntd)
25833		return ntd, err
25834	case string(TypeZohoObject):
25835		var zod ZohoObjectDataset
25836		err := json.Unmarshal(body, &zod)
25837		return zod, err
25838	case string(TypeXeroObject):
25839		var xod XeroObjectDataset
25840		err := json.Unmarshal(body, &xod)
25841		return xod, err
25842	case string(TypeSquareObject):
25843		var sod SquareObjectDataset
25844		err := json.Unmarshal(body, &sod)
25845		return sod, err
25846	case string(TypeSparkObject):
25847		var sod SparkObjectDataset
25848		err := json.Unmarshal(body, &sod)
25849		return sod, err
25850	case string(TypeShopifyObject):
25851		var sod ShopifyObjectDataset
25852		err := json.Unmarshal(body, &sod)
25853		return sod, err
25854	case string(TypeServiceNowObject):
25855		var snod ServiceNowObjectDataset
25856		err := json.Unmarshal(body, &snod)
25857		return snod, err
25858	case string(TypeQuickBooksObject):
25859		var qbod QuickBooksObjectDataset
25860		err := json.Unmarshal(body, &qbod)
25861		return qbod, err
25862	case string(TypePrestoObject):
25863		var pod PrestoObjectDataset
25864		err := json.Unmarshal(body, &pod)
25865		return pod, err
25866	case string(TypePhoenixObject):
25867		var pod PhoenixObjectDataset
25868		err := json.Unmarshal(body, &pod)
25869		return pod, err
25870	case string(TypePaypalObject):
25871		var pod PaypalObjectDataset
25872		err := json.Unmarshal(body, &pod)
25873		return pod, err
25874	case string(TypeMarketoObject):
25875		var mod MarketoObjectDataset
25876		err := json.Unmarshal(body, &mod)
25877		return mod, err
25878	case string(TypeMariaDBTable):
25879		var mdtd MariaDBTableDataset
25880		err := json.Unmarshal(body, &mdtd)
25881		return mdtd, err
25882	case string(TypeMagentoObject):
25883		var mod MagentoObjectDataset
25884		err := json.Unmarshal(body, &mod)
25885		return mod, err
25886	case string(TypeJiraObject):
25887		var jod JiraObjectDataset
25888		err := json.Unmarshal(body, &jod)
25889		return jod, err
25890	case string(TypeImpalaObject):
25891		var iod ImpalaObjectDataset
25892		err := json.Unmarshal(body, &iod)
25893		return iod, err
25894	case string(TypeHubspotObject):
25895		var hod HubspotObjectDataset
25896		err := json.Unmarshal(body, &hod)
25897		return hod, err
25898	case string(TypeHiveObject):
25899		var hod HiveObjectDataset
25900		err := json.Unmarshal(body, &hod)
25901		return hod, err
25902	case string(TypeHBaseObject):
25903		var hbod HBaseObjectDataset
25904		err := json.Unmarshal(body, &hbod)
25905		return hbod, err
25906	case string(TypeGreenplumTable):
25907		var gtd GreenplumTableDataset
25908		err := json.Unmarshal(body, &gtd)
25909		return gtd, err
25910	case string(TypeGoogleBigQueryObject):
25911		var gbqod GoogleBigQueryObjectDataset
25912		err := json.Unmarshal(body, &gbqod)
25913		return gbqod, err
25914	case string(TypeEloquaObject):
25915		var eod EloquaObjectDataset
25916		err := json.Unmarshal(body, &eod)
25917		return eod, err
25918	case string(TypeDrillTable):
25919		var dtd DrillTableDataset
25920		err := json.Unmarshal(body, &dtd)
25921		return dtd, err
25922	case string(TypeCouchbaseTable):
25923		var ctd CouchbaseTableDataset
25924		err := json.Unmarshal(body, &ctd)
25925		return ctd, err
25926	case string(TypeConcurObject):
25927		var cod ConcurObjectDataset
25928		err := json.Unmarshal(body, &cod)
25929		return cod, err
25930	case string(TypeAzurePostgreSQLTable):
25931		var apstd AzurePostgreSQLTableDataset
25932		err := json.Unmarshal(body, &apstd)
25933		return apstd, err
25934	case string(TypeAmazonMWSObject):
25935		var amod AmazonMWSObjectDataset
25936		err := json.Unmarshal(body, &amod)
25937		return amod, err
25938	case string(TypeHTTPFile):
25939		var hd HTTPDataset
25940		err := json.Unmarshal(body, &hd)
25941		return hd, err
25942	case string(TypeAzureSearchIndex):
25943		var asid AzureSearchIndexDataset
25944		err := json.Unmarshal(body, &asid)
25945		return asid, err
25946	case string(TypeWebTable):
25947		var wtd WebTableDataset
25948		err := json.Unmarshal(body, &wtd)
25949		return wtd, err
25950	case string(TypeSQLServerTable):
25951		var sstd SQLServerTableDataset
25952		err := json.Unmarshal(body, &sstd)
25953		return sstd, err
25954	case string(TypeSapEccResource):
25955		var serd SapEccResourceDataset
25956		err := json.Unmarshal(body, &serd)
25957		return serd, err
25958	case string(TypeSapCloudForCustomerResource):
25959		var scfcrd SapCloudForCustomerResourceDataset
25960		err := json.Unmarshal(body, &scfcrd)
25961		return scfcrd, err
25962	case string(TypeSalesforceObject):
25963		var sod SalesforceObjectDataset
25964		err := json.Unmarshal(body, &sod)
25965		return sod, err
25966	case string(TypeRelationalTable):
25967		var rtd RelationalTableDataset
25968		err := json.Unmarshal(body, &rtd)
25969		return rtd, err
25970	case string(TypeAzureMySQLTable):
25971		var amstd AzureMySQLTableDataset
25972		err := json.Unmarshal(body, &amstd)
25973		return amstd, err
25974	case string(TypeOracleTable):
25975		var otd OracleTableDataset
25976		err := json.Unmarshal(body, &otd)
25977		return otd, err
25978	case string(TypeODataResource):
25979		var odrd ODataResourceDataset
25980		err := json.Unmarshal(body, &odrd)
25981		return odrd, err
25982	case string(TypeMongoDbCollection):
25983		var mdcd MongoDbCollectionDataset
25984		err := json.Unmarshal(body, &mdcd)
25985		return mdcd, err
25986	case string(TypeFileShare):
25987		var fsd FileShareDataset
25988		err := json.Unmarshal(body, &fsd)
25989		return fsd, err
25990	case string(TypeAzureDataLakeStoreFile):
25991		var adlsd AzureDataLakeStoreDataset
25992		err := json.Unmarshal(body, &adlsd)
25993		return adlsd, err
25994	case string(TypeDynamicsEntity):
25995		var ded DynamicsEntityDataset
25996		err := json.Unmarshal(body, &ded)
25997		return ded, err
25998	case string(TypeDocumentDbCollection):
25999		var ddcd DocumentDbCollectionDataset
26000		err := json.Unmarshal(body, &ddcd)
26001		return ddcd, err
26002	case string(TypeCustomDataset):
26003		var cd CustomDataset
26004		err := json.Unmarshal(body, &cd)
26005		return cd, err
26006	case string(TypeCassandraTable):
26007		var ctd CassandraTableDataset
26008		err := json.Unmarshal(body, &ctd)
26009		return ctd, err
26010	case string(TypeAzureSQLDWTable):
26011		var asdtd AzureSQLDWTableDataset
26012		err := json.Unmarshal(body, &asdtd)
26013		return asdtd, err
26014	case string(TypeAzureSQLTable):
26015		var astd AzureSQLTableDataset
26016		err := json.Unmarshal(body, &astd)
26017		return astd, err
26018	case string(TypeAzureTable):
26019		var atd AzureTableDataset
26020		err := json.Unmarshal(body, &atd)
26021		return atd, err
26022	case string(TypeAzureBlob):
26023		var abd AzureBlobDataset
26024		err := json.Unmarshal(body, &abd)
26025		return abd, err
26026	case string(TypeAmazonS3Object):
26027		var asd AmazonS3Dataset
26028		err := json.Unmarshal(body, &asd)
26029		return asd, err
26030	default:
26031		var d Dataset
26032		err := json.Unmarshal(body, &d)
26033		return d, err
26034	}
26035}
26036func unmarshalBasicDatasetArray(body []byte) ([]BasicDataset, error) {
26037	var rawMessages []*json.RawMessage
26038	err := json.Unmarshal(body, &rawMessages)
26039	if err != nil {
26040		return nil, err
26041	}
26042
26043	dArray := make([]BasicDataset, len(rawMessages))
26044
26045	for index, rawMessage := range rawMessages {
26046		d, err := unmarshalBasicDataset(*rawMessage)
26047		if err != nil {
26048			return nil, err
26049		}
26050		dArray[index] = d
26051	}
26052	return dArray, nil
26053}
26054
26055// MarshalJSON is the custom marshaler for Dataset.
26056func (d Dataset) MarshalJSON() ([]byte, error) {
26057	d.Type = TypeDataset
26058	objectMap := make(map[string]interface{})
26059	if d.Description != nil {
26060		objectMap["description"] = d.Description
26061	}
26062	objectMap["structure"] = d.Structure
26063	if d.LinkedServiceName != nil {
26064		objectMap["linkedServiceName"] = d.LinkedServiceName
26065	}
26066	if d.Parameters != nil {
26067		objectMap["parameters"] = d.Parameters
26068	}
26069	if d.Annotations != nil {
26070		objectMap["annotations"] = d.Annotations
26071	}
26072	if d.Type != "" {
26073		objectMap["type"] = d.Type
26074	}
26075	for k, v := range d.AdditionalProperties {
26076		objectMap[k] = v
26077	}
26078	return json.Marshal(objectMap)
26079}
26080
26081// AsResponsysObjectDataset is the BasicDataset implementation for Dataset.
26082func (d Dataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
26083	return nil, false
26084}
26085
26086// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for Dataset.
26087func (d Dataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
26088	return nil, false
26089}
26090
26091// AsVerticaTableDataset is the BasicDataset implementation for Dataset.
26092func (d Dataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
26093	return nil, false
26094}
26095
26096// AsNetezzaTableDataset is the BasicDataset implementation for Dataset.
26097func (d Dataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
26098	return nil, false
26099}
26100
26101// AsZohoObjectDataset is the BasicDataset implementation for Dataset.
26102func (d Dataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
26103	return nil, false
26104}
26105
26106// AsXeroObjectDataset is the BasicDataset implementation for Dataset.
26107func (d Dataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
26108	return nil, false
26109}
26110
26111// AsSquareObjectDataset is the BasicDataset implementation for Dataset.
26112func (d Dataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
26113	return nil, false
26114}
26115
26116// AsSparkObjectDataset is the BasicDataset implementation for Dataset.
26117func (d Dataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
26118	return nil, false
26119}
26120
26121// AsShopifyObjectDataset is the BasicDataset implementation for Dataset.
26122func (d Dataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
26123	return nil, false
26124}
26125
26126// AsServiceNowObjectDataset is the BasicDataset implementation for Dataset.
26127func (d Dataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
26128	return nil, false
26129}
26130
26131// AsQuickBooksObjectDataset is the BasicDataset implementation for Dataset.
26132func (d Dataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
26133	return nil, false
26134}
26135
26136// AsPrestoObjectDataset is the BasicDataset implementation for Dataset.
26137func (d Dataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
26138	return nil, false
26139}
26140
26141// AsPhoenixObjectDataset is the BasicDataset implementation for Dataset.
26142func (d Dataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
26143	return nil, false
26144}
26145
26146// AsPaypalObjectDataset is the BasicDataset implementation for Dataset.
26147func (d Dataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
26148	return nil, false
26149}
26150
26151// AsMarketoObjectDataset is the BasicDataset implementation for Dataset.
26152func (d Dataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
26153	return nil, false
26154}
26155
26156// AsMariaDBTableDataset is the BasicDataset implementation for Dataset.
26157func (d Dataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
26158	return nil, false
26159}
26160
26161// AsMagentoObjectDataset is the BasicDataset implementation for Dataset.
26162func (d Dataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
26163	return nil, false
26164}
26165
26166// AsJiraObjectDataset is the BasicDataset implementation for Dataset.
26167func (d Dataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
26168	return nil, false
26169}
26170
26171// AsImpalaObjectDataset is the BasicDataset implementation for Dataset.
26172func (d Dataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
26173	return nil, false
26174}
26175
26176// AsHubspotObjectDataset is the BasicDataset implementation for Dataset.
26177func (d Dataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
26178	return nil, false
26179}
26180
26181// AsHiveObjectDataset is the BasicDataset implementation for Dataset.
26182func (d Dataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
26183	return nil, false
26184}
26185
26186// AsHBaseObjectDataset is the BasicDataset implementation for Dataset.
26187func (d Dataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
26188	return nil, false
26189}
26190
26191// AsGreenplumTableDataset is the BasicDataset implementation for Dataset.
26192func (d Dataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
26193	return nil, false
26194}
26195
26196// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for Dataset.
26197func (d Dataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
26198	return nil, false
26199}
26200
26201// AsEloquaObjectDataset is the BasicDataset implementation for Dataset.
26202func (d Dataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
26203	return nil, false
26204}
26205
26206// AsDrillTableDataset is the BasicDataset implementation for Dataset.
26207func (d Dataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
26208	return nil, false
26209}
26210
26211// AsCouchbaseTableDataset is the BasicDataset implementation for Dataset.
26212func (d Dataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
26213	return nil, false
26214}
26215
26216// AsConcurObjectDataset is the BasicDataset implementation for Dataset.
26217func (d Dataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
26218	return nil, false
26219}
26220
26221// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for Dataset.
26222func (d Dataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
26223	return nil, false
26224}
26225
26226// AsAmazonMWSObjectDataset is the BasicDataset implementation for Dataset.
26227func (d Dataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
26228	return nil, false
26229}
26230
26231// AsHTTPDataset is the BasicDataset implementation for Dataset.
26232func (d Dataset) AsHTTPDataset() (*HTTPDataset, bool) {
26233	return nil, false
26234}
26235
26236// AsAzureSearchIndexDataset is the BasicDataset implementation for Dataset.
26237func (d Dataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
26238	return nil, false
26239}
26240
26241// AsWebTableDataset is the BasicDataset implementation for Dataset.
26242func (d Dataset) AsWebTableDataset() (*WebTableDataset, bool) {
26243	return nil, false
26244}
26245
26246// AsSQLServerTableDataset is the BasicDataset implementation for Dataset.
26247func (d Dataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
26248	return nil, false
26249}
26250
26251// AsSapEccResourceDataset is the BasicDataset implementation for Dataset.
26252func (d Dataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
26253	return nil, false
26254}
26255
26256// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for Dataset.
26257func (d Dataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
26258	return nil, false
26259}
26260
26261// AsSalesforceObjectDataset is the BasicDataset implementation for Dataset.
26262func (d Dataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
26263	return nil, false
26264}
26265
26266// AsRelationalTableDataset is the BasicDataset implementation for Dataset.
26267func (d Dataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
26268	return nil, false
26269}
26270
26271// AsAzureMySQLTableDataset is the BasicDataset implementation for Dataset.
26272func (d Dataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
26273	return nil, false
26274}
26275
26276// AsOracleTableDataset is the BasicDataset implementation for Dataset.
26277func (d Dataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
26278	return nil, false
26279}
26280
26281// AsODataResourceDataset is the BasicDataset implementation for Dataset.
26282func (d Dataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
26283	return nil, false
26284}
26285
26286// AsMongoDbCollectionDataset is the BasicDataset implementation for Dataset.
26287func (d Dataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
26288	return nil, false
26289}
26290
26291// AsFileShareDataset is the BasicDataset implementation for Dataset.
26292func (d Dataset) AsFileShareDataset() (*FileShareDataset, bool) {
26293	return nil, false
26294}
26295
26296// AsAzureDataLakeStoreDataset is the BasicDataset implementation for Dataset.
26297func (d Dataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
26298	return nil, false
26299}
26300
26301// AsDynamicsEntityDataset is the BasicDataset implementation for Dataset.
26302func (d Dataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
26303	return nil, false
26304}
26305
26306// AsDocumentDbCollectionDataset is the BasicDataset implementation for Dataset.
26307func (d Dataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
26308	return nil, false
26309}
26310
26311// AsCustomDataset is the BasicDataset implementation for Dataset.
26312func (d Dataset) AsCustomDataset() (*CustomDataset, bool) {
26313	return nil, false
26314}
26315
26316// AsCassandraTableDataset is the BasicDataset implementation for Dataset.
26317func (d Dataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
26318	return nil, false
26319}
26320
26321// AsAzureSQLDWTableDataset is the BasicDataset implementation for Dataset.
26322func (d Dataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
26323	return nil, false
26324}
26325
26326// AsAzureSQLTableDataset is the BasicDataset implementation for Dataset.
26327func (d Dataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
26328	return nil, false
26329}
26330
26331// AsAzureTableDataset is the BasicDataset implementation for Dataset.
26332func (d Dataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
26333	return nil, false
26334}
26335
26336// AsAzureBlobDataset is the BasicDataset implementation for Dataset.
26337func (d Dataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
26338	return nil, false
26339}
26340
26341// AsAmazonS3Dataset is the BasicDataset implementation for Dataset.
26342func (d Dataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
26343	return nil, false
26344}
26345
26346// AsDataset is the BasicDataset implementation for Dataset.
26347func (d Dataset) AsDataset() (*Dataset, bool) {
26348	return &d, true
26349}
26350
26351// AsBasicDataset is the BasicDataset implementation for Dataset.
26352func (d Dataset) AsBasicDataset() (BasicDataset, bool) {
26353	return &d, true
26354}
26355
26356// DatasetBZip2Compression the BZip2 compression method used on a dataset.
26357type DatasetBZip2Compression struct {
26358	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26359	AdditionalProperties map[string]interface{} `json:""`
26360	// Type - Possible values include: 'TypeDatasetCompression', 'TypeZipDeflate', 'TypeDeflate', 'TypeGZip', 'TypeBZip2'
26361	Type TypeBasicDatasetCompression `json:"type,omitempty"`
26362}
26363
26364// MarshalJSON is the custom marshaler for DatasetBZip2Compression.
26365func (dbz2c DatasetBZip2Compression) MarshalJSON() ([]byte, error) {
26366	dbz2c.Type = TypeBZip2
26367	objectMap := make(map[string]interface{})
26368	if dbz2c.Type != "" {
26369		objectMap["type"] = dbz2c.Type
26370	}
26371	for k, v := range dbz2c.AdditionalProperties {
26372		objectMap[k] = v
26373	}
26374	return json.Marshal(objectMap)
26375}
26376
26377// AsDatasetZipDeflateCompression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26378func (dbz2c DatasetBZip2Compression) AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool) {
26379	return nil, false
26380}
26381
26382// AsDatasetDeflateCompression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26383func (dbz2c DatasetBZip2Compression) AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool) {
26384	return nil, false
26385}
26386
26387// AsDatasetGZipCompression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26388func (dbz2c DatasetBZip2Compression) AsDatasetGZipCompression() (*DatasetGZipCompression, bool) {
26389	return nil, false
26390}
26391
26392// AsDatasetBZip2Compression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26393func (dbz2c DatasetBZip2Compression) AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool) {
26394	return &dbz2c, true
26395}
26396
26397// AsDatasetCompression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26398func (dbz2c DatasetBZip2Compression) AsDatasetCompression() (*DatasetCompression, bool) {
26399	return nil, false
26400}
26401
26402// AsBasicDatasetCompression is the BasicDatasetCompression implementation for DatasetBZip2Compression.
26403func (dbz2c DatasetBZip2Compression) AsBasicDatasetCompression() (BasicDatasetCompression, bool) {
26404	return &dbz2c, true
26405}
26406
26407// BasicDatasetCompression the compression method used on a dataset.
26408type BasicDatasetCompression interface {
26409	AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool)
26410	AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool)
26411	AsDatasetGZipCompression() (*DatasetGZipCompression, bool)
26412	AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool)
26413	AsDatasetCompression() (*DatasetCompression, bool)
26414}
26415
26416// DatasetCompression the compression method used on a dataset.
26417type DatasetCompression struct {
26418	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26419	AdditionalProperties map[string]interface{} `json:""`
26420	// Type - Possible values include: 'TypeDatasetCompression', 'TypeZipDeflate', 'TypeDeflate', 'TypeGZip', 'TypeBZip2'
26421	Type TypeBasicDatasetCompression `json:"type,omitempty"`
26422}
26423
26424func unmarshalBasicDatasetCompression(body []byte) (BasicDatasetCompression, error) {
26425	var m map[string]interface{}
26426	err := json.Unmarshal(body, &m)
26427	if err != nil {
26428		return nil, err
26429	}
26430
26431	switch m["type"] {
26432	case string(TypeZipDeflate):
26433		var dzdc DatasetZipDeflateCompression
26434		err := json.Unmarshal(body, &dzdc)
26435		return dzdc, err
26436	case string(TypeDeflate):
26437		var ddc DatasetDeflateCompression
26438		err := json.Unmarshal(body, &ddc)
26439		return ddc, err
26440	case string(TypeGZip):
26441		var dgzc DatasetGZipCompression
26442		err := json.Unmarshal(body, &dgzc)
26443		return dgzc, err
26444	case string(TypeBZip2):
26445		var dbz2c DatasetBZip2Compression
26446		err := json.Unmarshal(body, &dbz2c)
26447		return dbz2c, err
26448	default:
26449		var dc DatasetCompression
26450		err := json.Unmarshal(body, &dc)
26451		return dc, err
26452	}
26453}
26454func unmarshalBasicDatasetCompressionArray(body []byte) ([]BasicDatasetCompression, error) {
26455	var rawMessages []*json.RawMessage
26456	err := json.Unmarshal(body, &rawMessages)
26457	if err != nil {
26458		return nil, err
26459	}
26460
26461	dcArray := make([]BasicDatasetCompression, len(rawMessages))
26462
26463	for index, rawMessage := range rawMessages {
26464		dc, err := unmarshalBasicDatasetCompression(*rawMessage)
26465		if err != nil {
26466			return nil, err
26467		}
26468		dcArray[index] = dc
26469	}
26470	return dcArray, nil
26471}
26472
26473// MarshalJSON is the custom marshaler for DatasetCompression.
26474func (dc DatasetCompression) MarshalJSON() ([]byte, error) {
26475	dc.Type = TypeDatasetCompression
26476	objectMap := make(map[string]interface{})
26477	if dc.Type != "" {
26478		objectMap["type"] = dc.Type
26479	}
26480	for k, v := range dc.AdditionalProperties {
26481		objectMap[k] = v
26482	}
26483	return json.Marshal(objectMap)
26484}
26485
26486// AsDatasetZipDeflateCompression is the BasicDatasetCompression implementation for DatasetCompression.
26487func (dc DatasetCompression) AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool) {
26488	return nil, false
26489}
26490
26491// AsDatasetDeflateCompression is the BasicDatasetCompression implementation for DatasetCompression.
26492func (dc DatasetCompression) AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool) {
26493	return nil, false
26494}
26495
26496// AsDatasetGZipCompression is the BasicDatasetCompression implementation for DatasetCompression.
26497func (dc DatasetCompression) AsDatasetGZipCompression() (*DatasetGZipCompression, bool) {
26498	return nil, false
26499}
26500
26501// AsDatasetBZip2Compression is the BasicDatasetCompression implementation for DatasetCompression.
26502func (dc DatasetCompression) AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool) {
26503	return nil, false
26504}
26505
26506// AsDatasetCompression is the BasicDatasetCompression implementation for DatasetCompression.
26507func (dc DatasetCompression) AsDatasetCompression() (*DatasetCompression, bool) {
26508	return &dc, true
26509}
26510
26511// AsBasicDatasetCompression is the BasicDatasetCompression implementation for DatasetCompression.
26512func (dc DatasetCompression) AsBasicDatasetCompression() (BasicDatasetCompression, bool) {
26513	return &dc, true
26514}
26515
26516// DatasetDeflateCompression the Deflate compression method used on a dataset.
26517type DatasetDeflateCompression struct {
26518	// Level - The Deflate compression level. Possible values include: 'Optimal', 'Fastest'
26519	Level DatasetCompressionLevel `json:"level,omitempty"`
26520	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26521	AdditionalProperties map[string]interface{} `json:""`
26522	// Type - Possible values include: 'TypeDatasetCompression', 'TypeZipDeflate', 'TypeDeflate', 'TypeGZip', 'TypeBZip2'
26523	Type TypeBasicDatasetCompression `json:"type,omitempty"`
26524}
26525
26526// MarshalJSON is the custom marshaler for DatasetDeflateCompression.
26527func (ddc DatasetDeflateCompression) MarshalJSON() ([]byte, error) {
26528	ddc.Type = TypeDeflate
26529	objectMap := make(map[string]interface{})
26530	if ddc.Level != "" {
26531		objectMap["level"] = ddc.Level
26532	}
26533	if ddc.Type != "" {
26534		objectMap["type"] = ddc.Type
26535	}
26536	for k, v := range ddc.AdditionalProperties {
26537		objectMap[k] = v
26538	}
26539	return json.Marshal(objectMap)
26540}
26541
26542// AsDatasetZipDeflateCompression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26543func (ddc DatasetDeflateCompression) AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool) {
26544	return nil, false
26545}
26546
26547// AsDatasetDeflateCompression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26548func (ddc DatasetDeflateCompression) AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool) {
26549	return &ddc, true
26550}
26551
26552// AsDatasetGZipCompression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26553func (ddc DatasetDeflateCompression) AsDatasetGZipCompression() (*DatasetGZipCompression, bool) {
26554	return nil, false
26555}
26556
26557// AsDatasetBZip2Compression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26558func (ddc DatasetDeflateCompression) AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool) {
26559	return nil, false
26560}
26561
26562// AsDatasetCompression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26563func (ddc DatasetDeflateCompression) AsDatasetCompression() (*DatasetCompression, bool) {
26564	return nil, false
26565}
26566
26567// AsBasicDatasetCompression is the BasicDatasetCompression implementation for DatasetDeflateCompression.
26568func (ddc DatasetDeflateCompression) AsBasicDatasetCompression() (BasicDatasetCompression, bool) {
26569	return &ddc, true
26570}
26571
26572// DatasetGZipCompression the GZip compression method used on a dataset.
26573type DatasetGZipCompression struct {
26574	// Level - The GZip compression level. Possible values include: 'Optimal', 'Fastest'
26575	Level DatasetCompressionLevel `json:"level,omitempty"`
26576	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26577	AdditionalProperties map[string]interface{} `json:""`
26578	// Type - Possible values include: 'TypeDatasetCompression', 'TypeZipDeflate', 'TypeDeflate', 'TypeGZip', 'TypeBZip2'
26579	Type TypeBasicDatasetCompression `json:"type,omitempty"`
26580}
26581
26582// MarshalJSON is the custom marshaler for DatasetGZipCompression.
26583func (dgzc DatasetGZipCompression) MarshalJSON() ([]byte, error) {
26584	dgzc.Type = TypeGZip
26585	objectMap := make(map[string]interface{})
26586	if dgzc.Level != "" {
26587		objectMap["level"] = dgzc.Level
26588	}
26589	if dgzc.Type != "" {
26590		objectMap["type"] = dgzc.Type
26591	}
26592	for k, v := range dgzc.AdditionalProperties {
26593		objectMap[k] = v
26594	}
26595	return json.Marshal(objectMap)
26596}
26597
26598// AsDatasetZipDeflateCompression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26599func (dgzc DatasetGZipCompression) AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool) {
26600	return nil, false
26601}
26602
26603// AsDatasetDeflateCompression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26604func (dgzc DatasetGZipCompression) AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool) {
26605	return nil, false
26606}
26607
26608// AsDatasetGZipCompression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26609func (dgzc DatasetGZipCompression) AsDatasetGZipCompression() (*DatasetGZipCompression, bool) {
26610	return &dgzc, true
26611}
26612
26613// AsDatasetBZip2Compression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26614func (dgzc DatasetGZipCompression) AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool) {
26615	return nil, false
26616}
26617
26618// AsDatasetCompression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26619func (dgzc DatasetGZipCompression) AsDatasetCompression() (*DatasetCompression, bool) {
26620	return nil, false
26621}
26622
26623// AsBasicDatasetCompression is the BasicDatasetCompression implementation for DatasetGZipCompression.
26624func (dgzc DatasetGZipCompression) AsBasicDatasetCompression() (BasicDatasetCompression, bool) {
26625	return &dgzc, true
26626}
26627
26628// DatasetListResponse a list of dataset resources.
26629type DatasetListResponse struct {
26630	autorest.Response `json:"-"`
26631	// Value - List of datasets.
26632	Value *[]DatasetResource `json:"value,omitempty"`
26633	// NextLink - The link to the next page of results, if any remaining results exist.
26634	NextLink *string `json:"nextLink,omitempty"`
26635}
26636
26637// DatasetListResponseIterator provides access to a complete listing of DatasetResource values.
26638type DatasetListResponseIterator struct {
26639	i    int
26640	page DatasetListResponsePage
26641}
26642
26643// Next advances to the next value.  If there was an error making
26644// the request the iterator does not advance and the error is returned.
26645func (iter *DatasetListResponseIterator) Next() error {
26646	iter.i++
26647	if iter.i < len(iter.page.Values()) {
26648		return nil
26649	}
26650	err := iter.page.Next()
26651	if err != nil {
26652		iter.i--
26653		return err
26654	}
26655	iter.i = 0
26656	return nil
26657}
26658
26659// NotDone returns true if the enumeration should be started or is not yet complete.
26660func (iter DatasetListResponseIterator) NotDone() bool {
26661	return iter.page.NotDone() && iter.i < len(iter.page.Values())
26662}
26663
26664// Response returns the raw server response from the last page request.
26665func (iter DatasetListResponseIterator) Response() DatasetListResponse {
26666	return iter.page.Response()
26667}
26668
26669// Value returns the current value or a zero-initialized value if the
26670// iterator has advanced beyond the end of the collection.
26671func (iter DatasetListResponseIterator) Value() DatasetResource {
26672	if !iter.page.NotDone() {
26673		return DatasetResource{}
26674	}
26675	return iter.page.Values()[iter.i]
26676}
26677
26678// IsEmpty returns true if the ListResult contains no values.
26679func (dlr DatasetListResponse) IsEmpty() bool {
26680	return dlr.Value == nil || len(*dlr.Value) == 0
26681}
26682
26683// datasetListResponsePreparer prepares a request to retrieve the next set of results.
26684// It returns nil if no more results exist.
26685func (dlr DatasetListResponse) datasetListResponsePreparer() (*http.Request, error) {
26686	if dlr.NextLink == nil || len(to.String(dlr.NextLink)) < 1 {
26687		return nil, nil
26688	}
26689	return autorest.Prepare(&http.Request{},
26690		autorest.AsJSON(),
26691		autorest.AsGet(),
26692		autorest.WithBaseURL(to.String(dlr.NextLink)))
26693}
26694
26695// DatasetListResponsePage contains a page of DatasetResource values.
26696type DatasetListResponsePage struct {
26697	fn  func(DatasetListResponse) (DatasetListResponse, error)
26698	dlr DatasetListResponse
26699}
26700
26701// Next advances to the next page of values.  If there was an error making
26702// the request the page does not advance and the error is returned.
26703func (page *DatasetListResponsePage) Next() error {
26704	next, err := page.fn(page.dlr)
26705	if err != nil {
26706		return err
26707	}
26708	page.dlr = next
26709	return nil
26710}
26711
26712// NotDone returns true if the page enumeration should be started or is not yet complete.
26713func (page DatasetListResponsePage) NotDone() bool {
26714	return !page.dlr.IsEmpty()
26715}
26716
26717// Response returns the raw server response from the last page request.
26718func (page DatasetListResponsePage) Response() DatasetListResponse {
26719	return page.dlr
26720}
26721
26722// Values returns the slice of values for the current page or nil if there are no values.
26723func (page DatasetListResponsePage) Values() []DatasetResource {
26724	if page.dlr.IsEmpty() {
26725		return nil
26726	}
26727	return *page.dlr.Value
26728}
26729
26730// DatasetReference dataset reference type.
26731type DatasetReference struct {
26732	// Type - Dataset reference type.
26733	Type *string `json:"type,omitempty"`
26734	// ReferenceName - Reference dataset name.
26735	ReferenceName *string `json:"referenceName,omitempty"`
26736	// Parameters - Arguments for dataset.
26737	Parameters map[string]interface{} `json:"parameters"`
26738}
26739
26740// MarshalJSON is the custom marshaler for DatasetReference.
26741func (dr DatasetReference) MarshalJSON() ([]byte, error) {
26742	objectMap := make(map[string]interface{})
26743	if dr.Type != nil {
26744		objectMap["type"] = dr.Type
26745	}
26746	if dr.ReferenceName != nil {
26747		objectMap["referenceName"] = dr.ReferenceName
26748	}
26749	if dr.Parameters != nil {
26750		objectMap["parameters"] = dr.Parameters
26751	}
26752	return json.Marshal(objectMap)
26753}
26754
26755// DatasetResource dataset resource type.
26756type DatasetResource struct {
26757	autorest.Response `json:"-"`
26758	// Properties - Dataset properties.
26759	Properties BasicDataset `json:"properties,omitempty"`
26760	// ID - The resource identifier.
26761	ID *string `json:"id,omitempty"`
26762	// Name - The resource name.
26763	Name *string `json:"name,omitempty"`
26764	// Type - The resource type.
26765	Type *string `json:"type,omitempty"`
26766	// Etag - Etag identifies change in the resource.
26767	Etag *string `json:"etag,omitempty"`
26768}
26769
26770// UnmarshalJSON is the custom unmarshaler for DatasetResource struct.
26771func (dr *DatasetResource) UnmarshalJSON(body []byte) error {
26772	var m map[string]*json.RawMessage
26773	err := json.Unmarshal(body, &m)
26774	if err != nil {
26775		return err
26776	}
26777	for k, v := range m {
26778		switch k {
26779		case "properties":
26780			if v != nil {
26781				properties, err := unmarshalBasicDataset(*v)
26782				if err != nil {
26783					return err
26784				}
26785				dr.Properties = properties
26786			}
26787		case "id":
26788			if v != nil {
26789				var ID string
26790				err = json.Unmarshal(*v, &ID)
26791				if err != nil {
26792					return err
26793				}
26794				dr.ID = &ID
26795			}
26796		case "name":
26797			if v != nil {
26798				var name string
26799				err = json.Unmarshal(*v, &name)
26800				if err != nil {
26801					return err
26802				}
26803				dr.Name = &name
26804			}
26805		case "type":
26806			if v != nil {
26807				var typeVar string
26808				err = json.Unmarshal(*v, &typeVar)
26809				if err != nil {
26810					return err
26811				}
26812				dr.Type = &typeVar
26813			}
26814		case "etag":
26815			if v != nil {
26816				var etag string
26817				err = json.Unmarshal(*v, &etag)
26818				if err != nil {
26819					return err
26820				}
26821				dr.Etag = &etag
26822			}
26823		}
26824	}
26825
26826	return nil
26827}
26828
26829// BasicDatasetStorageFormat the format definition of a storage.
26830type BasicDatasetStorageFormat interface {
26831	AsParquetFormat() (*ParquetFormat, bool)
26832	AsOrcFormat() (*OrcFormat, bool)
26833	AsAvroFormat() (*AvroFormat, bool)
26834	AsJSONFormat() (*JSONFormat, bool)
26835	AsTextFormat() (*TextFormat, bool)
26836	AsDatasetStorageFormat() (*DatasetStorageFormat, bool)
26837}
26838
26839// DatasetStorageFormat the format definition of a storage.
26840type DatasetStorageFormat struct {
26841	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26842	AdditionalProperties map[string]interface{} `json:""`
26843	// Serializer - Serializer. Type: string (or Expression with resultType string).
26844	Serializer interface{} `json:"serializer,omitempty"`
26845	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
26846	Deserializer interface{} `json:"deserializer,omitempty"`
26847	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
26848	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
26849}
26850
26851func unmarshalBasicDatasetStorageFormat(body []byte) (BasicDatasetStorageFormat, error) {
26852	var m map[string]interface{}
26853	err := json.Unmarshal(body, &m)
26854	if err != nil {
26855		return nil, err
26856	}
26857
26858	switch m["type"] {
26859	case string(TypeParquetFormat):
26860		var pf ParquetFormat
26861		err := json.Unmarshal(body, &pf)
26862		return pf, err
26863	case string(TypeOrcFormat):
26864		var of OrcFormat
26865		err := json.Unmarshal(body, &of)
26866		return of, err
26867	case string(TypeAvroFormat):
26868		var af AvroFormat
26869		err := json.Unmarshal(body, &af)
26870		return af, err
26871	case string(TypeJSONFormat):
26872		var jf JSONFormat
26873		err := json.Unmarshal(body, &jf)
26874		return jf, err
26875	case string(TypeTextFormat):
26876		var tf TextFormat
26877		err := json.Unmarshal(body, &tf)
26878		return tf, err
26879	default:
26880		var dsf DatasetStorageFormat
26881		err := json.Unmarshal(body, &dsf)
26882		return dsf, err
26883	}
26884}
26885func unmarshalBasicDatasetStorageFormatArray(body []byte) ([]BasicDatasetStorageFormat, error) {
26886	var rawMessages []*json.RawMessage
26887	err := json.Unmarshal(body, &rawMessages)
26888	if err != nil {
26889		return nil, err
26890	}
26891
26892	dsfArray := make([]BasicDatasetStorageFormat, len(rawMessages))
26893
26894	for index, rawMessage := range rawMessages {
26895		dsf, err := unmarshalBasicDatasetStorageFormat(*rawMessage)
26896		if err != nil {
26897			return nil, err
26898		}
26899		dsfArray[index] = dsf
26900	}
26901	return dsfArray, nil
26902}
26903
26904// MarshalJSON is the custom marshaler for DatasetStorageFormat.
26905func (dsf DatasetStorageFormat) MarshalJSON() ([]byte, error) {
26906	dsf.Type = TypeDatasetStorageFormat
26907	objectMap := make(map[string]interface{})
26908	objectMap["serializer"] = dsf.Serializer
26909	objectMap["deserializer"] = dsf.Deserializer
26910	if dsf.Type != "" {
26911		objectMap["type"] = dsf.Type
26912	}
26913	for k, v := range dsf.AdditionalProperties {
26914		objectMap[k] = v
26915	}
26916	return json.Marshal(objectMap)
26917}
26918
26919// AsParquetFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26920func (dsf DatasetStorageFormat) AsParquetFormat() (*ParquetFormat, bool) {
26921	return nil, false
26922}
26923
26924// AsOrcFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26925func (dsf DatasetStorageFormat) AsOrcFormat() (*OrcFormat, bool) {
26926	return nil, false
26927}
26928
26929// AsAvroFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26930func (dsf DatasetStorageFormat) AsAvroFormat() (*AvroFormat, bool) {
26931	return nil, false
26932}
26933
26934// AsJSONFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26935func (dsf DatasetStorageFormat) AsJSONFormat() (*JSONFormat, bool) {
26936	return nil, false
26937}
26938
26939// AsTextFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26940func (dsf DatasetStorageFormat) AsTextFormat() (*TextFormat, bool) {
26941	return nil, false
26942}
26943
26944// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26945func (dsf DatasetStorageFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
26946	return &dsf, true
26947}
26948
26949// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for DatasetStorageFormat.
26950func (dsf DatasetStorageFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
26951	return &dsf, true
26952}
26953
26954// DatasetZipDeflateCompression the ZipDeflate compression method used on a dataset.
26955type DatasetZipDeflateCompression struct {
26956	// Level - The ZipDeflate compression level. Possible values include: 'Optimal', 'Fastest'
26957	Level DatasetCompressionLevel `json:"level,omitempty"`
26958	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
26959	AdditionalProperties map[string]interface{} `json:""`
26960	// Type - Possible values include: 'TypeDatasetCompression', 'TypeZipDeflate', 'TypeDeflate', 'TypeGZip', 'TypeBZip2'
26961	Type TypeBasicDatasetCompression `json:"type,omitempty"`
26962}
26963
26964// MarshalJSON is the custom marshaler for DatasetZipDeflateCompression.
26965func (dzdc DatasetZipDeflateCompression) MarshalJSON() ([]byte, error) {
26966	dzdc.Type = TypeZipDeflate
26967	objectMap := make(map[string]interface{})
26968	if dzdc.Level != "" {
26969		objectMap["level"] = dzdc.Level
26970	}
26971	if dzdc.Type != "" {
26972		objectMap["type"] = dzdc.Type
26973	}
26974	for k, v := range dzdc.AdditionalProperties {
26975		objectMap[k] = v
26976	}
26977	return json.Marshal(objectMap)
26978}
26979
26980// AsDatasetZipDeflateCompression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
26981func (dzdc DatasetZipDeflateCompression) AsDatasetZipDeflateCompression() (*DatasetZipDeflateCompression, bool) {
26982	return &dzdc, true
26983}
26984
26985// AsDatasetDeflateCompression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
26986func (dzdc DatasetZipDeflateCompression) AsDatasetDeflateCompression() (*DatasetDeflateCompression, bool) {
26987	return nil, false
26988}
26989
26990// AsDatasetGZipCompression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
26991func (dzdc DatasetZipDeflateCompression) AsDatasetGZipCompression() (*DatasetGZipCompression, bool) {
26992	return nil, false
26993}
26994
26995// AsDatasetBZip2Compression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
26996func (dzdc DatasetZipDeflateCompression) AsDatasetBZip2Compression() (*DatasetBZip2Compression, bool) {
26997	return nil, false
26998}
26999
27000// AsDatasetCompression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
27001func (dzdc DatasetZipDeflateCompression) AsDatasetCompression() (*DatasetCompression, bool) {
27002	return nil, false
27003}
27004
27005// AsBasicDatasetCompression is the BasicDatasetCompression implementation for DatasetZipDeflateCompression.
27006func (dzdc DatasetZipDeflateCompression) AsBasicDatasetCompression() (BasicDatasetCompression, bool) {
27007	return &dzdc, true
27008}
27009
27010// Db2LinkedService linked service for DB2 data source.
27011type Db2LinkedService struct {
27012	// Db2LinkedServiceTypeProperties - DB2 linked service properties.
27013	*Db2LinkedServiceTypeProperties `json:"typeProperties,omitempty"`
27014	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
27015	AdditionalProperties map[string]interface{} `json:""`
27016	// ConnectVia - The integration runtime reference.
27017	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
27018	// Description - Linked service description.
27019	Description *string `json:"description,omitempty"`
27020	// Parameters - Parameters for linked service.
27021	Parameters map[string]*ParameterSpecification `json:"parameters"`
27022	// Annotations - List of tags that can be used for describing the Dataset.
27023	Annotations *[]interface{} `json:"annotations,omitempty"`
27024	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
27025	Type TypeBasicLinkedService `json:"type,omitempty"`
27026}
27027
27028// MarshalJSON is the custom marshaler for Db2LinkedService.
27029func (d2ls Db2LinkedService) MarshalJSON() ([]byte, error) {
27030	d2ls.Type = TypeDb2
27031	objectMap := make(map[string]interface{})
27032	if d2ls.Db2LinkedServiceTypeProperties != nil {
27033		objectMap["typeProperties"] = d2ls.Db2LinkedServiceTypeProperties
27034	}
27035	if d2ls.ConnectVia != nil {
27036		objectMap["connectVia"] = d2ls.ConnectVia
27037	}
27038	if d2ls.Description != nil {
27039		objectMap["description"] = d2ls.Description
27040	}
27041	if d2ls.Parameters != nil {
27042		objectMap["parameters"] = d2ls.Parameters
27043	}
27044	if d2ls.Annotations != nil {
27045		objectMap["annotations"] = d2ls.Annotations
27046	}
27047	if d2ls.Type != "" {
27048		objectMap["type"] = d2ls.Type
27049	}
27050	for k, v := range d2ls.AdditionalProperties {
27051		objectMap[k] = v
27052	}
27053	return json.Marshal(objectMap)
27054}
27055
27056// AsResponsysLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27057func (d2ls Db2LinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
27058	return nil, false
27059}
27060
27061// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27062func (d2ls Db2LinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
27063	return nil, false
27064}
27065
27066// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27067func (d2ls Db2LinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
27068	return nil, false
27069}
27070
27071// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27072func (d2ls Db2LinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
27073	return nil, false
27074}
27075
27076// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27077func (d2ls Db2LinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
27078	return nil, false
27079}
27080
27081// AsNetezzaLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27082func (d2ls Db2LinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
27083	return nil, false
27084}
27085
27086// AsVerticaLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27087func (d2ls Db2LinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
27088	return nil, false
27089}
27090
27091// AsZohoLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27092func (d2ls Db2LinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
27093	return nil, false
27094}
27095
27096// AsXeroLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27097func (d2ls Db2LinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
27098	return nil, false
27099}
27100
27101// AsSquareLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27102func (d2ls Db2LinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
27103	return nil, false
27104}
27105
27106// AsSparkLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27107func (d2ls Db2LinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
27108	return nil, false
27109}
27110
27111// AsShopifyLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27112func (d2ls Db2LinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
27113	return nil, false
27114}
27115
27116// AsServiceNowLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27117func (d2ls Db2LinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
27118	return nil, false
27119}
27120
27121// AsQuickBooksLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27122func (d2ls Db2LinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
27123	return nil, false
27124}
27125
27126// AsPrestoLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27127func (d2ls Db2LinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
27128	return nil, false
27129}
27130
27131// AsPhoenixLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27132func (d2ls Db2LinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
27133	return nil, false
27134}
27135
27136// AsPaypalLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27137func (d2ls Db2LinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
27138	return nil, false
27139}
27140
27141// AsMarketoLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27142func (d2ls Db2LinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
27143	return nil, false
27144}
27145
27146// AsMariaDBLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27147func (d2ls Db2LinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
27148	return nil, false
27149}
27150
27151// AsMagentoLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27152func (d2ls Db2LinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
27153	return nil, false
27154}
27155
27156// AsJiraLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27157func (d2ls Db2LinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
27158	return nil, false
27159}
27160
27161// AsImpalaLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27162func (d2ls Db2LinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
27163	return nil, false
27164}
27165
27166// AsHubspotLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27167func (d2ls Db2LinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
27168	return nil, false
27169}
27170
27171// AsHiveLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27172func (d2ls Db2LinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
27173	return nil, false
27174}
27175
27176// AsHBaseLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27177func (d2ls Db2LinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
27178	return nil, false
27179}
27180
27181// AsGreenplumLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27182func (d2ls Db2LinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
27183	return nil, false
27184}
27185
27186// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27187func (d2ls Db2LinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
27188	return nil, false
27189}
27190
27191// AsEloquaLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27192func (d2ls Db2LinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
27193	return nil, false
27194}
27195
27196// AsDrillLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27197func (d2ls Db2LinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
27198	return nil, false
27199}
27200
27201// AsCouchbaseLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27202func (d2ls Db2LinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
27203	return nil, false
27204}
27205
27206// AsConcurLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27207func (d2ls Db2LinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
27208	return nil, false
27209}
27210
27211// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27212func (d2ls Db2LinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
27213	return nil, false
27214}
27215
27216// AsAmazonMWSLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27217func (d2ls Db2LinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
27218	return nil, false
27219}
27220
27221// AsSapHanaLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27222func (d2ls Db2LinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
27223	return nil, false
27224}
27225
27226// AsSapBWLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27227func (d2ls Db2LinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
27228	return nil, false
27229}
27230
27231// AsSftpServerLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27232func (d2ls Db2LinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
27233	return nil, false
27234}
27235
27236// AsFtpServerLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27237func (d2ls Db2LinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
27238	return nil, false
27239}
27240
27241// AsHTTPLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27242func (d2ls Db2LinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
27243	return nil, false
27244}
27245
27246// AsAzureSearchLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27247func (d2ls Db2LinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
27248	return nil, false
27249}
27250
27251// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27252func (d2ls Db2LinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
27253	return nil, false
27254}
27255
27256// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27257func (d2ls Db2LinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
27258	return nil, false
27259}
27260
27261// AsAmazonS3LinkedService is the BasicLinkedService implementation for Db2LinkedService.
27262func (d2ls Db2LinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
27263	return nil, false
27264}
27265
27266// AsSapEccLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27267func (d2ls Db2LinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
27268	return nil, false
27269}
27270
27271// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27272func (d2ls Db2LinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
27273	return nil, false
27274}
27275
27276// AsSalesforceLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27277func (d2ls Db2LinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
27278	return nil, false
27279}
27280
27281// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27282func (d2ls Db2LinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
27283	return nil, false
27284}
27285
27286// AsMongoDbLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27287func (d2ls Db2LinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
27288	return nil, false
27289}
27290
27291// AsCassandraLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27292func (d2ls Db2LinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
27293	return nil, false
27294}
27295
27296// AsWebLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27297func (d2ls Db2LinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
27298	return nil, false
27299}
27300
27301// AsODataLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27302func (d2ls Db2LinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
27303	return nil, false
27304}
27305
27306// AsHdfsLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27307func (d2ls Db2LinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
27308	return nil, false
27309}
27310
27311// AsOdbcLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27312func (d2ls Db2LinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
27313	return nil, false
27314}
27315
27316// AsAzureMLLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27317func (d2ls Db2LinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
27318	return nil, false
27319}
27320
27321// AsTeradataLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27322func (d2ls Db2LinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
27323	return nil, false
27324}
27325
27326// AsDb2LinkedService is the BasicLinkedService implementation for Db2LinkedService.
27327func (d2ls Db2LinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
27328	return &d2ls, true
27329}
27330
27331// AsSybaseLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27332func (d2ls Db2LinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
27333	return nil, false
27334}
27335
27336// AsPostgreSQLLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27337func (d2ls Db2LinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
27338	return nil, false
27339}
27340
27341// AsMySQLLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27342func (d2ls Db2LinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
27343	return nil, false
27344}
27345
27346// AsAzureMySQLLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27347func (d2ls Db2LinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
27348	return nil, false
27349}
27350
27351// AsOracleLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27352func (d2ls Db2LinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
27353	return nil, false
27354}
27355
27356// AsFileServerLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27357func (d2ls Db2LinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
27358	return nil, false
27359}
27360
27361// AsHDInsightLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27362func (d2ls Db2LinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
27363	return nil, false
27364}
27365
27366// AsDynamicsLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27367func (d2ls Db2LinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
27368	return nil, false
27369}
27370
27371// AsCosmosDbLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27372func (d2ls Db2LinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
27373	return nil, false
27374}
27375
27376// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27377func (d2ls Db2LinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
27378	return nil, false
27379}
27380
27381// AsAzureBatchLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27382func (d2ls Db2LinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
27383	return nil, false
27384}
27385
27386// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27387func (d2ls Db2LinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
27388	return nil, false
27389}
27390
27391// AsSQLServerLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27392func (d2ls Db2LinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
27393	return nil, false
27394}
27395
27396// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27397func (d2ls Db2LinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
27398	return nil, false
27399}
27400
27401// AsAzureStorageLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27402func (d2ls Db2LinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
27403	return nil, false
27404}
27405
27406// AsLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27407func (d2ls Db2LinkedService) AsLinkedService() (*LinkedService, bool) {
27408	return nil, false
27409}
27410
27411// AsBasicLinkedService is the BasicLinkedService implementation for Db2LinkedService.
27412func (d2ls Db2LinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
27413	return &d2ls, true
27414}
27415
27416// UnmarshalJSON is the custom unmarshaler for Db2LinkedService struct.
27417func (d2ls *Db2LinkedService) UnmarshalJSON(body []byte) error {
27418	var m map[string]*json.RawMessage
27419	err := json.Unmarshal(body, &m)
27420	if err != nil {
27421		return err
27422	}
27423	for k, v := range m {
27424		switch k {
27425		case "typeProperties":
27426			if v != nil {
27427				var db2LinkedServiceTypeProperties Db2LinkedServiceTypeProperties
27428				err = json.Unmarshal(*v, &db2LinkedServiceTypeProperties)
27429				if err != nil {
27430					return err
27431				}
27432				d2ls.Db2LinkedServiceTypeProperties = &db2LinkedServiceTypeProperties
27433			}
27434		default:
27435			if v != nil {
27436				var additionalProperties interface{}
27437				err = json.Unmarshal(*v, &additionalProperties)
27438				if err != nil {
27439					return err
27440				}
27441				if d2ls.AdditionalProperties == nil {
27442					d2ls.AdditionalProperties = make(map[string]interface{})
27443				}
27444				d2ls.AdditionalProperties[k] = additionalProperties
27445			}
27446		case "connectVia":
27447			if v != nil {
27448				var connectVia IntegrationRuntimeReference
27449				err = json.Unmarshal(*v, &connectVia)
27450				if err != nil {
27451					return err
27452				}
27453				d2ls.ConnectVia = &connectVia
27454			}
27455		case "description":
27456			if v != nil {
27457				var description string
27458				err = json.Unmarshal(*v, &description)
27459				if err != nil {
27460					return err
27461				}
27462				d2ls.Description = &description
27463			}
27464		case "parameters":
27465			if v != nil {
27466				var parameters map[string]*ParameterSpecification
27467				err = json.Unmarshal(*v, &parameters)
27468				if err != nil {
27469					return err
27470				}
27471				d2ls.Parameters = parameters
27472			}
27473		case "annotations":
27474			if v != nil {
27475				var annotations []interface{}
27476				err = json.Unmarshal(*v, &annotations)
27477				if err != nil {
27478					return err
27479				}
27480				d2ls.Annotations = &annotations
27481			}
27482		case "type":
27483			if v != nil {
27484				var typeVar TypeBasicLinkedService
27485				err = json.Unmarshal(*v, &typeVar)
27486				if err != nil {
27487					return err
27488				}
27489				d2ls.Type = typeVar
27490			}
27491		}
27492	}
27493
27494	return nil
27495}
27496
27497// Db2LinkedServiceTypeProperties dB2 linked service properties.
27498type Db2LinkedServiceTypeProperties struct {
27499	// Server - Server name for connection. Type: string (or Expression with resultType string).
27500	Server interface{} `json:"server,omitempty"`
27501	// Database - Database name for connection. Type: string (or Expression with resultType string).
27502	Database interface{} `json:"database,omitempty"`
27503	// Schema - Schema name for connection. Type: string (or Expression with resultType string).
27504	Schema interface{} `json:"schema,omitempty"`
27505	// AuthenticationType - AuthenticationType to be used for connection. Possible values include: 'Basic'
27506	AuthenticationType Db2AuthenticationType `json:"authenticationType,omitempty"`
27507	// Username - Username for authentication. Type: string (or Expression with resultType string).
27508	Username interface{} `json:"username,omitempty"`
27509	// Password - Password for authentication.
27510	Password BasicSecretBase `json:"password,omitempty"`
27511	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
27512	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
27513}
27514
27515// UnmarshalJSON is the custom unmarshaler for Db2LinkedServiceTypeProperties struct.
27516func (d2lstp *Db2LinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
27517	var m map[string]*json.RawMessage
27518	err := json.Unmarshal(body, &m)
27519	if err != nil {
27520		return err
27521	}
27522	for k, v := range m {
27523		switch k {
27524		case "server":
27525			if v != nil {
27526				var server interface{}
27527				err = json.Unmarshal(*v, &server)
27528				if err != nil {
27529					return err
27530				}
27531				d2lstp.Server = server
27532			}
27533		case "database":
27534			if v != nil {
27535				var databaseVar interface{}
27536				err = json.Unmarshal(*v, &databaseVar)
27537				if err != nil {
27538					return err
27539				}
27540				d2lstp.Database = databaseVar
27541			}
27542		case "schema":
27543			if v != nil {
27544				var schema interface{}
27545				err = json.Unmarshal(*v, &schema)
27546				if err != nil {
27547					return err
27548				}
27549				d2lstp.Schema = schema
27550			}
27551		case "authenticationType":
27552			if v != nil {
27553				var authenticationType Db2AuthenticationType
27554				err = json.Unmarshal(*v, &authenticationType)
27555				if err != nil {
27556					return err
27557				}
27558				d2lstp.AuthenticationType = authenticationType
27559			}
27560		case "username":
27561			if v != nil {
27562				var username interface{}
27563				err = json.Unmarshal(*v, &username)
27564				if err != nil {
27565					return err
27566				}
27567				d2lstp.Username = username
27568			}
27569		case "password":
27570			if v != nil {
27571				password, err := unmarshalBasicSecretBase(*v)
27572				if err != nil {
27573					return err
27574				}
27575				d2lstp.Password = password
27576			}
27577		case "encryptedCredential":
27578			if v != nil {
27579				var encryptedCredential interface{}
27580				err = json.Unmarshal(*v, &encryptedCredential)
27581				if err != nil {
27582					return err
27583				}
27584				d2lstp.EncryptedCredential = encryptedCredential
27585			}
27586		}
27587	}
27588
27589	return nil
27590}
27591
27592// DistcpSettings distcp settings.
27593type DistcpSettings struct {
27594	// ResourceManagerEndpoint - Specifies the Yarn ResourceManager endpoint. Type: string (or Expression with resultType string).
27595	ResourceManagerEndpoint interface{} `json:"resourceManagerEndpoint,omitempty"`
27596	// TempScriptPath - Specifies an existing folder path which will be used to store temp Distcp command script. The script file is generated by ADF and will be removed after Copy job finished. Type: string (or Expression with resultType string).
27597	TempScriptPath interface{} `json:"tempScriptPath,omitempty"`
27598	// DistcpOptions - Specifies the Distcp options. Type: string (or Expression with resultType string).
27599	DistcpOptions interface{} `json:"distcpOptions,omitempty"`
27600}
27601
27602// DocumentDbCollectionDataset microsoft Azure Document Database Collection dataset.
27603type DocumentDbCollectionDataset struct {
27604	// DocumentDbCollectionDatasetTypeProperties - DocumentDB Collection dataset properties.
27605	*DocumentDbCollectionDatasetTypeProperties `json:"typeProperties,omitempty"`
27606	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
27607	AdditionalProperties map[string]interface{} `json:""`
27608	// Description - Dataset description.
27609	Description *string `json:"description,omitempty"`
27610	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
27611	Structure interface{} `json:"structure,omitempty"`
27612	// LinkedServiceName - Linked service reference.
27613	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
27614	// Parameters - Parameters for dataset.
27615	Parameters map[string]*ParameterSpecification `json:"parameters"`
27616	// Annotations - List of tags that can be used for describing the Dataset.
27617	Annotations *[]interface{} `json:"annotations,omitempty"`
27618	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
27619	Type TypeBasicDataset `json:"type,omitempty"`
27620}
27621
27622// MarshalJSON is the custom marshaler for DocumentDbCollectionDataset.
27623func (ddcd DocumentDbCollectionDataset) MarshalJSON() ([]byte, error) {
27624	ddcd.Type = TypeDocumentDbCollection
27625	objectMap := make(map[string]interface{})
27626	if ddcd.DocumentDbCollectionDatasetTypeProperties != nil {
27627		objectMap["typeProperties"] = ddcd.DocumentDbCollectionDatasetTypeProperties
27628	}
27629	if ddcd.Description != nil {
27630		objectMap["description"] = ddcd.Description
27631	}
27632	objectMap["structure"] = ddcd.Structure
27633	if ddcd.LinkedServiceName != nil {
27634		objectMap["linkedServiceName"] = ddcd.LinkedServiceName
27635	}
27636	if ddcd.Parameters != nil {
27637		objectMap["parameters"] = ddcd.Parameters
27638	}
27639	if ddcd.Annotations != nil {
27640		objectMap["annotations"] = ddcd.Annotations
27641	}
27642	if ddcd.Type != "" {
27643		objectMap["type"] = ddcd.Type
27644	}
27645	for k, v := range ddcd.AdditionalProperties {
27646		objectMap[k] = v
27647	}
27648	return json.Marshal(objectMap)
27649}
27650
27651// AsResponsysObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27652func (ddcd DocumentDbCollectionDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
27653	return nil, false
27654}
27655
27656// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27657func (ddcd DocumentDbCollectionDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
27658	return nil, false
27659}
27660
27661// AsVerticaTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27662func (ddcd DocumentDbCollectionDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
27663	return nil, false
27664}
27665
27666// AsNetezzaTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27667func (ddcd DocumentDbCollectionDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
27668	return nil, false
27669}
27670
27671// AsZohoObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27672func (ddcd DocumentDbCollectionDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
27673	return nil, false
27674}
27675
27676// AsXeroObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27677func (ddcd DocumentDbCollectionDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
27678	return nil, false
27679}
27680
27681// AsSquareObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27682func (ddcd DocumentDbCollectionDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
27683	return nil, false
27684}
27685
27686// AsSparkObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27687func (ddcd DocumentDbCollectionDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
27688	return nil, false
27689}
27690
27691// AsShopifyObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27692func (ddcd DocumentDbCollectionDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
27693	return nil, false
27694}
27695
27696// AsServiceNowObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27697func (ddcd DocumentDbCollectionDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
27698	return nil, false
27699}
27700
27701// AsQuickBooksObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27702func (ddcd DocumentDbCollectionDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
27703	return nil, false
27704}
27705
27706// AsPrestoObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27707func (ddcd DocumentDbCollectionDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
27708	return nil, false
27709}
27710
27711// AsPhoenixObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27712func (ddcd DocumentDbCollectionDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
27713	return nil, false
27714}
27715
27716// AsPaypalObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27717func (ddcd DocumentDbCollectionDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
27718	return nil, false
27719}
27720
27721// AsMarketoObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27722func (ddcd DocumentDbCollectionDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
27723	return nil, false
27724}
27725
27726// AsMariaDBTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27727func (ddcd DocumentDbCollectionDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
27728	return nil, false
27729}
27730
27731// AsMagentoObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27732func (ddcd DocumentDbCollectionDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
27733	return nil, false
27734}
27735
27736// AsJiraObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27737func (ddcd DocumentDbCollectionDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
27738	return nil, false
27739}
27740
27741// AsImpalaObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27742func (ddcd DocumentDbCollectionDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
27743	return nil, false
27744}
27745
27746// AsHubspotObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27747func (ddcd DocumentDbCollectionDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
27748	return nil, false
27749}
27750
27751// AsHiveObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27752func (ddcd DocumentDbCollectionDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
27753	return nil, false
27754}
27755
27756// AsHBaseObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27757func (ddcd DocumentDbCollectionDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
27758	return nil, false
27759}
27760
27761// AsGreenplumTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27762func (ddcd DocumentDbCollectionDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
27763	return nil, false
27764}
27765
27766// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27767func (ddcd DocumentDbCollectionDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
27768	return nil, false
27769}
27770
27771// AsEloquaObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27772func (ddcd DocumentDbCollectionDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
27773	return nil, false
27774}
27775
27776// AsDrillTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27777func (ddcd DocumentDbCollectionDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
27778	return nil, false
27779}
27780
27781// AsCouchbaseTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27782func (ddcd DocumentDbCollectionDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
27783	return nil, false
27784}
27785
27786// AsConcurObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27787func (ddcd DocumentDbCollectionDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
27788	return nil, false
27789}
27790
27791// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27792func (ddcd DocumentDbCollectionDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
27793	return nil, false
27794}
27795
27796// AsAmazonMWSObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27797func (ddcd DocumentDbCollectionDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
27798	return nil, false
27799}
27800
27801// AsHTTPDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27802func (ddcd DocumentDbCollectionDataset) AsHTTPDataset() (*HTTPDataset, bool) {
27803	return nil, false
27804}
27805
27806// AsAzureSearchIndexDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27807func (ddcd DocumentDbCollectionDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
27808	return nil, false
27809}
27810
27811// AsWebTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27812func (ddcd DocumentDbCollectionDataset) AsWebTableDataset() (*WebTableDataset, bool) {
27813	return nil, false
27814}
27815
27816// AsSQLServerTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27817func (ddcd DocumentDbCollectionDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
27818	return nil, false
27819}
27820
27821// AsSapEccResourceDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27822func (ddcd DocumentDbCollectionDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
27823	return nil, false
27824}
27825
27826// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27827func (ddcd DocumentDbCollectionDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
27828	return nil, false
27829}
27830
27831// AsSalesforceObjectDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27832func (ddcd DocumentDbCollectionDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
27833	return nil, false
27834}
27835
27836// AsRelationalTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27837func (ddcd DocumentDbCollectionDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
27838	return nil, false
27839}
27840
27841// AsAzureMySQLTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27842func (ddcd DocumentDbCollectionDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
27843	return nil, false
27844}
27845
27846// AsOracleTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27847func (ddcd DocumentDbCollectionDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
27848	return nil, false
27849}
27850
27851// AsODataResourceDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27852func (ddcd DocumentDbCollectionDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
27853	return nil, false
27854}
27855
27856// AsMongoDbCollectionDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27857func (ddcd DocumentDbCollectionDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
27858	return nil, false
27859}
27860
27861// AsFileShareDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27862func (ddcd DocumentDbCollectionDataset) AsFileShareDataset() (*FileShareDataset, bool) {
27863	return nil, false
27864}
27865
27866// AsAzureDataLakeStoreDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27867func (ddcd DocumentDbCollectionDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
27868	return nil, false
27869}
27870
27871// AsDynamicsEntityDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27872func (ddcd DocumentDbCollectionDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
27873	return nil, false
27874}
27875
27876// AsDocumentDbCollectionDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27877func (ddcd DocumentDbCollectionDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
27878	return &ddcd, true
27879}
27880
27881// AsCustomDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27882func (ddcd DocumentDbCollectionDataset) AsCustomDataset() (*CustomDataset, bool) {
27883	return nil, false
27884}
27885
27886// AsCassandraTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27887func (ddcd DocumentDbCollectionDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
27888	return nil, false
27889}
27890
27891// AsAzureSQLDWTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27892func (ddcd DocumentDbCollectionDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
27893	return nil, false
27894}
27895
27896// AsAzureSQLTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27897func (ddcd DocumentDbCollectionDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
27898	return nil, false
27899}
27900
27901// AsAzureTableDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27902func (ddcd DocumentDbCollectionDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
27903	return nil, false
27904}
27905
27906// AsAzureBlobDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27907func (ddcd DocumentDbCollectionDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
27908	return nil, false
27909}
27910
27911// AsAmazonS3Dataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27912func (ddcd DocumentDbCollectionDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
27913	return nil, false
27914}
27915
27916// AsDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27917func (ddcd DocumentDbCollectionDataset) AsDataset() (*Dataset, bool) {
27918	return nil, false
27919}
27920
27921// AsBasicDataset is the BasicDataset implementation for DocumentDbCollectionDataset.
27922func (ddcd DocumentDbCollectionDataset) AsBasicDataset() (BasicDataset, bool) {
27923	return &ddcd, true
27924}
27925
27926// UnmarshalJSON is the custom unmarshaler for DocumentDbCollectionDataset struct.
27927func (ddcd *DocumentDbCollectionDataset) UnmarshalJSON(body []byte) error {
27928	var m map[string]*json.RawMessage
27929	err := json.Unmarshal(body, &m)
27930	if err != nil {
27931		return err
27932	}
27933	for k, v := range m {
27934		switch k {
27935		case "typeProperties":
27936			if v != nil {
27937				var documentDbCollectionDatasetTypeProperties DocumentDbCollectionDatasetTypeProperties
27938				err = json.Unmarshal(*v, &documentDbCollectionDatasetTypeProperties)
27939				if err != nil {
27940					return err
27941				}
27942				ddcd.DocumentDbCollectionDatasetTypeProperties = &documentDbCollectionDatasetTypeProperties
27943			}
27944		default:
27945			if v != nil {
27946				var additionalProperties interface{}
27947				err = json.Unmarshal(*v, &additionalProperties)
27948				if err != nil {
27949					return err
27950				}
27951				if ddcd.AdditionalProperties == nil {
27952					ddcd.AdditionalProperties = make(map[string]interface{})
27953				}
27954				ddcd.AdditionalProperties[k] = additionalProperties
27955			}
27956		case "description":
27957			if v != nil {
27958				var description string
27959				err = json.Unmarshal(*v, &description)
27960				if err != nil {
27961					return err
27962				}
27963				ddcd.Description = &description
27964			}
27965		case "structure":
27966			if v != nil {
27967				var structure interface{}
27968				err = json.Unmarshal(*v, &structure)
27969				if err != nil {
27970					return err
27971				}
27972				ddcd.Structure = structure
27973			}
27974		case "linkedServiceName":
27975			if v != nil {
27976				var linkedServiceName LinkedServiceReference
27977				err = json.Unmarshal(*v, &linkedServiceName)
27978				if err != nil {
27979					return err
27980				}
27981				ddcd.LinkedServiceName = &linkedServiceName
27982			}
27983		case "parameters":
27984			if v != nil {
27985				var parameters map[string]*ParameterSpecification
27986				err = json.Unmarshal(*v, &parameters)
27987				if err != nil {
27988					return err
27989				}
27990				ddcd.Parameters = parameters
27991			}
27992		case "annotations":
27993			if v != nil {
27994				var annotations []interface{}
27995				err = json.Unmarshal(*v, &annotations)
27996				if err != nil {
27997					return err
27998				}
27999				ddcd.Annotations = &annotations
28000			}
28001		case "type":
28002			if v != nil {
28003				var typeVar TypeBasicDataset
28004				err = json.Unmarshal(*v, &typeVar)
28005				if err != nil {
28006					return err
28007				}
28008				ddcd.Type = typeVar
28009			}
28010		}
28011	}
28012
28013	return nil
28014}
28015
28016// DocumentDbCollectionDatasetTypeProperties documentDB Collection dataset properties.
28017type DocumentDbCollectionDatasetTypeProperties struct {
28018	// CollectionName - Document Database collection name. Type: string (or Expression with resultType string).
28019	CollectionName interface{} `json:"collectionName,omitempty"`
28020}
28021
28022// DocumentDbCollectionSink a copy activity Document Database Collection sink.
28023type DocumentDbCollectionSink struct {
28024	// NestingSeparator - Nested properties separator. Default is . (dot). Type: string (or Expression with resultType string).
28025	NestingSeparator interface{} `json:"nestingSeparator,omitempty"`
28026	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
28027	AdditionalProperties map[string]interface{} `json:""`
28028	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
28029	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
28030	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
28031	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
28032	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
28033	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
28034	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
28035	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
28036	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
28037	Type TypeBasicCopySink `json:"type,omitempty"`
28038}
28039
28040// MarshalJSON is the custom marshaler for DocumentDbCollectionSink.
28041func (ddcs DocumentDbCollectionSink) MarshalJSON() ([]byte, error) {
28042	ddcs.Type = TypeDocumentDbCollectionSink
28043	objectMap := make(map[string]interface{})
28044	objectMap["nestingSeparator"] = ddcs.NestingSeparator
28045	objectMap["writeBatchSize"] = ddcs.WriteBatchSize
28046	objectMap["writeBatchTimeout"] = ddcs.WriteBatchTimeout
28047	objectMap["sinkRetryCount"] = ddcs.SinkRetryCount
28048	objectMap["sinkRetryWait"] = ddcs.SinkRetryWait
28049	if ddcs.Type != "" {
28050		objectMap["type"] = ddcs.Type
28051	}
28052	for k, v := range ddcs.AdditionalProperties {
28053		objectMap[k] = v
28054	}
28055	return json.Marshal(objectMap)
28056}
28057
28058// AsSalesforceSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28059func (ddcs DocumentDbCollectionSink) AsSalesforceSink() (*SalesforceSink, bool) {
28060	return nil, false
28061}
28062
28063// AsDynamicsSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28064func (ddcs DocumentDbCollectionSink) AsDynamicsSink() (*DynamicsSink, bool) {
28065	return nil, false
28066}
28067
28068// AsOdbcSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28069func (ddcs DocumentDbCollectionSink) AsOdbcSink() (*OdbcSink, bool) {
28070	return nil, false
28071}
28072
28073// AsAzureSearchIndexSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28074func (ddcs DocumentDbCollectionSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
28075	return nil, false
28076}
28077
28078// AsAzureDataLakeStoreSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28079func (ddcs DocumentDbCollectionSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
28080	return nil, false
28081}
28082
28083// AsOracleSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28084func (ddcs DocumentDbCollectionSink) AsOracleSink() (*OracleSink, bool) {
28085	return nil, false
28086}
28087
28088// AsSQLDWSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28089func (ddcs DocumentDbCollectionSink) AsSQLDWSink() (*SQLDWSink, bool) {
28090	return nil, false
28091}
28092
28093// AsSQLSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28094func (ddcs DocumentDbCollectionSink) AsSQLSink() (*SQLSink, bool) {
28095	return nil, false
28096}
28097
28098// AsDocumentDbCollectionSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28099func (ddcs DocumentDbCollectionSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
28100	return &ddcs, true
28101}
28102
28103// AsFileSystemSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28104func (ddcs DocumentDbCollectionSink) AsFileSystemSink() (*FileSystemSink, bool) {
28105	return nil, false
28106}
28107
28108// AsBlobSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28109func (ddcs DocumentDbCollectionSink) AsBlobSink() (*BlobSink, bool) {
28110	return nil, false
28111}
28112
28113// AsAzureTableSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28114func (ddcs DocumentDbCollectionSink) AsAzureTableSink() (*AzureTableSink, bool) {
28115	return nil, false
28116}
28117
28118// AsAzureQueueSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28119func (ddcs DocumentDbCollectionSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
28120	return nil, false
28121}
28122
28123// AsSapCloudForCustomerSink is the BasicCopySink implementation for DocumentDbCollectionSink.
28124func (ddcs DocumentDbCollectionSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
28125	return nil, false
28126}
28127
28128// AsCopySink is the BasicCopySink implementation for DocumentDbCollectionSink.
28129func (ddcs DocumentDbCollectionSink) AsCopySink() (*CopySink, bool) {
28130	return nil, false
28131}
28132
28133// AsBasicCopySink is the BasicCopySink implementation for DocumentDbCollectionSink.
28134func (ddcs DocumentDbCollectionSink) AsBasicCopySink() (BasicCopySink, bool) {
28135	return &ddcs, true
28136}
28137
28138// DocumentDbCollectionSource a copy activity Document Database Collection source.
28139type DocumentDbCollectionSource struct {
28140	// Query - Documents query. Type: string (or Expression with resultType string).
28141	Query interface{} `json:"query,omitempty"`
28142	// NestingSeparator - Nested properties separator. Type: string (or Expression with resultType string).
28143	NestingSeparator interface{} `json:"nestingSeparator,omitempty"`
28144	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
28145	AdditionalProperties map[string]interface{} `json:""`
28146	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
28147	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
28148	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
28149	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
28150	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
28151	Type TypeBasicCopySource `json:"type,omitempty"`
28152}
28153
28154// MarshalJSON is the custom marshaler for DocumentDbCollectionSource.
28155func (ddcs DocumentDbCollectionSource) MarshalJSON() ([]byte, error) {
28156	ddcs.Type = TypeDocumentDbCollectionSource
28157	objectMap := make(map[string]interface{})
28158	objectMap["query"] = ddcs.Query
28159	objectMap["nestingSeparator"] = ddcs.NestingSeparator
28160	objectMap["sourceRetryCount"] = ddcs.SourceRetryCount
28161	objectMap["sourceRetryWait"] = ddcs.SourceRetryWait
28162	if ddcs.Type != "" {
28163		objectMap["type"] = ddcs.Type
28164	}
28165	for k, v := range ddcs.AdditionalProperties {
28166		objectMap[k] = v
28167	}
28168	return json.Marshal(objectMap)
28169}
28170
28171// AsAmazonRedshiftSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28172func (ddcs DocumentDbCollectionSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
28173	return nil, false
28174}
28175
28176// AsResponsysSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28177func (ddcs DocumentDbCollectionSource) AsResponsysSource() (*ResponsysSource, bool) {
28178	return nil, false
28179}
28180
28181// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28182func (ddcs DocumentDbCollectionSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
28183	return nil, false
28184}
28185
28186// AsVerticaSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28187func (ddcs DocumentDbCollectionSource) AsVerticaSource() (*VerticaSource, bool) {
28188	return nil, false
28189}
28190
28191// AsNetezzaSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28192func (ddcs DocumentDbCollectionSource) AsNetezzaSource() (*NetezzaSource, bool) {
28193	return nil, false
28194}
28195
28196// AsZohoSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28197func (ddcs DocumentDbCollectionSource) AsZohoSource() (*ZohoSource, bool) {
28198	return nil, false
28199}
28200
28201// AsXeroSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28202func (ddcs DocumentDbCollectionSource) AsXeroSource() (*XeroSource, bool) {
28203	return nil, false
28204}
28205
28206// AsSquareSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28207func (ddcs DocumentDbCollectionSource) AsSquareSource() (*SquareSource, bool) {
28208	return nil, false
28209}
28210
28211// AsSparkSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28212func (ddcs DocumentDbCollectionSource) AsSparkSource() (*SparkSource, bool) {
28213	return nil, false
28214}
28215
28216// AsShopifySource is the BasicCopySource implementation for DocumentDbCollectionSource.
28217func (ddcs DocumentDbCollectionSource) AsShopifySource() (*ShopifySource, bool) {
28218	return nil, false
28219}
28220
28221// AsServiceNowSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28222func (ddcs DocumentDbCollectionSource) AsServiceNowSource() (*ServiceNowSource, bool) {
28223	return nil, false
28224}
28225
28226// AsQuickBooksSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28227func (ddcs DocumentDbCollectionSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
28228	return nil, false
28229}
28230
28231// AsPrestoSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28232func (ddcs DocumentDbCollectionSource) AsPrestoSource() (*PrestoSource, bool) {
28233	return nil, false
28234}
28235
28236// AsPhoenixSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28237func (ddcs DocumentDbCollectionSource) AsPhoenixSource() (*PhoenixSource, bool) {
28238	return nil, false
28239}
28240
28241// AsPaypalSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28242func (ddcs DocumentDbCollectionSource) AsPaypalSource() (*PaypalSource, bool) {
28243	return nil, false
28244}
28245
28246// AsMarketoSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28247func (ddcs DocumentDbCollectionSource) AsMarketoSource() (*MarketoSource, bool) {
28248	return nil, false
28249}
28250
28251// AsMariaDBSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28252func (ddcs DocumentDbCollectionSource) AsMariaDBSource() (*MariaDBSource, bool) {
28253	return nil, false
28254}
28255
28256// AsMagentoSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28257func (ddcs DocumentDbCollectionSource) AsMagentoSource() (*MagentoSource, bool) {
28258	return nil, false
28259}
28260
28261// AsJiraSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28262func (ddcs DocumentDbCollectionSource) AsJiraSource() (*JiraSource, bool) {
28263	return nil, false
28264}
28265
28266// AsImpalaSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28267func (ddcs DocumentDbCollectionSource) AsImpalaSource() (*ImpalaSource, bool) {
28268	return nil, false
28269}
28270
28271// AsHubspotSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28272func (ddcs DocumentDbCollectionSource) AsHubspotSource() (*HubspotSource, bool) {
28273	return nil, false
28274}
28275
28276// AsHiveSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28277func (ddcs DocumentDbCollectionSource) AsHiveSource() (*HiveSource, bool) {
28278	return nil, false
28279}
28280
28281// AsHBaseSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28282func (ddcs DocumentDbCollectionSource) AsHBaseSource() (*HBaseSource, bool) {
28283	return nil, false
28284}
28285
28286// AsGreenplumSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28287func (ddcs DocumentDbCollectionSource) AsGreenplumSource() (*GreenplumSource, bool) {
28288	return nil, false
28289}
28290
28291// AsGoogleBigQuerySource is the BasicCopySource implementation for DocumentDbCollectionSource.
28292func (ddcs DocumentDbCollectionSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
28293	return nil, false
28294}
28295
28296// AsEloquaSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28297func (ddcs DocumentDbCollectionSource) AsEloquaSource() (*EloquaSource, bool) {
28298	return nil, false
28299}
28300
28301// AsDrillSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28302func (ddcs DocumentDbCollectionSource) AsDrillSource() (*DrillSource, bool) {
28303	return nil, false
28304}
28305
28306// AsCouchbaseSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28307func (ddcs DocumentDbCollectionSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
28308	return nil, false
28309}
28310
28311// AsConcurSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28312func (ddcs DocumentDbCollectionSource) AsConcurSource() (*ConcurSource, bool) {
28313	return nil, false
28314}
28315
28316// AsAzurePostgreSQLSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28317func (ddcs DocumentDbCollectionSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
28318	return nil, false
28319}
28320
28321// AsAmazonMWSSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28322func (ddcs DocumentDbCollectionSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
28323	return nil, false
28324}
28325
28326// AsHTTPSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28327func (ddcs DocumentDbCollectionSource) AsHTTPSource() (*HTTPSource, bool) {
28328	return nil, false
28329}
28330
28331// AsAzureDataLakeStoreSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28332func (ddcs DocumentDbCollectionSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
28333	return nil, false
28334}
28335
28336// AsMongoDbSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28337func (ddcs DocumentDbCollectionSource) AsMongoDbSource() (*MongoDbSource, bool) {
28338	return nil, false
28339}
28340
28341// AsCassandraSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28342func (ddcs DocumentDbCollectionSource) AsCassandraSource() (*CassandraSource, bool) {
28343	return nil, false
28344}
28345
28346// AsWebSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28347func (ddcs DocumentDbCollectionSource) AsWebSource() (*WebSource, bool) {
28348	return nil, false
28349}
28350
28351// AsOracleSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28352func (ddcs DocumentDbCollectionSource) AsOracleSource() (*OracleSource, bool) {
28353	return nil, false
28354}
28355
28356// AsAzureMySQLSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28357func (ddcs DocumentDbCollectionSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
28358	return nil, false
28359}
28360
28361// AsHdfsSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28362func (ddcs DocumentDbCollectionSource) AsHdfsSource() (*HdfsSource, bool) {
28363	return nil, false
28364}
28365
28366// AsFileSystemSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28367func (ddcs DocumentDbCollectionSource) AsFileSystemSource() (*FileSystemSource, bool) {
28368	return nil, false
28369}
28370
28371// AsSQLDWSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28372func (ddcs DocumentDbCollectionSource) AsSQLDWSource() (*SQLDWSource, bool) {
28373	return nil, false
28374}
28375
28376// AsSQLSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28377func (ddcs DocumentDbCollectionSource) AsSQLSource() (*SQLSource, bool) {
28378	return nil, false
28379}
28380
28381// AsSapEccSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28382func (ddcs DocumentDbCollectionSource) AsSapEccSource() (*SapEccSource, bool) {
28383	return nil, false
28384}
28385
28386// AsSapCloudForCustomerSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28387func (ddcs DocumentDbCollectionSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
28388	return nil, false
28389}
28390
28391// AsSalesforceSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28392func (ddcs DocumentDbCollectionSource) AsSalesforceSource() (*SalesforceSource, bool) {
28393	return nil, false
28394}
28395
28396// AsRelationalSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28397func (ddcs DocumentDbCollectionSource) AsRelationalSource() (*RelationalSource, bool) {
28398	return nil, false
28399}
28400
28401// AsDynamicsSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28402func (ddcs DocumentDbCollectionSource) AsDynamicsSource() (*DynamicsSource, bool) {
28403	return nil, false
28404}
28405
28406// AsDocumentDbCollectionSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28407func (ddcs DocumentDbCollectionSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
28408	return &ddcs, true
28409}
28410
28411// AsBlobSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28412func (ddcs DocumentDbCollectionSource) AsBlobSource() (*BlobSource, bool) {
28413	return nil, false
28414}
28415
28416// AsAzureTableSource is the BasicCopySource implementation for DocumentDbCollectionSource.
28417func (ddcs DocumentDbCollectionSource) AsAzureTableSource() (*AzureTableSource, bool) {
28418	return nil, false
28419}
28420
28421// AsCopySource is the BasicCopySource implementation for DocumentDbCollectionSource.
28422func (ddcs DocumentDbCollectionSource) AsCopySource() (*CopySource, bool) {
28423	return nil, false
28424}
28425
28426// AsBasicCopySource is the BasicCopySource implementation for DocumentDbCollectionSource.
28427func (ddcs DocumentDbCollectionSource) AsBasicCopySource() (BasicCopySource, bool) {
28428	return &ddcs, true
28429}
28430
28431// DrillLinkedService drill server linked service.
28432type DrillLinkedService struct {
28433	// DrillLinkedServiceTypeProperties - Drill server linked service properties.
28434	*DrillLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
28435	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
28436	AdditionalProperties map[string]interface{} `json:""`
28437	// ConnectVia - The integration runtime reference.
28438	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
28439	// Description - Linked service description.
28440	Description *string `json:"description,omitempty"`
28441	// Parameters - Parameters for linked service.
28442	Parameters map[string]*ParameterSpecification `json:"parameters"`
28443	// Annotations - List of tags that can be used for describing the Dataset.
28444	Annotations *[]interface{} `json:"annotations,omitempty"`
28445	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
28446	Type TypeBasicLinkedService `json:"type,omitempty"`
28447}
28448
28449// MarshalJSON is the custom marshaler for DrillLinkedService.
28450func (dls DrillLinkedService) MarshalJSON() ([]byte, error) {
28451	dls.Type = TypeDrill
28452	objectMap := make(map[string]interface{})
28453	if dls.DrillLinkedServiceTypeProperties != nil {
28454		objectMap["typeProperties"] = dls.DrillLinkedServiceTypeProperties
28455	}
28456	if dls.ConnectVia != nil {
28457		objectMap["connectVia"] = dls.ConnectVia
28458	}
28459	if dls.Description != nil {
28460		objectMap["description"] = dls.Description
28461	}
28462	if dls.Parameters != nil {
28463		objectMap["parameters"] = dls.Parameters
28464	}
28465	if dls.Annotations != nil {
28466		objectMap["annotations"] = dls.Annotations
28467	}
28468	if dls.Type != "" {
28469		objectMap["type"] = dls.Type
28470	}
28471	for k, v := range dls.AdditionalProperties {
28472		objectMap[k] = v
28473	}
28474	return json.Marshal(objectMap)
28475}
28476
28477// AsResponsysLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28478func (dls DrillLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
28479	return nil, false
28480}
28481
28482// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28483func (dls DrillLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
28484	return nil, false
28485}
28486
28487// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28488func (dls DrillLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
28489	return nil, false
28490}
28491
28492// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28493func (dls DrillLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
28494	return nil, false
28495}
28496
28497// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28498func (dls DrillLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
28499	return nil, false
28500}
28501
28502// AsNetezzaLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28503func (dls DrillLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
28504	return nil, false
28505}
28506
28507// AsVerticaLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28508func (dls DrillLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
28509	return nil, false
28510}
28511
28512// AsZohoLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28513func (dls DrillLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
28514	return nil, false
28515}
28516
28517// AsXeroLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28518func (dls DrillLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
28519	return nil, false
28520}
28521
28522// AsSquareLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28523func (dls DrillLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
28524	return nil, false
28525}
28526
28527// AsSparkLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28528func (dls DrillLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
28529	return nil, false
28530}
28531
28532// AsShopifyLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28533func (dls DrillLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
28534	return nil, false
28535}
28536
28537// AsServiceNowLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28538func (dls DrillLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
28539	return nil, false
28540}
28541
28542// AsQuickBooksLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28543func (dls DrillLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
28544	return nil, false
28545}
28546
28547// AsPrestoLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28548func (dls DrillLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
28549	return nil, false
28550}
28551
28552// AsPhoenixLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28553func (dls DrillLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
28554	return nil, false
28555}
28556
28557// AsPaypalLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28558func (dls DrillLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
28559	return nil, false
28560}
28561
28562// AsMarketoLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28563func (dls DrillLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
28564	return nil, false
28565}
28566
28567// AsMariaDBLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28568func (dls DrillLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
28569	return nil, false
28570}
28571
28572// AsMagentoLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28573func (dls DrillLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
28574	return nil, false
28575}
28576
28577// AsJiraLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28578func (dls DrillLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
28579	return nil, false
28580}
28581
28582// AsImpalaLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28583func (dls DrillLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
28584	return nil, false
28585}
28586
28587// AsHubspotLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28588func (dls DrillLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
28589	return nil, false
28590}
28591
28592// AsHiveLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28593func (dls DrillLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
28594	return nil, false
28595}
28596
28597// AsHBaseLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28598func (dls DrillLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
28599	return nil, false
28600}
28601
28602// AsGreenplumLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28603func (dls DrillLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
28604	return nil, false
28605}
28606
28607// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28608func (dls DrillLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
28609	return nil, false
28610}
28611
28612// AsEloquaLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28613func (dls DrillLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
28614	return nil, false
28615}
28616
28617// AsDrillLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28618func (dls DrillLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
28619	return &dls, true
28620}
28621
28622// AsCouchbaseLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28623func (dls DrillLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
28624	return nil, false
28625}
28626
28627// AsConcurLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28628func (dls DrillLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
28629	return nil, false
28630}
28631
28632// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28633func (dls DrillLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
28634	return nil, false
28635}
28636
28637// AsAmazonMWSLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28638func (dls DrillLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
28639	return nil, false
28640}
28641
28642// AsSapHanaLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28643func (dls DrillLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
28644	return nil, false
28645}
28646
28647// AsSapBWLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28648func (dls DrillLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
28649	return nil, false
28650}
28651
28652// AsSftpServerLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28653func (dls DrillLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
28654	return nil, false
28655}
28656
28657// AsFtpServerLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28658func (dls DrillLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
28659	return nil, false
28660}
28661
28662// AsHTTPLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28663func (dls DrillLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
28664	return nil, false
28665}
28666
28667// AsAzureSearchLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28668func (dls DrillLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
28669	return nil, false
28670}
28671
28672// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28673func (dls DrillLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
28674	return nil, false
28675}
28676
28677// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28678func (dls DrillLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
28679	return nil, false
28680}
28681
28682// AsAmazonS3LinkedService is the BasicLinkedService implementation for DrillLinkedService.
28683func (dls DrillLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
28684	return nil, false
28685}
28686
28687// AsSapEccLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28688func (dls DrillLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
28689	return nil, false
28690}
28691
28692// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28693func (dls DrillLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
28694	return nil, false
28695}
28696
28697// AsSalesforceLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28698func (dls DrillLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
28699	return nil, false
28700}
28701
28702// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28703func (dls DrillLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
28704	return nil, false
28705}
28706
28707// AsMongoDbLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28708func (dls DrillLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
28709	return nil, false
28710}
28711
28712// AsCassandraLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28713func (dls DrillLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
28714	return nil, false
28715}
28716
28717// AsWebLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28718func (dls DrillLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
28719	return nil, false
28720}
28721
28722// AsODataLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28723func (dls DrillLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
28724	return nil, false
28725}
28726
28727// AsHdfsLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28728func (dls DrillLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
28729	return nil, false
28730}
28731
28732// AsOdbcLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28733func (dls DrillLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
28734	return nil, false
28735}
28736
28737// AsAzureMLLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28738func (dls DrillLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
28739	return nil, false
28740}
28741
28742// AsTeradataLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28743func (dls DrillLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
28744	return nil, false
28745}
28746
28747// AsDb2LinkedService is the BasicLinkedService implementation for DrillLinkedService.
28748func (dls DrillLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
28749	return nil, false
28750}
28751
28752// AsSybaseLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28753func (dls DrillLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
28754	return nil, false
28755}
28756
28757// AsPostgreSQLLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28758func (dls DrillLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
28759	return nil, false
28760}
28761
28762// AsMySQLLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28763func (dls DrillLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
28764	return nil, false
28765}
28766
28767// AsAzureMySQLLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28768func (dls DrillLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
28769	return nil, false
28770}
28771
28772// AsOracleLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28773func (dls DrillLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
28774	return nil, false
28775}
28776
28777// AsFileServerLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28778func (dls DrillLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
28779	return nil, false
28780}
28781
28782// AsHDInsightLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28783func (dls DrillLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
28784	return nil, false
28785}
28786
28787// AsDynamicsLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28788func (dls DrillLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
28789	return nil, false
28790}
28791
28792// AsCosmosDbLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28793func (dls DrillLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
28794	return nil, false
28795}
28796
28797// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28798func (dls DrillLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
28799	return nil, false
28800}
28801
28802// AsAzureBatchLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28803func (dls DrillLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
28804	return nil, false
28805}
28806
28807// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28808func (dls DrillLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
28809	return nil, false
28810}
28811
28812// AsSQLServerLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28813func (dls DrillLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
28814	return nil, false
28815}
28816
28817// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28818func (dls DrillLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
28819	return nil, false
28820}
28821
28822// AsAzureStorageLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28823func (dls DrillLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
28824	return nil, false
28825}
28826
28827// AsLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28828func (dls DrillLinkedService) AsLinkedService() (*LinkedService, bool) {
28829	return nil, false
28830}
28831
28832// AsBasicLinkedService is the BasicLinkedService implementation for DrillLinkedService.
28833func (dls DrillLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
28834	return &dls, true
28835}
28836
28837// UnmarshalJSON is the custom unmarshaler for DrillLinkedService struct.
28838func (dls *DrillLinkedService) UnmarshalJSON(body []byte) error {
28839	var m map[string]*json.RawMessage
28840	err := json.Unmarshal(body, &m)
28841	if err != nil {
28842		return err
28843	}
28844	for k, v := range m {
28845		switch k {
28846		case "typeProperties":
28847			if v != nil {
28848				var drillLinkedServiceTypeProperties DrillLinkedServiceTypeProperties
28849				err = json.Unmarshal(*v, &drillLinkedServiceTypeProperties)
28850				if err != nil {
28851					return err
28852				}
28853				dls.DrillLinkedServiceTypeProperties = &drillLinkedServiceTypeProperties
28854			}
28855		default:
28856			if v != nil {
28857				var additionalProperties interface{}
28858				err = json.Unmarshal(*v, &additionalProperties)
28859				if err != nil {
28860					return err
28861				}
28862				if dls.AdditionalProperties == nil {
28863					dls.AdditionalProperties = make(map[string]interface{})
28864				}
28865				dls.AdditionalProperties[k] = additionalProperties
28866			}
28867		case "connectVia":
28868			if v != nil {
28869				var connectVia IntegrationRuntimeReference
28870				err = json.Unmarshal(*v, &connectVia)
28871				if err != nil {
28872					return err
28873				}
28874				dls.ConnectVia = &connectVia
28875			}
28876		case "description":
28877			if v != nil {
28878				var description string
28879				err = json.Unmarshal(*v, &description)
28880				if err != nil {
28881					return err
28882				}
28883				dls.Description = &description
28884			}
28885		case "parameters":
28886			if v != nil {
28887				var parameters map[string]*ParameterSpecification
28888				err = json.Unmarshal(*v, &parameters)
28889				if err != nil {
28890					return err
28891				}
28892				dls.Parameters = parameters
28893			}
28894		case "annotations":
28895			if v != nil {
28896				var annotations []interface{}
28897				err = json.Unmarshal(*v, &annotations)
28898				if err != nil {
28899					return err
28900				}
28901				dls.Annotations = &annotations
28902			}
28903		case "type":
28904			if v != nil {
28905				var typeVar TypeBasicLinkedService
28906				err = json.Unmarshal(*v, &typeVar)
28907				if err != nil {
28908					return err
28909				}
28910				dls.Type = typeVar
28911			}
28912		}
28913	}
28914
28915	return nil
28916}
28917
28918// DrillLinkedServiceTypeProperties drill server linked service properties.
28919type DrillLinkedServiceTypeProperties struct {
28920	// ConnectionString - An ODBC connection string.
28921	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
28922	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
28923	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
28924}
28925
28926// UnmarshalJSON is the custom unmarshaler for DrillLinkedServiceTypeProperties struct.
28927func (dlstp *DrillLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
28928	var m map[string]*json.RawMessage
28929	err := json.Unmarshal(body, &m)
28930	if err != nil {
28931		return err
28932	}
28933	for k, v := range m {
28934		switch k {
28935		case "connectionString":
28936			if v != nil {
28937				connectionString, err := unmarshalBasicSecretBase(*v)
28938				if err != nil {
28939					return err
28940				}
28941				dlstp.ConnectionString = connectionString
28942			}
28943		case "encryptedCredential":
28944			if v != nil {
28945				var encryptedCredential interface{}
28946				err = json.Unmarshal(*v, &encryptedCredential)
28947				if err != nil {
28948					return err
28949				}
28950				dlstp.EncryptedCredential = encryptedCredential
28951			}
28952		}
28953	}
28954
28955	return nil
28956}
28957
28958// DrillSource a copy activity Drill server source.
28959type DrillSource struct {
28960	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
28961	Query interface{} `json:"query,omitempty"`
28962	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
28963	AdditionalProperties map[string]interface{} `json:""`
28964	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
28965	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
28966	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
28967	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
28968	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
28969	Type TypeBasicCopySource `json:"type,omitempty"`
28970}
28971
28972// MarshalJSON is the custom marshaler for DrillSource.
28973func (ds DrillSource) MarshalJSON() ([]byte, error) {
28974	ds.Type = TypeDrillSource
28975	objectMap := make(map[string]interface{})
28976	objectMap["query"] = ds.Query
28977	objectMap["sourceRetryCount"] = ds.SourceRetryCount
28978	objectMap["sourceRetryWait"] = ds.SourceRetryWait
28979	if ds.Type != "" {
28980		objectMap["type"] = ds.Type
28981	}
28982	for k, v := range ds.AdditionalProperties {
28983		objectMap[k] = v
28984	}
28985	return json.Marshal(objectMap)
28986}
28987
28988// AsAmazonRedshiftSource is the BasicCopySource implementation for DrillSource.
28989func (ds DrillSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
28990	return nil, false
28991}
28992
28993// AsResponsysSource is the BasicCopySource implementation for DrillSource.
28994func (ds DrillSource) AsResponsysSource() (*ResponsysSource, bool) {
28995	return nil, false
28996}
28997
28998// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for DrillSource.
28999func (ds DrillSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
29000	return nil, false
29001}
29002
29003// AsVerticaSource is the BasicCopySource implementation for DrillSource.
29004func (ds DrillSource) AsVerticaSource() (*VerticaSource, bool) {
29005	return nil, false
29006}
29007
29008// AsNetezzaSource is the BasicCopySource implementation for DrillSource.
29009func (ds DrillSource) AsNetezzaSource() (*NetezzaSource, bool) {
29010	return nil, false
29011}
29012
29013// AsZohoSource is the BasicCopySource implementation for DrillSource.
29014func (ds DrillSource) AsZohoSource() (*ZohoSource, bool) {
29015	return nil, false
29016}
29017
29018// AsXeroSource is the BasicCopySource implementation for DrillSource.
29019func (ds DrillSource) AsXeroSource() (*XeroSource, bool) {
29020	return nil, false
29021}
29022
29023// AsSquareSource is the BasicCopySource implementation for DrillSource.
29024func (ds DrillSource) AsSquareSource() (*SquareSource, bool) {
29025	return nil, false
29026}
29027
29028// AsSparkSource is the BasicCopySource implementation for DrillSource.
29029func (ds DrillSource) AsSparkSource() (*SparkSource, bool) {
29030	return nil, false
29031}
29032
29033// AsShopifySource is the BasicCopySource implementation for DrillSource.
29034func (ds DrillSource) AsShopifySource() (*ShopifySource, bool) {
29035	return nil, false
29036}
29037
29038// AsServiceNowSource is the BasicCopySource implementation for DrillSource.
29039func (ds DrillSource) AsServiceNowSource() (*ServiceNowSource, bool) {
29040	return nil, false
29041}
29042
29043// AsQuickBooksSource is the BasicCopySource implementation for DrillSource.
29044func (ds DrillSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
29045	return nil, false
29046}
29047
29048// AsPrestoSource is the BasicCopySource implementation for DrillSource.
29049func (ds DrillSource) AsPrestoSource() (*PrestoSource, bool) {
29050	return nil, false
29051}
29052
29053// AsPhoenixSource is the BasicCopySource implementation for DrillSource.
29054func (ds DrillSource) AsPhoenixSource() (*PhoenixSource, bool) {
29055	return nil, false
29056}
29057
29058// AsPaypalSource is the BasicCopySource implementation for DrillSource.
29059func (ds DrillSource) AsPaypalSource() (*PaypalSource, bool) {
29060	return nil, false
29061}
29062
29063// AsMarketoSource is the BasicCopySource implementation for DrillSource.
29064func (ds DrillSource) AsMarketoSource() (*MarketoSource, bool) {
29065	return nil, false
29066}
29067
29068// AsMariaDBSource is the BasicCopySource implementation for DrillSource.
29069func (ds DrillSource) AsMariaDBSource() (*MariaDBSource, bool) {
29070	return nil, false
29071}
29072
29073// AsMagentoSource is the BasicCopySource implementation for DrillSource.
29074func (ds DrillSource) AsMagentoSource() (*MagentoSource, bool) {
29075	return nil, false
29076}
29077
29078// AsJiraSource is the BasicCopySource implementation for DrillSource.
29079func (ds DrillSource) AsJiraSource() (*JiraSource, bool) {
29080	return nil, false
29081}
29082
29083// AsImpalaSource is the BasicCopySource implementation for DrillSource.
29084func (ds DrillSource) AsImpalaSource() (*ImpalaSource, bool) {
29085	return nil, false
29086}
29087
29088// AsHubspotSource is the BasicCopySource implementation for DrillSource.
29089func (ds DrillSource) AsHubspotSource() (*HubspotSource, bool) {
29090	return nil, false
29091}
29092
29093// AsHiveSource is the BasicCopySource implementation for DrillSource.
29094func (ds DrillSource) AsHiveSource() (*HiveSource, bool) {
29095	return nil, false
29096}
29097
29098// AsHBaseSource is the BasicCopySource implementation for DrillSource.
29099func (ds DrillSource) AsHBaseSource() (*HBaseSource, bool) {
29100	return nil, false
29101}
29102
29103// AsGreenplumSource is the BasicCopySource implementation for DrillSource.
29104func (ds DrillSource) AsGreenplumSource() (*GreenplumSource, bool) {
29105	return nil, false
29106}
29107
29108// AsGoogleBigQuerySource is the BasicCopySource implementation for DrillSource.
29109func (ds DrillSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
29110	return nil, false
29111}
29112
29113// AsEloquaSource is the BasicCopySource implementation for DrillSource.
29114func (ds DrillSource) AsEloquaSource() (*EloquaSource, bool) {
29115	return nil, false
29116}
29117
29118// AsDrillSource is the BasicCopySource implementation for DrillSource.
29119func (ds DrillSource) AsDrillSource() (*DrillSource, bool) {
29120	return &ds, true
29121}
29122
29123// AsCouchbaseSource is the BasicCopySource implementation for DrillSource.
29124func (ds DrillSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
29125	return nil, false
29126}
29127
29128// AsConcurSource is the BasicCopySource implementation for DrillSource.
29129func (ds DrillSource) AsConcurSource() (*ConcurSource, bool) {
29130	return nil, false
29131}
29132
29133// AsAzurePostgreSQLSource is the BasicCopySource implementation for DrillSource.
29134func (ds DrillSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
29135	return nil, false
29136}
29137
29138// AsAmazonMWSSource is the BasicCopySource implementation for DrillSource.
29139func (ds DrillSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
29140	return nil, false
29141}
29142
29143// AsHTTPSource is the BasicCopySource implementation for DrillSource.
29144func (ds DrillSource) AsHTTPSource() (*HTTPSource, bool) {
29145	return nil, false
29146}
29147
29148// AsAzureDataLakeStoreSource is the BasicCopySource implementation for DrillSource.
29149func (ds DrillSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
29150	return nil, false
29151}
29152
29153// AsMongoDbSource is the BasicCopySource implementation for DrillSource.
29154func (ds DrillSource) AsMongoDbSource() (*MongoDbSource, bool) {
29155	return nil, false
29156}
29157
29158// AsCassandraSource is the BasicCopySource implementation for DrillSource.
29159func (ds DrillSource) AsCassandraSource() (*CassandraSource, bool) {
29160	return nil, false
29161}
29162
29163// AsWebSource is the BasicCopySource implementation for DrillSource.
29164func (ds DrillSource) AsWebSource() (*WebSource, bool) {
29165	return nil, false
29166}
29167
29168// AsOracleSource is the BasicCopySource implementation for DrillSource.
29169func (ds DrillSource) AsOracleSource() (*OracleSource, bool) {
29170	return nil, false
29171}
29172
29173// AsAzureMySQLSource is the BasicCopySource implementation for DrillSource.
29174func (ds DrillSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
29175	return nil, false
29176}
29177
29178// AsHdfsSource is the BasicCopySource implementation for DrillSource.
29179func (ds DrillSource) AsHdfsSource() (*HdfsSource, bool) {
29180	return nil, false
29181}
29182
29183// AsFileSystemSource is the BasicCopySource implementation for DrillSource.
29184func (ds DrillSource) AsFileSystemSource() (*FileSystemSource, bool) {
29185	return nil, false
29186}
29187
29188// AsSQLDWSource is the BasicCopySource implementation for DrillSource.
29189func (ds DrillSource) AsSQLDWSource() (*SQLDWSource, bool) {
29190	return nil, false
29191}
29192
29193// AsSQLSource is the BasicCopySource implementation for DrillSource.
29194func (ds DrillSource) AsSQLSource() (*SQLSource, bool) {
29195	return nil, false
29196}
29197
29198// AsSapEccSource is the BasicCopySource implementation for DrillSource.
29199func (ds DrillSource) AsSapEccSource() (*SapEccSource, bool) {
29200	return nil, false
29201}
29202
29203// AsSapCloudForCustomerSource is the BasicCopySource implementation for DrillSource.
29204func (ds DrillSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
29205	return nil, false
29206}
29207
29208// AsSalesforceSource is the BasicCopySource implementation for DrillSource.
29209func (ds DrillSource) AsSalesforceSource() (*SalesforceSource, bool) {
29210	return nil, false
29211}
29212
29213// AsRelationalSource is the BasicCopySource implementation for DrillSource.
29214func (ds DrillSource) AsRelationalSource() (*RelationalSource, bool) {
29215	return nil, false
29216}
29217
29218// AsDynamicsSource is the BasicCopySource implementation for DrillSource.
29219func (ds DrillSource) AsDynamicsSource() (*DynamicsSource, bool) {
29220	return nil, false
29221}
29222
29223// AsDocumentDbCollectionSource is the BasicCopySource implementation for DrillSource.
29224func (ds DrillSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
29225	return nil, false
29226}
29227
29228// AsBlobSource is the BasicCopySource implementation for DrillSource.
29229func (ds DrillSource) AsBlobSource() (*BlobSource, bool) {
29230	return nil, false
29231}
29232
29233// AsAzureTableSource is the BasicCopySource implementation for DrillSource.
29234func (ds DrillSource) AsAzureTableSource() (*AzureTableSource, bool) {
29235	return nil, false
29236}
29237
29238// AsCopySource is the BasicCopySource implementation for DrillSource.
29239func (ds DrillSource) AsCopySource() (*CopySource, bool) {
29240	return nil, false
29241}
29242
29243// AsBasicCopySource is the BasicCopySource implementation for DrillSource.
29244func (ds DrillSource) AsBasicCopySource() (BasicCopySource, bool) {
29245	return &ds, true
29246}
29247
29248// DrillTableDataset drill server dataset.
29249type DrillTableDataset struct {
29250	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
29251	AdditionalProperties map[string]interface{} `json:""`
29252	// Description - Dataset description.
29253	Description *string `json:"description,omitempty"`
29254	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
29255	Structure interface{} `json:"structure,omitempty"`
29256	// LinkedServiceName - Linked service reference.
29257	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
29258	// Parameters - Parameters for dataset.
29259	Parameters map[string]*ParameterSpecification `json:"parameters"`
29260	// Annotations - List of tags that can be used for describing the Dataset.
29261	Annotations *[]interface{} `json:"annotations,omitempty"`
29262	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
29263	Type TypeBasicDataset `json:"type,omitempty"`
29264}
29265
29266// MarshalJSON is the custom marshaler for DrillTableDataset.
29267func (dtd DrillTableDataset) MarshalJSON() ([]byte, error) {
29268	dtd.Type = TypeDrillTable
29269	objectMap := make(map[string]interface{})
29270	if dtd.Description != nil {
29271		objectMap["description"] = dtd.Description
29272	}
29273	objectMap["structure"] = dtd.Structure
29274	if dtd.LinkedServiceName != nil {
29275		objectMap["linkedServiceName"] = dtd.LinkedServiceName
29276	}
29277	if dtd.Parameters != nil {
29278		objectMap["parameters"] = dtd.Parameters
29279	}
29280	if dtd.Annotations != nil {
29281		objectMap["annotations"] = dtd.Annotations
29282	}
29283	if dtd.Type != "" {
29284		objectMap["type"] = dtd.Type
29285	}
29286	for k, v := range dtd.AdditionalProperties {
29287		objectMap[k] = v
29288	}
29289	return json.Marshal(objectMap)
29290}
29291
29292// AsResponsysObjectDataset is the BasicDataset implementation for DrillTableDataset.
29293func (dtd DrillTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
29294	return nil, false
29295}
29296
29297// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for DrillTableDataset.
29298func (dtd DrillTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
29299	return nil, false
29300}
29301
29302// AsVerticaTableDataset is the BasicDataset implementation for DrillTableDataset.
29303func (dtd DrillTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
29304	return nil, false
29305}
29306
29307// AsNetezzaTableDataset is the BasicDataset implementation for DrillTableDataset.
29308func (dtd DrillTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
29309	return nil, false
29310}
29311
29312// AsZohoObjectDataset is the BasicDataset implementation for DrillTableDataset.
29313func (dtd DrillTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
29314	return nil, false
29315}
29316
29317// AsXeroObjectDataset is the BasicDataset implementation for DrillTableDataset.
29318func (dtd DrillTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
29319	return nil, false
29320}
29321
29322// AsSquareObjectDataset is the BasicDataset implementation for DrillTableDataset.
29323func (dtd DrillTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
29324	return nil, false
29325}
29326
29327// AsSparkObjectDataset is the BasicDataset implementation for DrillTableDataset.
29328func (dtd DrillTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
29329	return nil, false
29330}
29331
29332// AsShopifyObjectDataset is the BasicDataset implementation for DrillTableDataset.
29333func (dtd DrillTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
29334	return nil, false
29335}
29336
29337// AsServiceNowObjectDataset is the BasicDataset implementation for DrillTableDataset.
29338func (dtd DrillTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
29339	return nil, false
29340}
29341
29342// AsQuickBooksObjectDataset is the BasicDataset implementation for DrillTableDataset.
29343func (dtd DrillTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
29344	return nil, false
29345}
29346
29347// AsPrestoObjectDataset is the BasicDataset implementation for DrillTableDataset.
29348func (dtd DrillTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
29349	return nil, false
29350}
29351
29352// AsPhoenixObjectDataset is the BasicDataset implementation for DrillTableDataset.
29353func (dtd DrillTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
29354	return nil, false
29355}
29356
29357// AsPaypalObjectDataset is the BasicDataset implementation for DrillTableDataset.
29358func (dtd DrillTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
29359	return nil, false
29360}
29361
29362// AsMarketoObjectDataset is the BasicDataset implementation for DrillTableDataset.
29363func (dtd DrillTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
29364	return nil, false
29365}
29366
29367// AsMariaDBTableDataset is the BasicDataset implementation for DrillTableDataset.
29368func (dtd DrillTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
29369	return nil, false
29370}
29371
29372// AsMagentoObjectDataset is the BasicDataset implementation for DrillTableDataset.
29373func (dtd DrillTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
29374	return nil, false
29375}
29376
29377// AsJiraObjectDataset is the BasicDataset implementation for DrillTableDataset.
29378func (dtd DrillTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
29379	return nil, false
29380}
29381
29382// AsImpalaObjectDataset is the BasicDataset implementation for DrillTableDataset.
29383func (dtd DrillTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
29384	return nil, false
29385}
29386
29387// AsHubspotObjectDataset is the BasicDataset implementation for DrillTableDataset.
29388func (dtd DrillTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
29389	return nil, false
29390}
29391
29392// AsHiveObjectDataset is the BasicDataset implementation for DrillTableDataset.
29393func (dtd DrillTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
29394	return nil, false
29395}
29396
29397// AsHBaseObjectDataset is the BasicDataset implementation for DrillTableDataset.
29398func (dtd DrillTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
29399	return nil, false
29400}
29401
29402// AsGreenplumTableDataset is the BasicDataset implementation for DrillTableDataset.
29403func (dtd DrillTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
29404	return nil, false
29405}
29406
29407// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for DrillTableDataset.
29408func (dtd DrillTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
29409	return nil, false
29410}
29411
29412// AsEloquaObjectDataset is the BasicDataset implementation for DrillTableDataset.
29413func (dtd DrillTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
29414	return nil, false
29415}
29416
29417// AsDrillTableDataset is the BasicDataset implementation for DrillTableDataset.
29418func (dtd DrillTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
29419	return &dtd, true
29420}
29421
29422// AsCouchbaseTableDataset is the BasicDataset implementation for DrillTableDataset.
29423func (dtd DrillTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
29424	return nil, false
29425}
29426
29427// AsConcurObjectDataset is the BasicDataset implementation for DrillTableDataset.
29428func (dtd DrillTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
29429	return nil, false
29430}
29431
29432// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for DrillTableDataset.
29433func (dtd DrillTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
29434	return nil, false
29435}
29436
29437// AsAmazonMWSObjectDataset is the BasicDataset implementation for DrillTableDataset.
29438func (dtd DrillTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
29439	return nil, false
29440}
29441
29442// AsHTTPDataset is the BasicDataset implementation for DrillTableDataset.
29443func (dtd DrillTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
29444	return nil, false
29445}
29446
29447// AsAzureSearchIndexDataset is the BasicDataset implementation for DrillTableDataset.
29448func (dtd DrillTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
29449	return nil, false
29450}
29451
29452// AsWebTableDataset is the BasicDataset implementation for DrillTableDataset.
29453func (dtd DrillTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
29454	return nil, false
29455}
29456
29457// AsSQLServerTableDataset is the BasicDataset implementation for DrillTableDataset.
29458func (dtd DrillTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
29459	return nil, false
29460}
29461
29462// AsSapEccResourceDataset is the BasicDataset implementation for DrillTableDataset.
29463func (dtd DrillTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
29464	return nil, false
29465}
29466
29467// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for DrillTableDataset.
29468func (dtd DrillTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
29469	return nil, false
29470}
29471
29472// AsSalesforceObjectDataset is the BasicDataset implementation for DrillTableDataset.
29473func (dtd DrillTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
29474	return nil, false
29475}
29476
29477// AsRelationalTableDataset is the BasicDataset implementation for DrillTableDataset.
29478func (dtd DrillTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
29479	return nil, false
29480}
29481
29482// AsAzureMySQLTableDataset is the BasicDataset implementation for DrillTableDataset.
29483func (dtd DrillTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
29484	return nil, false
29485}
29486
29487// AsOracleTableDataset is the BasicDataset implementation for DrillTableDataset.
29488func (dtd DrillTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
29489	return nil, false
29490}
29491
29492// AsODataResourceDataset is the BasicDataset implementation for DrillTableDataset.
29493func (dtd DrillTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
29494	return nil, false
29495}
29496
29497// AsMongoDbCollectionDataset is the BasicDataset implementation for DrillTableDataset.
29498func (dtd DrillTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
29499	return nil, false
29500}
29501
29502// AsFileShareDataset is the BasicDataset implementation for DrillTableDataset.
29503func (dtd DrillTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
29504	return nil, false
29505}
29506
29507// AsAzureDataLakeStoreDataset is the BasicDataset implementation for DrillTableDataset.
29508func (dtd DrillTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
29509	return nil, false
29510}
29511
29512// AsDynamicsEntityDataset is the BasicDataset implementation for DrillTableDataset.
29513func (dtd DrillTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
29514	return nil, false
29515}
29516
29517// AsDocumentDbCollectionDataset is the BasicDataset implementation for DrillTableDataset.
29518func (dtd DrillTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
29519	return nil, false
29520}
29521
29522// AsCustomDataset is the BasicDataset implementation for DrillTableDataset.
29523func (dtd DrillTableDataset) AsCustomDataset() (*CustomDataset, bool) {
29524	return nil, false
29525}
29526
29527// AsCassandraTableDataset is the BasicDataset implementation for DrillTableDataset.
29528func (dtd DrillTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
29529	return nil, false
29530}
29531
29532// AsAzureSQLDWTableDataset is the BasicDataset implementation for DrillTableDataset.
29533func (dtd DrillTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
29534	return nil, false
29535}
29536
29537// AsAzureSQLTableDataset is the BasicDataset implementation for DrillTableDataset.
29538func (dtd DrillTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
29539	return nil, false
29540}
29541
29542// AsAzureTableDataset is the BasicDataset implementation for DrillTableDataset.
29543func (dtd DrillTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
29544	return nil, false
29545}
29546
29547// AsAzureBlobDataset is the BasicDataset implementation for DrillTableDataset.
29548func (dtd DrillTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
29549	return nil, false
29550}
29551
29552// AsAmazonS3Dataset is the BasicDataset implementation for DrillTableDataset.
29553func (dtd DrillTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
29554	return nil, false
29555}
29556
29557// AsDataset is the BasicDataset implementation for DrillTableDataset.
29558func (dtd DrillTableDataset) AsDataset() (*Dataset, bool) {
29559	return nil, false
29560}
29561
29562// AsBasicDataset is the BasicDataset implementation for DrillTableDataset.
29563func (dtd DrillTableDataset) AsBasicDataset() (BasicDataset, bool) {
29564	return &dtd, true
29565}
29566
29567// DynamicsEntityDataset the Dynamics entity dataset.
29568type DynamicsEntityDataset struct {
29569	// DynamicsEntityDatasetTypeProperties - Dynamics entity dataset properties.
29570	*DynamicsEntityDatasetTypeProperties `json:"typeProperties,omitempty"`
29571	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
29572	AdditionalProperties map[string]interface{} `json:""`
29573	// Description - Dataset description.
29574	Description *string `json:"description,omitempty"`
29575	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
29576	Structure interface{} `json:"structure,omitempty"`
29577	// LinkedServiceName - Linked service reference.
29578	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
29579	// Parameters - Parameters for dataset.
29580	Parameters map[string]*ParameterSpecification `json:"parameters"`
29581	// Annotations - List of tags that can be used for describing the Dataset.
29582	Annotations *[]interface{} `json:"annotations,omitempty"`
29583	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
29584	Type TypeBasicDataset `json:"type,omitempty"`
29585}
29586
29587// MarshalJSON is the custom marshaler for DynamicsEntityDataset.
29588func (ded DynamicsEntityDataset) MarshalJSON() ([]byte, error) {
29589	ded.Type = TypeDynamicsEntity
29590	objectMap := make(map[string]interface{})
29591	if ded.DynamicsEntityDatasetTypeProperties != nil {
29592		objectMap["typeProperties"] = ded.DynamicsEntityDatasetTypeProperties
29593	}
29594	if ded.Description != nil {
29595		objectMap["description"] = ded.Description
29596	}
29597	objectMap["structure"] = ded.Structure
29598	if ded.LinkedServiceName != nil {
29599		objectMap["linkedServiceName"] = ded.LinkedServiceName
29600	}
29601	if ded.Parameters != nil {
29602		objectMap["parameters"] = ded.Parameters
29603	}
29604	if ded.Annotations != nil {
29605		objectMap["annotations"] = ded.Annotations
29606	}
29607	if ded.Type != "" {
29608		objectMap["type"] = ded.Type
29609	}
29610	for k, v := range ded.AdditionalProperties {
29611		objectMap[k] = v
29612	}
29613	return json.Marshal(objectMap)
29614}
29615
29616// AsResponsysObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29617func (ded DynamicsEntityDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
29618	return nil, false
29619}
29620
29621// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29622func (ded DynamicsEntityDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
29623	return nil, false
29624}
29625
29626// AsVerticaTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29627func (ded DynamicsEntityDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
29628	return nil, false
29629}
29630
29631// AsNetezzaTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29632func (ded DynamicsEntityDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
29633	return nil, false
29634}
29635
29636// AsZohoObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29637func (ded DynamicsEntityDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
29638	return nil, false
29639}
29640
29641// AsXeroObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29642func (ded DynamicsEntityDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
29643	return nil, false
29644}
29645
29646// AsSquareObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29647func (ded DynamicsEntityDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
29648	return nil, false
29649}
29650
29651// AsSparkObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29652func (ded DynamicsEntityDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
29653	return nil, false
29654}
29655
29656// AsShopifyObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29657func (ded DynamicsEntityDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
29658	return nil, false
29659}
29660
29661// AsServiceNowObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29662func (ded DynamicsEntityDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
29663	return nil, false
29664}
29665
29666// AsQuickBooksObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29667func (ded DynamicsEntityDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
29668	return nil, false
29669}
29670
29671// AsPrestoObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29672func (ded DynamicsEntityDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
29673	return nil, false
29674}
29675
29676// AsPhoenixObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29677func (ded DynamicsEntityDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
29678	return nil, false
29679}
29680
29681// AsPaypalObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29682func (ded DynamicsEntityDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
29683	return nil, false
29684}
29685
29686// AsMarketoObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29687func (ded DynamicsEntityDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
29688	return nil, false
29689}
29690
29691// AsMariaDBTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29692func (ded DynamicsEntityDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
29693	return nil, false
29694}
29695
29696// AsMagentoObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29697func (ded DynamicsEntityDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
29698	return nil, false
29699}
29700
29701// AsJiraObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29702func (ded DynamicsEntityDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
29703	return nil, false
29704}
29705
29706// AsImpalaObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29707func (ded DynamicsEntityDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
29708	return nil, false
29709}
29710
29711// AsHubspotObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29712func (ded DynamicsEntityDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
29713	return nil, false
29714}
29715
29716// AsHiveObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29717func (ded DynamicsEntityDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
29718	return nil, false
29719}
29720
29721// AsHBaseObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29722func (ded DynamicsEntityDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
29723	return nil, false
29724}
29725
29726// AsGreenplumTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29727func (ded DynamicsEntityDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
29728	return nil, false
29729}
29730
29731// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29732func (ded DynamicsEntityDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
29733	return nil, false
29734}
29735
29736// AsEloquaObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29737func (ded DynamicsEntityDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
29738	return nil, false
29739}
29740
29741// AsDrillTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29742func (ded DynamicsEntityDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
29743	return nil, false
29744}
29745
29746// AsCouchbaseTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29747func (ded DynamicsEntityDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
29748	return nil, false
29749}
29750
29751// AsConcurObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29752func (ded DynamicsEntityDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
29753	return nil, false
29754}
29755
29756// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29757func (ded DynamicsEntityDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
29758	return nil, false
29759}
29760
29761// AsAmazonMWSObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29762func (ded DynamicsEntityDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
29763	return nil, false
29764}
29765
29766// AsHTTPDataset is the BasicDataset implementation for DynamicsEntityDataset.
29767func (ded DynamicsEntityDataset) AsHTTPDataset() (*HTTPDataset, bool) {
29768	return nil, false
29769}
29770
29771// AsAzureSearchIndexDataset is the BasicDataset implementation for DynamicsEntityDataset.
29772func (ded DynamicsEntityDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
29773	return nil, false
29774}
29775
29776// AsWebTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29777func (ded DynamicsEntityDataset) AsWebTableDataset() (*WebTableDataset, bool) {
29778	return nil, false
29779}
29780
29781// AsSQLServerTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29782func (ded DynamicsEntityDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
29783	return nil, false
29784}
29785
29786// AsSapEccResourceDataset is the BasicDataset implementation for DynamicsEntityDataset.
29787func (ded DynamicsEntityDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
29788	return nil, false
29789}
29790
29791// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for DynamicsEntityDataset.
29792func (ded DynamicsEntityDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
29793	return nil, false
29794}
29795
29796// AsSalesforceObjectDataset is the BasicDataset implementation for DynamicsEntityDataset.
29797func (ded DynamicsEntityDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
29798	return nil, false
29799}
29800
29801// AsRelationalTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29802func (ded DynamicsEntityDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
29803	return nil, false
29804}
29805
29806// AsAzureMySQLTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29807func (ded DynamicsEntityDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
29808	return nil, false
29809}
29810
29811// AsOracleTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29812func (ded DynamicsEntityDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
29813	return nil, false
29814}
29815
29816// AsODataResourceDataset is the BasicDataset implementation for DynamicsEntityDataset.
29817func (ded DynamicsEntityDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
29818	return nil, false
29819}
29820
29821// AsMongoDbCollectionDataset is the BasicDataset implementation for DynamicsEntityDataset.
29822func (ded DynamicsEntityDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
29823	return nil, false
29824}
29825
29826// AsFileShareDataset is the BasicDataset implementation for DynamicsEntityDataset.
29827func (ded DynamicsEntityDataset) AsFileShareDataset() (*FileShareDataset, bool) {
29828	return nil, false
29829}
29830
29831// AsAzureDataLakeStoreDataset is the BasicDataset implementation for DynamicsEntityDataset.
29832func (ded DynamicsEntityDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
29833	return nil, false
29834}
29835
29836// AsDynamicsEntityDataset is the BasicDataset implementation for DynamicsEntityDataset.
29837func (ded DynamicsEntityDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
29838	return &ded, true
29839}
29840
29841// AsDocumentDbCollectionDataset is the BasicDataset implementation for DynamicsEntityDataset.
29842func (ded DynamicsEntityDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
29843	return nil, false
29844}
29845
29846// AsCustomDataset is the BasicDataset implementation for DynamicsEntityDataset.
29847func (ded DynamicsEntityDataset) AsCustomDataset() (*CustomDataset, bool) {
29848	return nil, false
29849}
29850
29851// AsCassandraTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29852func (ded DynamicsEntityDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
29853	return nil, false
29854}
29855
29856// AsAzureSQLDWTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29857func (ded DynamicsEntityDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
29858	return nil, false
29859}
29860
29861// AsAzureSQLTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29862func (ded DynamicsEntityDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
29863	return nil, false
29864}
29865
29866// AsAzureTableDataset is the BasicDataset implementation for DynamicsEntityDataset.
29867func (ded DynamicsEntityDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
29868	return nil, false
29869}
29870
29871// AsAzureBlobDataset is the BasicDataset implementation for DynamicsEntityDataset.
29872func (ded DynamicsEntityDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
29873	return nil, false
29874}
29875
29876// AsAmazonS3Dataset is the BasicDataset implementation for DynamicsEntityDataset.
29877func (ded DynamicsEntityDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
29878	return nil, false
29879}
29880
29881// AsDataset is the BasicDataset implementation for DynamicsEntityDataset.
29882func (ded DynamicsEntityDataset) AsDataset() (*Dataset, bool) {
29883	return nil, false
29884}
29885
29886// AsBasicDataset is the BasicDataset implementation for DynamicsEntityDataset.
29887func (ded DynamicsEntityDataset) AsBasicDataset() (BasicDataset, bool) {
29888	return &ded, true
29889}
29890
29891// UnmarshalJSON is the custom unmarshaler for DynamicsEntityDataset struct.
29892func (ded *DynamicsEntityDataset) UnmarshalJSON(body []byte) error {
29893	var m map[string]*json.RawMessage
29894	err := json.Unmarshal(body, &m)
29895	if err != nil {
29896		return err
29897	}
29898	for k, v := range m {
29899		switch k {
29900		case "typeProperties":
29901			if v != nil {
29902				var dynamicsEntityDatasetTypeProperties DynamicsEntityDatasetTypeProperties
29903				err = json.Unmarshal(*v, &dynamicsEntityDatasetTypeProperties)
29904				if err != nil {
29905					return err
29906				}
29907				ded.DynamicsEntityDatasetTypeProperties = &dynamicsEntityDatasetTypeProperties
29908			}
29909		default:
29910			if v != nil {
29911				var additionalProperties interface{}
29912				err = json.Unmarshal(*v, &additionalProperties)
29913				if err != nil {
29914					return err
29915				}
29916				if ded.AdditionalProperties == nil {
29917					ded.AdditionalProperties = make(map[string]interface{})
29918				}
29919				ded.AdditionalProperties[k] = additionalProperties
29920			}
29921		case "description":
29922			if v != nil {
29923				var description string
29924				err = json.Unmarshal(*v, &description)
29925				if err != nil {
29926					return err
29927				}
29928				ded.Description = &description
29929			}
29930		case "structure":
29931			if v != nil {
29932				var structure interface{}
29933				err = json.Unmarshal(*v, &structure)
29934				if err != nil {
29935					return err
29936				}
29937				ded.Structure = structure
29938			}
29939		case "linkedServiceName":
29940			if v != nil {
29941				var linkedServiceName LinkedServiceReference
29942				err = json.Unmarshal(*v, &linkedServiceName)
29943				if err != nil {
29944					return err
29945				}
29946				ded.LinkedServiceName = &linkedServiceName
29947			}
29948		case "parameters":
29949			if v != nil {
29950				var parameters map[string]*ParameterSpecification
29951				err = json.Unmarshal(*v, &parameters)
29952				if err != nil {
29953					return err
29954				}
29955				ded.Parameters = parameters
29956			}
29957		case "annotations":
29958			if v != nil {
29959				var annotations []interface{}
29960				err = json.Unmarshal(*v, &annotations)
29961				if err != nil {
29962					return err
29963				}
29964				ded.Annotations = &annotations
29965			}
29966		case "type":
29967			if v != nil {
29968				var typeVar TypeBasicDataset
29969				err = json.Unmarshal(*v, &typeVar)
29970				if err != nil {
29971					return err
29972				}
29973				ded.Type = typeVar
29974			}
29975		}
29976	}
29977
29978	return nil
29979}
29980
29981// DynamicsEntityDatasetTypeProperties dynamics entity dataset properties.
29982type DynamicsEntityDatasetTypeProperties struct {
29983	// EntityName - The logical name of the entity. Type: string (or Expression with resultType string).
29984	EntityName interface{} `json:"entityName,omitempty"`
29985}
29986
29987// DynamicsLinkedService dynamics linked service.
29988type DynamicsLinkedService struct {
29989	// DynamicsLinkedServiceTypeProperties - Dynamics linked service properties.
29990	*DynamicsLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
29991	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
29992	AdditionalProperties map[string]interface{} `json:""`
29993	// ConnectVia - The integration runtime reference.
29994	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
29995	// Description - Linked service description.
29996	Description *string `json:"description,omitempty"`
29997	// Parameters - Parameters for linked service.
29998	Parameters map[string]*ParameterSpecification `json:"parameters"`
29999	// Annotations - List of tags that can be used for describing the Dataset.
30000	Annotations *[]interface{} `json:"annotations,omitempty"`
30001	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
30002	Type TypeBasicLinkedService `json:"type,omitempty"`
30003}
30004
30005// MarshalJSON is the custom marshaler for DynamicsLinkedService.
30006func (dls DynamicsLinkedService) MarshalJSON() ([]byte, error) {
30007	dls.Type = TypeDynamics
30008	objectMap := make(map[string]interface{})
30009	if dls.DynamicsLinkedServiceTypeProperties != nil {
30010		objectMap["typeProperties"] = dls.DynamicsLinkedServiceTypeProperties
30011	}
30012	if dls.ConnectVia != nil {
30013		objectMap["connectVia"] = dls.ConnectVia
30014	}
30015	if dls.Description != nil {
30016		objectMap["description"] = dls.Description
30017	}
30018	if dls.Parameters != nil {
30019		objectMap["parameters"] = dls.Parameters
30020	}
30021	if dls.Annotations != nil {
30022		objectMap["annotations"] = dls.Annotations
30023	}
30024	if dls.Type != "" {
30025		objectMap["type"] = dls.Type
30026	}
30027	for k, v := range dls.AdditionalProperties {
30028		objectMap[k] = v
30029	}
30030	return json.Marshal(objectMap)
30031}
30032
30033// AsResponsysLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30034func (dls DynamicsLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
30035	return nil, false
30036}
30037
30038// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30039func (dls DynamicsLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
30040	return nil, false
30041}
30042
30043// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30044func (dls DynamicsLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
30045	return nil, false
30046}
30047
30048// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30049func (dls DynamicsLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
30050	return nil, false
30051}
30052
30053// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30054func (dls DynamicsLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
30055	return nil, false
30056}
30057
30058// AsNetezzaLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30059func (dls DynamicsLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
30060	return nil, false
30061}
30062
30063// AsVerticaLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30064func (dls DynamicsLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
30065	return nil, false
30066}
30067
30068// AsZohoLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30069func (dls DynamicsLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
30070	return nil, false
30071}
30072
30073// AsXeroLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30074func (dls DynamicsLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
30075	return nil, false
30076}
30077
30078// AsSquareLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30079func (dls DynamicsLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
30080	return nil, false
30081}
30082
30083// AsSparkLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30084func (dls DynamicsLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
30085	return nil, false
30086}
30087
30088// AsShopifyLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30089func (dls DynamicsLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
30090	return nil, false
30091}
30092
30093// AsServiceNowLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30094func (dls DynamicsLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
30095	return nil, false
30096}
30097
30098// AsQuickBooksLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30099func (dls DynamicsLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
30100	return nil, false
30101}
30102
30103// AsPrestoLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30104func (dls DynamicsLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
30105	return nil, false
30106}
30107
30108// AsPhoenixLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30109func (dls DynamicsLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
30110	return nil, false
30111}
30112
30113// AsPaypalLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30114func (dls DynamicsLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
30115	return nil, false
30116}
30117
30118// AsMarketoLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30119func (dls DynamicsLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
30120	return nil, false
30121}
30122
30123// AsMariaDBLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30124func (dls DynamicsLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
30125	return nil, false
30126}
30127
30128// AsMagentoLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30129func (dls DynamicsLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
30130	return nil, false
30131}
30132
30133// AsJiraLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30134func (dls DynamicsLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
30135	return nil, false
30136}
30137
30138// AsImpalaLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30139func (dls DynamicsLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
30140	return nil, false
30141}
30142
30143// AsHubspotLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30144func (dls DynamicsLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
30145	return nil, false
30146}
30147
30148// AsHiveLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30149func (dls DynamicsLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
30150	return nil, false
30151}
30152
30153// AsHBaseLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30154func (dls DynamicsLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
30155	return nil, false
30156}
30157
30158// AsGreenplumLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30159func (dls DynamicsLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
30160	return nil, false
30161}
30162
30163// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30164func (dls DynamicsLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
30165	return nil, false
30166}
30167
30168// AsEloquaLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30169func (dls DynamicsLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
30170	return nil, false
30171}
30172
30173// AsDrillLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30174func (dls DynamicsLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
30175	return nil, false
30176}
30177
30178// AsCouchbaseLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30179func (dls DynamicsLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
30180	return nil, false
30181}
30182
30183// AsConcurLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30184func (dls DynamicsLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
30185	return nil, false
30186}
30187
30188// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30189func (dls DynamicsLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
30190	return nil, false
30191}
30192
30193// AsAmazonMWSLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30194func (dls DynamicsLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
30195	return nil, false
30196}
30197
30198// AsSapHanaLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30199func (dls DynamicsLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
30200	return nil, false
30201}
30202
30203// AsSapBWLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30204func (dls DynamicsLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
30205	return nil, false
30206}
30207
30208// AsSftpServerLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30209func (dls DynamicsLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
30210	return nil, false
30211}
30212
30213// AsFtpServerLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30214func (dls DynamicsLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
30215	return nil, false
30216}
30217
30218// AsHTTPLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30219func (dls DynamicsLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
30220	return nil, false
30221}
30222
30223// AsAzureSearchLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30224func (dls DynamicsLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
30225	return nil, false
30226}
30227
30228// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30229func (dls DynamicsLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
30230	return nil, false
30231}
30232
30233// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30234func (dls DynamicsLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
30235	return nil, false
30236}
30237
30238// AsAmazonS3LinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30239func (dls DynamicsLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
30240	return nil, false
30241}
30242
30243// AsSapEccLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30244func (dls DynamicsLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
30245	return nil, false
30246}
30247
30248// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30249func (dls DynamicsLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
30250	return nil, false
30251}
30252
30253// AsSalesforceLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30254func (dls DynamicsLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
30255	return nil, false
30256}
30257
30258// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30259func (dls DynamicsLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
30260	return nil, false
30261}
30262
30263// AsMongoDbLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30264func (dls DynamicsLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
30265	return nil, false
30266}
30267
30268// AsCassandraLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30269func (dls DynamicsLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
30270	return nil, false
30271}
30272
30273// AsWebLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30274func (dls DynamicsLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
30275	return nil, false
30276}
30277
30278// AsODataLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30279func (dls DynamicsLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
30280	return nil, false
30281}
30282
30283// AsHdfsLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30284func (dls DynamicsLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
30285	return nil, false
30286}
30287
30288// AsOdbcLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30289func (dls DynamicsLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
30290	return nil, false
30291}
30292
30293// AsAzureMLLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30294func (dls DynamicsLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
30295	return nil, false
30296}
30297
30298// AsTeradataLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30299func (dls DynamicsLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
30300	return nil, false
30301}
30302
30303// AsDb2LinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30304func (dls DynamicsLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
30305	return nil, false
30306}
30307
30308// AsSybaseLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30309func (dls DynamicsLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
30310	return nil, false
30311}
30312
30313// AsPostgreSQLLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30314func (dls DynamicsLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
30315	return nil, false
30316}
30317
30318// AsMySQLLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30319func (dls DynamicsLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
30320	return nil, false
30321}
30322
30323// AsAzureMySQLLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30324func (dls DynamicsLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
30325	return nil, false
30326}
30327
30328// AsOracleLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30329func (dls DynamicsLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
30330	return nil, false
30331}
30332
30333// AsFileServerLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30334func (dls DynamicsLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
30335	return nil, false
30336}
30337
30338// AsHDInsightLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30339func (dls DynamicsLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
30340	return nil, false
30341}
30342
30343// AsDynamicsLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30344func (dls DynamicsLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
30345	return &dls, true
30346}
30347
30348// AsCosmosDbLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30349func (dls DynamicsLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
30350	return nil, false
30351}
30352
30353// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30354func (dls DynamicsLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
30355	return nil, false
30356}
30357
30358// AsAzureBatchLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30359func (dls DynamicsLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
30360	return nil, false
30361}
30362
30363// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30364func (dls DynamicsLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
30365	return nil, false
30366}
30367
30368// AsSQLServerLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30369func (dls DynamicsLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
30370	return nil, false
30371}
30372
30373// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30374func (dls DynamicsLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
30375	return nil, false
30376}
30377
30378// AsAzureStorageLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30379func (dls DynamicsLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
30380	return nil, false
30381}
30382
30383// AsLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30384func (dls DynamicsLinkedService) AsLinkedService() (*LinkedService, bool) {
30385	return nil, false
30386}
30387
30388// AsBasicLinkedService is the BasicLinkedService implementation for DynamicsLinkedService.
30389func (dls DynamicsLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
30390	return &dls, true
30391}
30392
30393// UnmarshalJSON is the custom unmarshaler for DynamicsLinkedService struct.
30394func (dls *DynamicsLinkedService) UnmarshalJSON(body []byte) error {
30395	var m map[string]*json.RawMessage
30396	err := json.Unmarshal(body, &m)
30397	if err != nil {
30398		return err
30399	}
30400	for k, v := range m {
30401		switch k {
30402		case "typeProperties":
30403			if v != nil {
30404				var dynamicsLinkedServiceTypeProperties DynamicsLinkedServiceTypeProperties
30405				err = json.Unmarshal(*v, &dynamicsLinkedServiceTypeProperties)
30406				if err != nil {
30407					return err
30408				}
30409				dls.DynamicsLinkedServiceTypeProperties = &dynamicsLinkedServiceTypeProperties
30410			}
30411		default:
30412			if v != nil {
30413				var additionalProperties interface{}
30414				err = json.Unmarshal(*v, &additionalProperties)
30415				if err != nil {
30416					return err
30417				}
30418				if dls.AdditionalProperties == nil {
30419					dls.AdditionalProperties = make(map[string]interface{})
30420				}
30421				dls.AdditionalProperties[k] = additionalProperties
30422			}
30423		case "connectVia":
30424			if v != nil {
30425				var connectVia IntegrationRuntimeReference
30426				err = json.Unmarshal(*v, &connectVia)
30427				if err != nil {
30428					return err
30429				}
30430				dls.ConnectVia = &connectVia
30431			}
30432		case "description":
30433			if v != nil {
30434				var description string
30435				err = json.Unmarshal(*v, &description)
30436				if err != nil {
30437					return err
30438				}
30439				dls.Description = &description
30440			}
30441		case "parameters":
30442			if v != nil {
30443				var parameters map[string]*ParameterSpecification
30444				err = json.Unmarshal(*v, &parameters)
30445				if err != nil {
30446					return err
30447				}
30448				dls.Parameters = parameters
30449			}
30450		case "annotations":
30451			if v != nil {
30452				var annotations []interface{}
30453				err = json.Unmarshal(*v, &annotations)
30454				if err != nil {
30455					return err
30456				}
30457				dls.Annotations = &annotations
30458			}
30459		case "type":
30460			if v != nil {
30461				var typeVar TypeBasicLinkedService
30462				err = json.Unmarshal(*v, &typeVar)
30463				if err != nil {
30464					return err
30465				}
30466				dls.Type = typeVar
30467			}
30468		}
30469	}
30470
30471	return nil
30472}
30473
30474// DynamicsLinkedServiceTypeProperties dynamics linked service properties.
30475type DynamicsLinkedServiceTypeProperties struct {
30476	// DeploymentType - The deployment type of the Dynamics instance. 'Online' for Dynamics Online and 'OnPremisesWithIfd' for Dynamics on-premises with Ifd. Type: string (or Expression with resultType string).
30477	DeploymentType interface{} `json:"deploymentType,omitempty"`
30478	// HostName - The host name of the on-premises Dynamics server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string).
30479	HostName interface{} `json:"hostName,omitempty"`
30480	// Port - The port of on-premises Dynamics server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0.
30481	Port interface{} `json:"port,omitempty"`
30482	// ServiceURI - The URL to the Microsoft Dynamics server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string).
30483	ServiceURI interface{} `json:"serviceUri,omitempty"`
30484	// OrganizationName - The organization name of the Dynamics instance. The property is required for on-prem and required for online when there are more than one Dynamics instances associated with the user. Type: string (or Expression with resultType string).
30485	OrganizationName interface{} `json:"organizationName,omitempty"`
30486	// AuthenticationType - The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. Type: string (or Expression with resultType string).
30487	AuthenticationType interface{} `json:"authenticationType,omitempty"`
30488	// Username - User name to access the Dynamics instance. Type: string (or Expression with resultType string).
30489	Username interface{} `json:"username,omitempty"`
30490	// Password - Password to access the Dynamics instance.
30491	Password BasicSecretBase `json:"password,omitempty"`
30492	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
30493	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
30494}
30495
30496// UnmarshalJSON is the custom unmarshaler for DynamicsLinkedServiceTypeProperties struct.
30497func (dlstp *DynamicsLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
30498	var m map[string]*json.RawMessage
30499	err := json.Unmarshal(body, &m)
30500	if err != nil {
30501		return err
30502	}
30503	for k, v := range m {
30504		switch k {
30505		case "deploymentType":
30506			if v != nil {
30507				var deploymentType interface{}
30508				err = json.Unmarshal(*v, &deploymentType)
30509				if err != nil {
30510					return err
30511				}
30512				dlstp.DeploymentType = deploymentType
30513			}
30514		case "hostName":
30515			if v != nil {
30516				var hostName interface{}
30517				err = json.Unmarshal(*v, &hostName)
30518				if err != nil {
30519					return err
30520				}
30521				dlstp.HostName = hostName
30522			}
30523		case "port":
30524			if v != nil {
30525				var port interface{}
30526				err = json.Unmarshal(*v, &port)
30527				if err != nil {
30528					return err
30529				}
30530				dlstp.Port = port
30531			}
30532		case "serviceUri":
30533			if v != nil {
30534				var serviceURI interface{}
30535				err = json.Unmarshal(*v, &serviceURI)
30536				if err != nil {
30537					return err
30538				}
30539				dlstp.ServiceURI = serviceURI
30540			}
30541		case "organizationName":
30542			if v != nil {
30543				var organizationName interface{}
30544				err = json.Unmarshal(*v, &organizationName)
30545				if err != nil {
30546					return err
30547				}
30548				dlstp.OrganizationName = organizationName
30549			}
30550		case "authenticationType":
30551			if v != nil {
30552				var authenticationType interface{}
30553				err = json.Unmarshal(*v, &authenticationType)
30554				if err != nil {
30555					return err
30556				}
30557				dlstp.AuthenticationType = authenticationType
30558			}
30559		case "username":
30560			if v != nil {
30561				var username interface{}
30562				err = json.Unmarshal(*v, &username)
30563				if err != nil {
30564					return err
30565				}
30566				dlstp.Username = username
30567			}
30568		case "password":
30569			if v != nil {
30570				password, err := unmarshalBasicSecretBase(*v)
30571				if err != nil {
30572					return err
30573				}
30574				dlstp.Password = password
30575			}
30576		case "encryptedCredential":
30577			if v != nil {
30578				var encryptedCredential interface{}
30579				err = json.Unmarshal(*v, &encryptedCredential)
30580				if err != nil {
30581					return err
30582				}
30583				dlstp.EncryptedCredential = encryptedCredential
30584			}
30585		}
30586	}
30587
30588	return nil
30589}
30590
30591// DynamicsSink a copy activity Dynamics sink.
30592type DynamicsSink struct {
30593	// WriteBehavior - The write behavior for the operation.
30594	WriteBehavior *string `json:"writeBehavior,omitempty"`
30595	// IgnoreNullValues - The flag indicating whether ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean).
30596	IgnoreNullValues interface{} `json:"ignoreNullValues,omitempty"`
30597	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
30598	AdditionalProperties map[string]interface{} `json:""`
30599	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
30600	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
30601	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
30602	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
30603	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
30604	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
30605	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
30606	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
30607	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
30608	Type TypeBasicCopySink `json:"type,omitempty"`
30609}
30610
30611// MarshalJSON is the custom marshaler for DynamicsSink.
30612func (ds DynamicsSink) MarshalJSON() ([]byte, error) {
30613	ds.Type = TypeDynamicsSink
30614	objectMap := make(map[string]interface{})
30615	if ds.WriteBehavior != nil {
30616		objectMap["writeBehavior"] = ds.WriteBehavior
30617	}
30618	objectMap["ignoreNullValues"] = ds.IgnoreNullValues
30619	objectMap["writeBatchSize"] = ds.WriteBatchSize
30620	objectMap["writeBatchTimeout"] = ds.WriteBatchTimeout
30621	objectMap["sinkRetryCount"] = ds.SinkRetryCount
30622	objectMap["sinkRetryWait"] = ds.SinkRetryWait
30623	if ds.Type != "" {
30624		objectMap["type"] = ds.Type
30625	}
30626	for k, v := range ds.AdditionalProperties {
30627		objectMap[k] = v
30628	}
30629	return json.Marshal(objectMap)
30630}
30631
30632// AsSalesforceSink is the BasicCopySink implementation for DynamicsSink.
30633func (ds DynamicsSink) AsSalesforceSink() (*SalesforceSink, bool) {
30634	return nil, false
30635}
30636
30637// AsDynamicsSink is the BasicCopySink implementation for DynamicsSink.
30638func (ds DynamicsSink) AsDynamicsSink() (*DynamicsSink, bool) {
30639	return &ds, true
30640}
30641
30642// AsOdbcSink is the BasicCopySink implementation for DynamicsSink.
30643func (ds DynamicsSink) AsOdbcSink() (*OdbcSink, bool) {
30644	return nil, false
30645}
30646
30647// AsAzureSearchIndexSink is the BasicCopySink implementation for DynamicsSink.
30648func (ds DynamicsSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
30649	return nil, false
30650}
30651
30652// AsAzureDataLakeStoreSink is the BasicCopySink implementation for DynamicsSink.
30653func (ds DynamicsSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
30654	return nil, false
30655}
30656
30657// AsOracleSink is the BasicCopySink implementation for DynamicsSink.
30658func (ds DynamicsSink) AsOracleSink() (*OracleSink, bool) {
30659	return nil, false
30660}
30661
30662// AsSQLDWSink is the BasicCopySink implementation for DynamicsSink.
30663func (ds DynamicsSink) AsSQLDWSink() (*SQLDWSink, bool) {
30664	return nil, false
30665}
30666
30667// AsSQLSink is the BasicCopySink implementation for DynamicsSink.
30668func (ds DynamicsSink) AsSQLSink() (*SQLSink, bool) {
30669	return nil, false
30670}
30671
30672// AsDocumentDbCollectionSink is the BasicCopySink implementation for DynamicsSink.
30673func (ds DynamicsSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
30674	return nil, false
30675}
30676
30677// AsFileSystemSink is the BasicCopySink implementation for DynamicsSink.
30678func (ds DynamicsSink) AsFileSystemSink() (*FileSystemSink, bool) {
30679	return nil, false
30680}
30681
30682// AsBlobSink is the BasicCopySink implementation for DynamicsSink.
30683func (ds DynamicsSink) AsBlobSink() (*BlobSink, bool) {
30684	return nil, false
30685}
30686
30687// AsAzureTableSink is the BasicCopySink implementation for DynamicsSink.
30688func (ds DynamicsSink) AsAzureTableSink() (*AzureTableSink, bool) {
30689	return nil, false
30690}
30691
30692// AsAzureQueueSink is the BasicCopySink implementation for DynamicsSink.
30693func (ds DynamicsSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
30694	return nil, false
30695}
30696
30697// AsSapCloudForCustomerSink is the BasicCopySink implementation for DynamicsSink.
30698func (ds DynamicsSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
30699	return nil, false
30700}
30701
30702// AsCopySink is the BasicCopySink implementation for DynamicsSink.
30703func (ds DynamicsSink) AsCopySink() (*CopySink, bool) {
30704	return nil, false
30705}
30706
30707// AsBasicCopySink is the BasicCopySink implementation for DynamicsSink.
30708func (ds DynamicsSink) AsBasicCopySink() (BasicCopySink, bool) {
30709	return &ds, true
30710}
30711
30712// DynamicsSource a copy activity Dynamics source.
30713type DynamicsSource struct {
30714	// Query - FetchXML is a proprietary query language that is used in Microsoft Dynamics (online & on-premises). Type: string (or Expression with resultType string).
30715	Query interface{} `json:"query,omitempty"`
30716	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
30717	AdditionalProperties map[string]interface{} `json:""`
30718	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
30719	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
30720	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
30721	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
30722	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
30723	Type TypeBasicCopySource `json:"type,omitempty"`
30724}
30725
30726// MarshalJSON is the custom marshaler for DynamicsSource.
30727func (ds DynamicsSource) MarshalJSON() ([]byte, error) {
30728	ds.Type = TypeDynamicsSource
30729	objectMap := make(map[string]interface{})
30730	objectMap["query"] = ds.Query
30731	objectMap["sourceRetryCount"] = ds.SourceRetryCount
30732	objectMap["sourceRetryWait"] = ds.SourceRetryWait
30733	if ds.Type != "" {
30734		objectMap["type"] = ds.Type
30735	}
30736	for k, v := range ds.AdditionalProperties {
30737		objectMap[k] = v
30738	}
30739	return json.Marshal(objectMap)
30740}
30741
30742// AsAmazonRedshiftSource is the BasicCopySource implementation for DynamicsSource.
30743func (ds DynamicsSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
30744	return nil, false
30745}
30746
30747// AsResponsysSource is the BasicCopySource implementation for DynamicsSource.
30748func (ds DynamicsSource) AsResponsysSource() (*ResponsysSource, bool) {
30749	return nil, false
30750}
30751
30752// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for DynamicsSource.
30753func (ds DynamicsSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
30754	return nil, false
30755}
30756
30757// AsVerticaSource is the BasicCopySource implementation for DynamicsSource.
30758func (ds DynamicsSource) AsVerticaSource() (*VerticaSource, bool) {
30759	return nil, false
30760}
30761
30762// AsNetezzaSource is the BasicCopySource implementation for DynamicsSource.
30763func (ds DynamicsSource) AsNetezzaSource() (*NetezzaSource, bool) {
30764	return nil, false
30765}
30766
30767// AsZohoSource is the BasicCopySource implementation for DynamicsSource.
30768func (ds DynamicsSource) AsZohoSource() (*ZohoSource, bool) {
30769	return nil, false
30770}
30771
30772// AsXeroSource is the BasicCopySource implementation for DynamicsSource.
30773func (ds DynamicsSource) AsXeroSource() (*XeroSource, bool) {
30774	return nil, false
30775}
30776
30777// AsSquareSource is the BasicCopySource implementation for DynamicsSource.
30778func (ds DynamicsSource) AsSquareSource() (*SquareSource, bool) {
30779	return nil, false
30780}
30781
30782// AsSparkSource is the BasicCopySource implementation for DynamicsSource.
30783func (ds DynamicsSource) AsSparkSource() (*SparkSource, bool) {
30784	return nil, false
30785}
30786
30787// AsShopifySource is the BasicCopySource implementation for DynamicsSource.
30788func (ds DynamicsSource) AsShopifySource() (*ShopifySource, bool) {
30789	return nil, false
30790}
30791
30792// AsServiceNowSource is the BasicCopySource implementation for DynamicsSource.
30793func (ds DynamicsSource) AsServiceNowSource() (*ServiceNowSource, bool) {
30794	return nil, false
30795}
30796
30797// AsQuickBooksSource is the BasicCopySource implementation for DynamicsSource.
30798func (ds DynamicsSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
30799	return nil, false
30800}
30801
30802// AsPrestoSource is the BasicCopySource implementation for DynamicsSource.
30803func (ds DynamicsSource) AsPrestoSource() (*PrestoSource, bool) {
30804	return nil, false
30805}
30806
30807// AsPhoenixSource is the BasicCopySource implementation for DynamicsSource.
30808func (ds DynamicsSource) AsPhoenixSource() (*PhoenixSource, bool) {
30809	return nil, false
30810}
30811
30812// AsPaypalSource is the BasicCopySource implementation for DynamicsSource.
30813func (ds DynamicsSource) AsPaypalSource() (*PaypalSource, bool) {
30814	return nil, false
30815}
30816
30817// AsMarketoSource is the BasicCopySource implementation for DynamicsSource.
30818func (ds DynamicsSource) AsMarketoSource() (*MarketoSource, bool) {
30819	return nil, false
30820}
30821
30822// AsMariaDBSource is the BasicCopySource implementation for DynamicsSource.
30823func (ds DynamicsSource) AsMariaDBSource() (*MariaDBSource, bool) {
30824	return nil, false
30825}
30826
30827// AsMagentoSource is the BasicCopySource implementation for DynamicsSource.
30828func (ds DynamicsSource) AsMagentoSource() (*MagentoSource, bool) {
30829	return nil, false
30830}
30831
30832// AsJiraSource is the BasicCopySource implementation for DynamicsSource.
30833func (ds DynamicsSource) AsJiraSource() (*JiraSource, bool) {
30834	return nil, false
30835}
30836
30837// AsImpalaSource is the BasicCopySource implementation for DynamicsSource.
30838func (ds DynamicsSource) AsImpalaSource() (*ImpalaSource, bool) {
30839	return nil, false
30840}
30841
30842// AsHubspotSource is the BasicCopySource implementation for DynamicsSource.
30843func (ds DynamicsSource) AsHubspotSource() (*HubspotSource, bool) {
30844	return nil, false
30845}
30846
30847// AsHiveSource is the BasicCopySource implementation for DynamicsSource.
30848func (ds DynamicsSource) AsHiveSource() (*HiveSource, bool) {
30849	return nil, false
30850}
30851
30852// AsHBaseSource is the BasicCopySource implementation for DynamicsSource.
30853func (ds DynamicsSource) AsHBaseSource() (*HBaseSource, bool) {
30854	return nil, false
30855}
30856
30857// AsGreenplumSource is the BasicCopySource implementation for DynamicsSource.
30858func (ds DynamicsSource) AsGreenplumSource() (*GreenplumSource, bool) {
30859	return nil, false
30860}
30861
30862// AsGoogleBigQuerySource is the BasicCopySource implementation for DynamicsSource.
30863func (ds DynamicsSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
30864	return nil, false
30865}
30866
30867// AsEloquaSource is the BasicCopySource implementation for DynamicsSource.
30868func (ds DynamicsSource) AsEloquaSource() (*EloquaSource, bool) {
30869	return nil, false
30870}
30871
30872// AsDrillSource is the BasicCopySource implementation for DynamicsSource.
30873func (ds DynamicsSource) AsDrillSource() (*DrillSource, bool) {
30874	return nil, false
30875}
30876
30877// AsCouchbaseSource is the BasicCopySource implementation for DynamicsSource.
30878func (ds DynamicsSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
30879	return nil, false
30880}
30881
30882// AsConcurSource is the BasicCopySource implementation for DynamicsSource.
30883func (ds DynamicsSource) AsConcurSource() (*ConcurSource, bool) {
30884	return nil, false
30885}
30886
30887// AsAzurePostgreSQLSource is the BasicCopySource implementation for DynamicsSource.
30888func (ds DynamicsSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
30889	return nil, false
30890}
30891
30892// AsAmazonMWSSource is the BasicCopySource implementation for DynamicsSource.
30893func (ds DynamicsSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
30894	return nil, false
30895}
30896
30897// AsHTTPSource is the BasicCopySource implementation for DynamicsSource.
30898func (ds DynamicsSource) AsHTTPSource() (*HTTPSource, bool) {
30899	return nil, false
30900}
30901
30902// AsAzureDataLakeStoreSource is the BasicCopySource implementation for DynamicsSource.
30903func (ds DynamicsSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
30904	return nil, false
30905}
30906
30907// AsMongoDbSource is the BasicCopySource implementation for DynamicsSource.
30908func (ds DynamicsSource) AsMongoDbSource() (*MongoDbSource, bool) {
30909	return nil, false
30910}
30911
30912// AsCassandraSource is the BasicCopySource implementation for DynamicsSource.
30913func (ds DynamicsSource) AsCassandraSource() (*CassandraSource, bool) {
30914	return nil, false
30915}
30916
30917// AsWebSource is the BasicCopySource implementation for DynamicsSource.
30918func (ds DynamicsSource) AsWebSource() (*WebSource, bool) {
30919	return nil, false
30920}
30921
30922// AsOracleSource is the BasicCopySource implementation for DynamicsSource.
30923func (ds DynamicsSource) AsOracleSource() (*OracleSource, bool) {
30924	return nil, false
30925}
30926
30927// AsAzureMySQLSource is the BasicCopySource implementation for DynamicsSource.
30928func (ds DynamicsSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
30929	return nil, false
30930}
30931
30932// AsHdfsSource is the BasicCopySource implementation for DynamicsSource.
30933func (ds DynamicsSource) AsHdfsSource() (*HdfsSource, bool) {
30934	return nil, false
30935}
30936
30937// AsFileSystemSource is the BasicCopySource implementation for DynamicsSource.
30938func (ds DynamicsSource) AsFileSystemSource() (*FileSystemSource, bool) {
30939	return nil, false
30940}
30941
30942// AsSQLDWSource is the BasicCopySource implementation for DynamicsSource.
30943func (ds DynamicsSource) AsSQLDWSource() (*SQLDWSource, bool) {
30944	return nil, false
30945}
30946
30947// AsSQLSource is the BasicCopySource implementation for DynamicsSource.
30948func (ds DynamicsSource) AsSQLSource() (*SQLSource, bool) {
30949	return nil, false
30950}
30951
30952// AsSapEccSource is the BasicCopySource implementation for DynamicsSource.
30953func (ds DynamicsSource) AsSapEccSource() (*SapEccSource, bool) {
30954	return nil, false
30955}
30956
30957// AsSapCloudForCustomerSource is the BasicCopySource implementation for DynamicsSource.
30958func (ds DynamicsSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
30959	return nil, false
30960}
30961
30962// AsSalesforceSource is the BasicCopySource implementation for DynamicsSource.
30963func (ds DynamicsSource) AsSalesforceSource() (*SalesforceSource, bool) {
30964	return nil, false
30965}
30966
30967// AsRelationalSource is the BasicCopySource implementation for DynamicsSource.
30968func (ds DynamicsSource) AsRelationalSource() (*RelationalSource, bool) {
30969	return nil, false
30970}
30971
30972// AsDynamicsSource is the BasicCopySource implementation for DynamicsSource.
30973func (ds DynamicsSource) AsDynamicsSource() (*DynamicsSource, bool) {
30974	return &ds, true
30975}
30976
30977// AsDocumentDbCollectionSource is the BasicCopySource implementation for DynamicsSource.
30978func (ds DynamicsSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
30979	return nil, false
30980}
30981
30982// AsBlobSource is the BasicCopySource implementation for DynamicsSource.
30983func (ds DynamicsSource) AsBlobSource() (*BlobSource, bool) {
30984	return nil, false
30985}
30986
30987// AsAzureTableSource is the BasicCopySource implementation for DynamicsSource.
30988func (ds DynamicsSource) AsAzureTableSource() (*AzureTableSource, bool) {
30989	return nil, false
30990}
30991
30992// AsCopySource is the BasicCopySource implementation for DynamicsSource.
30993func (ds DynamicsSource) AsCopySource() (*CopySource, bool) {
30994	return nil, false
30995}
30996
30997// AsBasicCopySource is the BasicCopySource implementation for DynamicsSource.
30998func (ds DynamicsSource) AsBasicCopySource() (BasicCopySource, bool) {
30999	return &ds, true
31000}
31001
31002// EloquaLinkedService eloqua server linked service.
31003type EloquaLinkedService struct {
31004	// EloquaLinkedServiceTypeProperties - Eloqua server linked service properties.
31005	*EloquaLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
31006	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
31007	AdditionalProperties map[string]interface{} `json:""`
31008	// ConnectVia - The integration runtime reference.
31009	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
31010	// Description - Linked service description.
31011	Description *string `json:"description,omitempty"`
31012	// Parameters - Parameters for linked service.
31013	Parameters map[string]*ParameterSpecification `json:"parameters"`
31014	// Annotations - List of tags that can be used for describing the Dataset.
31015	Annotations *[]interface{} `json:"annotations,omitempty"`
31016	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
31017	Type TypeBasicLinkedService `json:"type,omitempty"`
31018}
31019
31020// MarshalJSON is the custom marshaler for EloquaLinkedService.
31021func (els EloquaLinkedService) MarshalJSON() ([]byte, error) {
31022	els.Type = TypeEloqua
31023	objectMap := make(map[string]interface{})
31024	if els.EloquaLinkedServiceTypeProperties != nil {
31025		objectMap["typeProperties"] = els.EloquaLinkedServiceTypeProperties
31026	}
31027	if els.ConnectVia != nil {
31028		objectMap["connectVia"] = els.ConnectVia
31029	}
31030	if els.Description != nil {
31031		objectMap["description"] = els.Description
31032	}
31033	if els.Parameters != nil {
31034		objectMap["parameters"] = els.Parameters
31035	}
31036	if els.Annotations != nil {
31037		objectMap["annotations"] = els.Annotations
31038	}
31039	if els.Type != "" {
31040		objectMap["type"] = els.Type
31041	}
31042	for k, v := range els.AdditionalProperties {
31043		objectMap[k] = v
31044	}
31045	return json.Marshal(objectMap)
31046}
31047
31048// AsResponsysLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31049func (els EloquaLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
31050	return nil, false
31051}
31052
31053// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31054func (els EloquaLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
31055	return nil, false
31056}
31057
31058// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31059func (els EloquaLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
31060	return nil, false
31061}
31062
31063// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31064func (els EloquaLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
31065	return nil, false
31066}
31067
31068// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31069func (els EloquaLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
31070	return nil, false
31071}
31072
31073// AsNetezzaLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31074func (els EloquaLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
31075	return nil, false
31076}
31077
31078// AsVerticaLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31079func (els EloquaLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
31080	return nil, false
31081}
31082
31083// AsZohoLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31084func (els EloquaLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
31085	return nil, false
31086}
31087
31088// AsXeroLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31089func (els EloquaLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
31090	return nil, false
31091}
31092
31093// AsSquareLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31094func (els EloquaLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
31095	return nil, false
31096}
31097
31098// AsSparkLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31099func (els EloquaLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
31100	return nil, false
31101}
31102
31103// AsShopifyLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31104func (els EloquaLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
31105	return nil, false
31106}
31107
31108// AsServiceNowLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31109func (els EloquaLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
31110	return nil, false
31111}
31112
31113// AsQuickBooksLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31114func (els EloquaLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
31115	return nil, false
31116}
31117
31118// AsPrestoLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31119func (els EloquaLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
31120	return nil, false
31121}
31122
31123// AsPhoenixLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31124func (els EloquaLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
31125	return nil, false
31126}
31127
31128// AsPaypalLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31129func (els EloquaLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
31130	return nil, false
31131}
31132
31133// AsMarketoLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31134func (els EloquaLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
31135	return nil, false
31136}
31137
31138// AsMariaDBLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31139func (els EloquaLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
31140	return nil, false
31141}
31142
31143// AsMagentoLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31144func (els EloquaLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
31145	return nil, false
31146}
31147
31148// AsJiraLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31149func (els EloquaLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
31150	return nil, false
31151}
31152
31153// AsImpalaLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31154func (els EloquaLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
31155	return nil, false
31156}
31157
31158// AsHubspotLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31159func (els EloquaLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
31160	return nil, false
31161}
31162
31163// AsHiveLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31164func (els EloquaLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
31165	return nil, false
31166}
31167
31168// AsHBaseLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31169func (els EloquaLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
31170	return nil, false
31171}
31172
31173// AsGreenplumLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31174func (els EloquaLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
31175	return nil, false
31176}
31177
31178// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31179func (els EloquaLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
31180	return nil, false
31181}
31182
31183// AsEloquaLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31184func (els EloquaLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
31185	return &els, true
31186}
31187
31188// AsDrillLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31189func (els EloquaLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
31190	return nil, false
31191}
31192
31193// AsCouchbaseLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31194func (els EloquaLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
31195	return nil, false
31196}
31197
31198// AsConcurLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31199func (els EloquaLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
31200	return nil, false
31201}
31202
31203// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31204func (els EloquaLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
31205	return nil, false
31206}
31207
31208// AsAmazonMWSLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31209func (els EloquaLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
31210	return nil, false
31211}
31212
31213// AsSapHanaLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31214func (els EloquaLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
31215	return nil, false
31216}
31217
31218// AsSapBWLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31219func (els EloquaLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
31220	return nil, false
31221}
31222
31223// AsSftpServerLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31224func (els EloquaLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
31225	return nil, false
31226}
31227
31228// AsFtpServerLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31229func (els EloquaLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
31230	return nil, false
31231}
31232
31233// AsHTTPLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31234func (els EloquaLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
31235	return nil, false
31236}
31237
31238// AsAzureSearchLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31239func (els EloquaLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
31240	return nil, false
31241}
31242
31243// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31244func (els EloquaLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
31245	return nil, false
31246}
31247
31248// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31249func (els EloquaLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
31250	return nil, false
31251}
31252
31253// AsAmazonS3LinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31254func (els EloquaLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
31255	return nil, false
31256}
31257
31258// AsSapEccLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31259func (els EloquaLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
31260	return nil, false
31261}
31262
31263// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31264func (els EloquaLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
31265	return nil, false
31266}
31267
31268// AsSalesforceLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31269func (els EloquaLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
31270	return nil, false
31271}
31272
31273// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31274func (els EloquaLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
31275	return nil, false
31276}
31277
31278// AsMongoDbLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31279func (els EloquaLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
31280	return nil, false
31281}
31282
31283// AsCassandraLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31284func (els EloquaLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
31285	return nil, false
31286}
31287
31288// AsWebLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31289func (els EloquaLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
31290	return nil, false
31291}
31292
31293// AsODataLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31294func (els EloquaLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
31295	return nil, false
31296}
31297
31298// AsHdfsLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31299func (els EloquaLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
31300	return nil, false
31301}
31302
31303// AsOdbcLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31304func (els EloquaLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
31305	return nil, false
31306}
31307
31308// AsAzureMLLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31309func (els EloquaLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
31310	return nil, false
31311}
31312
31313// AsTeradataLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31314func (els EloquaLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
31315	return nil, false
31316}
31317
31318// AsDb2LinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31319func (els EloquaLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
31320	return nil, false
31321}
31322
31323// AsSybaseLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31324func (els EloquaLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
31325	return nil, false
31326}
31327
31328// AsPostgreSQLLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31329func (els EloquaLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
31330	return nil, false
31331}
31332
31333// AsMySQLLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31334func (els EloquaLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
31335	return nil, false
31336}
31337
31338// AsAzureMySQLLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31339func (els EloquaLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
31340	return nil, false
31341}
31342
31343// AsOracleLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31344func (els EloquaLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
31345	return nil, false
31346}
31347
31348// AsFileServerLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31349func (els EloquaLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
31350	return nil, false
31351}
31352
31353// AsHDInsightLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31354func (els EloquaLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
31355	return nil, false
31356}
31357
31358// AsDynamicsLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31359func (els EloquaLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
31360	return nil, false
31361}
31362
31363// AsCosmosDbLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31364func (els EloquaLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
31365	return nil, false
31366}
31367
31368// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31369func (els EloquaLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
31370	return nil, false
31371}
31372
31373// AsAzureBatchLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31374func (els EloquaLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
31375	return nil, false
31376}
31377
31378// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31379func (els EloquaLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
31380	return nil, false
31381}
31382
31383// AsSQLServerLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31384func (els EloquaLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
31385	return nil, false
31386}
31387
31388// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31389func (els EloquaLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
31390	return nil, false
31391}
31392
31393// AsAzureStorageLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31394func (els EloquaLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
31395	return nil, false
31396}
31397
31398// AsLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31399func (els EloquaLinkedService) AsLinkedService() (*LinkedService, bool) {
31400	return nil, false
31401}
31402
31403// AsBasicLinkedService is the BasicLinkedService implementation for EloquaLinkedService.
31404func (els EloquaLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
31405	return &els, true
31406}
31407
31408// UnmarshalJSON is the custom unmarshaler for EloquaLinkedService struct.
31409func (els *EloquaLinkedService) UnmarshalJSON(body []byte) error {
31410	var m map[string]*json.RawMessage
31411	err := json.Unmarshal(body, &m)
31412	if err != nil {
31413		return err
31414	}
31415	for k, v := range m {
31416		switch k {
31417		case "typeProperties":
31418			if v != nil {
31419				var eloquaLinkedServiceTypeProperties EloquaLinkedServiceTypeProperties
31420				err = json.Unmarshal(*v, &eloquaLinkedServiceTypeProperties)
31421				if err != nil {
31422					return err
31423				}
31424				els.EloquaLinkedServiceTypeProperties = &eloquaLinkedServiceTypeProperties
31425			}
31426		default:
31427			if v != nil {
31428				var additionalProperties interface{}
31429				err = json.Unmarshal(*v, &additionalProperties)
31430				if err != nil {
31431					return err
31432				}
31433				if els.AdditionalProperties == nil {
31434					els.AdditionalProperties = make(map[string]interface{})
31435				}
31436				els.AdditionalProperties[k] = additionalProperties
31437			}
31438		case "connectVia":
31439			if v != nil {
31440				var connectVia IntegrationRuntimeReference
31441				err = json.Unmarshal(*v, &connectVia)
31442				if err != nil {
31443					return err
31444				}
31445				els.ConnectVia = &connectVia
31446			}
31447		case "description":
31448			if v != nil {
31449				var description string
31450				err = json.Unmarshal(*v, &description)
31451				if err != nil {
31452					return err
31453				}
31454				els.Description = &description
31455			}
31456		case "parameters":
31457			if v != nil {
31458				var parameters map[string]*ParameterSpecification
31459				err = json.Unmarshal(*v, &parameters)
31460				if err != nil {
31461					return err
31462				}
31463				els.Parameters = parameters
31464			}
31465		case "annotations":
31466			if v != nil {
31467				var annotations []interface{}
31468				err = json.Unmarshal(*v, &annotations)
31469				if err != nil {
31470					return err
31471				}
31472				els.Annotations = &annotations
31473			}
31474		case "type":
31475			if v != nil {
31476				var typeVar TypeBasicLinkedService
31477				err = json.Unmarshal(*v, &typeVar)
31478				if err != nil {
31479					return err
31480				}
31481				els.Type = typeVar
31482			}
31483		}
31484	}
31485
31486	return nil
31487}
31488
31489// EloquaLinkedServiceTypeProperties eloqua server linked service properties.
31490type EloquaLinkedServiceTypeProperties struct {
31491	// Endpoint - The endpoint of the Eloqua server. (i.e. eloqua.example.com)
31492	Endpoint interface{} `json:"endpoint,omitempty"`
31493	// Username - The site name and user name of your Eloqua account in the form: sitename/username. (i.e. Eloqua/Alice)
31494	Username interface{} `json:"username,omitempty"`
31495	// Password - The password corresponding to the user name.
31496	Password BasicSecretBase `json:"password,omitempty"`
31497	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
31498	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
31499	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
31500	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
31501	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
31502	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
31503	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
31504	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
31505}
31506
31507// UnmarshalJSON is the custom unmarshaler for EloquaLinkedServiceTypeProperties struct.
31508func (elstp *EloquaLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
31509	var m map[string]*json.RawMessage
31510	err := json.Unmarshal(body, &m)
31511	if err != nil {
31512		return err
31513	}
31514	for k, v := range m {
31515		switch k {
31516		case "endpoint":
31517			if v != nil {
31518				var endpoint interface{}
31519				err = json.Unmarshal(*v, &endpoint)
31520				if err != nil {
31521					return err
31522				}
31523				elstp.Endpoint = endpoint
31524			}
31525		case "username":
31526			if v != nil {
31527				var username interface{}
31528				err = json.Unmarshal(*v, &username)
31529				if err != nil {
31530					return err
31531				}
31532				elstp.Username = username
31533			}
31534		case "password":
31535			if v != nil {
31536				password, err := unmarshalBasicSecretBase(*v)
31537				if err != nil {
31538					return err
31539				}
31540				elstp.Password = password
31541			}
31542		case "useEncryptedEndpoints":
31543			if v != nil {
31544				var useEncryptedEndpoints interface{}
31545				err = json.Unmarshal(*v, &useEncryptedEndpoints)
31546				if err != nil {
31547					return err
31548				}
31549				elstp.UseEncryptedEndpoints = useEncryptedEndpoints
31550			}
31551		case "useHostVerification":
31552			if v != nil {
31553				var useHostVerification interface{}
31554				err = json.Unmarshal(*v, &useHostVerification)
31555				if err != nil {
31556					return err
31557				}
31558				elstp.UseHostVerification = useHostVerification
31559			}
31560		case "usePeerVerification":
31561			if v != nil {
31562				var usePeerVerification interface{}
31563				err = json.Unmarshal(*v, &usePeerVerification)
31564				if err != nil {
31565					return err
31566				}
31567				elstp.UsePeerVerification = usePeerVerification
31568			}
31569		case "encryptedCredential":
31570			if v != nil {
31571				var encryptedCredential interface{}
31572				err = json.Unmarshal(*v, &encryptedCredential)
31573				if err != nil {
31574					return err
31575				}
31576				elstp.EncryptedCredential = encryptedCredential
31577			}
31578		}
31579	}
31580
31581	return nil
31582}
31583
31584// EloquaObjectDataset eloqua server dataset.
31585type EloquaObjectDataset struct {
31586	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
31587	AdditionalProperties map[string]interface{} `json:""`
31588	// Description - Dataset description.
31589	Description *string `json:"description,omitempty"`
31590	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
31591	Structure interface{} `json:"structure,omitempty"`
31592	// LinkedServiceName - Linked service reference.
31593	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
31594	// Parameters - Parameters for dataset.
31595	Parameters map[string]*ParameterSpecification `json:"parameters"`
31596	// Annotations - List of tags that can be used for describing the Dataset.
31597	Annotations *[]interface{} `json:"annotations,omitempty"`
31598	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
31599	Type TypeBasicDataset `json:"type,omitempty"`
31600}
31601
31602// MarshalJSON is the custom marshaler for EloquaObjectDataset.
31603func (eod EloquaObjectDataset) MarshalJSON() ([]byte, error) {
31604	eod.Type = TypeEloquaObject
31605	objectMap := make(map[string]interface{})
31606	if eod.Description != nil {
31607		objectMap["description"] = eod.Description
31608	}
31609	objectMap["structure"] = eod.Structure
31610	if eod.LinkedServiceName != nil {
31611		objectMap["linkedServiceName"] = eod.LinkedServiceName
31612	}
31613	if eod.Parameters != nil {
31614		objectMap["parameters"] = eod.Parameters
31615	}
31616	if eod.Annotations != nil {
31617		objectMap["annotations"] = eod.Annotations
31618	}
31619	if eod.Type != "" {
31620		objectMap["type"] = eod.Type
31621	}
31622	for k, v := range eod.AdditionalProperties {
31623		objectMap[k] = v
31624	}
31625	return json.Marshal(objectMap)
31626}
31627
31628// AsResponsysObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31629func (eod EloquaObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
31630	return nil, false
31631}
31632
31633// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31634func (eod EloquaObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
31635	return nil, false
31636}
31637
31638// AsVerticaTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31639func (eod EloquaObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
31640	return nil, false
31641}
31642
31643// AsNetezzaTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31644func (eod EloquaObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
31645	return nil, false
31646}
31647
31648// AsZohoObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31649func (eod EloquaObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
31650	return nil, false
31651}
31652
31653// AsXeroObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31654func (eod EloquaObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
31655	return nil, false
31656}
31657
31658// AsSquareObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31659func (eod EloquaObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
31660	return nil, false
31661}
31662
31663// AsSparkObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31664func (eod EloquaObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
31665	return nil, false
31666}
31667
31668// AsShopifyObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31669func (eod EloquaObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
31670	return nil, false
31671}
31672
31673// AsServiceNowObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31674func (eod EloquaObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
31675	return nil, false
31676}
31677
31678// AsQuickBooksObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31679func (eod EloquaObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
31680	return nil, false
31681}
31682
31683// AsPrestoObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31684func (eod EloquaObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
31685	return nil, false
31686}
31687
31688// AsPhoenixObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31689func (eod EloquaObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
31690	return nil, false
31691}
31692
31693// AsPaypalObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31694func (eod EloquaObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
31695	return nil, false
31696}
31697
31698// AsMarketoObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31699func (eod EloquaObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
31700	return nil, false
31701}
31702
31703// AsMariaDBTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31704func (eod EloquaObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
31705	return nil, false
31706}
31707
31708// AsMagentoObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31709func (eod EloquaObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
31710	return nil, false
31711}
31712
31713// AsJiraObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31714func (eod EloquaObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
31715	return nil, false
31716}
31717
31718// AsImpalaObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31719func (eod EloquaObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
31720	return nil, false
31721}
31722
31723// AsHubspotObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31724func (eod EloquaObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
31725	return nil, false
31726}
31727
31728// AsHiveObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31729func (eod EloquaObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
31730	return nil, false
31731}
31732
31733// AsHBaseObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31734func (eod EloquaObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
31735	return nil, false
31736}
31737
31738// AsGreenplumTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31739func (eod EloquaObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
31740	return nil, false
31741}
31742
31743// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31744func (eod EloquaObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
31745	return nil, false
31746}
31747
31748// AsEloquaObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31749func (eod EloquaObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
31750	return &eod, true
31751}
31752
31753// AsDrillTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31754func (eod EloquaObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
31755	return nil, false
31756}
31757
31758// AsCouchbaseTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31759func (eod EloquaObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
31760	return nil, false
31761}
31762
31763// AsConcurObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31764func (eod EloquaObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
31765	return nil, false
31766}
31767
31768// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31769func (eod EloquaObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
31770	return nil, false
31771}
31772
31773// AsAmazonMWSObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31774func (eod EloquaObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
31775	return nil, false
31776}
31777
31778// AsHTTPDataset is the BasicDataset implementation for EloquaObjectDataset.
31779func (eod EloquaObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
31780	return nil, false
31781}
31782
31783// AsAzureSearchIndexDataset is the BasicDataset implementation for EloquaObjectDataset.
31784func (eod EloquaObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
31785	return nil, false
31786}
31787
31788// AsWebTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31789func (eod EloquaObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
31790	return nil, false
31791}
31792
31793// AsSQLServerTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31794func (eod EloquaObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
31795	return nil, false
31796}
31797
31798// AsSapEccResourceDataset is the BasicDataset implementation for EloquaObjectDataset.
31799func (eod EloquaObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
31800	return nil, false
31801}
31802
31803// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for EloquaObjectDataset.
31804func (eod EloquaObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
31805	return nil, false
31806}
31807
31808// AsSalesforceObjectDataset is the BasicDataset implementation for EloquaObjectDataset.
31809func (eod EloquaObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
31810	return nil, false
31811}
31812
31813// AsRelationalTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31814func (eod EloquaObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
31815	return nil, false
31816}
31817
31818// AsAzureMySQLTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31819func (eod EloquaObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
31820	return nil, false
31821}
31822
31823// AsOracleTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31824func (eod EloquaObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
31825	return nil, false
31826}
31827
31828// AsODataResourceDataset is the BasicDataset implementation for EloquaObjectDataset.
31829func (eod EloquaObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
31830	return nil, false
31831}
31832
31833// AsMongoDbCollectionDataset is the BasicDataset implementation for EloquaObjectDataset.
31834func (eod EloquaObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
31835	return nil, false
31836}
31837
31838// AsFileShareDataset is the BasicDataset implementation for EloquaObjectDataset.
31839func (eod EloquaObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
31840	return nil, false
31841}
31842
31843// AsAzureDataLakeStoreDataset is the BasicDataset implementation for EloquaObjectDataset.
31844func (eod EloquaObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
31845	return nil, false
31846}
31847
31848// AsDynamicsEntityDataset is the BasicDataset implementation for EloquaObjectDataset.
31849func (eod EloquaObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
31850	return nil, false
31851}
31852
31853// AsDocumentDbCollectionDataset is the BasicDataset implementation for EloquaObjectDataset.
31854func (eod EloquaObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
31855	return nil, false
31856}
31857
31858// AsCustomDataset is the BasicDataset implementation for EloquaObjectDataset.
31859func (eod EloquaObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
31860	return nil, false
31861}
31862
31863// AsCassandraTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31864func (eod EloquaObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
31865	return nil, false
31866}
31867
31868// AsAzureSQLDWTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31869func (eod EloquaObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
31870	return nil, false
31871}
31872
31873// AsAzureSQLTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31874func (eod EloquaObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
31875	return nil, false
31876}
31877
31878// AsAzureTableDataset is the BasicDataset implementation for EloquaObjectDataset.
31879func (eod EloquaObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
31880	return nil, false
31881}
31882
31883// AsAzureBlobDataset is the BasicDataset implementation for EloquaObjectDataset.
31884func (eod EloquaObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
31885	return nil, false
31886}
31887
31888// AsAmazonS3Dataset is the BasicDataset implementation for EloquaObjectDataset.
31889func (eod EloquaObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
31890	return nil, false
31891}
31892
31893// AsDataset is the BasicDataset implementation for EloquaObjectDataset.
31894func (eod EloquaObjectDataset) AsDataset() (*Dataset, bool) {
31895	return nil, false
31896}
31897
31898// AsBasicDataset is the BasicDataset implementation for EloquaObjectDataset.
31899func (eod EloquaObjectDataset) AsBasicDataset() (BasicDataset, bool) {
31900	return &eod, true
31901}
31902
31903// EloquaSource a copy activity Eloqua server source.
31904type EloquaSource struct {
31905	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
31906	Query interface{} `json:"query,omitempty"`
31907	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
31908	AdditionalProperties map[string]interface{} `json:""`
31909	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
31910	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
31911	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
31912	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
31913	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
31914	Type TypeBasicCopySource `json:"type,omitempty"`
31915}
31916
31917// MarshalJSON is the custom marshaler for EloquaSource.
31918func (es EloquaSource) MarshalJSON() ([]byte, error) {
31919	es.Type = TypeEloquaSource
31920	objectMap := make(map[string]interface{})
31921	objectMap["query"] = es.Query
31922	objectMap["sourceRetryCount"] = es.SourceRetryCount
31923	objectMap["sourceRetryWait"] = es.SourceRetryWait
31924	if es.Type != "" {
31925		objectMap["type"] = es.Type
31926	}
31927	for k, v := range es.AdditionalProperties {
31928		objectMap[k] = v
31929	}
31930	return json.Marshal(objectMap)
31931}
31932
31933// AsAmazonRedshiftSource is the BasicCopySource implementation for EloquaSource.
31934func (es EloquaSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
31935	return nil, false
31936}
31937
31938// AsResponsysSource is the BasicCopySource implementation for EloquaSource.
31939func (es EloquaSource) AsResponsysSource() (*ResponsysSource, bool) {
31940	return nil, false
31941}
31942
31943// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for EloquaSource.
31944func (es EloquaSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
31945	return nil, false
31946}
31947
31948// AsVerticaSource is the BasicCopySource implementation for EloquaSource.
31949func (es EloquaSource) AsVerticaSource() (*VerticaSource, bool) {
31950	return nil, false
31951}
31952
31953// AsNetezzaSource is the BasicCopySource implementation for EloquaSource.
31954func (es EloquaSource) AsNetezzaSource() (*NetezzaSource, bool) {
31955	return nil, false
31956}
31957
31958// AsZohoSource is the BasicCopySource implementation for EloquaSource.
31959func (es EloquaSource) AsZohoSource() (*ZohoSource, bool) {
31960	return nil, false
31961}
31962
31963// AsXeroSource is the BasicCopySource implementation for EloquaSource.
31964func (es EloquaSource) AsXeroSource() (*XeroSource, bool) {
31965	return nil, false
31966}
31967
31968// AsSquareSource is the BasicCopySource implementation for EloquaSource.
31969func (es EloquaSource) AsSquareSource() (*SquareSource, bool) {
31970	return nil, false
31971}
31972
31973// AsSparkSource is the BasicCopySource implementation for EloquaSource.
31974func (es EloquaSource) AsSparkSource() (*SparkSource, bool) {
31975	return nil, false
31976}
31977
31978// AsShopifySource is the BasicCopySource implementation for EloquaSource.
31979func (es EloquaSource) AsShopifySource() (*ShopifySource, bool) {
31980	return nil, false
31981}
31982
31983// AsServiceNowSource is the BasicCopySource implementation for EloquaSource.
31984func (es EloquaSource) AsServiceNowSource() (*ServiceNowSource, bool) {
31985	return nil, false
31986}
31987
31988// AsQuickBooksSource is the BasicCopySource implementation for EloquaSource.
31989func (es EloquaSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
31990	return nil, false
31991}
31992
31993// AsPrestoSource is the BasicCopySource implementation for EloquaSource.
31994func (es EloquaSource) AsPrestoSource() (*PrestoSource, bool) {
31995	return nil, false
31996}
31997
31998// AsPhoenixSource is the BasicCopySource implementation for EloquaSource.
31999func (es EloquaSource) AsPhoenixSource() (*PhoenixSource, bool) {
32000	return nil, false
32001}
32002
32003// AsPaypalSource is the BasicCopySource implementation for EloquaSource.
32004func (es EloquaSource) AsPaypalSource() (*PaypalSource, bool) {
32005	return nil, false
32006}
32007
32008// AsMarketoSource is the BasicCopySource implementation for EloquaSource.
32009func (es EloquaSource) AsMarketoSource() (*MarketoSource, bool) {
32010	return nil, false
32011}
32012
32013// AsMariaDBSource is the BasicCopySource implementation for EloquaSource.
32014func (es EloquaSource) AsMariaDBSource() (*MariaDBSource, bool) {
32015	return nil, false
32016}
32017
32018// AsMagentoSource is the BasicCopySource implementation for EloquaSource.
32019func (es EloquaSource) AsMagentoSource() (*MagentoSource, bool) {
32020	return nil, false
32021}
32022
32023// AsJiraSource is the BasicCopySource implementation for EloquaSource.
32024func (es EloquaSource) AsJiraSource() (*JiraSource, bool) {
32025	return nil, false
32026}
32027
32028// AsImpalaSource is the BasicCopySource implementation for EloquaSource.
32029func (es EloquaSource) AsImpalaSource() (*ImpalaSource, bool) {
32030	return nil, false
32031}
32032
32033// AsHubspotSource is the BasicCopySource implementation for EloquaSource.
32034func (es EloquaSource) AsHubspotSource() (*HubspotSource, bool) {
32035	return nil, false
32036}
32037
32038// AsHiveSource is the BasicCopySource implementation for EloquaSource.
32039func (es EloquaSource) AsHiveSource() (*HiveSource, bool) {
32040	return nil, false
32041}
32042
32043// AsHBaseSource is the BasicCopySource implementation for EloquaSource.
32044func (es EloquaSource) AsHBaseSource() (*HBaseSource, bool) {
32045	return nil, false
32046}
32047
32048// AsGreenplumSource is the BasicCopySource implementation for EloquaSource.
32049func (es EloquaSource) AsGreenplumSource() (*GreenplumSource, bool) {
32050	return nil, false
32051}
32052
32053// AsGoogleBigQuerySource is the BasicCopySource implementation for EloquaSource.
32054func (es EloquaSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
32055	return nil, false
32056}
32057
32058// AsEloquaSource is the BasicCopySource implementation for EloquaSource.
32059func (es EloquaSource) AsEloquaSource() (*EloquaSource, bool) {
32060	return &es, true
32061}
32062
32063// AsDrillSource is the BasicCopySource implementation for EloquaSource.
32064func (es EloquaSource) AsDrillSource() (*DrillSource, bool) {
32065	return nil, false
32066}
32067
32068// AsCouchbaseSource is the BasicCopySource implementation for EloquaSource.
32069func (es EloquaSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
32070	return nil, false
32071}
32072
32073// AsConcurSource is the BasicCopySource implementation for EloquaSource.
32074func (es EloquaSource) AsConcurSource() (*ConcurSource, bool) {
32075	return nil, false
32076}
32077
32078// AsAzurePostgreSQLSource is the BasicCopySource implementation for EloquaSource.
32079func (es EloquaSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
32080	return nil, false
32081}
32082
32083// AsAmazonMWSSource is the BasicCopySource implementation for EloquaSource.
32084func (es EloquaSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
32085	return nil, false
32086}
32087
32088// AsHTTPSource is the BasicCopySource implementation for EloquaSource.
32089func (es EloquaSource) AsHTTPSource() (*HTTPSource, bool) {
32090	return nil, false
32091}
32092
32093// AsAzureDataLakeStoreSource is the BasicCopySource implementation for EloquaSource.
32094func (es EloquaSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
32095	return nil, false
32096}
32097
32098// AsMongoDbSource is the BasicCopySource implementation for EloquaSource.
32099func (es EloquaSource) AsMongoDbSource() (*MongoDbSource, bool) {
32100	return nil, false
32101}
32102
32103// AsCassandraSource is the BasicCopySource implementation for EloquaSource.
32104func (es EloquaSource) AsCassandraSource() (*CassandraSource, bool) {
32105	return nil, false
32106}
32107
32108// AsWebSource is the BasicCopySource implementation for EloquaSource.
32109func (es EloquaSource) AsWebSource() (*WebSource, bool) {
32110	return nil, false
32111}
32112
32113// AsOracleSource is the BasicCopySource implementation for EloquaSource.
32114func (es EloquaSource) AsOracleSource() (*OracleSource, bool) {
32115	return nil, false
32116}
32117
32118// AsAzureMySQLSource is the BasicCopySource implementation for EloquaSource.
32119func (es EloquaSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
32120	return nil, false
32121}
32122
32123// AsHdfsSource is the BasicCopySource implementation for EloquaSource.
32124func (es EloquaSource) AsHdfsSource() (*HdfsSource, bool) {
32125	return nil, false
32126}
32127
32128// AsFileSystemSource is the BasicCopySource implementation for EloquaSource.
32129func (es EloquaSource) AsFileSystemSource() (*FileSystemSource, bool) {
32130	return nil, false
32131}
32132
32133// AsSQLDWSource is the BasicCopySource implementation for EloquaSource.
32134func (es EloquaSource) AsSQLDWSource() (*SQLDWSource, bool) {
32135	return nil, false
32136}
32137
32138// AsSQLSource is the BasicCopySource implementation for EloquaSource.
32139func (es EloquaSource) AsSQLSource() (*SQLSource, bool) {
32140	return nil, false
32141}
32142
32143// AsSapEccSource is the BasicCopySource implementation for EloquaSource.
32144func (es EloquaSource) AsSapEccSource() (*SapEccSource, bool) {
32145	return nil, false
32146}
32147
32148// AsSapCloudForCustomerSource is the BasicCopySource implementation for EloquaSource.
32149func (es EloquaSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
32150	return nil, false
32151}
32152
32153// AsSalesforceSource is the BasicCopySource implementation for EloquaSource.
32154func (es EloquaSource) AsSalesforceSource() (*SalesforceSource, bool) {
32155	return nil, false
32156}
32157
32158// AsRelationalSource is the BasicCopySource implementation for EloquaSource.
32159func (es EloquaSource) AsRelationalSource() (*RelationalSource, bool) {
32160	return nil, false
32161}
32162
32163// AsDynamicsSource is the BasicCopySource implementation for EloquaSource.
32164func (es EloquaSource) AsDynamicsSource() (*DynamicsSource, bool) {
32165	return nil, false
32166}
32167
32168// AsDocumentDbCollectionSource is the BasicCopySource implementation for EloquaSource.
32169func (es EloquaSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
32170	return nil, false
32171}
32172
32173// AsBlobSource is the BasicCopySource implementation for EloquaSource.
32174func (es EloquaSource) AsBlobSource() (*BlobSource, bool) {
32175	return nil, false
32176}
32177
32178// AsAzureTableSource is the BasicCopySource implementation for EloquaSource.
32179func (es EloquaSource) AsAzureTableSource() (*AzureTableSource, bool) {
32180	return nil, false
32181}
32182
32183// AsCopySource is the BasicCopySource implementation for EloquaSource.
32184func (es EloquaSource) AsCopySource() (*CopySource, bool) {
32185	return nil, false
32186}
32187
32188// AsBasicCopySource is the BasicCopySource implementation for EloquaSource.
32189func (es EloquaSource) AsBasicCopySource() (BasicCopySource, bool) {
32190	return &es, true
32191}
32192
32193// ErrorResponse the object that defines the structure of an Azure Data Factory response.
32194type ErrorResponse struct {
32195	// Code - Error code.
32196	Code *string `json:"code,omitempty"`
32197	// Message - Error message.
32198	Message *string `json:"message,omitempty"`
32199	// Target - Property name/path in request associated with error.
32200	Target *string `json:"target,omitempty"`
32201	// Details - Array with additional error details.
32202	Details *[]ErrorResponse `json:"details,omitempty"`
32203}
32204
32205// ExecutePipelineActivity execute pipeline activity.
32206type ExecutePipelineActivity struct {
32207	// ExecutePipelineActivityTypeProperties - Execute pipeline activity properties.
32208	*ExecutePipelineActivityTypeProperties `json:"typeProperties,omitempty"`
32209	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
32210	AdditionalProperties map[string]interface{} `json:""`
32211	// Name - Activity name.
32212	Name *string `json:"name,omitempty"`
32213	// Description - Activity description.
32214	Description *string `json:"description,omitempty"`
32215	// DependsOn - Activity depends on condition.
32216	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
32217	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
32218	Type TypeBasicActivity `json:"type,omitempty"`
32219}
32220
32221// MarshalJSON is the custom marshaler for ExecutePipelineActivity.
32222func (epa ExecutePipelineActivity) MarshalJSON() ([]byte, error) {
32223	epa.Type = TypeExecutePipeline
32224	objectMap := make(map[string]interface{})
32225	if epa.ExecutePipelineActivityTypeProperties != nil {
32226		objectMap["typeProperties"] = epa.ExecutePipelineActivityTypeProperties
32227	}
32228	if epa.Name != nil {
32229		objectMap["name"] = epa.Name
32230	}
32231	if epa.Description != nil {
32232		objectMap["description"] = epa.Description
32233	}
32234	if epa.DependsOn != nil {
32235		objectMap["dependsOn"] = epa.DependsOn
32236	}
32237	if epa.Type != "" {
32238		objectMap["type"] = epa.Type
32239	}
32240	for k, v := range epa.AdditionalProperties {
32241		objectMap[k] = v
32242	}
32243	return json.Marshal(objectMap)
32244}
32245
32246// AsDatabricksNotebookActivity is the BasicActivity implementation for ExecutePipelineActivity.
32247func (epa ExecutePipelineActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
32248	return nil, false
32249}
32250
32251// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for ExecutePipelineActivity.
32252func (epa ExecutePipelineActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
32253	return nil, false
32254}
32255
32256// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for ExecutePipelineActivity.
32257func (epa ExecutePipelineActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
32258	return nil, false
32259}
32260
32261// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for ExecutePipelineActivity.
32262func (epa ExecutePipelineActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
32263	return nil, false
32264}
32265
32266// AsGetMetadataActivity is the BasicActivity implementation for ExecutePipelineActivity.
32267func (epa ExecutePipelineActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
32268	return nil, false
32269}
32270
32271// AsWebActivity is the BasicActivity implementation for ExecutePipelineActivity.
32272func (epa ExecutePipelineActivity) AsWebActivity() (*WebActivity, bool) {
32273	return nil, false
32274}
32275
32276// AsLookupActivity is the BasicActivity implementation for ExecutePipelineActivity.
32277func (epa ExecutePipelineActivity) AsLookupActivity() (*LookupActivity, bool) {
32278	return nil, false
32279}
32280
32281// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for ExecutePipelineActivity.
32282func (epa ExecutePipelineActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
32283	return nil, false
32284}
32285
32286// AsCustomActivity is the BasicActivity implementation for ExecutePipelineActivity.
32287func (epa ExecutePipelineActivity) AsCustomActivity() (*CustomActivity, bool) {
32288	return nil, false
32289}
32290
32291// AsExecuteSSISPackageActivity is the BasicActivity implementation for ExecutePipelineActivity.
32292func (epa ExecutePipelineActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
32293	return nil, false
32294}
32295
32296// AsHDInsightSparkActivity is the BasicActivity implementation for ExecutePipelineActivity.
32297func (epa ExecutePipelineActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
32298	return nil, false
32299}
32300
32301// AsHDInsightStreamingActivity is the BasicActivity implementation for ExecutePipelineActivity.
32302func (epa ExecutePipelineActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
32303	return nil, false
32304}
32305
32306// AsHDInsightMapReduceActivity is the BasicActivity implementation for ExecutePipelineActivity.
32307func (epa ExecutePipelineActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
32308	return nil, false
32309}
32310
32311// AsHDInsightPigActivity is the BasicActivity implementation for ExecutePipelineActivity.
32312func (epa ExecutePipelineActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
32313	return nil, false
32314}
32315
32316// AsHDInsightHiveActivity is the BasicActivity implementation for ExecutePipelineActivity.
32317func (epa ExecutePipelineActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
32318	return nil, false
32319}
32320
32321// AsCopyActivity is the BasicActivity implementation for ExecutePipelineActivity.
32322func (epa ExecutePipelineActivity) AsCopyActivity() (*CopyActivity, bool) {
32323	return nil, false
32324}
32325
32326// AsExecutionActivity is the BasicActivity implementation for ExecutePipelineActivity.
32327func (epa ExecutePipelineActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
32328	return nil, false
32329}
32330
32331// AsBasicExecutionActivity is the BasicActivity implementation for ExecutePipelineActivity.
32332func (epa ExecutePipelineActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
32333	return nil, false
32334}
32335
32336// AsFilterActivity is the BasicActivity implementation for ExecutePipelineActivity.
32337func (epa ExecutePipelineActivity) AsFilterActivity() (*FilterActivity, bool) {
32338	return nil, false
32339}
32340
32341// AsUntilActivity is the BasicActivity implementation for ExecutePipelineActivity.
32342func (epa ExecutePipelineActivity) AsUntilActivity() (*UntilActivity, bool) {
32343	return nil, false
32344}
32345
32346// AsWaitActivity is the BasicActivity implementation for ExecutePipelineActivity.
32347func (epa ExecutePipelineActivity) AsWaitActivity() (*WaitActivity, bool) {
32348	return nil, false
32349}
32350
32351// AsForEachActivity is the BasicActivity implementation for ExecutePipelineActivity.
32352func (epa ExecutePipelineActivity) AsForEachActivity() (*ForEachActivity, bool) {
32353	return nil, false
32354}
32355
32356// AsIfConditionActivity is the BasicActivity implementation for ExecutePipelineActivity.
32357func (epa ExecutePipelineActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
32358	return nil, false
32359}
32360
32361// AsExecutePipelineActivity is the BasicActivity implementation for ExecutePipelineActivity.
32362func (epa ExecutePipelineActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
32363	return &epa, true
32364}
32365
32366// AsControlActivity is the BasicActivity implementation for ExecutePipelineActivity.
32367func (epa ExecutePipelineActivity) AsControlActivity() (*ControlActivity, bool) {
32368	return nil, false
32369}
32370
32371// AsBasicControlActivity is the BasicActivity implementation for ExecutePipelineActivity.
32372func (epa ExecutePipelineActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
32373	return &epa, true
32374}
32375
32376// AsActivity is the BasicActivity implementation for ExecutePipelineActivity.
32377func (epa ExecutePipelineActivity) AsActivity() (*Activity, bool) {
32378	return nil, false
32379}
32380
32381// AsBasicActivity is the BasicActivity implementation for ExecutePipelineActivity.
32382func (epa ExecutePipelineActivity) AsBasicActivity() (BasicActivity, bool) {
32383	return &epa, true
32384}
32385
32386// UnmarshalJSON is the custom unmarshaler for ExecutePipelineActivity struct.
32387func (epa *ExecutePipelineActivity) UnmarshalJSON(body []byte) error {
32388	var m map[string]*json.RawMessage
32389	err := json.Unmarshal(body, &m)
32390	if err != nil {
32391		return err
32392	}
32393	for k, v := range m {
32394		switch k {
32395		case "typeProperties":
32396			if v != nil {
32397				var executePipelineActivityTypeProperties ExecutePipelineActivityTypeProperties
32398				err = json.Unmarshal(*v, &executePipelineActivityTypeProperties)
32399				if err != nil {
32400					return err
32401				}
32402				epa.ExecutePipelineActivityTypeProperties = &executePipelineActivityTypeProperties
32403			}
32404		default:
32405			if v != nil {
32406				var additionalProperties interface{}
32407				err = json.Unmarshal(*v, &additionalProperties)
32408				if err != nil {
32409					return err
32410				}
32411				if epa.AdditionalProperties == nil {
32412					epa.AdditionalProperties = make(map[string]interface{})
32413				}
32414				epa.AdditionalProperties[k] = additionalProperties
32415			}
32416		case "name":
32417			if v != nil {
32418				var name string
32419				err = json.Unmarshal(*v, &name)
32420				if err != nil {
32421					return err
32422				}
32423				epa.Name = &name
32424			}
32425		case "description":
32426			if v != nil {
32427				var description string
32428				err = json.Unmarshal(*v, &description)
32429				if err != nil {
32430					return err
32431				}
32432				epa.Description = &description
32433			}
32434		case "dependsOn":
32435			if v != nil {
32436				var dependsOn []ActivityDependency
32437				err = json.Unmarshal(*v, &dependsOn)
32438				if err != nil {
32439					return err
32440				}
32441				epa.DependsOn = &dependsOn
32442			}
32443		case "type":
32444			if v != nil {
32445				var typeVar TypeBasicActivity
32446				err = json.Unmarshal(*v, &typeVar)
32447				if err != nil {
32448					return err
32449				}
32450				epa.Type = typeVar
32451			}
32452		}
32453	}
32454
32455	return nil
32456}
32457
32458// ExecutePipelineActivityTypeProperties execute pipeline activity properties.
32459type ExecutePipelineActivityTypeProperties struct {
32460	// Pipeline - Pipeline reference.
32461	Pipeline *PipelineReference `json:"pipeline,omitempty"`
32462	// Parameters - Pipeline parameters.
32463	Parameters map[string]interface{} `json:"parameters"`
32464	// WaitOnCompletion - Defines whether activity execution will wait for the dependent pipeline execution to finish. Default is false.
32465	WaitOnCompletion *bool `json:"waitOnCompletion,omitempty"`
32466}
32467
32468// MarshalJSON is the custom marshaler for ExecutePipelineActivityTypeProperties.
32469func (epatp ExecutePipelineActivityTypeProperties) MarshalJSON() ([]byte, error) {
32470	objectMap := make(map[string]interface{})
32471	if epatp.Pipeline != nil {
32472		objectMap["pipeline"] = epatp.Pipeline
32473	}
32474	if epatp.Parameters != nil {
32475		objectMap["parameters"] = epatp.Parameters
32476	}
32477	if epatp.WaitOnCompletion != nil {
32478		objectMap["waitOnCompletion"] = epatp.WaitOnCompletion
32479	}
32480	return json.Marshal(objectMap)
32481}
32482
32483// ExecuteSSISPackageActivity execute SSIS package activity.
32484type ExecuteSSISPackageActivity struct {
32485	// ExecuteSSISPackageActivityTypeProperties - Execute SSIS package activity properties.
32486	*ExecuteSSISPackageActivityTypeProperties `json:"typeProperties,omitempty"`
32487	// LinkedServiceName - Linked service reference.
32488	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
32489	// Policy - Activity policy.
32490	Policy *ActivityPolicy `json:"policy,omitempty"`
32491	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
32492	AdditionalProperties map[string]interface{} `json:""`
32493	// Name - Activity name.
32494	Name *string `json:"name,omitempty"`
32495	// Description - Activity description.
32496	Description *string `json:"description,omitempty"`
32497	// DependsOn - Activity depends on condition.
32498	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
32499	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
32500	Type TypeBasicActivity `json:"type,omitempty"`
32501}
32502
32503// MarshalJSON is the custom marshaler for ExecuteSSISPackageActivity.
32504func (espa ExecuteSSISPackageActivity) MarshalJSON() ([]byte, error) {
32505	espa.Type = TypeExecuteSSISPackage
32506	objectMap := make(map[string]interface{})
32507	if espa.ExecuteSSISPackageActivityTypeProperties != nil {
32508		objectMap["typeProperties"] = espa.ExecuteSSISPackageActivityTypeProperties
32509	}
32510	if espa.LinkedServiceName != nil {
32511		objectMap["linkedServiceName"] = espa.LinkedServiceName
32512	}
32513	if espa.Policy != nil {
32514		objectMap["policy"] = espa.Policy
32515	}
32516	if espa.Name != nil {
32517		objectMap["name"] = espa.Name
32518	}
32519	if espa.Description != nil {
32520		objectMap["description"] = espa.Description
32521	}
32522	if espa.DependsOn != nil {
32523		objectMap["dependsOn"] = espa.DependsOn
32524	}
32525	if espa.Type != "" {
32526		objectMap["type"] = espa.Type
32527	}
32528	for k, v := range espa.AdditionalProperties {
32529		objectMap[k] = v
32530	}
32531	return json.Marshal(objectMap)
32532}
32533
32534// AsDatabricksNotebookActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32535func (espa ExecuteSSISPackageActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
32536	return nil, false
32537}
32538
32539// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32540func (espa ExecuteSSISPackageActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
32541	return nil, false
32542}
32543
32544// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32545func (espa ExecuteSSISPackageActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
32546	return nil, false
32547}
32548
32549// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32550func (espa ExecuteSSISPackageActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
32551	return nil, false
32552}
32553
32554// AsGetMetadataActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32555func (espa ExecuteSSISPackageActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
32556	return nil, false
32557}
32558
32559// AsWebActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32560func (espa ExecuteSSISPackageActivity) AsWebActivity() (*WebActivity, bool) {
32561	return nil, false
32562}
32563
32564// AsLookupActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32565func (espa ExecuteSSISPackageActivity) AsLookupActivity() (*LookupActivity, bool) {
32566	return nil, false
32567}
32568
32569// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32570func (espa ExecuteSSISPackageActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
32571	return nil, false
32572}
32573
32574// AsCustomActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32575func (espa ExecuteSSISPackageActivity) AsCustomActivity() (*CustomActivity, bool) {
32576	return nil, false
32577}
32578
32579// AsExecuteSSISPackageActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32580func (espa ExecuteSSISPackageActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
32581	return &espa, true
32582}
32583
32584// AsHDInsightSparkActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32585func (espa ExecuteSSISPackageActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
32586	return nil, false
32587}
32588
32589// AsHDInsightStreamingActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32590func (espa ExecuteSSISPackageActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
32591	return nil, false
32592}
32593
32594// AsHDInsightMapReduceActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32595func (espa ExecuteSSISPackageActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
32596	return nil, false
32597}
32598
32599// AsHDInsightPigActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32600func (espa ExecuteSSISPackageActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
32601	return nil, false
32602}
32603
32604// AsHDInsightHiveActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32605func (espa ExecuteSSISPackageActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
32606	return nil, false
32607}
32608
32609// AsCopyActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32610func (espa ExecuteSSISPackageActivity) AsCopyActivity() (*CopyActivity, bool) {
32611	return nil, false
32612}
32613
32614// AsExecutionActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32615func (espa ExecuteSSISPackageActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
32616	return nil, false
32617}
32618
32619// AsBasicExecutionActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32620func (espa ExecuteSSISPackageActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
32621	return &espa, true
32622}
32623
32624// AsFilterActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32625func (espa ExecuteSSISPackageActivity) AsFilterActivity() (*FilterActivity, bool) {
32626	return nil, false
32627}
32628
32629// AsUntilActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32630func (espa ExecuteSSISPackageActivity) AsUntilActivity() (*UntilActivity, bool) {
32631	return nil, false
32632}
32633
32634// AsWaitActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32635func (espa ExecuteSSISPackageActivity) AsWaitActivity() (*WaitActivity, bool) {
32636	return nil, false
32637}
32638
32639// AsForEachActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32640func (espa ExecuteSSISPackageActivity) AsForEachActivity() (*ForEachActivity, bool) {
32641	return nil, false
32642}
32643
32644// AsIfConditionActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32645func (espa ExecuteSSISPackageActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
32646	return nil, false
32647}
32648
32649// AsExecutePipelineActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32650func (espa ExecuteSSISPackageActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
32651	return nil, false
32652}
32653
32654// AsControlActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32655func (espa ExecuteSSISPackageActivity) AsControlActivity() (*ControlActivity, bool) {
32656	return nil, false
32657}
32658
32659// AsBasicControlActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32660func (espa ExecuteSSISPackageActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
32661	return nil, false
32662}
32663
32664// AsActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32665func (espa ExecuteSSISPackageActivity) AsActivity() (*Activity, bool) {
32666	return nil, false
32667}
32668
32669// AsBasicActivity is the BasicActivity implementation for ExecuteSSISPackageActivity.
32670func (espa ExecuteSSISPackageActivity) AsBasicActivity() (BasicActivity, bool) {
32671	return &espa, true
32672}
32673
32674// UnmarshalJSON is the custom unmarshaler for ExecuteSSISPackageActivity struct.
32675func (espa *ExecuteSSISPackageActivity) UnmarshalJSON(body []byte) error {
32676	var m map[string]*json.RawMessage
32677	err := json.Unmarshal(body, &m)
32678	if err != nil {
32679		return err
32680	}
32681	for k, v := range m {
32682		switch k {
32683		case "typeProperties":
32684			if v != nil {
32685				var executeSSISPackageActivityTypeProperties ExecuteSSISPackageActivityTypeProperties
32686				err = json.Unmarshal(*v, &executeSSISPackageActivityTypeProperties)
32687				if err != nil {
32688					return err
32689				}
32690				espa.ExecuteSSISPackageActivityTypeProperties = &executeSSISPackageActivityTypeProperties
32691			}
32692		case "linkedServiceName":
32693			if v != nil {
32694				var linkedServiceName LinkedServiceReference
32695				err = json.Unmarshal(*v, &linkedServiceName)
32696				if err != nil {
32697					return err
32698				}
32699				espa.LinkedServiceName = &linkedServiceName
32700			}
32701		case "policy":
32702			if v != nil {
32703				var policy ActivityPolicy
32704				err = json.Unmarshal(*v, &policy)
32705				if err != nil {
32706					return err
32707				}
32708				espa.Policy = &policy
32709			}
32710		default:
32711			if v != nil {
32712				var additionalProperties interface{}
32713				err = json.Unmarshal(*v, &additionalProperties)
32714				if err != nil {
32715					return err
32716				}
32717				if espa.AdditionalProperties == nil {
32718					espa.AdditionalProperties = make(map[string]interface{})
32719				}
32720				espa.AdditionalProperties[k] = additionalProperties
32721			}
32722		case "name":
32723			if v != nil {
32724				var name string
32725				err = json.Unmarshal(*v, &name)
32726				if err != nil {
32727					return err
32728				}
32729				espa.Name = &name
32730			}
32731		case "description":
32732			if v != nil {
32733				var description string
32734				err = json.Unmarshal(*v, &description)
32735				if err != nil {
32736					return err
32737				}
32738				espa.Description = &description
32739			}
32740		case "dependsOn":
32741			if v != nil {
32742				var dependsOn []ActivityDependency
32743				err = json.Unmarshal(*v, &dependsOn)
32744				if err != nil {
32745					return err
32746				}
32747				espa.DependsOn = &dependsOn
32748			}
32749		case "type":
32750			if v != nil {
32751				var typeVar TypeBasicActivity
32752				err = json.Unmarshal(*v, &typeVar)
32753				if err != nil {
32754					return err
32755				}
32756				espa.Type = typeVar
32757			}
32758		}
32759	}
32760
32761	return nil
32762}
32763
32764// ExecuteSSISPackageActivityTypeProperties execute SSIS package activity properties.
32765type ExecuteSSISPackageActivityTypeProperties struct {
32766	// PackageLocation - SSIS package location.
32767	PackageLocation *SSISPackageLocation `json:"packageLocation,omitempty"`
32768	// Runtime - Specifies the runtime to execute SSIS package. Possible values include: 'X64', 'X86'
32769	Runtime SSISExecutionRuntime `json:"runtime,omitempty"`
32770	// LoggingLevel - The logging level of SSIS package execution.
32771	LoggingLevel *string `json:"loggingLevel,omitempty"`
32772	// EnvironmentPath - The environment path to execute the SSIS package.
32773	EnvironmentPath *string `json:"environmentPath,omitempty"`
32774	// ConnectVia - The integration runtime reference.
32775	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
32776	// ProjectParameters - The project level parameters to execute the SSIS package.
32777	ProjectParameters map[string]*SSISExecutionParameter `json:"projectParameters"`
32778	// PackageParameters - The package level parameters to execute the SSIS package.
32779	PackageParameters map[string]*SSISExecutionParameter `json:"packageParameters"`
32780	// ProjectConnectionManagers - The project level connection managers to execute the SSIS package.
32781	ProjectConnectionManagers map[string]map[string]*SSISExecutionParameter `json:"projectConnectionManagers"`
32782	// PackageConnectionManagers - The package level connection managers to execute the SSIS package.
32783	PackageConnectionManagers map[string]map[string]*SSISExecutionParameter `json:"packageConnectionManagers"`
32784	// PropertyOverrides - The property overrides to execute the SSIS package.
32785	PropertyOverrides map[string]*SSISPropertyOverride `json:"propertyOverrides"`
32786}
32787
32788// MarshalJSON is the custom marshaler for ExecuteSSISPackageActivityTypeProperties.
32789func (espatp ExecuteSSISPackageActivityTypeProperties) MarshalJSON() ([]byte, error) {
32790	objectMap := make(map[string]interface{})
32791	if espatp.PackageLocation != nil {
32792		objectMap["packageLocation"] = espatp.PackageLocation
32793	}
32794	if espatp.Runtime != "" {
32795		objectMap["runtime"] = espatp.Runtime
32796	}
32797	if espatp.LoggingLevel != nil {
32798		objectMap["loggingLevel"] = espatp.LoggingLevel
32799	}
32800	if espatp.EnvironmentPath != nil {
32801		objectMap["environmentPath"] = espatp.EnvironmentPath
32802	}
32803	if espatp.ConnectVia != nil {
32804		objectMap["connectVia"] = espatp.ConnectVia
32805	}
32806	if espatp.ProjectParameters != nil {
32807		objectMap["projectParameters"] = espatp.ProjectParameters
32808	}
32809	if espatp.PackageParameters != nil {
32810		objectMap["packageParameters"] = espatp.PackageParameters
32811	}
32812	if espatp.ProjectConnectionManagers != nil {
32813		objectMap["projectConnectionManagers"] = espatp.ProjectConnectionManagers
32814	}
32815	if espatp.PackageConnectionManagers != nil {
32816		objectMap["packageConnectionManagers"] = espatp.PackageConnectionManagers
32817	}
32818	if espatp.PropertyOverrides != nil {
32819		objectMap["propertyOverrides"] = espatp.PropertyOverrides
32820	}
32821	return json.Marshal(objectMap)
32822}
32823
32824// BasicExecutionActivity base class for all execution activities.
32825type BasicExecutionActivity interface {
32826	AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool)
32827	AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool)
32828	AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool)
32829	AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool)
32830	AsGetMetadataActivity() (*GetMetadataActivity, bool)
32831	AsWebActivity() (*WebActivity, bool)
32832	AsLookupActivity() (*LookupActivity, bool)
32833	AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool)
32834	AsCustomActivity() (*CustomActivity, bool)
32835	AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool)
32836	AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool)
32837	AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool)
32838	AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool)
32839	AsHDInsightPigActivity() (*HDInsightPigActivity, bool)
32840	AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool)
32841	AsCopyActivity() (*CopyActivity, bool)
32842	AsExecutionActivity() (*ExecutionActivity, bool)
32843}
32844
32845// ExecutionActivity base class for all execution activities.
32846type ExecutionActivity struct {
32847	// LinkedServiceName - Linked service reference.
32848	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
32849	// Policy - Activity policy.
32850	Policy *ActivityPolicy `json:"policy,omitempty"`
32851	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
32852	AdditionalProperties map[string]interface{} `json:""`
32853	// Name - Activity name.
32854	Name *string `json:"name,omitempty"`
32855	// Description - Activity description.
32856	Description *string `json:"description,omitempty"`
32857	// DependsOn - Activity depends on condition.
32858	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
32859	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
32860	Type TypeBasicActivity `json:"type,omitempty"`
32861}
32862
32863func unmarshalBasicExecutionActivity(body []byte) (BasicExecutionActivity, error) {
32864	var m map[string]interface{}
32865	err := json.Unmarshal(body, &m)
32866	if err != nil {
32867		return nil, err
32868	}
32869
32870	switch m["type"] {
32871	case string(TypeDatabricksNotebook):
32872		var dna DatabricksNotebookActivity
32873		err := json.Unmarshal(body, &dna)
32874		return dna, err
32875	case string(TypeDataLakeAnalyticsUSQL):
32876		var dlaua DataLakeAnalyticsUSQLActivity
32877		err := json.Unmarshal(body, &dlaua)
32878		return dlaua, err
32879	case string(TypeAzureMLUpdateResource):
32880		var amura AzureMLUpdateResourceActivity
32881		err := json.Unmarshal(body, &amura)
32882		return amura, err
32883	case string(TypeAzureMLBatchExecution):
32884		var ambea AzureMLBatchExecutionActivity
32885		err := json.Unmarshal(body, &ambea)
32886		return ambea, err
32887	case string(TypeGetMetadata):
32888		var gma GetMetadataActivity
32889		err := json.Unmarshal(body, &gma)
32890		return gma, err
32891	case string(TypeWebActivity):
32892		var wa WebActivity
32893		err := json.Unmarshal(body, &wa)
32894		return wa, err
32895	case string(TypeLookup):
32896		var la LookupActivity
32897		err := json.Unmarshal(body, &la)
32898		return la, err
32899	case string(TypeSQLServerStoredProcedure):
32900		var ssspa SQLServerStoredProcedureActivity
32901		err := json.Unmarshal(body, &ssspa)
32902		return ssspa, err
32903	case string(TypeCustom):
32904		var ca CustomActivity
32905		err := json.Unmarshal(body, &ca)
32906		return ca, err
32907	case string(TypeExecuteSSISPackage):
32908		var espa ExecuteSSISPackageActivity
32909		err := json.Unmarshal(body, &espa)
32910		return espa, err
32911	case string(TypeHDInsightSpark):
32912		var hisa HDInsightSparkActivity
32913		err := json.Unmarshal(body, &hisa)
32914		return hisa, err
32915	case string(TypeHDInsightStreaming):
32916		var hisa HDInsightStreamingActivity
32917		err := json.Unmarshal(body, &hisa)
32918		return hisa, err
32919	case string(TypeHDInsightMapReduce):
32920		var himra HDInsightMapReduceActivity
32921		err := json.Unmarshal(body, &himra)
32922		return himra, err
32923	case string(TypeHDInsightPig):
32924		var hipa HDInsightPigActivity
32925		err := json.Unmarshal(body, &hipa)
32926		return hipa, err
32927	case string(TypeHDInsightHive):
32928		var hiha HDInsightHiveActivity
32929		err := json.Unmarshal(body, &hiha)
32930		return hiha, err
32931	case string(TypeCopy):
32932		var ca CopyActivity
32933		err := json.Unmarshal(body, &ca)
32934		return ca, err
32935	default:
32936		var ea ExecutionActivity
32937		err := json.Unmarshal(body, &ea)
32938		return ea, err
32939	}
32940}
32941func unmarshalBasicExecutionActivityArray(body []byte) ([]BasicExecutionActivity, error) {
32942	var rawMessages []*json.RawMessage
32943	err := json.Unmarshal(body, &rawMessages)
32944	if err != nil {
32945		return nil, err
32946	}
32947
32948	eaArray := make([]BasicExecutionActivity, len(rawMessages))
32949
32950	for index, rawMessage := range rawMessages {
32951		ea, err := unmarshalBasicExecutionActivity(*rawMessage)
32952		if err != nil {
32953			return nil, err
32954		}
32955		eaArray[index] = ea
32956	}
32957	return eaArray, nil
32958}
32959
32960// MarshalJSON is the custom marshaler for ExecutionActivity.
32961func (ea ExecutionActivity) MarshalJSON() ([]byte, error) {
32962	ea.Type = TypeExecution
32963	objectMap := make(map[string]interface{})
32964	if ea.LinkedServiceName != nil {
32965		objectMap["linkedServiceName"] = ea.LinkedServiceName
32966	}
32967	if ea.Policy != nil {
32968		objectMap["policy"] = ea.Policy
32969	}
32970	if ea.Name != nil {
32971		objectMap["name"] = ea.Name
32972	}
32973	if ea.Description != nil {
32974		objectMap["description"] = ea.Description
32975	}
32976	if ea.DependsOn != nil {
32977		objectMap["dependsOn"] = ea.DependsOn
32978	}
32979	if ea.Type != "" {
32980		objectMap["type"] = ea.Type
32981	}
32982	for k, v := range ea.AdditionalProperties {
32983		objectMap[k] = v
32984	}
32985	return json.Marshal(objectMap)
32986}
32987
32988// AsDatabricksNotebookActivity is the BasicActivity implementation for ExecutionActivity.
32989func (ea ExecutionActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
32990	return nil, false
32991}
32992
32993// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for ExecutionActivity.
32994func (ea ExecutionActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
32995	return nil, false
32996}
32997
32998// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for ExecutionActivity.
32999func (ea ExecutionActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
33000	return nil, false
33001}
33002
33003// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for ExecutionActivity.
33004func (ea ExecutionActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
33005	return nil, false
33006}
33007
33008// AsGetMetadataActivity is the BasicActivity implementation for ExecutionActivity.
33009func (ea ExecutionActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
33010	return nil, false
33011}
33012
33013// AsWebActivity is the BasicActivity implementation for ExecutionActivity.
33014func (ea ExecutionActivity) AsWebActivity() (*WebActivity, bool) {
33015	return nil, false
33016}
33017
33018// AsLookupActivity is the BasicActivity implementation for ExecutionActivity.
33019func (ea ExecutionActivity) AsLookupActivity() (*LookupActivity, bool) {
33020	return nil, false
33021}
33022
33023// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for ExecutionActivity.
33024func (ea ExecutionActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
33025	return nil, false
33026}
33027
33028// AsCustomActivity is the BasicActivity implementation for ExecutionActivity.
33029func (ea ExecutionActivity) AsCustomActivity() (*CustomActivity, bool) {
33030	return nil, false
33031}
33032
33033// AsExecuteSSISPackageActivity is the BasicActivity implementation for ExecutionActivity.
33034func (ea ExecutionActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
33035	return nil, false
33036}
33037
33038// AsHDInsightSparkActivity is the BasicActivity implementation for ExecutionActivity.
33039func (ea ExecutionActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
33040	return nil, false
33041}
33042
33043// AsHDInsightStreamingActivity is the BasicActivity implementation for ExecutionActivity.
33044func (ea ExecutionActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
33045	return nil, false
33046}
33047
33048// AsHDInsightMapReduceActivity is the BasicActivity implementation for ExecutionActivity.
33049func (ea ExecutionActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
33050	return nil, false
33051}
33052
33053// AsHDInsightPigActivity is the BasicActivity implementation for ExecutionActivity.
33054func (ea ExecutionActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
33055	return nil, false
33056}
33057
33058// AsHDInsightHiveActivity is the BasicActivity implementation for ExecutionActivity.
33059func (ea ExecutionActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
33060	return nil, false
33061}
33062
33063// AsCopyActivity is the BasicActivity implementation for ExecutionActivity.
33064func (ea ExecutionActivity) AsCopyActivity() (*CopyActivity, bool) {
33065	return nil, false
33066}
33067
33068// AsExecutionActivity is the BasicActivity implementation for ExecutionActivity.
33069func (ea ExecutionActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
33070	return &ea, true
33071}
33072
33073// AsBasicExecutionActivity is the BasicActivity implementation for ExecutionActivity.
33074func (ea ExecutionActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
33075	return &ea, true
33076}
33077
33078// AsFilterActivity is the BasicActivity implementation for ExecutionActivity.
33079func (ea ExecutionActivity) AsFilterActivity() (*FilterActivity, bool) {
33080	return nil, false
33081}
33082
33083// AsUntilActivity is the BasicActivity implementation for ExecutionActivity.
33084func (ea ExecutionActivity) AsUntilActivity() (*UntilActivity, bool) {
33085	return nil, false
33086}
33087
33088// AsWaitActivity is the BasicActivity implementation for ExecutionActivity.
33089func (ea ExecutionActivity) AsWaitActivity() (*WaitActivity, bool) {
33090	return nil, false
33091}
33092
33093// AsForEachActivity is the BasicActivity implementation for ExecutionActivity.
33094func (ea ExecutionActivity) AsForEachActivity() (*ForEachActivity, bool) {
33095	return nil, false
33096}
33097
33098// AsIfConditionActivity is the BasicActivity implementation for ExecutionActivity.
33099func (ea ExecutionActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
33100	return nil, false
33101}
33102
33103// AsExecutePipelineActivity is the BasicActivity implementation for ExecutionActivity.
33104func (ea ExecutionActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
33105	return nil, false
33106}
33107
33108// AsControlActivity is the BasicActivity implementation for ExecutionActivity.
33109func (ea ExecutionActivity) AsControlActivity() (*ControlActivity, bool) {
33110	return nil, false
33111}
33112
33113// AsBasicControlActivity is the BasicActivity implementation for ExecutionActivity.
33114func (ea ExecutionActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
33115	return nil, false
33116}
33117
33118// AsActivity is the BasicActivity implementation for ExecutionActivity.
33119func (ea ExecutionActivity) AsActivity() (*Activity, bool) {
33120	return nil, false
33121}
33122
33123// AsBasicActivity is the BasicActivity implementation for ExecutionActivity.
33124func (ea ExecutionActivity) AsBasicActivity() (BasicActivity, bool) {
33125	return &ea, true
33126}
33127
33128// Expression azure Data Factory expression definition.
33129type Expression struct {
33130	// Type - Expression type.
33131	Type *string `json:"type,omitempty"`
33132	// Value - Expression value.
33133	Value *string `json:"value,omitempty"`
33134}
33135
33136// Factory factory resource type.
33137type Factory struct {
33138	autorest.Response `json:"-"`
33139	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
33140	AdditionalProperties map[string]interface{} `json:""`
33141	// Identity - Managed service identity of the factory.
33142	Identity *FactoryIdentity `json:"identity,omitempty"`
33143	// FactoryProperties - Properties of the factory.
33144	*FactoryProperties `json:"properties,omitempty"`
33145	// ID - The resource identifier.
33146	ID *string `json:"id,omitempty"`
33147	// Name - The resource name.
33148	Name *string `json:"name,omitempty"`
33149	// Type - The resource type.
33150	Type *string `json:"type,omitempty"`
33151	// Location - The resource location.
33152	Location *string `json:"location,omitempty"`
33153	// Tags - The resource tags.
33154	Tags map[string]*string `json:"tags"`
33155}
33156
33157// MarshalJSON is the custom marshaler for Factory.
33158func (f Factory) MarshalJSON() ([]byte, error) {
33159	objectMap := make(map[string]interface{})
33160	if f.Identity != nil {
33161		objectMap["identity"] = f.Identity
33162	}
33163	if f.FactoryProperties != nil {
33164		objectMap["properties"] = f.FactoryProperties
33165	}
33166	if f.ID != nil {
33167		objectMap["id"] = f.ID
33168	}
33169	if f.Name != nil {
33170		objectMap["name"] = f.Name
33171	}
33172	if f.Type != nil {
33173		objectMap["type"] = f.Type
33174	}
33175	if f.Location != nil {
33176		objectMap["location"] = f.Location
33177	}
33178	if f.Tags != nil {
33179		objectMap["tags"] = f.Tags
33180	}
33181	for k, v := range f.AdditionalProperties {
33182		objectMap[k] = v
33183	}
33184	return json.Marshal(objectMap)
33185}
33186
33187// UnmarshalJSON is the custom unmarshaler for Factory struct.
33188func (f *Factory) UnmarshalJSON(body []byte) error {
33189	var m map[string]*json.RawMessage
33190	err := json.Unmarshal(body, &m)
33191	if err != nil {
33192		return err
33193	}
33194	for k, v := range m {
33195		switch k {
33196		default:
33197			if v != nil {
33198				var additionalProperties interface{}
33199				err = json.Unmarshal(*v, &additionalProperties)
33200				if err != nil {
33201					return err
33202				}
33203				if f.AdditionalProperties == nil {
33204					f.AdditionalProperties = make(map[string]interface{})
33205				}
33206				f.AdditionalProperties[k] = additionalProperties
33207			}
33208		case "identity":
33209			if v != nil {
33210				var identity FactoryIdentity
33211				err = json.Unmarshal(*v, &identity)
33212				if err != nil {
33213					return err
33214				}
33215				f.Identity = &identity
33216			}
33217		case "properties":
33218			if v != nil {
33219				var factoryProperties FactoryProperties
33220				err = json.Unmarshal(*v, &factoryProperties)
33221				if err != nil {
33222					return err
33223				}
33224				f.FactoryProperties = &factoryProperties
33225			}
33226		case "id":
33227			if v != nil {
33228				var ID string
33229				err = json.Unmarshal(*v, &ID)
33230				if err != nil {
33231					return err
33232				}
33233				f.ID = &ID
33234			}
33235		case "name":
33236			if v != nil {
33237				var name string
33238				err = json.Unmarshal(*v, &name)
33239				if err != nil {
33240					return err
33241				}
33242				f.Name = &name
33243			}
33244		case "type":
33245			if v != nil {
33246				var typeVar string
33247				err = json.Unmarshal(*v, &typeVar)
33248				if err != nil {
33249					return err
33250				}
33251				f.Type = &typeVar
33252			}
33253		case "location":
33254			if v != nil {
33255				var location string
33256				err = json.Unmarshal(*v, &location)
33257				if err != nil {
33258					return err
33259				}
33260				f.Location = &location
33261			}
33262		case "tags":
33263			if v != nil {
33264				var tags map[string]*string
33265				err = json.Unmarshal(*v, &tags)
33266				if err != nil {
33267					return err
33268				}
33269				f.Tags = tags
33270			}
33271		}
33272	}
33273
33274	return nil
33275}
33276
33277// FactoryIdentity identity properties of the factory resource.
33278type FactoryIdentity struct {
33279	// Type - The identity type. Currently the only supported type is 'SystemAssigned'.
33280	Type *string `json:"type,omitempty"`
33281	// PrincipalID - The principal id of the identity.
33282	PrincipalID *uuid.UUID `json:"principalId,omitempty"`
33283	// TenantID - The client tenant id of the identity.
33284	TenantID *uuid.UUID `json:"tenantId,omitempty"`
33285}
33286
33287// FactoryListResponse a list of factory resources.
33288type FactoryListResponse struct {
33289	autorest.Response `json:"-"`
33290	// Value - List of factories.
33291	Value *[]Factory `json:"value,omitempty"`
33292	// NextLink - The link to the next page of results, if any remaining results exist.
33293	NextLink *string `json:"nextLink,omitempty"`
33294}
33295
33296// FactoryListResponseIterator provides access to a complete listing of Factory values.
33297type FactoryListResponseIterator struct {
33298	i    int
33299	page FactoryListResponsePage
33300}
33301
33302// Next advances to the next value.  If there was an error making
33303// the request the iterator does not advance and the error is returned.
33304func (iter *FactoryListResponseIterator) Next() error {
33305	iter.i++
33306	if iter.i < len(iter.page.Values()) {
33307		return nil
33308	}
33309	err := iter.page.Next()
33310	if err != nil {
33311		iter.i--
33312		return err
33313	}
33314	iter.i = 0
33315	return nil
33316}
33317
33318// NotDone returns true if the enumeration should be started or is not yet complete.
33319func (iter FactoryListResponseIterator) NotDone() bool {
33320	return iter.page.NotDone() && iter.i < len(iter.page.Values())
33321}
33322
33323// Response returns the raw server response from the last page request.
33324func (iter FactoryListResponseIterator) Response() FactoryListResponse {
33325	return iter.page.Response()
33326}
33327
33328// Value returns the current value or a zero-initialized value if the
33329// iterator has advanced beyond the end of the collection.
33330func (iter FactoryListResponseIterator) Value() Factory {
33331	if !iter.page.NotDone() {
33332		return Factory{}
33333	}
33334	return iter.page.Values()[iter.i]
33335}
33336
33337// IsEmpty returns true if the ListResult contains no values.
33338func (flr FactoryListResponse) IsEmpty() bool {
33339	return flr.Value == nil || len(*flr.Value) == 0
33340}
33341
33342// factoryListResponsePreparer prepares a request to retrieve the next set of results.
33343// It returns nil if no more results exist.
33344func (flr FactoryListResponse) factoryListResponsePreparer() (*http.Request, error) {
33345	if flr.NextLink == nil || len(to.String(flr.NextLink)) < 1 {
33346		return nil, nil
33347	}
33348	return autorest.Prepare(&http.Request{},
33349		autorest.AsJSON(),
33350		autorest.AsGet(),
33351		autorest.WithBaseURL(to.String(flr.NextLink)))
33352}
33353
33354// FactoryListResponsePage contains a page of Factory values.
33355type FactoryListResponsePage struct {
33356	fn  func(FactoryListResponse) (FactoryListResponse, error)
33357	flr FactoryListResponse
33358}
33359
33360// Next advances to the next page of values.  If there was an error making
33361// the request the page does not advance and the error is returned.
33362func (page *FactoryListResponsePage) Next() error {
33363	next, err := page.fn(page.flr)
33364	if err != nil {
33365		return err
33366	}
33367	page.flr = next
33368	return nil
33369}
33370
33371// NotDone returns true if the page enumeration should be started or is not yet complete.
33372func (page FactoryListResponsePage) NotDone() bool {
33373	return !page.flr.IsEmpty()
33374}
33375
33376// Response returns the raw server response from the last page request.
33377func (page FactoryListResponsePage) Response() FactoryListResponse {
33378	return page.flr
33379}
33380
33381// Values returns the slice of values for the current page or nil if there are no values.
33382func (page FactoryListResponsePage) Values() []Factory {
33383	if page.flr.IsEmpty() {
33384		return nil
33385	}
33386	return *page.flr.Value
33387}
33388
33389// FactoryProperties factory resource properties.
33390type FactoryProperties struct {
33391	// ProvisioningState - Factory provisioning state, example Succeeded.
33392	ProvisioningState *string `json:"provisioningState,omitempty"`
33393	// CreateTime - Time the factory was created in ISO8601 format.
33394	CreateTime *date.Time `json:"createTime,omitempty"`
33395	// Version - Version of the factory.
33396	Version *string `json:"version,omitempty"`
33397	// VstsConfiguration - VSTS repo information of the factory.
33398	VstsConfiguration *FactoryVSTSConfiguration `json:"vstsConfiguration,omitempty"`
33399}
33400
33401// FactoryRepoUpdate factory's VSTS repo information.
33402type FactoryRepoUpdate struct {
33403	// FactoryResourceID - The factory resource id.
33404	FactoryResourceID *string `json:"factoryResourceId,omitempty"`
33405	// ResourceGroupName - The resource group name.
33406	ResourceGroupName *string `json:"resourceGroupName,omitempty"`
33407	// VstsConfiguration - VSTS repo information of the factory.
33408	VstsConfiguration *FactoryVSTSConfiguration `json:"vstsConfiguration,omitempty"`
33409}
33410
33411// FactoryUpdateParameters parameters for updating a factory resource.
33412type FactoryUpdateParameters struct {
33413	// Tags - The resource tags.
33414	Tags map[string]*string `json:"tags"`
33415	// Identity - Managed service identity of the factory.
33416	Identity *FactoryIdentity `json:"identity,omitempty"`
33417}
33418
33419// MarshalJSON is the custom marshaler for FactoryUpdateParameters.
33420func (fup FactoryUpdateParameters) MarshalJSON() ([]byte, error) {
33421	objectMap := make(map[string]interface{})
33422	if fup.Tags != nil {
33423		objectMap["tags"] = fup.Tags
33424	}
33425	if fup.Identity != nil {
33426		objectMap["identity"] = fup.Identity
33427	}
33428	return json.Marshal(objectMap)
33429}
33430
33431// FactoryVSTSConfiguration factory's VSTS repo information.
33432type FactoryVSTSConfiguration struct {
33433	// AccountName - VSTS account name.
33434	AccountName *string `json:"accountName,omitempty"`
33435	// ProjectName - VSTS project name.
33436	ProjectName *string `json:"projectName,omitempty"`
33437	// RepositoryName - VSTS repository name.
33438	RepositoryName *string `json:"repositoryName,omitempty"`
33439	// CollaborationBranch - VSTS collaboration branch.
33440	CollaborationBranch *string `json:"collaborationBranch,omitempty"`
33441	// RootFolder - VSTS root folder.
33442	RootFolder *string `json:"rootFolder,omitempty"`
33443	// LastCommitID - VSTS last commit id.
33444	LastCommitID *string `json:"lastCommitId,omitempty"`
33445	// TenantID - VSTS tenant id.
33446	TenantID *string `json:"tenantId,omitempty"`
33447}
33448
33449// FileServerLinkedService file system linked service.
33450type FileServerLinkedService struct {
33451	// FileServerLinkedServiceTypeProperties - File system linked service properties.
33452	*FileServerLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
33453	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
33454	AdditionalProperties map[string]interface{} `json:""`
33455	// ConnectVia - The integration runtime reference.
33456	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
33457	// Description - Linked service description.
33458	Description *string `json:"description,omitempty"`
33459	// Parameters - Parameters for linked service.
33460	Parameters map[string]*ParameterSpecification `json:"parameters"`
33461	// Annotations - List of tags that can be used for describing the Dataset.
33462	Annotations *[]interface{} `json:"annotations,omitempty"`
33463	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
33464	Type TypeBasicLinkedService `json:"type,omitempty"`
33465}
33466
33467// MarshalJSON is the custom marshaler for FileServerLinkedService.
33468func (fsls FileServerLinkedService) MarshalJSON() ([]byte, error) {
33469	fsls.Type = TypeFileServer
33470	objectMap := make(map[string]interface{})
33471	if fsls.FileServerLinkedServiceTypeProperties != nil {
33472		objectMap["typeProperties"] = fsls.FileServerLinkedServiceTypeProperties
33473	}
33474	if fsls.ConnectVia != nil {
33475		objectMap["connectVia"] = fsls.ConnectVia
33476	}
33477	if fsls.Description != nil {
33478		objectMap["description"] = fsls.Description
33479	}
33480	if fsls.Parameters != nil {
33481		objectMap["parameters"] = fsls.Parameters
33482	}
33483	if fsls.Annotations != nil {
33484		objectMap["annotations"] = fsls.Annotations
33485	}
33486	if fsls.Type != "" {
33487		objectMap["type"] = fsls.Type
33488	}
33489	for k, v := range fsls.AdditionalProperties {
33490		objectMap[k] = v
33491	}
33492	return json.Marshal(objectMap)
33493}
33494
33495// AsResponsysLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33496func (fsls FileServerLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
33497	return nil, false
33498}
33499
33500// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33501func (fsls FileServerLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
33502	return nil, false
33503}
33504
33505// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33506func (fsls FileServerLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
33507	return nil, false
33508}
33509
33510// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33511func (fsls FileServerLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
33512	return nil, false
33513}
33514
33515// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33516func (fsls FileServerLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
33517	return nil, false
33518}
33519
33520// AsNetezzaLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33521func (fsls FileServerLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
33522	return nil, false
33523}
33524
33525// AsVerticaLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33526func (fsls FileServerLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
33527	return nil, false
33528}
33529
33530// AsZohoLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33531func (fsls FileServerLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
33532	return nil, false
33533}
33534
33535// AsXeroLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33536func (fsls FileServerLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
33537	return nil, false
33538}
33539
33540// AsSquareLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33541func (fsls FileServerLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
33542	return nil, false
33543}
33544
33545// AsSparkLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33546func (fsls FileServerLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
33547	return nil, false
33548}
33549
33550// AsShopifyLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33551func (fsls FileServerLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
33552	return nil, false
33553}
33554
33555// AsServiceNowLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33556func (fsls FileServerLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
33557	return nil, false
33558}
33559
33560// AsQuickBooksLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33561func (fsls FileServerLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
33562	return nil, false
33563}
33564
33565// AsPrestoLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33566func (fsls FileServerLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
33567	return nil, false
33568}
33569
33570// AsPhoenixLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33571func (fsls FileServerLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
33572	return nil, false
33573}
33574
33575// AsPaypalLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33576func (fsls FileServerLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
33577	return nil, false
33578}
33579
33580// AsMarketoLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33581func (fsls FileServerLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
33582	return nil, false
33583}
33584
33585// AsMariaDBLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33586func (fsls FileServerLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
33587	return nil, false
33588}
33589
33590// AsMagentoLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33591func (fsls FileServerLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
33592	return nil, false
33593}
33594
33595// AsJiraLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33596func (fsls FileServerLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
33597	return nil, false
33598}
33599
33600// AsImpalaLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33601func (fsls FileServerLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
33602	return nil, false
33603}
33604
33605// AsHubspotLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33606func (fsls FileServerLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
33607	return nil, false
33608}
33609
33610// AsHiveLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33611func (fsls FileServerLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
33612	return nil, false
33613}
33614
33615// AsHBaseLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33616func (fsls FileServerLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
33617	return nil, false
33618}
33619
33620// AsGreenplumLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33621func (fsls FileServerLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
33622	return nil, false
33623}
33624
33625// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33626func (fsls FileServerLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
33627	return nil, false
33628}
33629
33630// AsEloquaLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33631func (fsls FileServerLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
33632	return nil, false
33633}
33634
33635// AsDrillLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33636func (fsls FileServerLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
33637	return nil, false
33638}
33639
33640// AsCouchbaseLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33641func (fsls FileServerLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
33642	return nil, false
33643}
33644
33645// AsConcurLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33646func (fsls FileServerLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
33647	return nil, false
33648}
33649
33650// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33651func (fsls FileServerLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
33652	return nil, false
33653}
33654
33655// AsAmazonMWSLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33656func (fsls FileServerLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
33657	return nil, false
33658}
33659
33660// AsSapHanaLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33661func (fsls FileServerLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
33662	return nil, false
33663}
33664
33665// AsSapBWLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33666func (fsls FileServerLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
33667	return nil, false
33668}
33669
33670// AsSftpServerLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33671func (fsls FileServerLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
33672	return nil, false
33673}
33674
33675// AsFtpServerLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33676func (fsls FileServerLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
33677	return nil, false
33678}
33679
33680// AsHTTPLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33681func (fsls FileServerLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
33682	return nil, false
33683}
33684
33685// AsAzureSearchLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33686func (fsls FileServerLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
33687	return nil, false
33688}
33689
33690// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33691func (fsls FileServerLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
33692	return nil, false
33693}
33694
33695// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33696func (fsls FileServerLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
33697	return nil, false
33698}
33699
33700// AsAmazonS3LinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33701func (fsls FileServerLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
33702	return nil, false
33703}
33704
33705// AsSapEccLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33706func (fsls FileServerLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
33707	return nil, false
33708}
33709
33710// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33711func (fsls FileServerLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
33712	return nil, false
33713}
33714
33715// AsSalesforceLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33716func (fsls FileServerLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
33717	return nil, false
33718}
33719
33720// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33721func (fsls FileServerLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
33722	return nil, false
33723}
33724
33725// AsMongoDbLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33726func (fsls FileServerLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
33727	return nil, false
33728}
33729
33730// AsCassandraLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33731func (fsls FileServerLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
33732	return nil, false
33733}
33734
33735// AsWebLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33736func (fsls FileServerLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
33737	return nil, false
33738}
33739
33740// AsODataLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33741func (fsls FileServerLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
33742	return nil, false
33743}
33744
33745// AsHdfsLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33746func (fsls FileServerLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
33747	return nil, false
33748}
33749
33750// AsOdbcLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33751func (fsls FileServerLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
33752	return nil, false
33753}
33754
33755// AsAzureMLLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33756func (fsls FileServerLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
33757	return nil, false
33758}
33759
33760// AsTeradataLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33761func (fsls FileServerLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
33762	return nil, false
33763}
33764
33765// AsDb2LinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33766func (fsls FileServerLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
33767	return nil, false
33768}
33769
33770// AsSybaseLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33771func (fsls FileServerLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
33772	return nil, false
33773}
33774
33775// AsPostgreSQLLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33776func (fsls FileServerLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
33777	return nil, false
33778}
33779
33780// AsMySQLLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33781func (fsls FileServerLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
33782	return nil, false
33783}
33784
33785// AsAzureMySQLLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33786func (fsls FileServerLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
33787	return nil, false
33788}
33789
33790// AsOracleLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33791func (fsls FileServerLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
33792	return nil, false
33793}
33794
33795// AsFileServerLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33796func (fsls FileServerLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
33797	return &fsls, true
33798}
33799
33800// AsHDInsightLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33801func (fsls FileServerLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
33802	return nil, false
33803}
33804
33805// AsDynamicsLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33806func (fsls FileServerLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
33807	return nil, false
33808}
33809
33810// AsCosmosDbLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33811func (fsls FileServerLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
33812	return nil, false
33813}
33814
33815// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33816func (fsls FileServerLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
33817	return nil, false
33818}
33819
33820// AsAzureBatchLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33821func (fsls FileServerLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
33822	return nil, false
33823}
33824
33825// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33826func (fsls FileServerLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
33827	return nil, false
33828}
33829
33830// AsSQLServerLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33831func (fsls FileServerLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
33832	return nil, false
33833}
33834
33835// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33836func (fsls FileServerLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
33837	return nil, false
33838}
33839
33840// AsAzureStorageLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33841func (fsls FileServerLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
33842	return nil, false
33843}
33844
33845// AsLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33846func (fsls FileServerLinkedService) AsLinkedService() (*LinkedService, bool) {
33847	return nil, false
33848}
33849
33850// AsBasicLinkedService is the BasicLinkedService implementation for FileServerLinkedService.
33851func (fsls FileServerLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
33852	return &fsls, true
33853}
33854
33855// UnmarshalJSON is the custom unmarshaler for FileServerLinkedService struct.
33856func (fsls *FileServerLinkedService) UnmarshalJSON(body []byte) error {
33857	var m map[string]*json.RawMessage
33858	err := json.Unmarshal(body, &m)
33859	if err != nil {
33860		return err
33861	}
33862	for k, v := range m {
33863		switch k {
33864		case "typeProperties":
33865			if v != nil {
33866				var fileServerLinkedServiceTypeProperties FileServerLinkedServiceTypeProperties
33867				err = json.Unmarshal(*v, &fileServerLinkedServiceTypeProperties)
33868				if err != nil {
33869					return err
33870				}
33871				fsls.FileServerLinkedServiceTypeProperties = &fileServerLinkedServiceTypeProperties
33872			}
33873		default:
33874			if v != nil {
33875				var additionalProperties interface{}
33876				err = json.Unmarshal(*v, &additionalProperties)
33877				if err != nil {
33878					return err
33879				}
33880				if fsls.AdditionalProperties == nil {
33881					fsls.AdditionalProperties = make(map[string]interface{})
33882				}
33883				fsls.AdditionalProperties[k] = additionalProperties
33884			}
33885		case "connectVia":
33886			if v != nil {
33887				var connectVia IntegrationRuntimeReference
33888				err = json.Unmarshal(*v, &connectVia)
33889				if err != nil {
33890					return err
33891				}
33892				fsls.ConnectVia = &connectVia
33893			}
33894		case "description":
33895			if v != nil {
33896				var description string
33897				err = json.Unmarshal(*v, &description)
33898				if err != nil {
33899					return err
33900				}
33901				fsls.Description = &description
33902			}
33903		case "parameters":
33904			if v != nil {
33905				var parameters map[string]*ParameterSpecification
33906				err = json.Unmarshal(*v, &parameters)
33907				if err != nil {
33908					return err
33909				}
33910				fsls.Parameters = parameters
33911			}
33912		case "annotations":
33913			if v != nil {
33914				var annotations []interface{}
33915				err = json.Unmarshal(*v, &annotations)
33916				if err != nil {
33917					return err
33918				}
33919				fsls.Annotations = &annotations
33920			}
33921		case "type":
33922			if v != nil {
33923				var typeVar TypeBasicLinkedService
33924				err = json.Unmarshal(*v, &typeVar)
33925				if err != nil {
33926					return err
33927				}
33928				fsls.Type = typeVar
33929			}
33930		}
33931	}
33932
33933	return nil
33934}
33935
33936// FileServerLinkedServiceTypeProperties file system linked service properties.
33937type FileServerLinkedServiceTypeProperties struct {
33938	// Host - Host name of the server. Type: string (or Expression with resultType string).
33939	Host interface{} `json:"host,omitempty"`
33940	// UserID - User ID to logon the server. Type: string (or Expression with resultType string).
33941	UserID interface{} `json:"userId,omitempty"`
33942	// Password - Password to logon the server.
33943	Password BasicSecretBase `json:"password,omitempty"`
33944	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
33945	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
33946}
33947
33948// UnmarshalJSON is the custom unmarshaler for FileServerLinkedServiceTypeProperties struct.
33949func (fslstp *FileServerLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
33950	var m map[string]*json.RawMessage
33951	err := json.Unmarshal(body, &m)
33952	if err != nil {
33953		return err
33954	}
33955	for k, v := range m {
33956		switch k {
33957		case "host":
33958			if v != nil {
33959				var host interface{}
33960				err = json.Unmarshal(*v, &host)
33961				if err != nil {
33962					return err
33963				}
33964				fslstp.Host = host
33965			}
33966		case "userId":
33967			if v != nil {
33968				var userID interface{}
33969				err = json.Unmarshal(*v, &userID)
33970				if err != nil {
33971					return err
33972				}
33973				fslstp.UserID = userID
33974			}
33975		case "password":
33976			if v != nil {
33977				password, err := unmarshalBasicSecretBase(*v)
33978				if err != nil {
33979					return err
33980				}
33981				fslstp.Password = password
33982			}
33983		case "encryptedCredential":
33984			if v != nil {
33985				var encryptedCredential interface{}
33986				err = json.Unmarshal(*v, &encryptedCredential)
33987				if err != nil {
33988					return err
33989				}
33990				fslstp.EncryptedCredential = encryptedCredential
33991			}
33992		}
33993	}
33994
33995	return nil
33996}
33997
33998// FileShareDataset an on-premises file system dataset.
33999type FileShareDataset struct {
34000	// FileShareDatasetTypeProperties - On-premises file system dataset properties.
34001	*FileShareDatasetTypeProperties `json:"typeProperties,omitempty"`
34002	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
34003	AdditionalProperties map[string]interface{} `json:""`
34004	// Description - Dataset description.
34005	Description *string `json:"description,omitempty"`
34006	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
34007	Structure interface{} `json:"structure,omitempty"`
34008	// LinkedServiceName - Linked service reference.
34009	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
34010	// Parameters - Parameters for dataset.
34011	Parameters map[string]*ParameterSpecification `json:"parameters"`
34012	// Annotations - List of tags that can be used for describing the Dataset.
34013	Annotations *[]interface{} `json:"annotations,omitempty"`
34014	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
34015	Type TypeBasicDataset `json:"type,omitempty"`
34016}
34017
34018// MarshalJSON is the custom marshaler for FileShareDataset.
34019func (fsd FileShareDataset) MarshalJSON() ([]byte, error) {
34020	fsd.Type = TypeFileShare
34021	objectMap := make(map[string]interface{})
34022	if fsd.FileShareDatasetTypeProperties != nil {
34023		objectMap["typeProperties"] = fsd.FileShareDatasetTypeProperties
34024	}
34025	if fsd.Description != nil {
34026		objectMap["description"] = fsd.Description
34027	}
34028	objectMap["structure"] = fsd.Structure
34029	if fsd.LinkedServiceName != nil {
34030		objectMap["linkedServiceName"] = fsd.LinkedServiceName
34031	}
34032	if fsd.Parameters != nil {
34033		objectMap["parameters"] = fsd.Parameters
34034	}
34035	if fsd.Annotations != nil {
34036		objectMap["annotations"] = fsd.Annotations
34037	}
34038	if fsd.Type != "" {
34039		objectMap["type"] = fsd.Type
34040	}
34041	for k, v := range fsd.AdditionalProperties {
34042		objectMap[k] = v
34043	}
34044	return json.Marshal(objectMap)
34045}
34046
34047// AsResponsysObjectDataset is the BasicDataset implementation for FileShareDataset.
34048func (fsd FileShareDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
34049	return nil, false
34050}
34051
34052// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for FileShareDataset.
34053func (fsd FileShareDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
34054	return nil, false
34055}
34056
34057// AsVerticaTableDataset is the BasicDataset implementation for FileShareDataset.
34058func (fsd FileShareDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
34059	return nil, false
34060}
34061
34062// AsNetezzaTableDataset is the BasicDataset implementation for FileShareDataset.
34063func (fsd FileShareDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
34064	return nil, false
34065}
34066
34067// AsZohoObjectDataset is the BasicDataset implementation for FileShareDataset.
34068func (fsd FileShareDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
34069	return nil, false
34070}
34071
34072// AsXeroObjectDataset is the BasicDataset implementation for FileShareDataset.
34073func (fsd FileShareDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
34074	return nil, false
34075}
34076
34077// AsSquareObjectDataset is the BasicDataset implementation for FileShareDataset.
34078func (fsd FileShareDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
34079	return nil, false
34080}
34081
34082// AsSparkObjectDataset is the BasicDataset implementation for FileShareDataset.
34083func (fsd FileShareDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
34084	return nil, false
34085}
34086
34087// AsShopifyObjectDataset is the BasicDataset implementation for FileShareDataset.
34088func (fsd FileShareDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
34089	return nil, false
34090}
34091
34092// AsServiceNowObjectDataset is the BasicDataset implementation for FileShareDataset.
34093func (fsd FileShareDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
34094	return nil, false
34095}
34096
34097// AsQuickBooksObjectDataset is the BasicDataset implementation for FileShareDataset.
34098func (fsd FileShareDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
34099	return nil, false
34100}
34101
34102// AsPrestoObjectDataset is the BasicDataset implementation for FileShareDataset.
34103func (fsd FileShareDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
34104	return nil, false
34105}
34106
34107// AsPhoenixObjectDataset is the BasicDataset implementation for FileShareDataset.
34108func (fsd FileShareDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
34109	return nil, false
34110}
34111
34112// AsPaypalObjectDataset is the BasicDataset implementation for FileShareDataset.
34113func (fsd FileShareDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
34114	return nil, false
34115}
34116
34117// AsMarketoObjectDataset is the BasicDataset implementation for FileShareDataset.
34118func (fsd FileShareDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
34119	return nil, false
34120}
34121
34122// AsMariaDBTableDataset is the BasicDataset implementation for FileShareDataset.
34123func (fsd FileShareDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
34124	return nil, false
34125}
34126
34127// AsMagentoObjectDataset is the BasicDataset implementation for FileShareDataset.
34128func (fsd FileShareDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
34129	return nil, false
34130}
34131
34132// AsJiraObjectDataset is the BasicDataset implementation for FileShareDataset.
34133func (fsd FileShareDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
34134	return nil, false
34135}
34136
34137// AsImpalaObjectDataset is the BasicDataset implementation for FileShareDataset.
34138func (fsd FileShareDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
34139	return nil, false
34140}
34141
34142// AsHubspotObjectDataset is the BasicDataset implementation for FileShareDataset.
34143func (fsd FileShareDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
34144	return nil, false
34145}
34146
34147// AsHiveObjectDataset is the BasicDataset implementation for FileShareDataset.
34148func (fsd FileShareDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
34149	return nil, false
34150}
34151
34152// AsHBaseObjectDataset is the BasicDataset implementation for FileShareDataset.
34153func (fsd FileShareDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
34154	return nil, false
34155}
34156
34157// AsGreenplumTableDataset is the BasicDataset implementation for FileShareDataset.
34158func (fsd FileShareDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
34159	return nil, false
34160}
34161
34162// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for FileShareDataset.
34163func (fsd FileShareDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
34164	return nil, false
34165}
34166
34167// AsEloquaObjectDataset is the BasicDataset implementation for FileShareDataset.
34168func (fsd FileShareDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
34169	return nil, false
34170}
34171
34172// AsDrillTableDataset is the BasicDataset implementation for FileShareDataset.
34173func (fsd FileShareDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
34174	return nil, false
34175}
34176
34177// AsCouchbaseTableDataset is the BasicDataset implementation for FileShareDataset.
34178func (fsd FileShareDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
34179	return nil, false
34180}
34181
34182// AsConcurObjectDataset is the BasicDataset implementation for FileShareDataset.
34183func (fsd FileShareDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
34184	return nil, false
34185}
34186
34187// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for FileShareDataset.
34188func (fsd FileShareDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
34189	return nil, false
34190}
34191
34192// AsAmazonMWSObjectDataset is the BasicDataset implementation for FileShareDataset.
34193func (fsd FileShareDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
34194	return nil, false
34195}
34196
34197// AsHTTPDataset is the BasicDataset implementation for FileShareDataset.
34198func (fsd FileShareDataset) AsHTTPDataset() (*HTTPDataset, bool) {
34199	return nil, false
34200}
34201
34202// AsAzureSearchIndexDataset is the BasicDataset implementation for FileShareDataset.
34203func (fsd FileShareDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
34204	return nil, false
34205}
34206
34207// AsWebTableDataset is the BasicDataset implementation for FileShareDataset.
34208func (fsd FileShareDataset) AsWebTableDataset() (*WebTableDataset, bool) {
34209	return nil, false
34210}
34211
34212// AsSQLServerTableDataset is the BasicDataset implementation for FileShareDataset.
34213func (fsd FileShareDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
34214	return nil, false
34215}
34216
34217// AsSapEccResourceDataset is the BasicDataset implementation for FileShareDataset.
34218func (fsd FileShareDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
34219	return nil, false
34220}
34221
34222// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for FileShareDataset.
34223func (fsd FileShareDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
34224	return nil, false
34225}
34226
34227// AsSalesforceObjectDataset is the BasicDataset implementation for FileShareDataset.
34228func (fsd FileShareDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
34229	return nil, false
34230}
34231
34232// AsRelationalTableDataset is the BasicDataset implementation for FileShareDataset.
34233func (fsd FileShareDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
34234	return nil, false
34235}
34236
34237// AsAzureMySQLTableDataset is the BasicDataset implementation for FileShareDataset.
34238func (fsd FileShareDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
34239	return nil, false
34240}
34241
34242// AsOracleTableDataset is the BasicDataset implementation for FileShareDataset.
34243func (fsd FileShareDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
34244	return nil, false
34245}
34246
34247// AsODataResourceDataset is the BasicDataset implementation for FileShareDataset.
34248func (fsd FileShareDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
34249	return nil, false
34250}
34251
34252// AsMongoDbCollectionDataset is the BasicDataset implementation for FileShareDataset.
34253func (fsd FileShareDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
34254	return nil, false
34255}
34256
34257// AsFileShareDataset is the BasicDataset implementation for FileShareDataset.
34258func (fsd FileShareDataset) AsFileShareDataset() (*FileShareDataset, bool) {
34259	return &fsd, true
34260}
34261
34262// AsAzureDataLakeStoreDataset is the BasicDataset implementation for FileShareDataset.
34263func (fsd FileShareDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
34264	return nil, false
34265}
34266
34267// AsDynamicsEntityDataset is the BasicDataset implementation for FileShareDataset.
34268func (fsd FileShareDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
34269	return nil, false
34270}
34271
34272// AsDocumentDbCollectionDataset is the BasicDataset implementation for FileShareDataset.
34273func (fsd FileShareDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
34274	return nil, false
34275}
34276
34277// AsCustomDataset is the BasicDataset implementation for FileShareDataset.
34278func (fsd FileShareDataset) AsCustomDataset() (*CustomDataset, bool) {
34279	return nil, false
34280}
34281
34282// AsCassandraTableDataset is the BasicDataset implementation for FileShareDataset.
34283func (fsd FileShareDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
34284	return nil, false
34285}
34286
34287// AsAzureSQLDWTableDataset is the BasicDataset implementation for FileShareDataset.
34288func (fsd FileShareDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
34289	return nil, false
34290}
34291
34292// AsAzureSQLTableDataset is the BasicDataset implementation for FileShareDataset.
34293func (fsd FileShareDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
34294	return nil, false
34295}
34296
34297// AsAzureTableDataset is the BasicDataset implementation for FileShareDataset.
34298func (fsd FileShareDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
34299	return nil, false
34300}
34301
34302// AsAzureBlobDataset is the BasicDataset implementation for FileShareDataset.
34303func (fsd FileShareDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
34304	return nil, false
34305}
34306
34307// AsAmazonS3Dataset is the BasicDataset implementation for FileShareDataset.
34308func (fsd FileShareDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
34309	return nil, false
34310}
34311
34312// AsDataset is the BasicDataset implementation for FileShareDataset.
34313func (fsd FileShareDataset) AsDataset() (*Dataset, bool) {
34314	return nil, false
34315}
34316
34317// AsBasicDataset is the BasicDataset implementation for FileShareDataset.
34318func (fsd FileShareDataset) AsBasicDataset() (BasicDataset, bool) {
34319	return &fsd, true
34320}
34321
34322// UnmarshalJSON is the custom unmarshaler for FileShareDataset struct.
34323func (fsd *FileShareDataset) UnmarshalJSON(body []byte) error {
34324	var m map[string]*json.RawMessage
34325	err := json.Unmarshal(body, &m)
34326	if err != nil {
34327		return err
34328	}
34329	for k, v := range m {
34330		switch k {
34331		case "typeProperties":
34332			if v != nil {
34333				var fileShareDatasetTypeProperties FileShareDatasetTypeProperties
34334				err = json.Unmarshal(*v, &fileShareDatasetTypeProperties)
34335				if err != nil {
34336					return err
34337				}
34338				fsd.FileShareDatasetTypeProperties = &fileShareDatasetTypeProperties
34339			}
34340		default:
34341			if v != nil {
34342				var additionalProperties interface{}
34343				err = json.Unmarshal(*v, &additionalProperties)
34344				if err != nil {
34345					return err
34346				}
34347				if fsd.AdditionalProperties == nil {
34348					fsd.AdditionalProperties = make(map[string]interface{})
34349				}
34350				fsd.AdditionalProperties[k] = additionalProperties
34351			}
34352		case "description":
34353			if v != nil {
34354				var description string
34355				err = json.Unmarshal(*v, &description)
34356				if err != nil {
34357					return err
34358				}
34359				fsd.Description = &description
34360			}
34361		case "structure":
34362			if v != nil {
34363				var structure interface{}
34364				err = json.Unmarshal(*v, &structure)
34365				if err != nil {
34366					return err
34367				}
34368				fsd.Structure = structure
34369			}
34370		case "linkedServiceName":
34371			if v != nil {
34372				var linkedServiceName LinkedServiceReference
34373				err = json.Unmarshal(*v, &linkedServiceName)
34374				if err != nil {
34375					return err
34376				}
34377				fsd.LinkedServiceName = &linkedServiceName
34378			}
34379		case "parameters":
34380			if v != nil {
34381				var parameters map[string]*ParameterSpecification
34382				err = json.Unmarshal(*v, &parameters)
34383				if err != nil {
34384					return err
34385				}
34386				fsd.Parameters = parameters
34387			}
34388		case "annotations":
34389			if v != nil {
34390				var annotations []interface{}
34391				err = json.Unmarshal(*v, &annotations)
34392				if err != nil {
34393					return err
34394				}
34395				fsd.Annotations = &annotations
34396			}
34397		case "type":
34398			if v != nil {
34399				var typeVar TypeBasicDataset
34400				err = json.Unmarshal(*v, &typeVar)
34401				if err != nil {
34402					return err
34403				}
34404				fsd.Type = typeVar
34405			}
34406		}
34407	}
34408
34409	return nil
34410}
34411
34412// FileShareDatasetTypeProperties on-premises file system dataset properties.
34413type FileShareDatasetTypeProperties struct {
34414	// FolderPath - The path of the on-premises file system. Type: string (or Expression with resultType string).
34415	FolderPath interface{} `json:"folderPath,omitempty"`
34416	// FileName - The name of the on-premises file system. Type: string (or Expression with resultType string).
34417	FileName interface{} `json:"fileName,omitempty"`
34418	// Format - The format of the files.
34419	Format BasicDatasetStorageFormat `json:"format,omitempty"`
34420	// FileFilter - Specify a filter to be used to select a subset of files in the folderPath rather than all files. Type: string (or Expression with resultType string).
34421	FileFilter interface{} `json:"fileFilter,omitempty"`
34422	// Compression - The data compression method used for the file system.
34423	Compression BasicDatasetCompression `json:"compression,omitempty"`
34424}
34425
34426// UnmarshalJSON is the custom unmarshaler for FileShareDatasetTypeProperties struct.
34427func (fsdtp *FileShareDatasetTypeProperties) UnmarshalJSON(body []byte) error {
34428	var m map[string]*json.RawMessage
34429	err := json.Unmarshal(body, &m)
34430	if err != nil {
34431		return err
34432	}
34433	for k, v := range m {
34434		switch k {
34435		case "folderPath":
34436			if v != nil {
34437				var folderPath interface{}
34438				err = json.Unmarshal(*v, &folderPath)
34439				if err != nil {
34440					return err
34441				}
34442				fsdtp.FolderPath = folderPath
34443			}
34444		case "fileName":
34445			if v != nil {
34446				var fileName interface{}
34447				err = json.Unmarshal(*v, &fileName)
34448				if err != nil {
34449					return err
34450				}
34451				fsdtp.FileName = fileName
34452			}
34453		case "format":
34454			if v != nil {
34455				formatVar, err := unmarshalBasicDatasetStorageFormat(*v)
34456				if err != nil {
34457					return err
34458				}
34459				fsdtp.Format = formatVar
34460			}
34461		case "fileFilter":
34462			if v != nil {
34463				var fileFilter interface{}
34464				err = json.Unmarshal(*v, &fileFilter)
34465				if err != nil {
34466					return err
34467				}
34468				fsdtp.FileFilter = fileFilter
34469			}
34470		case "compression":
34471			if v != nil {
34472				compression, err := unmarshalBasicDatasetCompression(*v)
34473				if err != nil {
34474					return err
34475				}
34476				fsdtp.Compression = compression
34477			}
34478		}
34479	}
34480
34481	return nil
34482}
34483
34484// FileSystemSink a copy activity file system sink.
34485type FileSystemSink struct {
34486	// CopyBehavior - The type of copy behavior for copy sink. Possible values include: 'PreserveHierarchy', 'FlattenHierarchy', 'MergeFiles'
34487	CopyBehavior CopyBehaviorType `json:"copyBehavior,omitempty"`
34488	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
34489	AdditionalProperties map[string]interface{} `json:""`
34490	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
34491	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
34492	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
34493	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
34494	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
34495	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
34496	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
34497	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
34498	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
34499	Type TypeBasicCopySink `json:"type,omitempty"`
34500}
34501
34502// MarshalJSON is the custom marshaler for FileSystemSink.
34503func (fss FileSystemSink) MarshalJSON() ([]byte, error) {
34504	fss.Type = TypeFileSystemSink
34505	objectMap := make(map[string]interface{})
34506	if fss.CopyBehavior != "" {
34507		objectMap["copyBehavior"] = fss.CopyBehavior
34508	}
34509	objectMap["writeBatchSize"] = fss.WriteBatchSize
34510	objectMap["writeBatchTimeout"] = fss.WriteBatchTimeout
34511	objectMap["sinkRetryCount"] = fss.SinkRetryCount
34512	objectMap["sinkRetryWait"] = fss.SinkRetryWait
34513	if fss.Type != "" {
34514		objectMap["type"] = fss.Type
34515	}
34516	for k, v := range fss.AdditionalProperties {
34517		objectMap[k] = v
34518	}
34519	return json.Marshal(objectMap)
34520}
34521
34522// AsSalesforceSink is the BasicCopySink implementation for FileSystemSink.
34523func (fss FileSystemSink) AsSalesforceSink() (*SalesforceSink, bool) {
34524	return nil, false
34525}
34526
34527// AsDynamicsSink is the BasicCopySink implementation for FileSystemSink.
34528func (fss FileSystemSink) AsDynamicsSink() (*DynamicsSink, bool) {
34529	return nil, false
34530}
34531
34532// AsOdbcSink is the BasicCopySink implementation for FileSystemSink.
34533func (fss FileSystemSink) AsOdbcSink() (*OdbcSink, bool) {
34534	return nil, false
34535}
34536
34537// AsAzureSearchIndexSink is the BasicCopySink implementation for FileSystemSink.
34538func (fss FileSystemSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
34539	return nil, false
34540}
34541
34542// AsAzureDataLakeStoreSink is the BasicCopySink implementation for FileSystemSink.
34543func (fss FileSystemSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
34544	return nil, false
34545}
34546
34547// AsOracleSink is the BasicCopySink implementation for FileSystemSink.
34548func (fss FileSystemSink) AsOracleSink() (*OracleSink, bool) {
34549	return nil, false
34550}
34551
34552// AsSQLDWSink is the BasicCopySink implementation for FileSystemSink.
34553func (fss FileSystemSink) AsSQLDWSink() (*SQLDWSink, bool) {
34554	return nil, false
34555}
34556
34557// AsSQLSink is the BasicCopySink implementation for FileSystemSink.
34558func (fss FileSystemSink) AsSQLSink() (*SQLSink, bool) {
34559	return nil, false
34560}
34561
34562// AsDocumentDbCollectionSink is the BasicCopySink implementation for FileSystemSink.
34563func (fss FileSystemSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
34564	return nil, false
34565}
34566
34567// AsFileSystemSink is the BasicCopySink implementation for FileSystemSink.
34568func (fss FileSystemSink) AsFileSystemSink() (*FileSystemSink, bool) {
34569	return &fss, true
34570}
34571
34572// AsBlobSink is the BasicCopySink implementation for FileSystemSink.
34573func (fss FileSystemSink) AsBlobSink() (*BlobSink, bool) {
34574	return nil, false
34575}
34576
34577// AsAzureTableSink is the BasicCopySink implementation for FileSystemSink.
34578func (fss FileSystemSink) AsAzureTableSink() (*AzureTableSink, bool) {
34579	return nil, false
34580}
34581
34582// AsAzureQueueSink is the BasicCopySink implementation for FileSystemSink.
34583func (fss FileSystemSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
34584	return nil, false
34585}
34586
34587// AsSapCloudForCustomerSink is the BasicCopySink implementation for FileSystemSink.
34588func (fss FileSystemSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
34589	return nil, false
34590}
34591
34592// AsCopySink is the BasicCopySink implementation for FileSystemSink.
34593func (fss FileSystemSink) AsCopySink() (*CopySink, bool) {
34594	return nil, false
34595}
34596
34597// AsBasicCopySink is the BasicCopySink implementation for FileSystemSink.
34598func (fss FileSystemSink) AsBasicCopySink() (BasicCopySink, bool) {
34599	return &fss, true
34600}
34601
34602// FileSystemSource a copy activity file system source.
34603type FileSystemSource struct {
34604	// Recursive - If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean).
34605	Recursive interface{} `json:"recursive,omitempty"`
34606	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
34607	AdditionalProperties map[string]interface{} `json:""`
34608	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
34609	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
34610	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
34611	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
34612	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
34613	Type TypeBasicCopySource `json:"type,omitempty"`
34614}
34615
34616// MarshalJSON is the custom marshaler for FileSystemSource.
34617func (fss FileSystemSource) MarshalJSON() ([]byte, error) {
34618	fss.Type = TypeFileSystemSource
34619	objectMap := make(map[string]interface{})
34620	objectMap["recursive"] = fss.Recursive
34621	objectMap["sourceRetryCount"] = fss.SourceRetryCount
34622	objectMap["sourceRetryWait"] = fss.SourceRetryWait
34623	if fss.Type != "" {
34624		objectMap["type"] = fss.Type
34625	}
34626	for k, v := range fss.AdditionalProperties {
34627		objectMap[k] = v
34628	}
34629	return json.Marshal(objectMap)
34630}
34631
34632// AsAmazonRedshiftSource is the BasicCopySource implementation for FileSystemSource.
34633func (fss FileSystemSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
34634	return nil, false
34635}
34636
34637// AsResponsysSource is the BasicCopySource implementation for FileSystemSource.
34638func (fss FileSystemSource) AsResponsysSource() (*ResponsysSource, bool) {
34639	return nil, false
34640}
34641
34642// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for FileSystemSource.
34643func (fss FileSystemSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
34644	return nil, false
34645}
34646
34647// AsVerticaSource is the BasicCopySource implementation for FileSystemSource.
34648func (fss FileSystemSource) AsVerticaSource() (*VerticaSource, bool) {
34649	return nil, false
34650}
34651
34652// AsNetezzaSource is the BasicCopySource implementation for FileSystemSource.
34653func (fss FileSystemSource) AsNetezzaSource() (*NetezzaSource, bool) {
34654	return nil, false
34655}
34656
34657// AsZohoSource is the BasicCopySource implementation for FileSystemSource.
34658func (fss FileSystemSource) AsZohoSource() (*ZohoSource, bool) {
34659	return nil, false
34660}
34661
34662// AsXeroSource is the BasicCopySource implementation for FileSystemSource.
34663func (fss FileSystemSource) AsXeroSource() (*XeroSource, bool) {
34664	return nil, false
34665}
34666
34667// AsSquareSource is the BasicCopySource implementation for FileSystemSource.
34668func (fss FileSystemSource) AsSquareSource() (*SquareSource, bool) {
34669	return nil, false
34670}
34671
34672// AsSparkSource is the BasicCopySource implementation for FileSystemSource.
34673func (fss FileSystemSource) AsSparkSource() (*SparkSource, bool) {
34674	return nil, false
34675}
34676
34677// AsShopifySource is the BasicCopySource implementation for FileSystemSource.
34678func (fss FileSystemSource) AsShopifySource() (*ShopifySource, bool) {
34679	return nil, false
34680}
34681
34682// AsServiceNowSource is the BasicCopySource implementation for FileSystemSource.
34683func (fss FileSystemSource) AsServiceNowSource() (*ServiceNowSource, bool) {
34684	return nil, false
34685}
34686
34687// AsQuickBooksSource is the BasicCopySource implementation for FileSystemSource.
34688func (fss FileSystemSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
34689	return nil, false
34690}
34691
34692// AsPrestoSource is the BasicCopySource implementation for FileSystemSource.
34693func (fss FileSystemSource) AsPrestoSource() (*PrestoSource, bool) {
34694	return nil, false
34695}
34696
34697// AsPhoenixSource is the BasicCopySource implementation for FileSystemSource.
34698func (fss FileSystemSource) AsPhoenixSource() (*PhoenixSource, bool) {
34699	return nil, false
34700}
34701
34702// AsPaypalSource is the BasicCopySource implementation for FileSystemSource.
34703func (fss FileSystemSource) AsPaypalSource() (*PaypalSource, bool) {
34704	return nil, false
34705}
34706
34707// AsMarketoSource is the BasicCopySource implementation for FileSystemSource.
34708func (fss FileSystemSource) AsMarketoSource() (*MarketoSource, bool) {
34709	return nil, false
34710}
34711
34712// AsMariaDBSource is the BasicCopySource implementation for FileSystemSource.
34713func (fss FileSystemSource) AsMariaDBSource() (*MariaDBSource, bool) {
34714	return nil, false
34715}
34716
34717// AsMagentoSource is the BasicCopySource implementation for FileSystemSource.
34718func (fss FileSystemSource) AsMagentoSource() (*MagentoSource, bool) {
34719	return nil, false
34720}
34721
34722// AsJiraSource is the BasicCopySource implementation for FileSystemSource.
34723func (fss FileSystemSource) AsJiraSource() (*JiraSource, bool) {
34724	return nil, false
34725}
34726
34727// AsImpalaSource is the BasicCopySource implementation for FileSystemSource.
34728func (fss FileSystemSource) AsImpalaSource() (*ImpalaSource, bool) {
34729	return nil, false
34730}
34731
34732// AsHubspotSource is the BasicCopySource implementation for FileSystemSource.
34733func (fss FileSystemSource) AsHubspotSource() (*HubspotSource, bool) {
34734	return nil, false
34735}
34736
34737// AsHiveSource is the BasicCopySource implementation for FileSystemSource.
34738func (fss FileSystemSource) AsHiveSource() (*HiveSource, bool) {
34739	return nil, false
34740}
34741
34742// AsHBaseSource is the BasicCopySource implementation for FileSystemSource.
34743func (fss FileSystemSource) AsHBaseSource() (*HBaseSource, bool) {
34744	return nil, false
34745}
34746
34747// AsGreenplumSource is the BasicCopySource implementation for FileSystemSource.
34748func (fss FileSystemSource) AsGreenplumSource() (*GreenplumSource, bool) {
34749	return nil, false
34750}
34751
34752// AsGoogleBigQuerySource is the BasicCopySource implementation for FileSystemSource.
34753func (fss FileSystemSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
34754	return nil, false
34755}
34756
34757// AsEloquaSource is the BasicCopySource implementation for FileSystemSource.
34758func (fss FileSystemSource) AsEloquaSource() (*EloquaSource, bool) {
34759	return nil, false
34760}
34761
34762// AsDrillSource is the BasicCopySource implementation for FileSystemSource.
34763func (fss FileSystemSource) AsDrillSource() (*DrillSource, bool) {
34764	return nil, false
34765}
34766
34767// AsCouchbaseSource is the BasicCopySource implementation for FileSystemSource.
34768func (fss FileSystemSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
34769	return nil, false
34770}
34771
34772// AsConcurSource is the BasicCopySource implementation for FileSystemSource.
34773func (fss FileSystemSource) AsConcurSource() (*ConcurSource, bool) {
34774	return nil, false
34775}
34776
34777// AsAzurePostgreSQLSource is the BasicCopySource implementation for FileSystemSource.
34778func (fss FileSystemSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
34779	return nil, false
34780}
34781
34782// AsAmazonMWSSource is the BasicCopySource implementation for FileSystemSource.
34783func (fss FileSystemSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
34784	return nil, false
34785}
34786
34787// AsHTTPSource is the BasicCopySource implementation for FileSystemSource.
34788func (fss FileSystemSource) AsHTTPSource() (*HTTPSource, bool) {
34789	return nil, false
34790}
34791
34792// AsAzureDataLakeStoreSource is the BasicCopySource implementation for FileSystemSource.
34793func (fss FileSystemSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
34794	return nil, false
34795}
34796
34797// AsMongoDbSource is the BasicCopySource implementation for FileSystemSource.
34798func (fss FileSystemSource) AsMongoDbSource() (*MongoDbSource, bool) {
34799	return nil, false
34800}
34801
34802// AsCassandraSource is the BasicCopySource implementation for FileSystemSource.
34803func (fss FileSystemSource) AsCassandraSource() (*CassandraSource, bool) {
34804	return nil, false
34805}
34806
34807// AsWebSource is the BasicCopySource implementation for FileSystemSource.
34808func (fss FileSystemSource) AsWebSource() (*WebSource, bool) {
34809	return nil, false
34810}
34811
34812// AsOracleSource is the BasicCopySource implementation for FileSystemSource.
34813func (fss FileSystemSource) AsOracleSource() (*OracleSource, bool) {
34814	return nil, false
34815}
34816
34817// AsAzureMySQLSource is the BasicCopySource implementation for FileSystemSource.
34818func (fss FileSystemSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
34819	return nil, false
34820}
34821
34822// AsHdfsSource is the BasicCopySource implementation for FileSystemSource.
34823func (fss FileSystemSource) AsHdfsSource() (*HdfsSource, bool) {
34824	return nil, false
34825}
34826
34827// AsFileSystemSource is the BasicCopySource implementation for FileSystemSource.
34828func (fss FileSystemSource) AsFileSystemSource() (*FileSystemSource, bool) {
34829	return &fss, true
34830}
34831
34832// AsSQLDWSource is the BasicCopySource implementation for FileSystemSource.
34833func (fss FileSystemSource) AsSQLDWSource() (*SQLDWSource, bool) {
34834	return nil, false
34835}
34836
34837// AsSQLSource is the BasicCopySource implementation for FileSystemSource.
34838func (fss FileSystemSource) AsSQLSource() (*SQLSource, bool) {
34839	return nil, false
34840}
34841
34842// AsSapEccSource is the BasicCopySource implementation for FileSystemSource.
34843func (fss FileSystemSource) AsSapEccSource() (*SapEccSource, bool) {
34844	return nil, false
34845}
34846
34847// AsSapCloudForCustomerSource is the BasicCopySource implementation for FileSystemSource.
34848func (fss FileSystemSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
34849	return nil, false
34850}
34851
34852// AsSalesforceSource is the BasicCopySource implementation for FileSystemSource.
34853func (fss FileSystemSource) AsSalesforceSource() (*SalesforceSource, bool) {
34854	return nil, false
34855}
34856
34857// AsRelationalSource is the BasicCopySource implementation for FileSystemSource.
34858func (fss FileSystemSource) AsRelationalSource() (*RelationalSource, bool) {
34859	return nil, false
34860}
34861
34862// AsDynamicsSource is the BasicCopySource implementation for FileSystemSource.
34863func (fss FileSystemSource) AsDynamicsSource() (*DynamicsSource, bool) {
34864	return nil, false
34865}
34866
34867// AsDocumentDbCollectionSource is the BasicCopySource implementation for FileSystemSource.
34868func (fss FileSystemSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
34869	return nil, false
34870}
34871
34872// AsBlobSource is the BasicCopySource implementation for FileSystemSource.
34873func (fss FileSystemSource) AsBlobSource() (*BlobSource, bool) {
34874	return nil, false
34875}
34876
34877// AsAzureTableSource is the BasicCopySource implementation for FileSystemSource.
34878func (fss FileSystemSource) AsAzureTableSource() (*AzureTableSource, bool) {
34879	return nil, false
34880}
34881
34882// AsCopySource is the BasicCopySource implementation for FileSystemSource.
34883func (fss FileSystemSource) AsCopySource() (*CopySource, bool) {
34884	return nil, false
34885}
34886
34887// AsBasicCopySource is the BasicCopySource implementation for FileSystemSource.
34888func (fss FileSystemSource) AsBasicCopySource() (BasicCopySource, bool) {
34889	return &fss, true
34890}
34891
34892// FilterActivity filter and return results from input array based on the conditions.
34893type FilterActivity struct {
34894	// FilterActivityTypeProperties - Filter activity properties.
34895	*FilterActivityTypeProperties `json:"typeProperties,omitempty"`
34896	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
34897	AdditionalProperties map[string]interface{} `json:""`
34898	// Name - Activity name.
34899	Name *string `json:"name,omitempty"`
34900	// Description - Activity description.
34901	Description *string `json:"description,omitempty"`
34902	// DependsOn - Activity depends on condition.
34903	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
34904	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
34905	Type TypeBasicActivity `json:"type,omitempty"`
34906}
34907
34908// MarshalJSON is the custom marshaler for FilterActivity.
34909func (fa FilterActivity) MarshalJSON() ([]byte, error) {
34910	fa.Type = TypeFilter
34911	objectMap := make(map[string]interface{})
34912	if fa.FilterActivityTypeProperties != nil {
34913		objectMap["typeProperties"] = fa.FilterActivityTypeProperties
34914	}
34915	if fa.Name != nil {
34916		objectMap["name"] = fa.Name
34917	}
34918	if fa.Description != nil {
34919		objectMap["description"] = fa.Description
34920	}
34921	if fa.DependsOn != nil {
34922		objectMap["dependsOn"] = fa.DependsOn
34923	}
34924	if fa.Type != "" {
34925		objectMap["type"] = fa.Type
34926	}
34927	for k, v := range fa.AdditionalProperties {
34928		objectMap[k] = v
34929	}
34930	return json.Marshal(objectMap)
34931}
34932
34933// AsDatabricksNotebookActivity is the BasicActivity implementation for FilterActivity.
34934func (fa FilterActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
34935	return nil, false
34936}
34937
34938// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for FilterActivity.
34939func (fa FilterActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
34940	return nil, false
34941}
34942
34943// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for FilterActivity.
34944func (fa FilterActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
34945	return nil, false
34946}
34947
34948// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for FilterActivity.
34949func (fa FilterActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
34950	return nil, false
34951}
34952
34953// AsGetMetadataActivity is the BasicActivity implementation for FilterActivity.
34954func (fa FilterActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
34955	return nil, false
34956}
34957
34958// AsWebActivity is the BasicActivity implementation for FilterActivity.
34959func (fa FilterActivity) AsWebActivity() (*WebActivity, bool) {
34960	return nil, false
34961}
34962
34963// AsLookupActivity is the BasicActivity implementation for FilterActivity.
34964func (fa FilterActivity) AsLookupActivity() (*LookupActivity, bool) {
34965	return nil, false
34966}
34967
34968// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for FilterActivity.
34969func (fa FilterActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
34970	return nil, false
34971}
34972
34973// AsCustomActivity is the BasicActivity implementation for FilterActivity.
34974func (fa FilterActivity) AsCustomActivity() (*CustomActivity, bool) {
34975	return nil, false
34976}
34977
34978// AsExecuteSSISPackageActivity is the BasicActivity implementation for FilterActivity.
34979func (fa FilterActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
34980	return nil, false
34981}
34982
34983// AsHDInsightSparkActivity is the BasicActivity implementation for FilterActivity.
34984func (fa FilterActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
34985	return nil, false
34986}
34987
34988// AsHDInsightStreamingActivity is the BasicActivity implementation for FilterActivity.
34989func (fa FilterActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
34990	return nil, false
34991}
34992
34993// AsHDInsightMapReduceActivity is the BasicActivity implementation for FilterActivity.
34994func (fa FilterActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
34995	return nil, false
34996}
34997
34998// AsHDInsightPigActivity is the BasicActivity implementation for FilterActivity.
34999func (fa FilterActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
35000	return nil, false
35001}
35002
35003// AsHDInsightHiveActivity is the BasicActivity implementation for FilterActivity.
35004func (fa FilterActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
35005	return nil, false
35006}
35007
35008// AsCopyActivity is the BasicActivity implementation for FilterActivity.
35009func (fa FilterActivity) AsCopyActivity() (*CopyActivity, bool) {
35010	return nil, false
35011}
35012
35013// AsExecutionActivity is the BasicActivity implementation for FilterActivity.
35014func (fa FilterActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
35015	return nil, false
35016}
35017
35018// AsBasicExecutionActivity is the BasicActivity implementation for FilterActivity.
35019func (fa FilterActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
35020	return nil, false
35021}
35022
35023// AsFilterActivity is the BasicActivity implementation for FilterActivity.
35024func (fa FilterActivity) AsFilterActivity() (*FilterActivity, bool) {
35025	return &fa, true
35026}
35027
35028// AsUntilActivity is the BasicActivity implementation for FilterActivity.
35029func (fa FilterActivity) AsUntilActivity() (*UntilActivity, bool) {
35030	return nil, false
35031}
35032
35033// AsWaitActivity is the BasicActivity implementation for FilterActivity.
35034func (fa FilterActivity) AsWaitActivity() (*WaitActivity, bool) {
35035	return nil, false
35036}
35037
35038// AsForEachActivity is the BasicActivity implementation for FilterActivity.
35039func (fa FilterActivity) AsForEachActivity() (*ForEachActivity, bool) {
35040	return nil, false
35041}
35042
35043// AsIfConditionActivity is the BasicActivity implementation for FilterActivity.
35044func (fa FilterActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
35045	return nil, false
35046}
35047
35048// AsExecutePipelineActivity is the BasicActivity implementation for FilterActivity.
35049func (fa FilterActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
35050	return nil, false
35051}
35052
35053// AsControlActivity is the BasicActivity implementation for FilterActivity.
35054func (fa FilterActivity) AsControlActivity() (*ControlActivity, bool) {
35055	return nil, false
35056}
35057
35058// AsBasicControlActivity is the BasicActivity implementation for FilterActivity.
35059func (fa FilterActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
35060	return &fa, true
35061}
35062
35063// AsActivity is the BasicActivity implementation for FilterActivity.
35064func (fa FilterActivity) AsActivity() (*Activity, bool) {
35065	return nil, false
35066}
35067
35068// AsBasicActivity is the BasicActivity implementation for FilterActivity.
35069func (fa FilterActivity) AsBasicActivity() (BasicActivity, bool) {
35070	return &fa, true
35071}
35072
35073// UnmarshalJSON is the custom unmarshaler for FilterActivity struct.
35074func (fa *FilterActivity) UnmarshalJSON(body []byte) error {
35075	var m map[string]*json.RawMessage
35076	err := json.Unmarshal(body, &m)
35077	if err != nil {
35078		return err
35079	}
35080	for k, v := range m {
35081		switch k {
35082		case "typeProperties":
35083			if v != nil {
35084				var filterActivityTypeProperties FilterActivityTypeProperties
35085				err = json.Unmarshal(*v, &filterActivityTypeProperties)
35086				if err != nil {
35087					return err
35088				}
35089				fa.FilterActivityTypeProperties = &filterActivityTypeProperties
35090			}
35091		default:
35092			if v != nil {
35093				var additionalProperties interface{}
35094				err = json.Unmarshal(*v, &additionalProperties)
35095				if err != nil {
35096					return err
35097				}
35098				if fa.AdditionalProperties == nil {
35099					fa.AdditionalProperties = make(map[string]interface{})
35100				}
35101				fa.AdditionalProperties[k] = additionalProperties
35102			}
35103		case "name":
35104			if v != nil {
35105				var name string
35106				err = json.Unmarshal(*v, &name)
35107				if err != nil {
35108					return err
35109				}
35110				fa.Name = &name
35111			}
35112		case "description":
35113			if v != nil {
35114				var description string
35115				err = json.Unmarshal(*v, &description)
35116				if err != nil {
35117					return err
35118				}
35119				fa.Description = &description
35120			}
35121		case "dependsOn":
35122			if v != nil {
35123				var dependsOn []ActivityDependency
35124				err = json.Unmarshal(*v, &dependsOn)
35125				if err != nil {
35126					return err
35127				}
35128				fa.DependsOn = &dependsOn
35129			}
35130		case "type":
35131			if v != nil {
35132				var typeVar TypeBasicActivity
35133				err = json.Unmarshal(*v, &typeVar)
35134				if err != nil {
35135					return err
35136				}
35137				fa.Type = typeVar
35138			}
35139		}
35140	}
35141
35142	return nil
35143}
35144
35145// FilterActivityTypeProperties fitler activity properties.
35146type FilterActivityTypeProperties struct {
35147	// Items - Input array on which filter should be applied.
35148	Items *Expression `json:"items,omitempty"`
35149	// Condition - Condition to be used for filtering the input.
35150	Condition *Expression `json:"condition,omitempty"`
35151}
35152
35153// ForEachActivity this activity is used for iterating over a collection and execute given activities.
35154type ForEachActivity struct {
35155	// ForEachActivityTypeProperties - ForEach activity properties.
35156	*ForEachActivityTypeProperties `json:"typeProperties,omitempty"`
35157	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
35158	AdditionalProperties map[string]interface{} `json:""`
35159	// Name - Activity name.
35160	Name *string `json:"name,omitempty"`
35161	// Description - Activity description.
35162	Description *string `json:"description,omitempty"`
35163	// DependsOn - Activity depends on condition.
35164	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
35165	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
35166	Type TypeBasicActivity `json:"type,omitempty"`
35167}
35168
35169// MarshalJSON is the custom marshaler for ForEachActivity.
35170func (fea ForEachActivity) MarshalJSON() ([]byte, error) {
35171	fea.Type = TypeForEach
35172	objectMap := make(map[string]interface{})
35173	if fea.ForEachActivityTypeProperties != nil {
35174		objectMap["typeProperties"] = fea.ForEachActivityTypeProperties
35175	}
35176	if fea.Name != nil {
35177		objectMap["name"] = fea.Name
35178	}
35179	if fea.Description != nil {
35180		objectMap["description"] = fea.Description
35181	}
35182	if fea.DependsOn != nil {
35183		objectMap["dependsOn"] = fea.DependsOn
35184	}
35185	if fea.Type != "" {
35186		objectMap["type"] = fea.Type
35187	}
35188	for k, v := range fea.AdditionalProperties {
35189		objectMap[k] = v
35190	}
35191	return json.Marshal(objectMap)
35192}
35193
35194// AsDatabricksNotebookActivity is the BasicActivity implementation for ForEachActivity.
35195func (fea ForEachActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
35196	return nil, false
35197}
35198
35199// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for ForEachActivity.
35200func (fea ForEachActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
35201	return nil, false
35202}
35203
35204// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for ForEachActivity.
35205func (fea ForEachActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
35206	return nil, false
35207}
35208
35209// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for ForEachActivity.
35210func (fea ForEachActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
35211	return nil, false
35212}
35213
35214// AsGetMetadataActivity is the BasicActivity implementation for ForEachActivity.
35215func (fea ForEachActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
35216	return nil, false
35217}
35218
35219// AsWebActivity is the BasicActivity implementation for ForEachActivity.
35220func (fea ForEachActivity) AsWebActivity() (*WebActivity, bool) {
35221	return nil, false
35222}
35223
35224// AsLookupActivity is the BasicActivity implementation for ForEachActivity.
35225func (fea ForEachActivity) AsLookupActivity() (*LookupActivity, bool) {
35226	return nil, false
35227}
35228
35229// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for ForEachActivity.
35230func (fea ForEachActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
35231	return nil, false
35232}
35233
35234// AsCustomActivity is the BasicActivity implementation for ForEachActivity.
35235func (fea ForEachActivity) AsCustomActivity() (*CustomActivity, bool) {
35236	return nil, false
35237}
35238
35239// AsExecuteSSISPackageActivity is the BasicActivity implementation for ForEachActivity.
35240func (fea ForEachActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
35241	return nil, false
35242}
35243
35244// AsHDInsightSparkActivity is the BasicActivity implementation for ForEachActivity.
35245func (fea ForEachActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
35246	return nil, false
35247}
35248
35249// AsHDInsightStreamingActivity is the BasicActivity implementation for ForEachActivity.
35250func (fea ForEachActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
35251	return nil, false
35252}
35253
35254// AsHDInsightMapReduceActivity is the BasicActivity implementation for ForEachActivity.
35255func (fea ForEachActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
35256	return nil, false
35257}
35258
35259// AsHDInsightPigActivity is the BasicActivity implementation for ForEachActivity.
35260func (fea ForEachActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
35261	return nil, false
35262}
35263
35264// AsHDInsightHiveActivity is the BasicActivity implementation for ForEachActivity.
35265func (fea ForEachActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
35266	return nil, false
35267}
35268
35269// AsCopyActivity is the BasicActivity implementation for ForEachActivity.
35270func (fea ForEachActivity) AsCopyActivity() (*CopyActivity, bool) {
35271	return nil, false
35272}
35273
35274// AsExecutionActivity is the BasicActivity implementation for ForEachActivity.
35275func (fea ForEachActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
35276	return nil, false
35277}
35278
35279// AsBasicExecutionActivity is the BasicActivity implementation for ForEachActivity.
35280func (fea ForEachActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
35281	return nil, false
35282}
35283
35284// AsFilterActivity is the BasicActivity implementation for ForEachActivity.
35285func (fea ForEachActivity) AsFilterActivity() (*FilterActivity, bool) {
35286	return nil, false
35287}
35288
35289// AsUntilActivity is the BasicActivity implementation for ForEachActivity.
35290func (fea ForEachActivity) AsUntilActivity() (*UntilActivity, bool) {
35291	return nil, false
35292}
35293
35294// AsWaitActivity is the BasicActivity implementation for ForEachActivity.
35295func (fea ForEachActivity) AsWaitActivity() (*WaitActivity, bool) {
35296	return nil, false
35297}
35298
35299// AsForEachActivity is the BasicActivity implementation for ForEachActivity.
35300func (fea ForEachActivity) AsForEachActivity() (*ForEachActivity, bool) {
35301	return &fea, true
35302}
35303
35304// AsIfConditionActivity is the BasicActivity implementation for ForEachActivity.
35305func (fea ForEachActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
35306	return nil, false
35307}
35308
35309// AsExecutePipelineActivity is the BasicActivity implementation for ForEachActivity.
35310func (fea ForEachActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
35311	return nil, false
35312}
35313
35314// AsControlActivity is the BasicActivity implementation for ForEachActivity.
35315func (fea ForEachActivity) AsControlActivity() (*ControlActivity, bool) {
35316	return nil, false
35317}
35318
35319// AsBasicControlActivity is the BasicActivity implementation for ForEachActivity.
35320func (fea ForEachActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
35321	return &fea, true
35322}
35323
35324// AsActivity is the BasicActivity implementation for ForEachActivity.
35325func (fea ForEachActivity) AsActivity() (*Activity, bool) {
35326	return nil, false
35327}
35328
35329// AsBasicActivity is the BasicActivity implementation for ForEachActivity.
35330func (fea ForEachActivity) AsBasicActivity() (BasicActivity, bool) {
35331	return &fea, true
35332}
35333
35334// UnmarshalJSON is the custom unmarshaler for ForEachActivity struct.
35335func (fea *ForEachActivity) UnmarshalJSON(body []byte) error {
35336	var m map[string]*json.RawMessage
35337	err := json.Unmarshal(body, &m)
35338	if err != nil {
35339		return err
35340	}
35341	for k, v := range m {
35342		switch k {
35343		case "typeProperties":
35344			if v != nil {
35345				var forEachActivityTypeProperties ForEachActivityTypeProperties
35346				err = json.Unmarshal(*v, &forEachActivityTypeProperties)
35347				if err != nil {
35348					return err
35349				}
35350				fea.ForEachActivityTypeProperties = &forEachActivityTypeProperties
35351			}
35352		default:
35353			if v != nil {
35354				var additionalProperties interface{}
35355				err = json.Unmarshal(*v, &additionalProperties)
35356				if err != nil {
35357					return err
35358				}
35359				if fea.AdditionalProperties == nil {
35360					fea.AdditionalProperties = make(map[string]interface{})
35361				}
35362				fea.AdditionalProperties[k] = additionalProperties
35363			}
35364		case "name":
35365			if v != nil {
35366				var name string
35367				err = json.Unmarshal(*v, &name)
35368				if err != nil {
35369					return err
35370				}
35371				fea.Name = &name
35372			}
35373		case "description":
35374			if v != nil {
35375				var description string
35376				err = json.Unmarshal(*v, &description)
35377				if err != nil {
35378					return err
35379				}
35380				fea.Description = &description
35381			}
35382		case "dependsOn":
35383			if v != nil {
35384				var dependsOn []ActivityDependency
35385				err = json.Unmarshal(*v, &dependsOn)
35386				if err != nil {
35387					return err
35388				}
35389				fea.DependsOn = &dependsOn
35390			}
35391		case "type":
35392			if v != nil {
35393				var typeVar TypeBasicActivity
35394				err = json.Unmarshal(*v, &typeVar)
35395				if err != nil {
35396					return err
35397				}
35398				fea.Type = typeVar
35399			}
35400		}
35401	}
35402
35403	return nil
35404}
35405
35406// ForEachActivityTypeProperties forEach activity properties.
35407type ForEachActivityTypeProperties struct {
35408	// IsSequential - Should the loop be executed in sequence or in parallel (max 50)
35409	IsSequential *bool `json:"isSequential,omitempty"`
35410	// BatchCount - Batch count to be used for controlling the number of parallel execution (when isSequential is set to false).
35411	BatchCount *int32 `json:"batchCount,omitempty"`
35412	// Items - Collection to iterate.
35413	Items *Expression `json:"items,omitempty"`
35414	// Activities - List of activities to execute .
35415	Activities *[]BasicActivity `json:"activities,omitempty"`
35416}
35417
35418// UnmarshalJSON is the custom unmarshaler for ForEachActivityTypeProperties struct.
35419func (featp *ForEachActivityTypeProperties) UnmarshalJSON(body []byte) error {
35420	var m map[string]*json.RawMessage
35421	err := json.Unmarshal(body, &m)
35422	if err != nil {
35423		return err
35424	}
35425	for k, v := range m {
35426		switch k {
35427		case "isSequential":
35428			if v != nil {
35429				var isSequential bool
35430				err = json.Unmarshal(*v, &isSequential)
35431				if err != nil {
35432					return err
35433				}
35434				featp.IsSequential = &isSequential
35435			}
35436		case "batchCount":
35437			if v != nil {
35438				var batchCount int32
35439				err = json.Unmarshal(*v, &batchCount)
35440				if err != nil {
35441					return err
35442				}
35443				featp.BatchCount = &batchCount
35444			}
35445		case "items":
35446			if v != nil {
35447				var items Expression
35448				err = json.Unmarshal(*v, &items)
35449				if err != nil {
35450					return err
35451				}
35452				featp.Items = &items
35453			}
35454		case "activities":
35455			if v != nil {
35456				activities, err := unmarshalBasicActivityArray(*v)
35457				if err != nil {
35458					return err
35459				}
35460				featp.Activities = &activities
35461			}
35462		}
35463	}
35464
35465	return nil
35466}
35467
35468// FtpServerLinkedService a FTP server Linked Service.
35469type FtpServerLinkedService struct {
35470	// FtpServerLinkedServiceTypeProperties - Properties specific to this linked service type.
35471	*FtpServerLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
35472	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
35473	AdditionalProperties map[string]interface{} `json:""`
35474	// ConnectVia - The integration runtime reference.
35475	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
35476	// Description - Linked service description.
35477	Description *string `json:"description,omitempty"`
35478	// Parameters - Parameters for linked service.
35479	Parameters map[string]*ParameterSpecification `json:"parameters"`
35480	// Annotations - List of tags that can be used for describing the Dataset.
35481	Annotations *[]interface{} `json:"annotations,omitempty"`
35482	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
35483	Type TypeBasicLinkedService `json:"type,omitempty"`
35484}
35485
35486// MarshalJSON is the custom marshaler for FtpServerLinkedService.
35487func (fsls FtpServerLinkedService) MarshalJSON() ([]byte, error) {
35488	fsls.Type = TypeFtpServer
35489	objectMap := make(map[string]interface{})
35490	if fsls.FtpServerLinkedServiceTypeProperties != nil {
35491		objectMap["typeProperties"] = fsls.FtpServerLinkedServiceTypeProperties
35492	}
35493	if fsls.ConnectVia != nil {
35494		objectMap["connectVia"] = fsls.ConnectVia
35495	}
35496	if fsls.Description != nil {
35497		objectMap["description"] = fsls.Description
35498	}
35499	if fsls.Parameters != nil {
35500		objectMap["parameters"] = fsls.Parameters
35501	}
35502	if fsls.Annotations != nil {
35503		objectMap["annotations"] = fsls.Annotations
35504	}
35505	if fsls.Type != "" {
35506		objectMap["type"] = fsls.Type
35507	}
35508	for k, v := range fsls.AdditionalProperties {
35509		objectMap[k] = v
35510	}
35511	return json.Marshal(objectMap)
35512}
35513
35514// AsResponsysLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35515func (fsls FtpServerLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
35516	return nil, false
35517}
35518
35519// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35520func (fsls FtpServerLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
35521	return nil, false
35522}
35523
35524// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35525func (fsls FtpServerLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
35526	return nil, false
35527}
35528
35529// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35530func (fsls FtpServerLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
35531	return nil, false
35532}
35533
35534// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35535func (fsls FtpServerLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
35536	return nil, false
35537}
35538
35539// AsNetezzaLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35540func (fsls FtpServerLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
35541	return nil, false
35542}
35543
35544// AsVerticaLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35545func (fsls FtpServerLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
35546	return nil, false
35547}
35548
35549// AsZohoLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35550func (fsls FtpServerLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
35551	return nil, false
35552}
35553
35554// AsXeroLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35555func (fsls FtpServerLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
35556	return nil, false
35557}
35558
35559// AsSquareLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35560func (fsls FtpServerLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
35561	return nil, false
35562}
35563
35564// AsSparkLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35565func (fsls FtpServerLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
35566	return nil, false
35567}
35568
35569// AsShopifyLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35570func (fsls FtpServerLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
35571	return nil, false
35572}
35573
35574// AsServiceNowLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35575func (fsls FtpServerLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
35576	return nil, false
35577}
35578
35579// AsQuickBooksLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35580func (fsls FtpServerLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
35581	return nil, false
35582}
35583
35584// AsPrestoLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35585func (fsls FtpServerLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
35586	return nil, false
35587}
35588
35589// AsPhoenixLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35590func (fsls FtpServerLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
35591	return nil, false
35592}
35593
35594// AsPaypalLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35595func (fsls FtpServerLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
35596	return nil, false
35597}
35598
35599// AsMarketoLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35600func (fsls FtpServerLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
35601	return nil, false
35602}
35603
35604// AsMariaDBLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35605func (fsls FtpServerLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
35606	return nil, false
35607}
35608
35609// AsMagentoLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35610func (fsls FtpServerLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
35611	return nil, false
35612}
35613
35614// AsJiraLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35615func (fsls FtpServerLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
35616	return nil, false
35617}
35618
35619// AsImpalaLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35620func (fsls FtpServerLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
35621	return nil, false
35622}
35623
35624// AsHubspotLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35625func (fsls FtpServerLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
35626	return nil, false
35627}
35628
35629// AsHiveLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35630func (fsls FtpServerLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
35631	return nil, false
35632}
35633
35634// AsHBaseLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35635func (fsls FtpServerLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
35636	return nil, false
35637}
35638
35639// AsGreenplumLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35640func (fsls FtpServerLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
35641	return nil, false
35642}
35643
35644// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35645func (fsls FtpServerLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
35646	return nil, false
35647}
35648
35649// AsEloquaLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35650func (fsls FtpServerLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
35651	return nil, false
35652}
35653
35654// AsDrillLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35655func (fsls FtpServerLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
35656	return nil, false
35657}
35658
35659// AsCouchbaseLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35660func (fsls FtpServerLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
35661	return nil, false
35662}
35663
35664// AsConcurLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35665func (fsls FtpServerLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
35666	return nil, false
35667}
35668
35669// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35670func (fsls FtpServerLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
35671	return nil, false
35672}
35673
35674// AsAmazonMWSLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35675func (fsls FtpServerLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
35676	return nil, false
35677}
35678
35679// AsSapHanaLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35680func (fsls FtpServerLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
35681	return nil, false
35682}
35683
35684// AsSapBWLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35685func (fsls FtpServerLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
35686	return nil, false
35687}
35688
35689// AsSftpServerLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35690func (fsls FtpServerLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
35691	return nil, false
35692}
35693
35694// AsFtpServerLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35695func (fsls FtpServerLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
35696	return &fsls, true
35697}
35698
35699// AsHTTPLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35700func (fsls FtpServerLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
35701	return nil, false
35702}
35703
35704// AsAzureSearchLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35705func (fsls FtpServerLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
35706	return nil, false
35707}
35708
35709// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35710func (fsls FtpServerLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
35711	return nil, false
35712}
35713
35714// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35715func (fsls FtpServerLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
35716	return nil, false
35717}
35718
35719// AsAmazonS3LinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35720func (fsls FtpServerLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
35721	return nil, false
35722}
35723
35724// AsSapEccLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35725func (fsls FtpServerLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
35726	return nil, false
35727}
35728
35729// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35730func (fsls FtpServerLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
35731	return nil, false
35732}
35733
35734// AsSalesforceLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35735func (fsls FtpServerLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
35736	return nil, false
35737}
35738
35739// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35740func (fsls FtpServerLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
35741	return nil, false
35742}
35743
35744// AsMongoDbLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35745func (fsls FtpServerLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
35746	return nil, false
35747}
35748
35749// AsCassandraLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35750func (fsls FtpServerLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
35751	return nil, false
35752}
35753
35754// AsWebLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35755func (fsls FtpServerLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
35756	return nil, false
35757}
35758
35759// AsODataLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35760func (fsls FtpServerLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
35761	return nil, false
35762}
35763
35764// AsHdfsLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35765func (fsls FtpServerLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
35766	return nil, false
35767}
35768
35769// AsOdbcLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35770func (fsls FtpServerLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
35771	return nil, false
35772}
35773
35774// AsAzureMLLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35775func (fsls FtpServerLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
35776	return nil, false
35777}
35778
35779// AsTeradataLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35780func (fsls FtpServerLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
35781	return nil, false
35782}
35783
35784// AsDb2LinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35785func (fsls FtpServerLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
35786	return nil, false
35787}
35788
35789// AsSybaseLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35790func (fsls FtpServerLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
35791	return nil, false
35792}
35793
35794// AsPostgreSQLLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35795func (fsls FtpServerLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
35796	return nil, false
35797}
35798
35799// AsMySQLLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35800func (fsls FtpServerLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
35801	return nil, false
35802}
35803
35804// AsAzureMySQLLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35805func (fsls FtpServerLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
35806	return nil, false
35807}
35808
35809// AsOracleLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35810func (fsls FtpServerLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
35811	return nil, false
35812}
35813
35814// AsFileServerLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35815func (fsls FtpServerLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
35816	return nil, false
35817}
35818
35819// AsHDInsightLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35820func (fsls FtpServerLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
35821	return nil, false
35822}
35823
35824// AsDynamicsLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35825func (fsls FtpServerLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
35826	return nil, false
35827}
35828
35829// AsCosmosDbLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35830func (fsls FtpServerLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
35831	return nil, false
35832}
35833
35834// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35835func (fsls FtpServerLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
35836	return nil, false
35837}
35838
35839// AsAzureBatchLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35840func (fsls FtpServerLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
35841	return nil, false
35842}
35843
35844// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35845func (fsls FtpServerLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
35846	return nil, false
35847}
35848
35849// AsSQLServerLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35850func (fsls FtpServerLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
35851	return nil, false
35852}
35853
35854// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35855func (fsls FtpServerLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
35856	return nil, false
35857}
35858
35859// AsAzureStorageLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35860func (fsls FtpServerLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
35861	return nil, false
35862}
35863
35864// AsLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35865func (fsls FtpServerLinkedService) AsLinkedService() (*LinkedService, bool) {
35866	return nil, false
35867}
35868
35869// AsBasicLinkedService is the BasicLinkedService implementation for FtpServerLinkedService.
35870func (fsls FtpServerLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
35871	return &fsls, true
35872}
35873
35874// UnmarshalJSON is the custom unmarshaler for FtpServerLinkedService struct.
35875func (fsls *FtpServerLinkedService) UnmarshalJSON(body []byte) error {
35876	var m map[string]*json.RawMessage
35877	err := json.Unmarshal(body, &m)
35878	if err != nil {
35879		return err
35880	}
35881	for k, v := range m {
35882		switch k {
35883		case "typeProperties":
35884			if v != nil {
35885				var ftpServerLinkedServiceTypeProperties FtpServerLinkedServiceTypeProperties
35886				err = json.Unmarshal(*v, &ftpServerLinkedServiceTypeProperties)
35887				if err != nil {
35888					return err
35889				}
35890				fsls.FtpServerLinkedServiceTypeProperties = &ftpServerLinkedServiceTypeProperties
35891			}
35892		default:
35893			if v != nil {
35894				var additionalProperties interface{}
35895				err = json.Unmarshal(*v, &additionalProperties)
35896				if err != nil {
35897					return err
35898				}
35899				if fsls.AdditionalProperties == nil {
35900					fsls.AdditionalProperties = make(map[string]interface{})
35901				}
35902				fsls.AdditionalProperties[k] = additionalProperties
35903			}
35904		case "connectVia":
35905			if v != nil {
35906				var connectVia IntegrationRuntimeReference
35907				err = json.Unmarshal(*v, &connectVia)
35908				if err != nil {
35909					return err
35910				}
35911				fsls.ConnectVia = &connectVia
35912			}
35913		case "description":
35914			if v != nil {
35915				var description string
35916				err = json.Unmarshal(*v, &description)
35917				if err != nil {
35918					return err
35919				}
35920				fsls.Description = &description
35921			}
35922		case "parameters":
35923			if v != nil {
35924				var parameters map[string]*ParameterSpecification
35925				err = json.Unmarshal(*v, &parameters)
35926				if err != nil {
35927					return err
35928				}
35929				fsls.Parameters = parameters
35930			}
35931		case "annotations":
35932			if v != nil {
35933				var annotations []interface{}
35934				err = json.Unmarshal(*v, &annotations)
35935				if err != nil {
35936					return err
35937				}
35938				fsls.Annotations = &annotations
35939			}
35940		case "type":
35941			if v != nil {
35942				var typeVar TypeBasicLinkedService
35943				err = json.Unmarshal(*v, &typeVar)
35944				if err != nil {
35945					return err
35946				}
35947				fsls.Type = typeVar
35948			}
35949		}
35950	}
35951
35952	return nil
35953}
35954
35955// FtpServerLinkedServiceTypeProperties properties specific to this linked service type.
35956type FtpServerLinkedServiceTypeProperties struct {
35957	// Host - Host name of the FTP server. Type: string (or Expression with resultType string).
35958	Host interface{} `json:"host,omitempty"`
35959	// Port - The TCP port number that the FTP server uses to listen for client connections. Default value is 21. Type: integer (or Expression with resultType integer), minimum: 0.
35960	Port interface{} `json:"port,omitempty"`
35961	// AuthenticationType - The authentication type to be used to connect to the FTP server. Possible values include: 'FtpAuthenticationTypeBasic', 'FtpAuthenticationTypeAnonymous'
35962	AuthenticationType FtpAuthenticationType `json:"authenticationType,omitempty"`
35963	// UserName - Username to logon the FTP server. Type: string (or Expression with resultType string).
35964	UserName interface{} `json:"userName,omitempty"`
35965	// Password - Password to logon the FTP server.
35966	Password BasicSecretBase `json:"password,omitempty"`
35967	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
35968	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
35969	// EnableSsl - If true, connect to the FTP server over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean).
35970	EnableSsl interface{} `json:"enableSsl,omitempty"`
35971	// EnableServerCertificateValidation - If true, validate the FTP server SSL certificate when connect over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean).
35972	EnableServerCertificateValidation interface{} `json:"enableServerCertificateValidation,omitempty"`
35973}
35974
35975// UnmarshalJSON is the custom unmarshaler for FtpServerLinkedServiceTypeProperties struct.
35976func (fslstp *FtpServerLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
35977	var m map[string]*json.RawMessage
35978	err := json.Unmarshal(body, &m)
35979	if err != nil {
35980		return err
35981	}
35982	for k, v := range m {
35983		switch k {
35984		case "host":
35985			if v != nil {
35986				var host interface{}
35987				err = json.Unmarshal(*v, &host)
35988				if err != nil {
35989					return err
35990				}
35991				fslstp.Host = host
35992			}
35993		case "port":
35994			if v != nil {
35995				var port interface{}
35996				err = json.Unmarshal(*v, &port)
35997				if err != nil {
35998					return err
35999				}
36000				fslstp.Port = port
36001			}
36002		case "authenticationType":
36003			if v != nil {
36004				var authenticationType FtpAuthenticationType
36005				err = json.Unmarshal(*v, &authenticationType)
36006				if err != nil {
36007					return err
36008				}
36009				fslstp.AuthenticationType = authenticationType
36010			}
36011		case "userName":
36012			if v != nil {
36013				var userName interface{}
36014				err = json.Unmarshal(*v, &userName)
36015				if err != nil {
36016					return err
36017				}
36018				fslstp.UserName = userName
36019			}
36020		case "password":
36021			if v != nil {
36022				password, err := unmarshalBasicSecretBase(*v)
36023				if err != nil {
36024					return err
36025				}
36026				fslstp.Password = password
36027			}
36028		case "encryptedCredential":
36029			if v != nil {
36030				var encryptedCredential interface{}
36031				err = json.Unmarshal(*v, &encryptedCredential)
36032				if err != nil {
36033					return err
36034				}
36035				fslstp.EncryptedCredential = encryptedCredential
36036			}
36037		case "enableSsl":
36038			if v != nil {
36039				var enableSsl interface{}
36040				err = json.Unmarshal(*v, &enableSsl)
36041				if err != nil {
36042					return err
36043				}
36044				fslstp.EnableSsl = enableSsl
36045			}
36046		case "enableServerCertificateValidation":
36047			if v != nil {
36048				var enableServerCertificateValidation interface{}
36049				err = json.Unmarshal(*v, &enableServerCertificateValidation)
36050				if err != nil {
36051					return err
36052				}
36053				fslstp.EnableServerCertificateValidation = enableServerCertificateValidation
36054			}
36055		}
36056	}
36057
36058	return nil
36059}
36060
36061// GetMetadataActivity activity to get metadata of dataset
36062type GetMetadataActivity struct {
36063	// GetMetadataActivityTypeProperties - GetMetadata activity properties.
36064	*GetMetadataActivityTypeProperties `json:"typeProperties,omitempty"`
36065	// LinkedServiceName - Linked service reference.
36066	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
36067	// Policy - Activity policy.
36068	Policy *ActivityPolicy `json:"policy,omitempty"`
36069	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
36070	AdditionalProperties map[string]interface{} `json:""`
36071	// Name - Activity name.
36072	Name *string `json:"name,omitempty"`
36073	// Description - Activity description.
36074	Description *string `json:"description,omitempty"`
36075	// DependsOn - Activity depends on condition.
36076	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
36077	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
36078	Type TypeBasicActivity `json:"type,omitempty"`
36079}
36080
36081// MarshalJSON is the custom marshaler for GetMetadataActivity.
36082func (gma GetMetadataActivity) MarshalJSON() ([]byte, error) {
36083	gma.Type = TypeGetMetadata
36084	objectMap := make(map[string]interface{})
36085	if gma.GetMetadataActivityTypeProperties != nil {
36086		objectMap["typeProperties"] = gma.GetMetadataActivityTypeProperties
36087	}
36088	if gma.LinkedServiceName != nil {
36089		objectMap["linkedServiceName"] = gma.LinkedServiceName
36090	}
36091	if gma.Policy != nil {
36092		objectMap["policy"] = gma.Policy
36093	}
36094	if gma.Name != nil {
36095		objectMap["name"] = gma.Name
36096	}
36097	if gma.Description != nil {
36098		objectMap["description"] = gma.Description
36099	}
36100	if gma.DependsOn != nil {
36101		objectMap["dependsOn"] = gma.DependsOn
36102	}
36103	if gma.Type != "" {
36104		objectMap["type"] = gma.Type
36105	}
36106	for k, v := range gma.AdditionalProperties {
36107		objectMap[k] = v
36108	}
36109	return json.Marshal(objectMap)
36110}
36111
36112// AsDatabricksNotebookActivity is the BasicActivity implementation for GetMetadataActivity.
36113func (gma GetMetadataActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
36114	return nil, false
36115}
36116
36117// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for GetMetadataActivity.
36118func (gma GetMetadataActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
36119	return nil, false
36120}
36121
36122// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for GetMetadataActivity.
36123func (gma GetMetadataActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
36124	return nil, false
36125}
36126
36127// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for GetMetadataActivity.
36128func (gma GetMetadataActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
36129	return nil, false
36130}
36131
36132// AsGetMetadataActivity is the BasicActivity implementation for GetMetadataActivity.
36133func (gma GetMetadataActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
36134	return &gma, true
36135}
36136
36137// AsWebActivity is the BasicActivity implementation for GetMetadataActivity.
36138func (gma GetMetadataActivity) AsWebActivity() (*WebActivity, bool) {
36139	return nil, false
36140}
36141
36142// AsLookupActivity is the BasicActivity implementation for GetMetadataActivity.
36143func (gma GetMetadataActivity) AsLookupActivity() (*LookupActivity, bool) {
36144	return nil, false
36145}
36146
36147// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for GetMetadataActivity.
36148func (gma GetMetadataActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
36149	return nil, false
36150}
36151
36152// AsCustomActivity is the BasicActivity implementation for GetMetadataActivity.
36153func (gma GetMetadataActivity) AsCustomActivity() (*CustomActivity, bool) {
36154	return nil, false
36155}
36156
36157// AsExecuteSSISPackageActivity is the BasicActivity implementation for GetMetadataActivity.
36158func (gma GetMetadataActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
36159	return nil, false
36160}
36161
36162// AsHDInsightSparkActivity is the BasicActivity implementation for GetMetadataActivity.
36163func (gma GetMetadataActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
36164	return nil, false
36165}
36166
36167// AsHDInsightStreamingActivity is the BasicActivity implementation for GetMetadataActivity.
36168func (gma GetMetadataActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
36169	return nil, false
36170}
36171
36172// AsHDInsightMapReduceActivity is the BasicActivity implementation for GetMetadataActivity.
36173func (gma GetMetadataActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
36174	return nil, false
36175}
36176
36177// AsHDInsightPigActivity is the BasicActivity implementation for GetMetadataActivity.
36178func (gma GetMetadataActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
36179	return nil, false
36180}
36181
36182// AsHDInsightHiveActivity is the BasicActivity implementation for GetMetadataActivity.
36183func (gma GetMetadataActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
36184	return nil, false
36185}
36186
36187// AsCopyActivity is the BasicActivity implementation for GetMetadataActivity.
36188func (gma GetMetadataActivity) AsCopyActivity() (*CopyActivity, bool) {
36189	return nil, false
36190}
36191
36192// AsExecutionActivity is the BasicActivity implementation for GetMetadataActivity.
36193func (gma GetMetadataActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
36194	return nil, false
36195}
36196
36197// AsBasicExecutionActivity is the BasicActivity implementation for GetMetadataActivity.
36198func (gma GetMetadataActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
36199	return &gma, true
36200}
36201
36202// AsFilterActivity is the BasicActivity implementation for GetMetadataActivity.
36203func (gma GetMetadataActivity) AsFilterActivity() (*FilterActivity, bool) {
36204	return nil, false
36205}
36206
36207// AsUntilActivity is the BasicActivity implementation for GetMetadataActivity.
36208func (gma GetMetadataActivity) AsUntilActivity() (*UntilActivity, bool) {
36209	return nil, false
36210}
36211
36212// AsWaitActivity is the BasicActivity implementation for GetMetadataActivity.
36213func (gma GetMetadataActivity) AsWaitActivity() (*WaitActivity, bool) {
36214	return nil, false
36215}
36216
36217// AsForEachActivity is the BasicActivity implementation for GetMetadataActivity.
36218func (gma GetMetadataActivity) AsForEachActivity() (*ForEachActivity, bool) {
36219	return nil, false
36220}
36221
36222// AsIfConditionActivity is the BasicActivity implementation for GetMetadataActivity.
36223func (gma GetMetadataActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
36224	return nil, false
36225}
36226
36227// AsExecutePipelineActivity is the BasicActivity implementation for GetMetadataActivity.
36228func (gma GetMetadataActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
36229	return nil, false
36230}
36231
36232// AsControlActivity is the BasicActivity implementation for GetMetadataActivity.
36233func (gma GetMetadataActivity) AsControlActivity() (*ControlActivity, bool) {
36234	return nil, false
36235}
36236
36237// AsBasicControlActivity is the BasicActivity implementation for GetMetadataActivity.
36238func (gma GetMetadataActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
36239	return nil, false
36240}
36241
36242// AsActivity is the BasicActivity implementation for GetMetadataActivity.
36243func (gma GetMetadataActivity) AsActivity() (*Activity, bool) {
36244	return nil, false
36245}
36246
36247// AsBasicActivity is the BasicActivity implementation for GetMetadataActivity.
36248func (gma GetMetadataActivity) AsBasicActivity() (BasicActivity, bool) {
36249	return &gma, true
36250}
36251
36252// UnmarshalJSON is the custom unmarshaler for GetMetadataActivity struct.
36253func (gma *GetMetadataActivity) UnmarshalJSON(body []byte) error {
36254	var m map[string]*json.RawMessage
36255	err := json.Unmarshal(body, &m)
36256	if err != nil {
36257		return err
36258	}
36259	for k, v := range m {
36260		switch k {
36261		case "typeProperties":
36262			if v != nil {
36263				var getMetadataActivityTypeProperties GetMetadataActivityTypeProperties
36264				err = json.Unmarshal(*v, &getMetadataActivityTypeProperties)
36265				if err != nil {
36266					return err
36267				}
36268				gma.GetMetadataActivityTypeProperties = &getMetadataActivityTypeProperties
36269			}
36270		case "linkedServiceName":
36271			if v != nil {
36272				var linkedServiceName LinkedServiceReference
36273				err = json.Unmarshal(*v, &linkedServiceName)
36274				if err != nil {
36275					return err
36276				}
36277				gma.LinkedServiceName = &linkedServiceName
36278			}
36279		case "policy":
36280			if v != nil {
36281				var policy ActivityPolicy
36282				err = json.Unmarshal(*v, &policy)
36283				if err != nil {
36284					return err
36285				}
36286				gma.Policy = &policy
36287			}
36288		default:
36289			if v != nil {
36290				var additionalProperties interface{}
36291				err = json.Unmarshal(*v, &additionalProperties)
36292				if err != nil {
36293					return err
36294				}
36295				if gma.AdditionalProperties == nil {
36296					gma.AdditionalProperties = make(map[string]interface{})
36297				}
36298				gma.AdditionalProperties[k] = additionalProperties
36299			}
36300		case "name":
36301			if v != nil {
36302				var name string
36303				err = json.Unmarshal(*v, &name)
36304				if err != nil {
36305					return err
36306				}
36307				gma.Name = &name
36308			}
36309		case "description":
36310			if v != nil {
36311				var description string
36312				err = json.Unmarshal(*v, &description)
36313				if err != nil {
36314					return err
36315				}
36316				gma.Description = &description
36317			}
36318		case "dependsOn":
36319			if v != nil {
36320				var dependsOn []ActivityDependency
36321				err = json.Unmarshal(*v, &dependsOn)
36322				if err != nil {
36323					return err
36324				}
36325				gma.DependsOn = &dependsOn
36326			}
36327		case "type":
36328			if v != nil {
36329				var typeVar TypeBasicActivity
36330				err = json.Unmarshal(*v, &typeVar)
36331				if err != nil {
36332					return err
36333				}
36334				gma.Type = typeVar
36335			}
36336		}
36337	}
36338
36339	return nil
36340}
36341
36342// GetMetadataActivityTypeProperties getMetadata activity properties.
36343type GetMetadataActivityTypeProperties struct {
36344	// Dataset - GetMetadata activity dataset reference.
36345	Dataset *DatasetReference `json:"dataset,omitempty"`
36346	// FieldList - Fields of metadata to get from dataset.
36347	FieldList *[]interface{} `json:"fieldList,omitempty"`
36348}
36349
36350// GoogleBigQueryLinkedService google BigQuery service linked service.
36351type GoogleBigQueryLinkedService struct {
36352	// GoogleBigQueryLinkedServiceTypeProperties - Google BigQuery service linked service properties.
36353	*GoogleBigQueryLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
36354	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
36355	AdditionalProperties map[string]interface{} `json:""`
36356	// ConnectVia - The integration runtime reference.
36357	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
36358	// Description - Linked service description.
36359	Description *string `json:"description,omitempty"`
36360	// Parameters - Parameters for linked service.
36361	Parameters map[string]*ParameterSpecification `json:"parameters"`
36362	// Annotations - List of tags that can be used for describing the Dataset.
36363	Annotations *[]interface{} `json:"annotations,omitempty"`
36364	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
36365	Type TypeBasicLinkedService `json:"type,omitempty"`
36366}
36367
36368// MarshalJSON is the custom marshaler for GoogleBigQueryLinkedService.
36369func (gbqls GoogleBigQueryLinkedService) MarshalJSON() ([]byte, error) {
36370	gbqls.Type = TypeGoogleBigQuery
36371	objectMap := make(map[string]interface{})
36372	if gbqls.GoogleBigQueryLinkedServiceTypeProperties != nil {
36373		objectMap["typeProperties"] = gbqls.GoogleBigQueryLinkedServiceTypeProperties
36374	}
36375	if gbqls.ConnectVia != nil {
36376		objectMap["connectVia"] = gbqls.ConnectVia
36377	}
36378	if gbqls.Description != nil {
36379		objectMap["description"] = gbqls.Description
36380	}
36381	if gbqls.Parameters != nil {
36382		objectMap["parameters"] = gbqls.Parameters
36383	}
36384	if gbqls.Annotations != nil {
36385		objectMap["annotations"] = gbqls.Annotations
36386	}
36387	if gbqls.Type != "" {
36388		objectMap["type"] = gbqls.Type
36389	}
36390	for k, v := range gbqls.AdditionalProperties {
36391		objectMap[k] = v
36392	}
36393	return json.Marshal(objectMap)
36394}
36395
36396// AsResponsysLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36397func (gbqls GoogleBigQueryLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
36398	return nil, false
36399}
36400
36401// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36402func (gbqls GoogleBigQueryLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
36403	return nil, false
36404}
36405
36406// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36407func (gbqls GoogleBigQueryLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
36408	return nil, false
36409}
36410
36411// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36412func (gbqls GoogleBigQueryLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
36413	return nil, false
36414}
36415
36416// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36417func (gbqls GoogleBigQueryLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
36418	return nil, false
36419}
36420
36421// AsNetezzaLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36422func (gbqls GoogleBigQueryLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
36423	return nil, false
36424}
36425
36426// AsVerticaLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36427func (gbqls GoogleBigQueryLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
36428	return nil, false
36429}
36430
36431// AsZohoLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36432func (gbqls GoogleBigQueryLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
36433	return nil, false
36434}
36435
36436// AsXeroLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36437func (gbqls GoogleBigQueryLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
36438	return nil, false
36439}
36440
36441// AsSquareLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36442func (gbqls GoogleBigQueryLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
36443	return nil, false
36444}
36445
36446// AsSparkLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36447func (gbqls GoogleBigQueryLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
36448	return nil, false
36449}
36450
36451// AsShopifyLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36452func (gbqls GoogleBigQueryLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
36453	return nil, false
36454}
36455
36456// AsServiceNowLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36457func (gbqls GoogleBigQueryLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
36458	return nil, false
36459}
36460
36461// AsQuickBooksLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36462func (gbqls GoogleBigQueryLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
36463	return nil, false
36464}
36465
36466// AsPrestoLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36467func (gbqls GoogleBigQueryLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
36468	return nil, false
36469}
36470
36471// AsPhoenixLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36472func (gbqls GoogleBigQueryLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
36473	return nil, false
36474}
36475
36476// AsPaypalLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36477func (gbqls GoogleBigQueryLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
36478	return nil, false
36479}
36480
36481// AsMarketoLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36482func (gbqls GoogleBigQueryLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
36483	return nil, false
36484}
36485
36486// AsMariaDBLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36487func (gbqls GoogleBigQueryLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
36488	return nil, false
36489}
36490
36491// AsMagentoLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36492func (gbqls GoogleBigQueryLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
36493	return nil, false
36494}
36495
36496// AsJiraLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36497func (gbqls GoogleBigQueryLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
36498	return nil, false
36499}
36500
36501// AsImpalaLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36502func (gbqls GoogleBigQueryLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
36503	return nil, false
36504}
36505
36506// AsHubspotLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36507func (gbqls GoogleBigQueryLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
36508	return nil, false
36509}
36510
36511// AsHiveLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36512func (gbqls GoogleBigQueryLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
36513	return nil, false
36514}
36515
36516// AsHBaseLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36517func (gbqls GoogleBigQueryLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
36518	return nil, false
36519}
36520
36521// AsGreenplumLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36522func (gbqls GoogleBigQueryLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
36523	return nil, false
36524}
36525
36526// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36527func (gbqls GoogleBigQueryLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
36528	return &gbqls, true
36529}
36530
36531// AsEloquaLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36532func (gbqls GoogleBigQueryLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
36533	return nil, false
36534}
36535
36536// AsDrillLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36537func (gbqls GoogleBigQueryLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
36538	return nil, false
36539}
36540
36541// AsCouchbaseLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36542func (gbqls GoogleBigQueryLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
36543	return nil, false
36544}
36545
36546// AsConcurLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36547func (gbqls GoogleBigQueryLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
36548	return nil, false
36549}
36550
36551// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36552func (gbqls GoogleBigQueryLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
36553	return nil, false
36554}
36555
36556// AsAmazonMWSLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36557func (gbqls GoogleBigQueryLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
36558	return nil, false
36559}
36560
36561// AsSapHanaLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36562func (gbqls GoogleBigQueryLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
36563	return nil, false
36564}
36565
36566// AsSapBWLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36567func (gbqls GoogleBigQueryLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
36568	return nil, false
36569}
36570
36571// AsSftpServerLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36572func (gbqls GoogleBigQueryLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
36573	return nil, false
36574}
36575
36576// AsFtpServerLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36577func (gbqls GoogleBigQueryLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
36578	return nil, false
36579}
36580
36581// AsHTTPLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36582func (gbqls GoogleBigQueryLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
36583	return nil, false
36584}
36585
36586// AsAzureSearchLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36587func (gbqls GoogleBigQueryLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
36588	return nil, false
36589}
36590
36591// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36592func (gbqls GoogleBigQueryLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
36593	return nil, false
36594}
36595
36596// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36597func (gbqls GoogleBigQueryLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
36598	return nil, false
36599}
36600
36601// AsAmazonS3LinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36602func (gbqls GoogleBigQueryLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
36603	return nil, false
36604}
36605
36606// AsSapEccLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36607func (gbqls GoogleBigQueryLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
36608	return nil, false
36609}
36610
36611// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36612func (gbqls GoogleBigQueryLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
36613	return nil, false
36614}
36615
36616// AsSalesforceLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36617func (gbqls GoogleBigQueryLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
36618	return nil, false
36619}
36620
36621// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36622func (gbqls GoogleBigQueryLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
36623	return nil, false
36624}
36625
36626// AsMongoDbLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36627func (gbqls GoogleBigQueryLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
36628	return nil, false
36629}
36630
36631// AsCassandraLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36632func (gbqls GoogleBigQueryLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
36633	return nil, false
36634}
36635
36636// AsWebLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36637func (gbqls GoogleBigQueryLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
36638	return nil, false
36639}
36640
36641// AsODataLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36642func (gbqls GoogleBigQueryLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
36643	return nil, false
36644}
36645
36646// AsHdfsLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36647func (gbqls GoogleBigQueryLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
36648	return nil, false
36649}
36650
36651// AsOdbcLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36652func (gbqls GoogleBigQueryLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
36653	return nil, false
36654}
36655
36656// AsAzureMLLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36657func (gbqls GoogleBigQueryLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
36658	return nil, false
36659}
36660
36661// AsTeradataLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36662func (gbqls GoogleBigQueryLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
36663	return nil, false
36664}
36665
36666// AsDb2LinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36667func (gbqls GoogleBigQueryLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
36668	return nil, false
36669}
36670
36671// AsSybaseLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36672func (gbqls GoogleBigQueryLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
36673	return nil, false
36674}
36675
36676// AsPostgreSQLLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36677func (gbqls GoogleBigQueryLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
36678	return nil, false
36679}
36680
36681// AsMySQLLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36682func (gbqls GoogleBigQueryLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
36683	return nil, false
36684}
36685
36686// AsAzureMySQLLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36687func (gbqls GoogleBigQueryLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
36688	return nil, false
36689}
36690
36691// AsOracleLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36692func (gbqls GoogleBigQueryLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
36693	return nil, false
36694}
36695
36696// AsFileServerLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36697func (gbqls GoogleBigQueryLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
36698	return nil, false
36699}
36700
36701// AsHDInsightLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36702func (gbqls GoogleBigQueryLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
36703	return nil, false
36704}
36705
36706// AsDynamicsLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36707func (gbqls GoogleBigQueryLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
36708	return nil, false
36709}
36710
36711// AsCosmosDbLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36712func (gbqls GoogleBigQueryLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
36713	return nil, false
36714}
36715
36716// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36717func (gbqls GoogleBigQueryLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
36718	return nil, false
36719}
36720
36721// AsAzureBatchLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36722func (gbqls GoogleBigQueryLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
36723	return nil, false
36724}
36725
36726// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36727func (gbqls GoogleBigQueryLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
36728	return nil, false
36729}
36730
36731// AsSQLServerLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36732func (gbqls GoogleBigQueryLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
36733	return nil, false
36734}
36735
36736// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36737func (gbqls GoogleBigQueryLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
36738	return nil, false
36739}
36740
36741// AsAzureStorageLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36742func (gbqls GoogleBigQueryLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
36743	return nil, false
36744}
36745
36746// AsLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36747func (gbqls GoogleBigQueryLinkedService) AsLinkedService() (*LinkedService, bool) {
36748	return nil, false
36749}
36750
36751// AsBasicLinkedService is the BasicLinkedService implementation for GoogleBigQueryLinkedService.
36752func (gbqls GoogleBigQueryLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
36753	return &gbqls, true
36754}
36755
36756// UnmarshalJSON is the custom unmarshaler for GoogleBigQueryLinkedService struct.
36757func (gbqls *GoogleBigQueryLinkedService) UnmarshalJSON(body []byte) error {
36758	var m map[string]*json.RawMessage
36759	err := json.Unmarshal(body, &m)
36760	if err != nil {
36761		return err
36762	}
36763	for k, v := range m {
36764		switch k {
36765		case "typeProperties":
36766			if v != nil {
36767				var googleBigQueryLinkedServiceTypeProperties GoogleBigQueryLinkedServiceTypeProperties
36768				err = json.Unmarshal(*v, &googleBigQueryLinkedServiceTypeProperties)
36769				if err != nil {
36770					return err
36771				}
36772				gbqls.GoogleBigQueryLinkedServiceTypeProperties = &googleBigQueryLinkedServiceTypeProperties
36773			}
36774		default:
36775			if v != nil {
36776				var additionalProperties interface{}
36777				err = json.Unmarshal(*v, &additionalProperties)
36778				if err != nil {
36779					return err
36780				}
36781				if gbqls.AdditionalProperties == nil {
36782					gbqls.AdditionalProperties = make(map[string]interface{})
36783				}
36784				gbqls.AdditionalProperties[k] = additionalProperties
36785			}
36786		case "connectVia":
36787			if v != nil {
36788				var connectVia IntegrationRuntimeReference
36789				err = json.Unmarshal(*v, &connectVia)
36790				if err != nil {
36791					return err
36792				}
36793				gbqls.ConnectVia = &connectVia
36794			}
36795		case "description":
36796			if v != nil {
36797				var description string
36798				err = json.Unmarshal(*v, &description)
36799				if err != nil {
36800					return err
36801				}
36802				gbqls.Description = &description
36803			}
36804		case "parameters":
36805			if v != nil {
36806				var parameters map[string]*ParameterSpecification
36807				err = json.Unmarshal(*v, &parameters)
36808				if err != nil {
36809					return err
36810				}
36811				gbqls.Parameters = parameters
36812			}
36813		case "annotations":
36814			if v != nil {
36815				var annotations []interface{}
36816				err = json.Unmarshal(*v, &annotations)
36817				if err != nil {
36818					return err
36819				}
36820				gbqls.Annotations = &annotations
36821			}
36822		case "type":
36823			if v != nil {
36824				var typeVar TypeBasicLinkedService
36825				err = json.Unmarshal(*v, &typeVar)
36826				if err != nil {
36827					return err
36828				}
36829				gbqls.Type = typeVar
36830			}
36831		}
36832	}
36833
36834	return nil
36835}
36836
36837// GoogleBigQueryLinkedServiceTypeProperties google BigQuery service linked service properties.
36838type GoogleBigQueryLinkedServiceTypeProperties struct {
36839	// Project - The default BigQuery project to query against.
36840	Project interface{} `json:"project,omitempty"`
36841	// AdditionalProjects - A comma-separated list of public BigQuery projects to access.
36842	AdditionalProjects interface{} `json:"additionalProjects,omitempty"`
36843	// RequestGoogleDriveScope - Whether to request access to Google Drive. Allowing Google Drive access enables support for federated tables that combine BigQuery data with data from Google Drive. The default value is false.
36844	RequestGoogleDriveScope interface{} `json:"requestGoogleDriveScope,omitempty"`
36845	// AuthenticationType - The OAuth 2.0 authentication mechanism used for authentication. ServiceAuthentication can only be used on self-hosted IR. Possible values include: 'ServiceAuthentication', 'UserAuthentication'
36846	AuthenticationType GoogleBigQueryAuthenticationType `json:"authenticationType,omitempty"`
36847	// RefreshToken - The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
36848	RefreshToken BasicSecretBase `json:"refreshToken,omitempty"`
36849	// ClientID - The client id of the google application used to acquire the refresh token.
36850	ClientID BasicSecretBase `json:"clientId,omitempty"`
36851	// ClientSecret - The client secret of the google application used to acquire the refresh token.
36852	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
36853	// Email - The service account email ID that is used for ServiceAuthentication and can only be used on self-hosted IR.
36854	Email interface{} `json:"email,omitempty"`
36855	// KeyFilePath - The full path to the .p12 key file that is used to authenticate the service account email address and can only be used on self-hosted IR.
36856	KeyFilePath interface{} `json:"keyFilePath,omitempty"`
36857	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
36858	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
36859	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
36860	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
36861	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
36862	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
36863}
36864
36865// UnmarshalJSON is the custom unmarshaler for GoogleBigQueryLinkedServiceTypeProperties struct.
36866func (gbqlstp *GoogleBigQueryLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
36867	var m map[string]*json.RawMessage
36868	err := json.Unmarshal(body, &m)
36869	if err != nil {
36870		return err
36871	}
36872	for k, v := range m {
36873		switch k {
36874		case "project":
36875			if v != nil {
36876				var project interface{}
36877				err = json.Unmarshal(*v, &project)
36878				if err != nil {
36879					return err
36880				}
36881				gbqlstp.Project = project
36882			}
36883		case "additionalProjects":
36884			if v != nil {
36885				var additionalProjects interface{}
36886				err = json.Unmarshal(*v, &additionalProjects)
36887				if err != nil {
36888					return err
36889				}
36890				gbqlstp.AdditionalProjects = additionalProjects
36891			}
36892		case "requestGoogleDriveScope":
36893			if v != nil {
36894				var requestGoogleDriveScope interface{}
36895				err = json.Unmarshal(*v, &requestGoogleDriveScope)
36896				if err != nil {
36897					return err
36898				}
36899				gbqlstp.RequestGoogleDriveScope = requestGoogleDriveScope
36900			}
36901		case "authenticationType":
36902			if v != nil {
36903				var authenticationType GoogleBigQueryAuthenticationType
36904				err = json.Unmarshal(*v, &authenticationType)
36905				if err != nil {
36906					return err
36907				}
36908				gbqlstp.AuthenticationType = authenticationType
36909			}
36910		case "refreshToken":
36911			if v != nil {
36912				refreshToken, err := unmarshalBasicSecretBase(*v)
36913				if err != nil {
36914					return err
36915				}
36916				gbqlstp.RefreshToken = refreshToken
36917			}
36918		case "clientId":
36919			if v != nil {
36920				clientID, err := unmarshalBasicSecretBase(*v)
36921				if err != nil {
36922					return err
36923				}
36924				gbqlstp.ClientID = clientID
36925			}
36926		case "clientSecret":
36927			if v != nil {
36928				clientSecret, err := unmarshalBasicSecretBase(*v)
36929				if err != nil {
36930					return err
36931				}
36932				gbqlstp.ClientSecret = clientSecret
36933			}
36934		case "email":
36935			if v != nil {
36936				var email interface{}
36937				err = json.Unmarshal(*v, &email)
36938				if err != nil {
36939					return err
36940				}
36941				gbqlstp.Email = email
36942			}
36943		case "keyFilePath":
36944			if v != nil {
36945				var keyFilePath interface{}
36946				err = json.Unmarshal(*v, &keyFilePath)
36947				if err != nil {
36948					return err
36949				}
36950				gbqlstp.KeyFilePath = keyFilePath
36951			}
36952		case "trustedCertPath":
36953			if v != nil {
36954				var trustedCertPath interface{}
36955				err = json.Unmarshal(*v, &trustedCertPath)
36956				if err != nil {
36957					return err
36958				}
36959				gbqlstp.TrustedCertPath = trustedCertPath
36960			}
36961		case "useSystemTrustStore":
36962			if v != nil {
36963				var useSystemTrustStore interface{}
36964				err = json.Unmarshal(*v, &useSystemTrustStore)
36965				if err != nil {
36966					return err
36967				}
36968				gbqlstp.UseSystemTrustStore = useSystemTrustStore
36969			}
36970		case "encryptedCredential":
36971			if v != nil {
36972				var encryptedCredential interface{}
36973				err = json.Unmarshal(*v, &encryptedCredential)
36974				if err != nil {
36975					return err
36976				}
36977				gbqlstp.EncryptedCredential = encryptedCredential
36978			}
36979		}
36980	}
36981
36982	return nil
36983}
36984
36985// GoogleBigQueryObjectDataset google BigQuery service dataset.
36986type GoogleBigQueryObjectDataset struct {
36987	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
36988	AdditionalProperties map[string]interface{} `json:""`
36989	// Description - Dataset description.
36990	Description *string `json:"description,omitempty"`
36991	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
36992	Structure interface{} `json:"structure,omitempty"`
36993	// LinkedServiceName - Linked service reference.
36994	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
36995	// Parameters - Parameters for dataset.
36996	Parameters map[string]*ParameterSpecification `json:"parameters"`
36997	// Annotations - List of tags that can be used for describing the Dataset.
36998	Annotations *[]interface{} `json:"annotations,omitempty"`
36999	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
37000	Type TypeBasicDataset `json:"type,omitempty"`
37001}
37002
37003// MarshalJSON is the custom marshaler for GoogleBigQueryObjectDataset.
37004func (gbqod GoogleBigQueryObjectDataset) MarshalJSON() ([]byte, error) {
37005	gbqod.Type = TypeGoogleBigQueryObject
37006	objectMap := make(map[string]interface{})
37007	if gbqod.Description != nil {
37008		objectMap["description"] = gbqod.Description
37009	}
37010	objectMap["structure"] = gbqod.Structure
37011	if gbqod.LinkedServiceName != nil {
37012		objectMap["linkedServiceName"] = gbqod.LinkedServiceName
37013	}
37014	if gbqod.Parameters != nil {
37015		objectMap["parameters"] = gbqod.Parameters
37016	}
37017	if gbqod.Annotations != nil {
37018		objectMap["annotations"] = gbqod.Annotations
37019	}
37020	if gbqod.Type != "" {
37021		objectMap["type"] = gbqod.Type
37022	}
37023	for k, v := range gbqod.AdditionalProperties {
37024		objectMap[k] = v
37025	}
37026	return json.Marshal(objectMap)
37027}
37028
37029// AsResponsysObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37030func (gbqod GoogleBigQueryObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
37031	return nil, false
37032}
37033
37034// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37035func (gbqod GoogleBigQueryObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
37036	return nil, false
37037}
37038
37039// AsVerticaTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37040func (gbqod GoogleBigQueryObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
37041	return nil, false
37042}
37043
37044// AsNetezzaTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37045func (gbqod GoogleBigQueryObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
37046	return nil, false
37047}
37048
37049// AsZohoObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37050func (gbqod GoogleBigQueryObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
37051	return nil, false
37052}
37053
37054// AsXeroObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37055func (gbqod GoogleBigQueryObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
37056	return nil, false
37057}
37058
37059// AsSquareObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37060func (gbqod GoogleBigQueryObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
37061	return nil, false
37062}
37063
37064// AsSparkObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37065func (gbqod GoogleBigQueryObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
37066	return nil, false
37067}
37068
37069// AsShopifyObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37070func (gbqod GoogleBigQueryObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
37071	return nil, false
37072}
37073
37074// AsServiceNowObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37075func (gbqod GoogleBigQueryObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
37076	return nil, false
37077}
37078
37079// AsQuickBooksObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37080func (gbqod GoogleBigQueryObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
37081	return nil, false
37082}
37083
37084// AsPrestoObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37085func (gbqod GoogleBigQueryObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
37086	return nil, false
37087}
37088
37089// AsPhoenixObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37090func (gbqod GoogleBigQueryObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
37091	return nil, false
37092}
37093
37094// AsPaypalObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37095func (gbqod GoogleBigQueryObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
37096	return nil, false
37097}
37098
37099// AsMarketoObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37100func (gbqod GoogleBigQueryObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
37101	return nil, false
37102}
37103
37104// AsMariaDBTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37105func (gbqod GoogleBigQueryObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
37106	return nil, false
37107}
37108
37109// AsMagentoObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37110func (gbqod GoogleBigQueryObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
37111	return nil, false
37112}
37113
37114// AsJiraObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37115func (gbqod GoogleBigQueryObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
37116	return nil, false
37117}
37118
37119// AsImpalaObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37120func (gbqod GoogleBigQueryObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
37121	return nil, false
37122}
37123
37124// AsHubspotObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37125func (gbqod GoogleBigQueryObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
37126	return nil, false
37127}
37128
37129// AsHiveObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37130func (gbqod GoogleBigQueryObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
37131	return nil, false
37132}
37133
37134// AsHBaseObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37135func (gbqod GoogleBigQueryObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
37136	return nil, false
37137}
37138
37139// AsGreenplumTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37140func (gbqod GoogleBigQueryObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
37141	return nil, false
37142}
37143
37144// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37145func (gbqod GoogleBigQueryObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
37146	return &gbqod, true
37147}
37148
37149// AsEloquaObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37150func (gbqod GoogleBigQueryObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
37151	return nil, false
37152}
37153
37154// AsDrillTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37155func (gbqod GoogleBigQueryObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
37156	return nil, false
37157}
37158
37159// AsCouchbaseTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37160func (gbqod GoogleBigQueryObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
37161	return nil, false
37162}
37163
37164// AsConcurObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37165func (gbqod GoogleBigQueryObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
37166	return nil, false
37167}
37168
37169// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37170func (gbqod GoogleBigQueryObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
37171	return nil, false
37172}
37173
37174// AsAmazonMWSObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37175func (gbqod GoogleBigQueryObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
37176	return nil, false
37177}
37178
37179// AsHTTPDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37180func (gbqod GoogleBigQueryObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
37181	return nil, false
37182}
37183
37184// AsAzureSearchIndexDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37185func (gbqod GoogleBigQueryObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
37186	return nil, false
37187}
37188
37189// AsWebTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37190func (gbqod GoogleBigQueryObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
37191	return nil, false
37192}
37193
37194// AsSQLServerTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37195func (gbqod GoogleBigQueryObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
37196	return nil, false
37197}
37198
37199// AsSapEccResourceDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37200func (gbqod GoogleBigQueryObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
37201	return nil, false
37202}
37203
37204// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37205func (gbqod GoogleBigQueryObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
37206	return nil, false
37207}
37208
37209// AsSalesforceObjectDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37210func (gbqod GoogleBigQueryObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
37211	return nil, false
37212}
37213
37214// AsRelationalTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37215func (gbqod GoogleBigQueryObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
37216	return nil, false
37217}
37218
37219// AsAzureMySQLTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37220func (gbqod GoogleBigQueryObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
37221	return nil, false
37222}
37223
37224// AsOracleTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37225func (gbqod GoogleBigQueryObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
37226	return nil, false
37227}
37228
37229// AsODataResourceDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37230func (gbqod GoogleBigQueryObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
37231	return nil, false
37232}
37233
37234// AsMongoDbCollectionDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37235func (gbqod GoogleBigQueryObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
37236	return nil, false
37237}
37238
37239// AsFileShareDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37240func (gbqod GoogleBigQueryObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
37241	return nil, false
37242}
37243
37244// AsAzureDataLakeStoreDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37245func (gbqod GoogleBigQueryObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
37246	return nil, false
37247}
37248
37249// AsDynamicsEntityDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37250func (gbqod GoogleBigQueryObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
37251	return nil, false
37252}
37253
37254// AsDocumentDbCollectionDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37255func (gbqod GoogleBigQueryObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
37256	return nil, false
37257}
37258
37259// AsCustomDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37260func (gbqod GoogleBigQueryObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
37261	return nil, false
37262}
37263
37264// AsCassandraTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37265func (gbqod GoogleBigQueryObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
37266	return nil, false
37267}
37268
37269// AsAzureSQLDWTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37270func (gbqod GoogleBigQueryObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
37271	return nil, false
37272}
37273
37274// AsAzureSQLTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37275func (gbqod GoogleBigQueryObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
37276	return nil, false
37277}
37278
37279// AsAzureTableDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37280func (gbqod GoogleBigQueryObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
37281	return nil, false
37282}
37283
37284// AsAzureBlobDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37285func (gbqod GoogleBigQueryObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
37286	return nil, false
37287}
37288
37289// AsAmazonS3Dataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37290func (gbqod GoogleBigQueryObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
37291	return nil, false
37292}
37293
37294// AsDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37295func (gbqod GoogleBigQueryObjectDataset) AsDataset() (*Dataset, bool) {
37296	return nil, false
37297}
37298
37299// AsBasicDataset is the BasicDataset implementation for GoogleBigQueryObjectDataset.
37300func (gbqod GoogleBigQueryObjectDataset) AsBasicDataset() (BasicDataset, bool) {
37301	return &gbqod, true
37302}
37303
37304// GoogleBigQuerySource a copy activity Google BigQuery service source.
37305type GoogleBigQuerySource struct {
37306	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
37307	Query interface{} `json:"query,omitempty"`
37308	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
37309	AdditionalProperties map[string]interface{} `json:""`
37310	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
37311	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
37312	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
37313	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
37314	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
37315	Type TypeBasicCopySource `json:"type,omitempty"`
37316}
37317
37318// MarshalJSON is the custom marshaler for GoogleBigQuerySource.
37319func (gbqs GoogleBigQuerySource) MarshalJSON() ([]byte, error) {
37320	gbqs.Type = TypeGoogleBigQuerySource
37321	objectMap := make(map[string]interface{})
37322	objectMap["query"] = gbqs.Query
37323	objectMap["sourceRetryCount"] = gbqs.SourceRetryCount
37324	objectMap["sourceRetryWait"] = gbqs.SourceRetryWait
37325	if gbqs.Type != "" {
37326		objectMap["type"] = gbqs.Type
37327	}
37328	for k, v := range gbqs.AdditionalProperties {
37329		objectMap[k] = v
37330	}
37331	return json.Marshal(objectMap)
37332}
37333
37334// AsAmazonRedshiftSource is the BasicCopySource implementation for GoogleBigQuerySource.
37335func (gbqs GoogleBigQuerySource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
37336	return nil, false
37337}
37338
37339// AsResponsysSource is the BasicCopySource implementation for GoogleBigQuerySource.
37340func (gbqs GoogleBigQuerySource) AsResponsysSource() (*ResponsysSource, bool) {
37341	return nil, false
37342}
37343
37344// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for GoogleBigQuerySource.
37345func (gbqs GoogleBigQuerySource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
37346	return nil, false
37347}
37348
37349// AsVerticaSource is the BasicCopySource implementation for GoogleBigQuerySource.
37350func (gbqs GoogleBigQuerySource) AsVerticaSource() (*VerticaSource, bool) {
37351	return nil, false
37352}
37353
37354// AsNetezzaSource is the BasicCopySource implementation for GoogleBigQuerySource.
37355func (gbqs GoogleBigQuerySource) AsNetezzaSource() (*NetezzaSource, bool) {
37356	return nil, false
37357}
37358
37359// AsZohoSource is the BasicCopySource implementation for GoogleBigQuerySource.
37360func (gbqs GoogleBigQuerySource) AsZohoSource() (*ZohoSource, bool) {
37361	return nil, false
37362}
37363
37364// AsXeroSource is the BasicCopySource implementation for GoogleBigQuerySource.
37365func (gbqs GoogleBigQuerySource) AsXeroSource() (*XeroSource, bool) {
37366	return nil, false
37367}
37368
37369// AsSquareSource is the BasicCopySource implementation for GoogleBigQuerySource.
37370func (gbqs GoogleBigQuerySource) AsSquareSource() (*SquareSource, bool) {
37371	return nil, false
37372}
37373
37374// AsSparkSource is the BasicCopySource implementation for GoogleBigQuerySource.
37375func (gbqs GoogleBigQuerySource) AsSparkSource() (*SparkSource, bool) {
37376	return nil, false
37377}
37378
37379// AsShopifySource is the BasicCopySource implementation for GoogleBigQuerySource.
37380func (gbqs GoogleBigQuerySource) AsShopifySource() (*ShopifySource, bool) {
37381	return nil, false
37382}
37383
37384// AsServiceNowSource is the BasicCopySource implementation for GoogleBigQuerySource.
37385func (gbqs GoogleBigQuerySource) AsServiceNowSource() (*ServiceNowSource, bool) {
37386	return nil, false
37387}
37388
37389// AsQuickBooksSource is the BasicCopySource implementation for GoogleBigQuerySource.
37390func (gbqs GoogleBigQuerySource) AsQuickBooksSource() (*QuickBooksSource, bool) {
37391	return nil, false
37392}
37393
37394// AsPrestoSource is the BasicCopySource implementation for GoogleBigQuerySource.
37395func (gbqs GoogleBigQuerySource) AsPrestoSource() (*PrestoSource, bool) {
37396	return nil, false
37397}
37398
37399// AsPhoenixSource is the BasicCopySource implementation for GoogleBigQuerySource.
37400func (gbqs GoogleBigQuerySource) AsPhoenixSource() (*PhoenixSource, bool) {
37401	return nil, false
37402}
37403
37404// AsPaypalSource is the BasicCopySource implementation for GoogleBigQuerySource.
37405func (gbqs GoogleBigQuerySource) AsPaypalSource() (*PaypalSource, bool) {
37406	return nil, false
37407}
37408
37409// AsMarketoSource is the BasicCopySource implementation for GoogleBigQuerySource.
37410func (gbqs GoogleBigQuerySource) AsMarketoSource() (*MarketoSource, bool) {
37411	return nil, false
37412}
37413
37414// AsMariaDBSource is the BasicCopySource implementation for GoogleBigQuerySource.
37415func (gbqs GoogleBigQuerySource) AsMariaDBSource() (*MariaDBSource, bool) {
37416	return nil, false
37417}
37418
37419// AsMagentoSource is the BasicCopySource implementation for GoogleBigQuerySource.
37420func (gbqs GoogleBigQuerySource) AsMagentoSource() (*MagentoSource, bool) {
37421	return nil, false
37422}
37423
37424// AsJiraSource is the BasicCopySource implementation for GoogleBigQuerySource.
37425func (gbqs GoogleBigQuerySource) AsJiraSource() (*JiraSource, bool) {
37426	return nil, false
37427}
37428
37429// AsImpalaSource is the BasicCopySource implementation for GoogleBigQuerySource.
37430func (gbqs GoogleBigQuerySource) AsImpalaSource() (*ImpalaSource, bool) {
37431	return nil, false
37432}
37433
37434// AsHubspotSource is the BasicCopySource implementation for GoogleBigQuerySource.
37435func (gbqs GoogleBigQuerySource) AsHubspotSource() (*HubspotSource, bool) {
37436	return nil, false
37437}
37438
37439// AsHiveSource is the BasicCopySource implementation for GoogleBigQuerySource.
37440func (gbqs GoogleBigQuerySource) AsHiveSource() (*HiveSource, bool) {
37441	return nil, false
37442}
37443
37444// AsHBaseSource is the BasicCopySource implementation for GoogleBigQuerySource.
37445func (gbqs GoogleBigQuerySource) AsHBaseSource() (*HBaseSource, bool) {
37446	return nil, false
37447}
37448
37449// AsGreenplumSource is the BasicCopySource implementation for GoogleBigQuerySource.
37450func (gbqs GoogleBigQuerySource) AsGreenplumSource() (*GreenplumSource, bool) {
37451	return nil, false
37452}
37453
37454// AsGoogleBigQuerySource is the BasicCopySource implementation for GoogleBigQuerySource.
37455func (gbqs GoogleBigQuerySource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
37456	return &gbqs, true
37457}
37458
37459// AsEloquaSource is the BasicCopySource implementation for GoogleBigQuerySource.
37460func (gbqs GoogleBigQuerySource) AsEloquaSource() (*EloquaSource, bool) {
37461	return nil, false
37462}
37463
37464// AsDrillSource is the BasicCopySource implementation for GoogleBigQuerySource.
37465func (gbqs GoogleBigQuerySource) AsDrillSource() (*DrillSource, bool) {
37466	return nil, false
37467}
37468
37469// AsCouchbaseSource is the BasicCopySource implementation for GoogleBigQuerySource.
37470func (gbqs GoogleBigQuerySource) AsCouchbaseSource() (*CouchbaseSource, bool) {
37471	return nil, false
37472}
37473
37474// AsConcurSource is the BasicCopySource implementation for GoogleBigQuerySource.
37475func (gbqs GoogleBigQuerySource) AsConcurSource() (*ConcurSource, bool) {
37476	return nil, false
37477}
37478
37479// AsAzurePostgreSQLSource is the BasicCopySource implementation for GoogleBigQuerySource.
37480func (gbqs GoogleBigQuerySource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
37481	return nil, false
37482}
37483
37484// AsAmazonMWSSource is the BasicCopySource implementation for GoogleBigQuerySource.
37485func (gbqs GoogleBigQuerySource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
37486	return nil, false
37487}
37488
37489// AsHTTPSource is the BasicCopySource implementation for GoogleBigQuerySource.
37490func (gbqs GoogleBigQuerySource) AsHTTPSource() (*HTTPSource, bool) {
37491	return nil, false
37492}
37493
37494// AsAzureDataLakeStoreSource is the BasicCopySource implementation for GoogleBigQuerySource.
37495func (gbqs GoogleBigQuerySource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
37496	return nil, false
37497}
37498
37499// AsMongoDbSource is the BasicCopySource implementation for GoogleBigQuerySource.
37500func (gbqs GoogleBigQuerySource) AsMongoDbSource() (*MongoDbSource, bool) {
37501	return nil, false
37502}
37503
37504// AsCassandraSource is the BasicCopySource implementation for GoogleBigQuerySource.
37505func (gbqs GoogleBigQuerySource) AsCassandraSource() (*CassandraSource, bool) {
37506	return nil, false
37507}
37508
37509// AsWebSource is the BasicCopySource implementation for GoogleBigQuerySource.
37510func (gbqs GoogleBigQuerySource) AsWebSource() (*WebSource, bool) {
37511	return nil, false
37512}
37513
37514// AsOracleSource is the BasicCopySource implementation for GoogleBigQuerySource.
37515func (gbqs GoogleBigQuerySource) AsOracleSource() (*OracleSource, bool) {
37516	return nil, false
37517}
37518
37519// AsAzureMySQLSource is the BasicCopySource implementation for GoogleBigQuerySource.
37520func (gbqs GoogleBigQuerySource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
37521	return nil, false
37522}
37523
37524// AsHdfsSource is the BasicCopySource implementation for GoogleBigQuerySource.
37525func (gbqs GoogleBigQuerySource) AsHdfsSource() (*HdfsSource, bool) {
37526	return nil, false
37527}
37528
37529// AsFileSystemSource is the BasicCopySource implementation for GoogleBigQuerySource.
37530func (gbqs GoogleBigQuerySource) AsFileSystemSource() (*FileSystemSource, bool) {
37531	return nil, false
37532}
37533
37534// AsSQLDWSource is the BasicCopySource implementation for GoogleBigQuerySource.
37535func (gbqs GoogleBigQuerySource) AsSQLDWSource() (*SQLDWSource, bool) {
37536	return nil, false
37537}
37538
37539// AsSQLSource is the BasicCopySource implementation for GoogleBigQuerySource.
37540func (gbqs GoogleBigQuerySource) AsSQLSource() (*SQLSource, bool) {
37541	return nil, false
37542}
37543
37544// AsSapEccSource is the BasicCopySource implementation for GoogleBigQuerySource.
37545func (gbqs GoogleBigQuerySource) AsSapEccSource() (*SapEccSource, bool) {
37546	return nil, false
37547}
37548
37549// AsSapCloudForCustomerSource is the BasicCopySource implementation for GoogleBigQuerySource.
37550func (gbqs GoogleBigQuerySource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
37551	return nil, false
37552}
37553
37554// AsSalesforceSource is the BasicCopySource implementation for GoogleBigQuerySource.
37555func (gbqs GoogleBigQuerySource) AsSalesforceSource() (*SalesforceSource, bool) {
37556	return nil, false
37557}
37558
37559// AsRelationalSource is the BasicCopySource implementation for GoogleBigQuerySource.
37560func (gbqs GoogleBigQuerySource) AsRelationalSource() (*RelationalSource, bool) {
37561	return nil, false
37562}
37563
37564// AsDynamicsSource is the BasicCopySource implementation for GoogleBigQuerySource.
37565func (gbqs GoogleBigQuerySource) AsDynamicsSource() (*DynamicsSource, bool) {
37566	return nil, false
37567}
37568
37569// AsDocumentDbCollectionSource is the BasicCopySource implementation for GoogleBigQuerySource.
37570func (gbqs GoogleBigQuerySource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
37571	return nil, false
37572}
37573
37574// AsBlobSource is the BasicCopySource implementation for GoogleBigQuerySource.
37575func (gbqs GoogleBigQuerySource) AsBlobSource() (*BlobSource, bool) {
37576	return nil, false
37577}
37578
37579// AsAzureTableSource is the BasicCopySource implementation for GoogleBigQuerySource.
37580func (gbqs GoogleBigQuerySource) AsAzureTableSource() (*AzureTableSource, bool) {
37581	return nil, false
37582}
37583
37584// AsCopySource is the BasicCopySource implementation for GoogleBigQuerySource.
37585func (gbqs GoogleBigQuerySource) AsCopySource() (*CopySource, bool) {
37586	return nil, false
37587}
37588
37589// AsBasicCopySource is the BasicCopySource implementation for GoogleBigQuerySource.
37590func (gbqs GoogleBigQuerySource) AsBasicCopySource() (BasicCopySource, bool) {
37591	return &gbqs, true
37592}
37593
37594// GreenplumLinkedService greenplum Database linked service.
37595type GreenplumLinkedService struct {
37596	// GreenplumLinkedServiceTypeProperties - Greenplum Database linked service properties.
37597	*GreenplumLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
37598	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
37599	AdditionalProperties map[string]interface{} `json:""`
37600	// ConnectVia - The integration runtime reference.
37601	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
37602	// Description - Linked service description.
37603	Description *string `json:"description,omitempty"`
37604	// Parameters - Parameters for linked service.
37605	Parameters map[string]*ParameterSpecification `json:"parameters"`
37606	// Annotations - List of tags that can be used for describing the Dataset.
37607	Annotations *[]interface{} `json:"annotations,omitempty"`
37608	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
37609	Type TypeBasicLinkedService `json:"type,omitempty"`
37610}
37611
37612// MarshalJSON is the custom marshaler for GreenplumLinkedService.
37613func (gls GreenplumLinkedService) MarshalJSON() ([]byte, error) {
37614	gls.Type = TypeGreenplum
37615	objectMap := make(map[string]interface{})
37616	if gls.GreenplumLinkedServiceTypeProperties != nil {
37617		objectMap["typeProperties"] = gls.GreenplumLinkedServiceTypeProperties
37618	}
37619	if gls.ConnectVia != nil {
37620		objectMap["connectVia"] = gls.ConnectVia
37621	}
37622	if gls.Description != nil {
37623		objectMap["description"] = gls.Description
37624	}
37625	if gls.Parameters != nil {
37626		objectMap["parameters"] = gls.Parameters
37627	}
37628	if gls.Annotations != nil {
37629		objectMap["annotations"] = gls.Annotations
37630	}
37631	if gls.Type != "" {
37632		objectMap["type"] = gls.Type
37633	}
37634	for k, v := range gls.AdditionalProperties {
37635		objectMap[k] = v
37636	}
37637	return json.Marshal(objectMap)
37638}
37639
37640// AsResponsysLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37641func (gls GreenplumLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
37642	return nil, false
37643}
37644
37645// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37646func (gls GreenplumLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
37647	return nil, false
37648}
37649
37650// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37651func (gls GreenplumLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
37652	return nil, false
37653}
37654
37655// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37656func (gls GreenplumLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
37657	return nil, false
37658}
37659
37660// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37661func (gls GreenplumLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
37662	return nil, false
37663}
37664
37665// AsNetezzaLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37666func (gls GreenplumLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
37667	return nil, false
37668}
37669
37670// AsVerticaLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37671func (gls GreenplumLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
37672	return nil, false
37673}
37674
37675// AsZohoLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37676func (gls GreenplumLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
37677	return nil, false
37678}
37679
37680// AsXeroLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37681func (gls GreenplumLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
37682	return nil, false
37683}
37684
37685// AsSquareLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37686func (gls GreenplumLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
37687	return nil, false
37688}
37689
37690// AsSparkLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37691func (gls GreenplumLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
37692	return nil, false
37693}
37694
37695// AsShopifyLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37696func (gls GreenplumLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
37697	return nil, false
37698}
37699
37700// AsServiceNowLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37701func (gls GreenplumLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
37702	return nil, false
37703}
37704
37705// AsQuickBooksLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37706func (gls GreenplumLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
37707	return nil, false
37708}
37709
37710// AsPrestoLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37711func (gls GreenplumLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
37712	return nil, false
37713}
37714
37715// AsPhoenixLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37716func (gls GreenplumLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
37717	return nil, false
37718}
37719
37720// AsPaypalLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37721func (gls GreenplumLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
37722	return nil, false
37723}
37724
37725// AsMarketoLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37726func (gls GreenplumLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
37727	return nil, false
37728}
37729
37730// AsMariaDBLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37731func (gls GreenplumLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
37732	return nil, false
37733}
37734
37735// AsMagentoLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37736func (gls GreenplumLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
37737	return nil, false
37738}
37739
37740// AsJiraLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37741func (gls GreenplumLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
37742	return nil, false
37743}
37744
37745// AsImpalaLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37746func (gls GreenplumLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
37747	return nil, false
37748}
37749
37750// AsHubspotLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37751func (gls GreenplumLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
37752	return nil, false
37753}
37754
37755// AsHiveLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37756func (gls GreenplumLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
37757	return nil, false
37758}
37759
37760// AsHBaseLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37761func (gls GreenplumLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
37762	return nil, false
37763}
37764
37765// AsGreenplumLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37766func (gls GreenplumLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
37767	return &gls, true
37768}
37769
37770// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37771func (gls GreenplumLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
37772	return nil, false
37773}
37774
37775// AsEloquaLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37776func (gls GreenplumLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
37777	return nil, false
37778}
37779
37780// AsDrillLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37781func (gls GreenplumLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
37782	return nil, false
37783}
37784
37785// AsCouchbaseLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37786func (gls GreenplumLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
37787	return nil, false
37788}
37789
37790// AsConcurLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37791func (gls GreenplumLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
37792	return nil, false
37793}
37794
37795// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37796func (gls GreenplumLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
37797	return nil, false
37798}
37799
37800// AsAmazonMWSLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37801func (gls GreenplumLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
37802	return nil, false
37803}
37804
37805// AsSapHanaLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37806func (gls GreenplumLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
37807	return nil, false
37808}
37809
37810// AsSapBWLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37811func (gls GreenplumLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
37812	return nil, false
37813}
37814
37815// AsSftpServerLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37816func (gls GreenplumLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
37817	return nil, false
37818}
37819
37820// AsFtpServerLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37821func (gls GreenplumLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
37822	return nil, false
37823}
37824
37825// AsHTTPLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37826func (gls GreenplumLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
37827	return nil, false
37828}
37829
37830// AsAzureSearchLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37831func (gls GreenplumLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
37832	return nil, false
37833}
37834
37835// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37836func (gls GreenplumLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
37837	return nil, false
37838}
37839
37840// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37841func (gls GreenplumLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
37842	return nil, false
37843}
37844
37845// AsAmazonS3LinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37846func (gls GreenplumLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
37847	return nil, false
37848}
37849
37850// AsSapEccLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37851func (gls GreenplumLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
37852	return nil, false
37853}
37854
37855// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37856func (gls GreenplumLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
37857	return nil, false
37858}
37859
37860// AsSalesforceLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37861func (gls GreenplumLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
37862	return nil, false
37863}
37864
37865// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37866func (gls GreenplumLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
37867	return nil, false
37868}
37869
37870// AsMongoDbLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37871func (gls GreenplumLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
37872	return nil, false
37873}
37874
37875// AsCassandraLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37876func (gls GreenplumLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
37877	return nil, false
37878}
37879
37880// AsWebLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37881func (gls GreenplumLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
37882	return nil, false
37883}
37884
37885// AsODataLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37886func (gls GreenplumLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
37887	return nil, false
37888}
37889
37890// AsHdfsLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37891func (gls GreenplumLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
37892	return nil, false
37893}
37894
37895// AsOdbcLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37896func (gls GreenplumLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
37897	return nil, false
37898}
37899
37900// AsAzureMLLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37901func (gls GreenplumLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
37902	return nil, false
37903}
37904
37905// AsTeradataLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37906func (gls GreenplumLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
37907	return nil, false
37908}
37909
37910// AsDb2LinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37911func (gls GreenplumLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
37912	return nil, false
37913}
37914
37915// AsSybaseLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37916func (gls GreenplumLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
37917	return nil, false
37918}
37919
37920// AsPostgreSQLLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37921func (gls GreenplumLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
37922	return nil, false
37923}
37924
37925// AsMySQLLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37926func (gls GreenplumLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
37927	return nil, false
37928}
37929
37930// AsAzureMySQLLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37931func (gls GreenplumLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
37932	return nil, false
37933}
37934
37935// AsOracleLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37936func (gls GreenplumLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
37937	return nil, false
37938}
37939
37940// AsFileServerLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37941func (gls GreenplumLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
37942	return nil, false
37943}
37944
37945// AsHDInsightLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37946func (gls GreenplumLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
37947	return nil, false
37948}
37949
37950// AsDynamicsLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37951func (gls GreenplumLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
37952	return nil, false
37953}
37954
37955// AsCosmosDbLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37956func (gls GreenplumLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
37957	return nil, false
37958}
37959
37960// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37961func (gls GreenplumLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
37962	return nil, false
37963}
37964
37965// AsAzureBatchLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37966func (gls GreenplumLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
37967	return nil, false
37968}
37969
37970// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37971func (gls GreenplumLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
37972	return nil, false
37973}
37974
37975// AsSQLServerLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37976func (gls GreenplumLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
37977	return nil, false
37978}
37979
37980// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37981func (gls GreenplumLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
37982	return nil, false
37983}
37984
37985// AsAzureStorageLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37986func (gls GreenplumLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
37987	return nil, false
37988}
37989
37990// AsLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37991func (gls GreenplumLinkedService) AsLinkedService() (*LinkedService, bool) {
37992	return nil, false
37993}
37994
37995// AsBasicLinkedService is the BasicLinkedService implementation for GreenplumLinkedService.
37996func (gls GreenplumLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
37997	return &gls, true
37998}
37999
38000// UnmarshalJSON is the custom unmarshaler for GreenplumLinkedService struct.
38001func (gls *GreenplumLinkedService) UnmarshalJSON(body []byte) error {
38002	var m map[string]*json.RawMessage
38003	err := json.Unmarshal(body, &m)
38004	if err != nil {
38005		return err
38006	}
38007	for k, v := range m {
38008		switch k {
38009		case "typeProperties":
38010			if v != nil {
38011				var greenplumLinkedServiceTypeProperties GreenplumLinkedServiceTypeProperties
38012				err = json.Unmarshal(*v, &greenplumLinkedServiceTypeProperties)
38013				if err != nil {
38014					return err
38015				}
38016				gls.GreenplumLinkedServiceTypeProperties = &greenplumLinkedServiceTypeProperties
38017			}
38018		default:
38019			if v != nil {
38020				var additionalProperties interface{}
38021				err = json.Unmarshal(*v, &additionalProperties)
38022				if err != nil {
38023					return err
38024				}
38025				if gls.AdditionalProperties == nil {
38026					gls.AdditionalProperties = make(map[string]interface{})
38027				}
38028				gls.AdditionalProperties[k] = additionalProperties
38029			}
38030		case "connectVia":
38031			if v != nil {
38032				var connectVia IntegrationRuntimeReference
38033				err = json.Unmarshal(*v, &connectVia)
38034				if err != nil {
38035					return err
38036				}
38037				gls.ConnectVia = &connectVia
38038			}
38039		case "description":
38040			if v != nil {
38041				var description string
38042				err = json.Unmarshal(*v, &description)
38043				if err != nil {
38044					return err
38045				}
38046				gls.Description = &description
38047			}
38048		case "parameters":
38049			if v != nil {
38050				var parameters map[string]*ParameterSpecification
38051				err = json.Unmarshal(*v, &parameters)
38052				if err != nil {
38053					return err
38054				}
38055				gls.Parameters = parameters
38056			}
38057		case "annotations":
38058			if v != nil {
38059				var annotations []interface{}
38060				err = json.Unmarshal(*v, &annotations)
38061				if err != nil {
38062					return err
38063				}
38064				gls.Annotations = &annotations
38065			}
38066		case "type":
38067			if v != nil {
38068				var typeVar TypeBasicLinkedService
38069				err = json.Unmarshal(*v, &typeVar)
38070				if err != nil {
38071					return err
38072				}
38073				gls.Type = typeVar
38074			}
38075		}
38076	}
38077
38078	return nil
38079}
38080
38081// GreenplumLinkedServiceTypeProperties greenplum Database linked service properties.
38082type GreenplumLinkedServiceTypeProperties struct {
38083	// ConnectionString - An ODBC connection string.
38084	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
38085	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
38086	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
38087}
38088
38089// UnmarshalJSON is the custom unmarshaler for GreenplumLinkedServiceTypeProperties struct.
38090func (glstp *GreenplumLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
38091	var m map[string]*json.RawMessage
38092	err := json.Unmarshal(body, &m)
38093	if err != nil {
38094		return err
38095	}
38096	for k, v := range m {
38097		switch k {
38098		case "connectionString":
38099			if v != nil {
38100				connectionString, err := unmarshalBasicSecretBase(*v)
38101				if err != nil {
38102					return err
38103				}
38104				glstp.ConnectionString = connectionString
38105			}
38106		case "encryptedCredential":
38107			if v != nil {
38108				var encryptedCredential interface{}
38109				err = json.Unmarshal(*v, &encryptedCredential)
38110				if err != nil {
38111					return err
38112				}
38113				glstp.EncryptedCredential = encryptedCredential
38114			}
38115		}
38116	}
38117
38118	return nil
38119}
38120
38121// GreenplumSource a copy activity Greenplum Database source.
38122type GreenplumSource struct {
38123	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
38124	Query interface{} `json:"query,omitempty"`
38125	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
38126	AdditionalProperties map[string]interface{} `json:""`
38127	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
38128	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
38129	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
38130	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
38131	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
38132	Type TypeBasicCopySource `json:"type,omitempty"`
38133}
38134
38135// MarshalJSON is the custom marshaler for GreenplumSource.
38136func (gs GreenplumSource) MarshalJSON() ([]byte, error) {
38137	gs.Type = TypeGreenplumSource
38138	objectMap := make(map[string]interface{})
38139	objectMap["query"] = gs.Query
38140	objectMap["sourceRetryCount"] = gs.SourceRetryCount
38141	objectMap["sourceRetryWait"] = gs.SourceRetryWait
38142	if gs.Type != "" {
38143		objectMap["type"] = gs.Type
38144	}
38145	for k, v := range gs.AdditionalProperties {
38146		objectMap[k] = v
38147	}
38148	return json.Marshal(objectMap)
38149}
38150
38151// AsAmazonRedshiftSource is the BasicCopySource implementation for GreenplumSource.
38152func (gs GreenplumSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
38153	return nil, false
38154}
38155
38156// AsResponsysSource is the BasicCopySource implementation for GreenplumSource.
38157func (gs GreenplumSource) AsResponsysSource() (*ResponsysSource, bool) {
38158	return nil, false
38159}
38160
38161// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for GreenplumSource.
38162func (gs GreenplumSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
38163	return nil, false
38164}
38165
38166// AsVerticaSource is the BasicCopySource implementation for GreenplumSource.
38167func (gs GreenplumSource) AsVerticaSource() (*VerticaSource, bool) {
38168	return nil, false
38169}
38170
38171// AsNetezzaSource is the BasicCopySource implementation for GreenplumSource.
38172func (gs GreenplumSource) AsNetezzaSource() (*NetezzaSource, bool) {
38173	return nil, false
38174}
38175
38176// AsZohoSource is the BasicCopySource implementation for GreenplumSource.
38177func (gs GreenplumSource) AsZohoSource() (*ZohoSource, bool) {
38178	return nil, false
38179}
38180
38181// AsXeroSource is the BasicCopySource implementation for GreenplumSource.
38182func (gs GreenplumSource) AsXeroSource() (*XeroSource, bool) {
38183	return nil, false
38184}
38185
38186// AsSquareSource is the BasicCopySource implementation for GreenplumSource.
38187func (gs GreenplumSource) AsSquareSource() (*SquareSource, bool) {
38188	return nil, false
38189}
38190
38191// AsSparkSource is the BasicCopySource implementation for GreenplumSource.
38192func (gs GreenplumSource) AsSparkSource() (*SparkSource, bool) {
38193	return nil, false
38194}
38195
38196// AsShopifySource is the BasicCopySource implementation for GreenplumSource.
38197func (gs GreenplumSource) AsShopifySource() (*ShopifySource, bool) {
38198	return nil, false
38199}
38200
38201// AsServiceNowSource is the BasicCopySource implementation for GreenplumSource.
38202func (gs GreenplumSource) AsServiceNowSource() (*ServiceNowSource, bool) {
38203	return nil, false
38204}
38205
38206// AsQuickBooksSource is the BasicCopySource implementation for GreenplumSource.
38207func (gs GreenplumSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
38208	return nil, false
38209}
38210
38211// AsPrestoSource is the BasicCopySource implementation for GreenplumSource.
38212func (gs GreenplumSource) AsPrestoSource() (*PrestoSource, bool) {
38213	return nil, false
38214}
38215
38216// AsPhoenixSource is the BasicCopySource implementation for GreenplumSource.
38217func (gs GreenplumSource) AsPhoenixSource() (*PhoenixSource, bool) {
38218	return nil, false
38219}
38220
38221// AsPaypalSource is the BasicCopySource implementation for GreenplumSource.
38222func (gs GreenplumSource) AsPaypalSource() (*PaypalSource, bool) {
38223	return nil, false
38224}
38225
38226// AsMarketoSource is the BasicCopySource implementation for GreenplumSource.
38227func (gs GreenplumSource) AsMarketoSource() (*MarketoSource, bool) {
38228	return nil, false
38229}
38230
38231// AsMariaDBSource is the BasicCopySource implementation for GreenplumSource.
38232func (gs GreenplumSource) AsMariaDBSource() (*MariaDBSource, bool) {
38233	return nil, false
38234}
38235
38236// AsMagentoSource is the BasicCopySource implementation for GreenplumSource.
38237func (gs GreenplumSource) AsMagentoSource() (*MagentoSource, bool) {
38238	return nil, false
38239}
38240
38241// AsJiraSource is the BasicCopySource implementation for GreenplumSource.
38242func (gs GreenplumSource) AsJiraSource() (*JiraSource, bool) {
38243	return nil, false
38244}
38245
38246// AsImpalaSource is the BasicCopySource implementation for GreenplumSource.
38247func (gs GreenplumSource) AsImpalaSource() (*ImpalaSource, bool) {
38248	return nil, false
38249}
38250
38251// AsHubspotSource is the BasicCopySource implementation for GreenplumSource.
38252func (gs GreenplumSource) AsHubspotSource() (*HubspotSource, bool) {
38253	return nil, false
38254}
38255
38256// AsHiveSource is the BasicCopySource implementation for GreenplumSource.
38257func (gs GreenplumSource) AsHiveSource() (*HiveSource, bool) {
38258	return nil, false
38259}
38260
38261// AsHBaseSource is the BasicCopySource implementation for GreenplumSource.
38262func (gs GreenplumSource) AsHBaseSource() (*HBaseSource, bool) {
38263	return nil, false
38264}
38265
38266// AsGreenplumSource is the BasicCopySource implementation for GreenplumSource.
38267func (gs GreenplumSource) AsGreenplumSource() (*GreenplumSource, bool) {
38268	return &gs, true
38269}
38270
38271// AsGoogleBigQuerySource is the BasicCopySource implementation for GreenplumSource.
38272func (gs GreenplumSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
38273	return nil, false
38274}
38275
38276// AsEloquaSource is the BasicCopySource implementation for GreenplumSource.
38277func (gs GreenplumSource) AsEloquaSource() (*EloquaSource, bool) {
38278	return nil, false
38279}
38280
38281// AsDrillSource is the BasicCopySource implementation for GreenplumSource.
38282func (gs GreenplumSource) AsDrillSource() (*DrillSource, bool) {
38283	return nil, false
38284}
38285
38286// AsCouchbaseSource is the BasicCopySource implementation for GreenplumSource.
38287func (gs GreenplumSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
38288	return nil, false
38289}
38290
38291// AsConcurSource is the BasicCopySource implementation for GreenplumSource.
38292func (gs GreenplumSource) AsConcurSource() (*ConcurSource, bool) {
38293	return nil, false
38294}
38295
38296// AsAzurePostgreSQLSource is the BasicCopySource implementation for GreenplumSource.
38297func (gs GreenplumSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
38298	return nil, false
38299}
38300
38301// AsAmazonMWSSource is the BasicCopySource implementation for GreenplumSource.
38302func (gs GreenplumSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
38303	return nil, false
38304}
38305
38306// AsHTTPSource is the BasicCopySource implementation for GreenplumSource.
38307func (gs GreenplumSource) AsHTTPSource() (*HTTPSource, bool) {
38308	return nil, false
38309}
38310
38311// AsAzureDataLakeStoreSource is the BasicCopySource implementation for GreenplumSource.
38312func (gs GreenplumSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
38313	return nil, false
38314}
38315
38316// AsMongoDbSource is the BasicCopySource implementation for GreenplumSource.
38317func (gs GreenplumSource) AsMongoDbSource() (*MongoDbSource, bool) {
38318	return nil, false
38319}
38320
38321// AsCassandraSource is the BasicCopySource implementation for GreenplumSource.
38322func (gs GreenplumSource) AsCassandraSource() (*CassandraSource, bool) {
38323	return nil, false
38324}
38325
38326// AsWebSource is the BasicCopySource implementation for GreenplumSource.
38327func (gs GreenplumSource) AsWebSource() (*WebSource, bool) {
38328	return nil, false
38329}
38330
38331// AsOracleSource is the BasicCopySource implementation for GreenplumSource.
38332func (gs GreenplumSource) AsOracleSource() (*OracleSource, bool) {
38333	return nil, false
38334}
38335
38336// AsAzureMySQLSource is the BasicCopySource implementation for GreenplumSource.
38337func (gs GreenplumSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
38338	return nil, false
38339}
38340
38341// AsHdfsSource is the BasicCopySource implementation for GreenplumSource.
38342func (gs GreenplumSource) AsHdfsSource() (*HdfsSource, bool) {
38343	return nil, false
38344}
38345
38346// AsFileSystemSource is the BasicCopySource implementation for GreenplumSource.
38347func (gs GreenplumSource) AsFileSystemSource() (*FileSystemSource, bool) {
38348	return nil, false
38349}
38350
38351// AsSQLDWSource is the BasicCopySource implementation for GreenplumSource.
38352func (gs GreenplumSource) AsSQLDWSource() (*SQLDWSource, bool) {
38353	return nil, false
38354}
38355
38356// AsSQLSource is the BasicCopySource implementation for GreenplumSource.
38357func (gs GreenplumSource) AsSQLSource() (*SQLSource, bool) {
38358	return nil, false
38359}
38360
38361// AsSapEccSource is the BasicCopySource implementation for GreenplumSource.
38362func (gs GreenplumSource) AsSapEccSource() (*SapEccSource, bool) {
38363	return nil, false
38364}
38365
38366// AsSapCloudForCustomerSource is the BasicCopySource implementation for GreenplumSource.
38367func (gs GreenplumSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
38368	return nil, false
38369}
38370
38371// AsSalesforceSource is the BasicCopySource implementation for GreenplumSource.
38372func (gs GreenplumSource) AsSalesforceSource() (*SalesforceSource, bool) {
38373	return nil, false
38374}
38375
38376// AsRelationalSource is the BasicCopySource implementation for GreenplumSource.
38377func (gs GreenplumSource) AsRelationalSource() (*RelationalSource, bool) {
38378	return nil, false
38379}
38380
38381// AsDynamicsSource is the BasicCopySource implementation for GreenplumSource.
38382func (gs GreenplumSource) AsDynamicsSource() (*DynamicsSource, bool) {
38383	return nil, false
38384}
38385
38386// AsDocumentDbCollectionSource is the BasicCopySource implementation for GreenplumSource.
38387func (gs GreenplumSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
38388	return nil, false
38389}
38390
38391// AsBlobSource is the BasicCopySource implementation for GreenplumSource.
38392func (gs GreenplumSource) AsBlobSource() (*BlobSource, bool) {
38393	return nil, false
38394}
38395
38396// AsAzureTableSource is the BasicCopySource implementation for GreenplumSource.
38397func (gs GreenplumSource) AsAzureTableSource() (*AzureTableSource, bool) {
38398	return nil, false
38399}
38400
38401// AsCopySource is the BasicCopySource implementation for GreenplumSource.
38402func (gs GreenplumSource) AsCopySource() (*CopySource, bool) {
38403	return nil, false
38404}
38405
38406// AsBasicCopySource is the BasicCopySource implementation for GreenplumSource.
38407func (gs GreenplumSource) AsBasicCopySource() (BasicCopySource, bool) {
38408	return &gs, true
38409}
38410
38411// GreenplumTableDataset greenplum Database dataset.
38412type GreenplumTableDataset struct {
38413	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
38414	AdditionalProperties map[string]interface{} `json:""`
38415	// Description - Dataset description.
38416	Description *string `json:"description,omitempty"`
38417	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
38418	Structure interface{} `json:"structure,omitempty"`
38419	// LinkedServiceName - Linked service reference.
38420	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
38421	// Parameters - Parameters for dataset.
38422	Parameters map[string]*ParameterSpecification `json:"parameters"`
38423	// Annotations - List of tags that can be used for describing the Dataset.
38424	Annotations *[]interface{} `json:"annotations,omitempty"`
38425	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
38426	Type TypeBasicDataset `json:"type,omitempty"`
38427}
38428
38429// MarshalJSON is the custom marshaler for GreenplumTableDataset.
38430func (gtd GreenplumTableDataset) MarshalJSON() ([]byte, error) {
38431	gtd.Type = TypeGreenplumTable
38432	objectMap := make(map[string]interface{})
38433	if gtd.Description != nil {
38434		objectMap["description"] = gtd.Description
38435	}
38436	objectMap["structure"] = gtd.Structure
38437	if gtd.LinkedServiceName != nil {
38438		objectMap["linkedServiceName"] = gtd.LinkedServiceName
38439	}
38440	if gtd.Parameters != nil {
38441		objectMap["parameters"] = gtd.Parameters
38442	}
38443	if gtd.Annotations != nil {
38444		objectMap["annotations"] = gtd.Annotations
38445	}
38446	if gtd.Type != "" {
38447		objectMap["type"] = gtd.Type
38448	}
38449	for k, v := range gtd.AdditionalProperties {
38450		objectMap[k] = v
38451	}
38452	return json.Marshal(objectMap)
38453}
38454
38455// AsResponsysObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38456func (gtd GreenplumTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
38457	return nil, false
38458}
38459
38460// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38461func (gtd GreenplumTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
38462	return nil, false
38463}
38464
38465// AsVerticaTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38466func (gtd GreenplumTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
38467	return nil, false
38468}
38469
38470// AsNetezzaTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38471func (gtd GreenplumTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
38472	return nil, false
38473}
38474
38475// AsZohoObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38476func (gtd GreenplumTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
38477	return nil, false
38478}
38479
38480// AsXeroObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38481func (gtd GreenplumTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
38482	return nil, false
38483}
38484
38485// AsSquareObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38486func (gtd GreenplumTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
38487	return nil, false
38488}
38489
38490// AsSparkObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38491func (gtd GreenplumTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
38492	return nil, false
38493}
38494
38495// AsShopifyObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38496func (gtd GreenplumTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
38497	return nil, false
38498}
38499
38500// AsServiceNowObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38501func (gtd GreenplumTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
38502	return nil, false
38503}
38504
38505// AsQuickBooksObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38506func (gtd GreenplumTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
38507	return nil, false
38508}
38509
38510// AsPrestoObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38511func (gtd GreenplumTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
38512	return nil, false
38513}
38514
38515// AsPhoenixObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38516func (gtd GreenplumTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
38517	return nil, false
38518}
38519
38520// AsPaypalObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38521func (gtd GreenplumTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
38522	return nil, false
38523}
38524
38525// AsMarketoObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38526func (gtd GreenplumTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
38527	return nil, false
38528}
38529
38530// AsMariaDBTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38531func (gtd GreenplumTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
38532	return nil, false
38533}
38534
38535// AsMagentoObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38536func (gtd GreenplumTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
38537	return nil, false
38538}
38539
38540// AsJiraObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38541func (gtd GreenplumTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
38542	return nil, false
38543}
38544
38545// AsImpalaObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38546func (gtd GreenplumTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
38547	return nil, false
38548}
38549
38550// AsHubspotObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38551func (gtd GreenplumTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
38552	return nil, false
38553}
38554
38555// AsHiveObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38556func (gtd GreenplumTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
38557	return nil, false
38558}
38559
38560// AsHBaseObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38561func (gtd GreenplumTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
38562	return nil, false
38563}
38564
38565// AsGreenplumTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38566func (gtd GreenplumTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
38567	return &gtd, true
38568}
38569
38570// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38571func (gtd GreenplumTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
38572	return nil, false
38573}
38574
38575// AsEloquaObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38576func (gtd GreenplumTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
38577	return nil, false
38578}
38579
38580// AsDrillTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38581func (gtd GreenplumTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
38582	return nil, false
38583}
38584
38585// AsCouchbaseTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38586func (gtd GreenplumTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
38587	return nil, false
38588}
38589
38590// AsConcurObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38591func (gtd GreenplumTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
38592	return nil, false
38593}
38594
38595// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38596func (gtd GreenplumTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
38597	return nil, false
38598}
38599
38600// AsAmazonMWSObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38601func (gtd GreenplumTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
38602	return nil, false
38603}
38604
38605// AsHTTPDataset is the BasicDataset implementation for GreenplumTableDataset.
38606func (gtd GreenplumTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
38607	return nil, false
38608}
38609
38610// AsAzureSearchIndexDataset is the BasicDataset implementation for GreenplumTableDataset.
38611func (gtd GreenplumTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
38612	return nil, false
38613}
38614
38615// AsWebTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38616func (gtd GreenplumTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
38617	return nil, false
38618}
38619
38620// AsSQLServerTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38621func (gtd GreenplumTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
38622	return nil, false
38623}
38624
38625// AsSapEccResourceDataset is the BasicDataset implementation for GreenplumTableDataset.
38626func (gtd GreenplumTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
38627	return nil, false
38628}
38629
38630// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for GreenplumTableDataset.
38631func (gtd GreenplumTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
38632	return nil, false
38633}
38634
38635// AsSalesforceObjectDataset is the BasicDataset implementation for GreenplumTableDataset.
38636func (gtd GreenplumTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
38637	return nil, false
38638}
38639
38640// AsRelationalTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38641func (gtd GreenplumTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
38642	return nil, false
38643}
38644
38645// AsAzureMySQLTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38646func (gtd GreenplumTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
38647	return nil, false
38648}
38649
38650// AsOracleTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38651func (gtd GreenplumTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
38652	return nil, false
38653}
38654
38655// AsODataResourceDataset is the BasicDataset implementation for GreenplumTableDataset.
38656func (gtd GreenplumTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
38657	return nil, false
38658}
38659
38660// AsMongoDbCollectionDataset is the BasicDataset implementation for GreenplumTableDataset.
38661func (gtd GreenplumTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
38662	return nil, false
38663}
38664
38665// AsFileShareDataset is the BasicDataset implementation for GreenplumTableDataset.
38666func (gtd GreenplumTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
38667	return nil, false
38668}
38669
38670// AsAzureDataLakeStoreDataset is the BasicDataset implementation for GreenplumTableDataset.
38671func (gtd GreenplumTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
38672	return nil, false
38673}
38674
38675// AsDynamicsEntityDataset is the BasicDataset implementation for GreenplumTableDataset.
38676func (gtd GreenplumTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
38677	return nil, false
38678}
38679
38680// AsDocumentDbCollectionDataset is the BasicDataset implementation for GreenplumTableDataset.
38681func (gtd GreenplumTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
38682	return nil, false
38683}
38684
38685// AsCustomDataset is the BasicDataset implementation for GreenplumTableDataset.
38686func (gtd GreenplumTableDataset) AsCustomDataset() (*CustomDataset, bool) {
38687	return nil, false
38688}
38689
38690// AsCassandraTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38691func (gtd GreenplumTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
38692	return nil, false
38693}
38694
38695// AsAzureSQLDWTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38696func (gtd GreenplumTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
38697	return nil, false
38698}
38699
38700// AsAzureSQLTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38701func (gtd GreenplumTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
38702	return nil, false
38703}
38704
38705// AsAzureTableDataset is the BasicDataset implementation for GreenplumTableDataset.
38706func (gtd GreenplumTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
38707	return nil, false
38708}
38709
38710// AsAzureBlobDataset is the BasicDataset implementation for GreenplumTableDataset.
38711func (gtd GreenplumTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
38712	return nil, false
38713}
38714
38715// AsAmazonS3Dataset is the BasicDataset implementation for GreenplumTableDataset.
38716func (gtd GreenplumTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
38717	return nil, false
38718}
38719
38720// AsDataset is the BasicDataset implementation for GreenplumTableDataset.
38721func (gtd GreenplumTableDataset) AsDataset() (*Dataset, bool) {
38722	return nil, false
38723}
38724
38725// AsBasicDataset is the BasicDataset implementation for GreenplumTableDataset.
38726func (gtd GreenplumTableDataset) AsBasicDataset() (BasicDataset, bool) {
38727	return &gtd, true
38728}
38729
38730// HBaseLinkedService hBase server linked service.
38731type HBaseLinkedService struct {
38732	// HBaseLinkedServiceTypeProperties - HBase server linked service properties.
38733	*HBaseLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
38734	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
38735	AdditionalProperties map[string]interface{} `json:""`
38736	// ConnectVia - The integration runtime reference.
38737	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
38738	// Description - Linked service description.
38739	Description *string `json:"description,omitempty"`
38740	// Parameters - Parameters for linked service.
38741	Parameters map[string]*ParameterSpecification `json:"parameters"`
38742	// Annotations - List of tags that can be used for describing the Dataset.
38743	Annotations *[]interface{} `json:"annotations,omitempty"`
38744	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
38745	Type TypeBasicLinkedService `json:"type,omitempty"`
38746}
38747
38748// MarshalJSON is the custom marshaler for HBaseLinkedService.
38749func (hbls HBaseLinkedService) MarshalJSON() ([]byte, error) {
38750	hbls.Type = TypeHBase
38751	objectMap := make(map[string]interface{})
38752	if hbls.HBaseLinkedServiceTypeProperties != nil {
38753		objectMap["typeProperties"] = hbls.HBaseLinkedServiceTypeProperties
38754	}
38755	if hbls.ConnectVia != nil {
38756		objectMap["connectVia"] = hbls.ConnectVia
38757	}
38758	if hbls.Description != nil {
38759		objectMap["description"] = hbls.Description
38760	}
38761	if hbls.Parameters != nil {
38762		objectMap["parameters"] = hbls.Parameters
38763	}
38764	if hbls.Annotations != nil {
38765		objectMap["annotations"] = hbls.Annotations
38766	}
38767	if hbls.Type != "" {
38768		objectMap["type"] = hbls.Type
38769	}
38770	for k, v := range hbls.AdditionalProperties {
38771		objectMap[k] = v
38772	}
38773	return json.Marshal(objectMap)
38774}
38775
38776// AsResponsysLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38777func (hbls HBaseLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
38778	return nil, false
38779}
38780
38781// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38782func (hbls HBaseLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
38783	return nil, false
38784}
38785
38786// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38787func (hbls HBaseLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
38788	return nil, false
38789}
38790
38791// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38792func (hbls HBaseLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
38793	return nil, false
38794}
38795
38796// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38797func (hbls HBaseLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
38798	return nil, false
38799}
38800
38801// AsNetezzaLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38802func (hbls HBaseLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
38803	return nil, false
38804}
38805
38806// AsVerticaLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38807func (hbls HBaseLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
38808	return nil, false
38809}
38810
38811// AsZohoLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38812func (hbls HBaseLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
38813	return nil, false
38814}
38815
38816// AsXeroLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38817func (hbls HBaseLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
38818	return nil, false
38819}
38820
38821// AsSquareLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38822func (hbls HBaseLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
38823	return nil, false
38824}
38825
38826// AsSparkLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38827func (hbls HBaseLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
38828	return nil, false
38829}
38830
38831// AsShopifyLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38832func (hbls HBaseLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
38833	return nil, false
38834}
38835
38836// AsServiceNowLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38837func (hbls HBaseLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
38838	return nil, false
38839}
38840
38841// AsQuickBooksLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38842func (hbls HBaseLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
38843	return nil, false
38844}
38845
38846// AsPrestoLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38847func (hbls HBaseLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
38848	return nil, false
38849}
38850
38851// AsPhoenixLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38852func (hbls HBaseLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
38853	return nil, false
38854}
38855
38856// AsPaypalLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38857func (hbls HBaseLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
38858	return nil, false
38859}
38860
38861// AsMarketoLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38862func (hbls HBaseLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
38863	return nil, false
38864}
38865
38866// AsMariaDBLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38867func (hbls HBaseLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
38868	return nil, false
38869}
38870
38871// AsMagentoLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38872func (hbls HBaseLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
38873	return nil, false
38874}
38875
38876// AsJiraLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38877func (hbls HBaseLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
38878	return nil, false
38879}
38880
38881// AsImpalaLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38882func (hbls HBaseLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
38883	return nil, false
38884}
38885
38886// AsHubspotLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38887func (hbls HBaseLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
38888	return nil, false
38889}
38890
38891// AsHiveLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38892func (hbls HBaseLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
38893	return nil, false
38894}
38895
38896// AsHBaseLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38897func (hbls HBaseLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
38898	return &hbls, true
38899}
38900
38901// AsGreenplumLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38902func (hbls HBaseLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
38903	return nil, false
38904}
38905
38906// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38907func (hbls HBaseLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
38908	return nil, false
38909}
38910
38911// AsEloquaLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38912func (hbls HBaseLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
38913	return nil, false
38914}
38915
38916// AsDrillLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38917func (hbls HBaseLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
38918	return nil, false
38919}
38920
38921// AsCouchbaseLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38922func (hbls HBaseLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
38923	return nil, false
38924}
38925
38926// AsConcurLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38927func (hbls HBaseLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
38928	return nil, false
38929}
38930
38931// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38932func (hbls HBaseLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
38933	return nil, false
38934}
38935
38936// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38937func (hbls HBaseLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
38938	return nil, false
38939}
38940
38941// AsSapHanaLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38942func (hbls HBaseLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
38943	return nil, false
38944}
38945
38946// AsSapBWLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38947func (hbls HBaseLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
38948	return nil, false
38949}
38950
38951// AsSftpServerLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38952func (hbls HBaseLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
38953	return nil, false
38954}
38955
38956// AsFtpServerLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38957func (hbls HBaseLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
38958	return nil, false
38959}
38960
38961// AsHTTPLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38962func (hbls HBaseLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
38963	return nil, false
38964}
38965
38966// AsAzureSearchLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38967func (hbls HBaseLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
38968	return nil, false
38969}
38970
38971// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38972func (hbls HBaseLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
38973	return nil, false
38974}
38975
38976// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38977func (hbls HBaseLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
38978	return nil, false
38979}
38980
38981// AsAmazonS3LinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38982func (hbls HBaseLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
38983	return nil, false
38984}
38985
38986// AsSapEccLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38987func (hbls HBaseLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
38988	return nil, false
38989}
38990
38991// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38992func (hbls HBaseLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
38993	return nil, false
38994}
38995
38996// AsSalesforceLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
38997func (hbls HBaseLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
38998	return nil, false
38999}
39000
39001// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39002func (hbls HBaseLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
39003	return nil, false
39004}
39005
39006// AsMongoDbLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39007func (hbls HBaseLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
39008	return nil, false
39009}
39010
39011// AsCassandraLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39012func (hbls HBaseLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
39013	return nil, false
39014}
39015
39016// AsWebLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39017func (hbls HBaseLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
39018	return nil, false
39019}
39020
39021// AsODataLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39022func (hbls HBaseLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
39023	return nil, false
39024}
39025
39026// AsHdfsLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39027func (hbls HBaseLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
39028	return nil, false
39029}
39030
39031// AsOdbcLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39032func (hbls HBaseLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
39033	return nil, false
39034}
39035
39036// AsAzureMLLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39037func (hbls HBaseLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
39038	return nil, false
39039}
39040
39041// AsTeradataLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39042func (hbls HBaseLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
39043	return nil, false
39044}
39045
39046// AsDb2LinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39047func (hbls HBaseLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
39048	return nil, false
39049}
39050
39051// AsSybaseLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39052func (hbls HBaseLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
39053	return nil, false
39054}
39055
39056// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39057func (hbls HBaseLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
39058	return nil, false
39059}
39060
39061// AsMySQLLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39062func (hbls HBaseLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
39063	return nil, false
39064}
39065
39066// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39067func (hbls HBaseLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
39068	return nil, false
39069}
39070
39071// AsOracleLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39072func (hbls HBaseLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
39073	return nil, false
39074}
39075
39076// AsFileServerLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39077func (hbls HBaseLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
39078	return nil, false
39079}
39080
39081// AsHDInsightLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39082func (hbls HBaseLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
39083	return nil, false
39084}
39085
39086// AsDynamicsLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39087func (hbls HBaseLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
39088	return nil, false
39089}
39090
39091// AsCosmosDbLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39092func (hbls HBaseLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
39093	return nil, false
39094}
39095
39096// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39097func (hbls HBaseLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
39098	return nil, false
39099}
39100
39101// AsAzureBatchLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39102func (hbls HBaseLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
39103	return nil, false
39104}
39105
39106// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39107func (hbls HBaseLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
39108	return nil, false
39109}
39110
39111// AsSQLServerLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39112func (hbls HBaseLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
39113	return nil, false
39114}
39115
39116// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39117func (hbls HBaseLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
39118	return nil, false
39119}
39120
39121// AsAzureStorageLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39122func (hbls HBaseLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
39123	return nil, false
39124}
39125
39126// AsLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39127func (hbls HBaseLinkedService) AsLinkedService() (*LinkedService, bool) {
39128	return nil, false
39129}
39130
39131// AsBasicLinkedService is the BasicLinkedService implementation for HBaseLinkedService.
39132func (hbls HBaseLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
39133	return &hbls, true
39134}
39135
39136// UnmarshalJSON is the custom unmarshaler for HBaseLinkedService struct.
39137func (hbls *HBaseLinkedService) UnmarshalJSON(body []byte) error {
39138	var m map[string]*json.RawMessage
39139	err := json.Unmarshal(body, &m)
39140	if err != nil {
39141		return err
39142	}
39143	for k, v := range m {
39144		switch k {
39145		case "typeProperties":
39146			if v != nil {
39147				var hBaseLinkedServiceTypeProperties HBaseLinkedServiceTypeProperties
39148				err = json.Unmarshal(*v, &hBaseLinkedServiceTypeProperties)
39149				if err != nil {
39150					return err
39151				}
39152				hbls.HBaseLinkedServiceTypeProperties = &hBaseLinkedServiceTypeProperties
39153			}
39154		default:
39155			if v != nil {
39156				var additionalProperties interface{}
39157				err = json.Unmarshal(*v, &additionalProperties)
39158				if err != nil {
39159					return err
39160				}
39161				if hbls.AdditionalProperties == nil {
39162					hbls.AdditionalProperties = make(map[string]interface{})
39163				}
39164				hbls.AdditionalProperties[k] = additionalProperties
39165			}
39166		case "connectVia":
39167			if v != nil {
39168				var connectVia IntegrationRuntimeReference
39169				err = json.Unmarshal(*v, &connectVia)
39170				if err != nil {
39171					return err
39172				}
39173				hbls.ConnectVia = &connectVia
39174			}
39175		case "description":
39176			if v != nil {
39177				var description string
39178				err = json.Unmarshal(*v, &description)
39179				if err != nil {
39180					return err
39181				}
39182				hbls.Description = &description
39183			}
39184		case "parameters":
39185			if v != nil {
39186				var parameters map[string]*ParameterSpecification
39187				err = json.Unmarshal(*v, &parameters)
39188				if err != nil {
39189					return err
39190				}
39191				hbls.Parameters = parameters
39192			}
39193		case "annotations":
39194			if v != nil {
39195				var annotations []interface{}
39196				err = json.Unmarshal(*v, &annotations)
39197				if err != nil {
39198					return err
39199				}
39200				hbls.Annotations = &annotations
39201			}
39202		case "type":
39203			if v != nil {
39204				var typeVar TypeBasicLinkedService
39205				err = json.Unmarshal(*v, &typeVar)
39206				if err != nil {
39207					return err
39208				}
39209				hbls.Type = typeVar
39210			}
39211		}
39212	}
39213
39214	return nil
39215}
39216
39217// HBaseLinkedServiceTypeProperties hBase server linked service properties.
39218type HBaseLinkedServiceTypeProperties struct {
39219	// Host - The IP address or host name of the HBase server. (i.e. 192.168.222.160)
39220	Host interface{} `json:"host,omitempty"`
39221	// Port - The TCP port that the HBase instance uses to listen for client connections. The default value is 9090.
39222	Port interface{} `json:"port,omitempty"`
39223	// HTTPPath - The partial URL corresponding to the HBase server. (i.e. /gateway/sandbox/hbase/version)
39224	HTTPPath interface{} `json:"httpPath,omitempty"`
39225	// AuthenticationType - The authentication mechanism to use to connect to the HBase server. Possible values include: 'HBaseAuthenticationTypeAnonymous', 'HBaseAuthenticationTypeBasic'
39226	AuthenticationType HBaseAuthenticationType `json:"authenticationType,omitempty"`
39227	// Username - The user name used to connect to the HBase instance.
39228	Username interface{} `json:"username,omitempty"`
39229	// Password - The password corresponding to the user name.
39230	Password BasicSecretBase `json:"password,omitempty"`
39231	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
39232	EnableSsl interface{} `json:"enableSsl,omitempty"`
39233	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
39234	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
39235	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
39236	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
39237	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
39238	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
39239	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
39240	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
39241}
39242
39243// UnmarshalJSON is the custom unmarshaler for HBaseLinkedServiceTypeProperties struct.
39244func (hblstp *HBaseLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
39245	var m map[string]*json.RawMessage
39246	err := json.Unmarshal(body, &m)
39247	if err != nil {
39248		return err
39249	}
39250	for k, v := range m {
39251		switch k {
39252		case "host":
39253			if v != nil {
39254				var host interface{}
39255				err = json.Unmarshal(*v, &host)
39256				if err != nil {
39257					return err
39258				}
39259				hblstp.Host = host
39260			}
39261		case "port":
39262			if v != nil {
39263				var port interface{}
39264				err = json.Unmarshal(*v, &port)
39265				if err != nil {
39266					return err
39267				}
39268				hblstp.Port = port
39269			}
39270		case "httpPath":
39271			if v != nil {
39272				var HTTPPath interface{}
39273				err = json.Unmarshal(*v, &HTTPPath)
39274				if err != nil {
39275					return err
39276				}
39277				hblstp.HTTPPath = HTTPPath
39278			}
39279		case "authenticationType":
39280			if v != nil {
39281				var authenticationType HBaseAuthenticationType
39282				err = json.Unmarshal(*v, &authenticationType)
39283				if err != nil {
39284					return err
39285				}
39286				hblstp.AuthenticationType = authenticationType
39287			}
39288		case "username":
39289			if v != nil {
39290				var username interface{}
39291				err = json.Unmarshal(*v, &username)
39292				if err != nil {
39293					return err
39294				}
39295				hblstp.Username = username
39296			}
39297		case "password":
39298			if v != nil {
39299				password, err := unmarshalBasicSecretBase(*v)
39300				if err != nil {
39301					return err
39302				}
39303				hblstp.Password = password
39304			}
39305		case "enableSsl":
39306			if v != nil {
39307				var enableSsl interface{}
39308				err = json.Unmarshal(*v, &enableSsl)
39309				if err != nil {
39310					return err
39311				}
39312				hblstp.EnableSsl = enableSsl
39313			}
39314		case "trustedCertPath":
39315			if v != nil {
39316				var trustedCertPath interface{}
39317				err = json.Unmarshal(*v, &trustedCertPath)
39318				if err != nil {
39319					return err
39320				}
39321				hblstp.TrustedCertPath = trustedCertPath
39322			}
39323		case "allowHostNameCNMismatch":
39324			if v != nil {
39325				var allowHostNameCNMismatch interface{}
39326				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
39327				if err != nil {
39328					return err
39329				}
39330				hblstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
39331			}
39332		case "allowSelfSignedServerCert":
39333			if v != nil {
39334				var allowSelfSignedServerCert interface{}
39335				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
39336				if err != nil {
39337					return err
39338				}
39339				hblstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
39340			}
39341		case "encryptedCredential":
39342			if v != nil {
39343				var encryptedCredential interface{}
39344				err = json.Unmarshal(*v, &encryptedCredential)
39345				if err != nil {
39346					return err
39347				}
39348				hblstp.EncryptedCredential = encryptedCredential
39349			}
39350		}
39351	}
39352
39353	return nil
39354}
39355
39356// HBaseObjectDataset hBase server dataset.
39357type HBaseObjectDataset struct {
39358	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
39359	AdditionalProperties map[string]interface{} `json:""`
39360	// Description - Dataset description.
39361	Description *string `json:"description,omitempty"`
39362	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
39363	Structure interface{} `json:"structure,omitempty"`
39364	// LinkedServiceName - Linked service reference.
39365	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
39366	// Parameters - Parameters for dataset.
39367	Parameters map[string]*ParameterSpecification `json:"parameters"`
39368	// Annotations - List of tags that can be used for describing the Dataset.
39369	Annotations *[]interface{} `json:"annotations,omitempty"`
39370	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
39371	Type TypeBasicDataset `json:"type,omitempty"`
39372}
39373
39374// MarshalJSON is the custom marshaler for HBaseObjectDataset.
39375func (hbod HBaseObjectDataset) MarshalJSON() ([]byte, error) {
39376	hbod.Type = TypeHBaseObject
39377	objectMap := make(map[string]interface{})
39378	if hbod.Description != nil {
39379		objectMap["description"] = hbod.Description
39380	}
39381	objectMap["structure"] = hbod.Structure
39382	if hbod.LinkedServiceName != nil {
39383		objectMap["linkedServiceName"] = hbod.LinkedServiceName
39384	}
39385	if hbod.Parameters != nil {
39386		objectMap["parameters"] = hbod.Parameters
39387	}
39388	if hbod.Annotations != nil {
39389		objectMap["annotations"] = hbod.Annotations
39390	}
39391	if hbod.Type != "" {
39392		objectMap["type"] = hbod.Type
39393	}
39394	for k, v := range hbod.AdditionalProperties {
39395		objectMap[k] = v
39396	}
39397	return json.Marshal(objectMap)
39398}
39399
39400// AsResponsysObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39401func (hbod HBaseObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
39402	return nil, false
39403}
39404
39405// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39406func (hbod HBaseObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
39407	return nil, false
39408}
39409
39410// AsVerticaTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39411func (hbod HBaseObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
39412	return nil, false
39413}
39414
39415// AsNetezzaTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39416func (hbod HBaseObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
39417	return nil, false
39418}
39419
39420// AsZohoObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39421func (hbod HBaseObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
39422	return nil, false
39423}
39424
39425// AsXeroObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39426func (hbod HBaseObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
39427	return nil, false
39428}
39429
39430// AsSquareObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39431func (hbod HBaseObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
39432	return nil, false
39433}
39434
39435// AsSparkObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39436func (hbod HBaseObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
39437	return nil, false
39438}
39439
39440// AsShopifyObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39441func (hbod HBaseObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
39442	return nil, false
39443}
39444
39445// AsServiceNowObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39446func (hbod HBaseObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
39447	return nil, false
39448}
39449
39450// AsQuickBooksObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39451func (hbod HBaseObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
39452	return nil, false
39453}
39454
39455// AsPrestoObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39456func (hbod HBaseObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
39457	return nil, false
39458}
39459
39460// AsPhoenixObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39461func (hbod HBaseObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
39462	return nil, false
39463}
39464
39465// AsPaypalObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39466func (hbod HBaseObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
39467	return nil, false
39468}
39469
39470// AsMarketoObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39471func (hbod HBaseObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
39472	return nil, false
39473}
39474
39475// AsMariaDBTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39476func (hbod HBaseObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
39477	return nil, false
39478}
39479
39480// AsMagentoObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39481func (hbod HBaseObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
39482	return nil, false
39483}
39484
39485// AsJiraObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39486func (hbod HBaseObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
39487	return nil, false
39488}
39489
39490// AsImpalaObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39491func (hbod HBaseObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
39492	return nil, false
39493}
39494
39495// AsHubspotObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39496func (hbod HBaseObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
39497	return nil, false
39498}
39499
39500// AsHiveObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39501func (hbod HBaseObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
39502	return nil, false
39503}
39504
39505// AsHBaseObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39506func (hbod HBaseObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
39507	return &hbod, true
39508}
39509
39510// AsGreenplumTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39511func (hbod HBaseObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
39512	return nil, false
39513}
39514
39515// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39516func (hbod HBaseObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
39517	return nil, false
39518}
39519
39520// AsEloquaObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39521func (hbod HBaseObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
39522	return nil, false
39523}
39524
39525// AsDrillTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39526func (hbod HBaseObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
39527	return nil, false
39528}
39529
39530// AsCouchbaseTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39531func (hbod HBaseObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
39532	return nil, false
39533}
39534
39535// AsConcurObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39536func (hbod HBaseObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
39537	return nil, false
39538}
39539
39540// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39541func (hbod HBaseObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
39542	return nil, false
39543}
39544
39545// AsAmazonMWSObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39546func (hbod HBaseObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
39547	return nil, false
39548}
39549
39550// AsHTTPDataset is the BasicDataset implementation for HBaseObjectDataset.
39551func (hbod HBaseObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
39552	return nil, false
39553}
39554
39555// AsAzureSearchIndexDataset is the BasicDataset implementation for HBaseObjectDataset.
39556func (hbod HBaseObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
39557	return nil, false
39558}
39559
39560// AsWebTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39561func (hbod HBaseObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
39562	return nil, false
39563}
39564
39565// AsSQLServerTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39566func (hbod HBaseObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
39567	return nil, false
39568}
39569
39570// AsSapEccResourceDataset is the BasicDataset implementation for HBaseObjectDataset.
39571func (hbod HBaseObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
39572	return nil, false
39573}
39574
39575// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for HBaseObjectDataset.
39576func (hbod HBaseObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
39577	return nil, false
39578}
39579
39580// AsSalesforceObjectDataset is the BasicDataset implementation for HBaseObjectDataset.
39581func (hbod HBaseObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
39582	return nil, false
39583}
39584
39585// AsRelationalTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39586func (hbod HBaseObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
39587	return nil, false
39588}
39589
39590// AsAzureMySQLTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39591func (hbod HBaseObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
39592	return nil, false
39593}
39594
39595// AsOracleTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39596func (hbod HBaseObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
39597	return nil, false
39598}
39599
39600// AsODataResourceDataset is the BasicDataset implementation for HBaseObjectDataset.
39601func (hbod HBaseObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
39602	return nil, false
39603}
39604
39605// AsMongoDbCollectionDataset is the BasicDataset implementation for HBaseObjectDataset.
39606func (hbod HBaseObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
39607	return nil, false
39608}
39609
39610// AsFileShareDataset is the BasicDataset implementation for HBaseObjectDataset.
39611func (hbod HBaseObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
39612	return nil, false
39613}
39614
39615// AsAzureDataLakeStoreDataset is the BasicDataset implementation for HBaseObjectDataset.
39616func (hbod HBaseObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
39617	return nil, false
39618}
39619
39620// AsDynamicsEntityDataset is the BasicDataset implementation for HBaseObjectDataset.
39621func (hbod HBaseObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
39622	return nil, false
39623}
39624
39625// AsDocumentDbCollectionDataset is the BasicDataset implementation for HBaseObjectDataset.
39626func (hbod HBaseObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
39627	return nil, false
39628}
39629
39630// AsCustomDataset is the BasicDataset implementation for HBaseObjectDataset.
39631func (hbod HBaseObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
39632	return nil, false
39633}
39634
39635// AsCassandraTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39636func (hbod HBaseObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
39637	return nil, false
39638}
39639
39640// AsAzureSQLDWTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39641func (hbod HBaseObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
39642	return nil, false
39643}
39644
39645// AsAzureSQLTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39646func (hbod HBaseObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
39647	return nil, false
39648}
39649
39650// AsAzureTableDataset is the BasicDataset implementation for HBaseObjectDataset.
39651func (hbod HBaseObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
39652	return nil, false
39653}
39654
39655// AsAzureBlobDataset is the BasicDataset implementation for HBaseObjectDataset.
39656func (hbod HBaseObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
39657	return nil, false
39658}
39659
39660// AsAmazonS3Dataset is the BasicDataset implementation for HBaseObjectDataset.
39661func (hbod HBaseObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
39662	return nil, false
39663}
39664
39665// AsDataset is the BasicDataset implementation for HBaseObjectDataset.
39666func (hbod HBaseObjectDataset) AsDataset() (*Dataset, bool) {
39667	return nil, false
39668}
39669
39670// AsBasicDataset is the BasicDataset implementation for HBaseObjectDataset.
39671func (hbod HBaseObjectDataset) AsBasicDataset() (BasicDataset, bool) {
39672	return &hbod, true
39673}
39674
39675// HBaseSource a copy activity HBase server source.
39676type HBaseSource struct {
39677	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
39678	Query interface{} `json:"query,omitempty"`
39679	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
39680	AdditionalProperties map[string]interface{} `json:""`
39681	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
39682	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
39683	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
39684	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
39685	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
39686	Type TypeBasicCopySource `json:"type,omitempty"`
39687}
39688
39689// MarshalJSON is the custom marshaler for HBaseSource.
39690func (hbs HBaseSource) MarshalJSON() ([]byte, error) {
39691	hbs.Type = TypeHBaseSource
39692	objectMap := make(map[string]interface{})
39693	objectMap["query"] = hbs.Query
39694	objectMap["sourceRetryCount"] = hbs.SourceRetryCount
39695	objectMap["sourceRetryWait"] = hbs.SourceRetryWait
39696	if hbs.Type != "" {
39697		objectMap["type"] = hbs.Type
39698	}
39699	for k, v := range hbs.AdditionalProperties {
39700		objectMap[k] = v
39701	}
39702	return json.Marshal(objectMap)
39703}
39704
39705// AsAmazonRedshiftSource is the BasicCopySource implementation for HBaseSource.
39706func (hbs HBaseSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
39707	return nil, false
39708}
39709
39710// AsResponsysSource is the BasicCopySource implementation for HBaseSource.
39711func (hbs HBaseSource) AsResponsysSource() (*ResponsysSource, bool) {
39712	return nil, false
39713}
39714
39715// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for HBaseSource.
39716func (hbs HBaseSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
39717	return nil, false
39718}
39719
39720// AsVerticaSource is the BasicCopySource implementation for HBaseSource.
39721func (hbs HBaseSource) AsVerticaSource() (*VerticaSource, bool) {
39722	return nil, false
39723}
39724
39725// AsNetezzaSource is the BasicCopySource implementation for HBaseSource.
39726func (hbs HBaseSource) AsNetezzaSource() (*NetezzaSource, bool) {
39727	return nil, false
39728}
39729
39730// AsZohoSource is the BasicCopySource implementation for HBaseSource.
39731func (hbs HBaseSource) AsZohoSource() (*ZohoSource, bool) {
39732	return nil, false
39733}
39734
39735// AsXeroSource is the BasicCopySource implementation for HBaseSource.
39736func (hbs HBaseSource) AsXeroSource() (*XeroSource, bool) {
39737	return nil, false
39738}
39739
39740// AsSquareSource is the BasicCopySource implementation for HBaseSource.
39741func (hbs HBaseSource) AsSquareSource() (*SquareSource, bool) {
39742	return nil, false
39743}
39744
39745// AsSparkSource is the BasicCopySource implementation for HBaseSource.
39746func (hbs HBaseSource) AsSparkSource() (*SparkSource, bool) {
39747	return nil, false
39748}
39749
39750// AsShopifySource is the BasicCopySource implementation for HBaseSource.
39751func (hbs HBaseSource) AsShopifySource() (*ShopifySource, bool) {
39752	return nil, false
39753}
39754
39755// AsServiceNowSource is the BasicCopySource implementation for HBaseSource.
39756func (hbs HBaseSource) AsServiceNowSource() (*ServiceNowSource, bool) {
39757	return nil, false
39758}
39759
39760// AsQuickBooksSource is the BasicCopySource implementation for HBaseSource.
39761func (hbs HBaseSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
39762	return nil, false
39763}
39764
39765// AsPrestoSource is the BasicCopySource implementation for HBaseSource.
39766func (hbs HBaseSource) AsPrestoSource() (*PrestoSource, bool) {
39767	return nil, false
39768}
39769
39770// AsPhoenixSource is the BasicCopySource implementation for HBaseSource.
39771func (hbs HBaseSource) AsPhoenixSource() (*PhoenixSource, bool) {
39772	return nil, false
39773}
39774
39775// AsPaypalSource is the BasicCopySource implementation for HBaseSource.
39776func (hbs HBaseSource) AsPaypalSource() (*PaypalSource, bool) {
39777	return nil, false
39778}
39779
39780// AsMarketoSource is the BasicCopySource implementation for HBaseSource.
39781func (hbs HBaseSource) AsMarketoSource() (*MarketoSource, bool) {
39782	return nil, false
39783}
39784
39785// AsMariaDBSource is the BasicCopySource implementation for HBaseSource.
39786func (hbs HBaseSource) AsMariaDBSource() (*MariaDBSource, bool) {
39787	return nil, false
39788}
39789
39790// AsMagentoSource is the BasicCopySource implementation for HBaseSource.
39791func (hbs HBaseSource) AsMagentoSource() (*MagentoSource, bool) {
39792	return nil, false
39793}
39794
39795// AsJiraSource is the BasicCopySource implementation for HBaseSource.
39796func (hbs HBaseSource) AsJiraSource() (*JiraSource, bool) {
39797	return nil, false
39798}
39799
39800// AsImpalaSource is the BasicCopySource implementation for HBaseSource.
39801func (hbs HBaseSource) AsImpalaSource() (*ImpalaSource, bool) {
39802	return nil, false
39803}
39804
39805// AsHubspotSource is the BasicCopySource implementation for HBaseSource.
39806func (hbs HBaseSource) AsHubspotSource() (*HubspotSource, bool) {
39807	return nil, false
39808}
39809
39810// AsHiveSource is the BasicCopySource implementation for HBaseSource.
39811func (hbs HBaseSource) AsHiveSource() (*HiveSource, bool) {
39812	return nil, false
39813}
39814
39815// AsHBaseSource is the BasicCopySource implementation for HBaseSource.
39816func (hbs HBaseSource) AsHBaseSource() (*HBaseSource, bool) {
39817	return &hbs, true
39818}
39819
39820// AsGreenplumSource is the BasicCopySource implementation for HBaseSource.
39821func (hbs HBaseSource) AsGreenplumSource() (*GreenplumSource, bool) {
39822	return nil, false
39823}
39824
39825// AsGoogleBigQuerySource is the BasicCopySource implementation for HBaseSource.
39826func (hbs HBaseSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
39827	return nil, false
39828}
39829
39830// AsEloquaSource is the BasicCopySource implementation for HBaseSource.
39831func (hbs HBaseSource) AsEloquaSource() (*EloquaSource, bool) {
39832	return nil, false
39833}
39834
39835// AsDrillSource is the BasicCopySource implementation for HBaseSource.
39836func (hbs HBaseSource) AsDrillSource() (*DrillSource, bool) {
39837	return nil, false
39838}
39839
39840// AsCouchbaseSource is the BasicCopySource implementation for HBaseSource.
39841func (hbs HBaseSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
39842	return nil, false
39843}
39844
39845// AsConcurSource is the BasicCopySource implementation for HBaseSource.
39846func (hbs HBaseSource) AsConcurSource() (*ConcurSource, bool) {
39847	return nil, false
39848}
39849
39850// AsAzurePostgreSQLSource is the BasicCopySource implementation for HBaseSource.
39851func (hbs HBaseSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
39852	return nil, false
39853}
39854
39855// AsAmazonMWSSource is the BasicCopySource implementation for HBaseSource.
39856func (hbs HBaseSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
39857	return nil, false
39858}
39859
39860// AsHTTPSource is the BasicCopySource implementation for HBaseSource.
39861func (hbs HBaseSource) AsHTTPSource() (*HTTPSource, bool) {
39862	return nil, false
39863}
39864
39865// AsAzureDataLakeStoreSource is the BasicCopySource implementation for HBaseSource.
39866func (hbs HBaseSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
39867	return nil, false
39868}
39869
39870// AsMongoDbSource is the BasicCopySource implementation for HBaseSource.
39871func (hbs HBaseSource) AsMongoDbSource() (*MongoDbSource, bool) {
39872	return nil, false
39873}
39874
39875// AsCassandraSource is the BasicCopySource implementation for HBaseSource.
39876func (hbs HBaseSource) AsCassandraSource() (*CassandraSource, bool) {
39877	return nil, false
39878}
39879
39880// AsWebSource is the BasicCopySource implementation for HBaseSource.
39881func (hbs HBaseSource) AsWebSource() (*WebSource, bool) {
39882	return nil, false
39883}
39884
39885// AsOracleSource is the BasicCopySource implementation for HBaseSource.
39886func (hbs HBaseSource) AsOracleSource() (*OracleSource, bool) {
39887	return nil, false
39888}
39889
39890// AsAzureMySQLSource is the BasicCopySource implementation for HBaseSource.
39891func (hbs HBaseSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
39892	return nil, false
39893}
39894
39895// AsHdfsSource is the BasicCopySource implementation for HBaseSource.
39896func (hbs HBaseSource) AsHdfsSource() (*HdfsSource, bool) {
39897	return nil, false
39898}
39899
39900// AsFileSystemSource is the BasicCopySource implementation for HBaseSource.
39901func (hbs HBaseSource) AsFileSystemSource() (*FileSystemSource, bool) {
39902	return nil, false
39903}
39904
39905// AsSQLDWSource is the BasicCopySource implementation for HBaseSource.
39906func (hbs HBaseSource) AsSQLDWSource() (*SQLDWSource, bool) {
39907	return nil, false
39908}
39909
39910// AsSQLSource is the BasicCopySource implementation for HBaseSource.
39911func (hbs HBaseSource) AsSQLSource() (*SQLSource, bool) {
39912	return nil, false
39913}
39914
39915// AsSapEccSource is the BasicCopySource implementation for HBaseSource.
39916func (hbs HBaseSource) AsSapEccSource() (*SapEccSource, bool) {
39917	return nil, false
39918}
39919
39920// AsSapCloudForCustomerSource is the BasicCopySource implementation for HBaseSource.
39921func (hbs HBaseSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
39922	return nil, false
39923}
39924
39925// AsSalesforceSource is the BasicCopySource implementation for HBaseSource.
39926func (hbs HBaseSource) AsSalesforceSource() (*SalesforceSource, bool) {
39927	return nil, false
39928}
39929
39930// AsRelationalSource is the BasicCopySource implementation for HBaseSource.
39931func (hbs HBaseSource) AsRelationalSource() (*RelationalSource, bool) {
39932	return nil, false
39933}
39934
39935// AsDynamicsSource is the BasicCopySource implementation for HBaseSource.
39936func (hbs HBaseSource) AsDynamicsSource() (*DynamicsSource, bool) {
39937	return nil, false
39938}
39939
39940// AsDocumentDbCollectionSource is the BasicCopySource implementation for HBaseSource.
39941func (hbs HBaseSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
39942	return nil, false
39943}
39944
39945// AsBlobSource is the BasicCopySource implementation for HBaseSource.
39946func (hbs HBaseSource) AsBlobSource() (*BlobSource, bool) {
39947	return nil, false
39948}
39949
39950// AsAzureTableSource is the BasicCopySource implementation for HBaseSource.
39951func (hbs HBaseSource) AsAzureTableSource() (*AzureTableSource, bool) {
39952	return nil, false
39953}
39954
39955// AsCopySource is the BasicCopySource implementation for HBaseSource.
39956func (hbs HBaseSource) AsCopySource() (*CopySource, bool) {
39957	return nil, false
39958}
39959
39960// AsBasicCopySource is the BasicCopySource implementation for HBaseSource.
39961func (hbs HBaseSource) AsBasicCopySource() (BasicCopySource, bool) {
39962	return &hbs, true
39963}
39964
39965// HdfsLinkedService hadoop Distributed File System (HDFS) linked service.
39966type HdfsLinkedService struct {
39967	// HdfsLinkedServiceTypeProperties - HDFS linked service properties.
39968	*HdfsLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
39969	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
39970	AdditionalProperties map[string]interface{} `json:""`
39971	// ConnectVia - The integration runtime reference.
39972	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
39973	// Description - Linked service description.
39974	Description *string `json:"description,omitempty"`
39975	// Parameters - Parameters for linked service.
39976	Parameters map[string]*ParameterSpecification `json:"parameters"`
39977	// Annotations - List of tags that can be used for describing the Dataset.
39978	Annotations *[]interface{} `json:"annotations,omitempty"`
39979	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
39980	Type TypeBasicLinkedService `json:"type,omitempty"`
39981}
39982
39983// MarshalJSON is the custom marshaler for HdfsLinkedService.
39984func (hls HdfsLinkedService) MarshalJSON() ([]byte, error) {
39985	hls.Type = TypeHdfs
39986	objectMap := make(map[string]interface{})
39987	if hls.HdfsLinkedServiceTypeProperties != nil {
39988		objectMap["typeProperties"] = hls.HdfsLinkedServiceTypeProperties
39989	}
39990	if hls.ConnectVia != nil {
39991		objectMap["connectVia"] = hls.ConnectVia
39992	}
39993	if hls.Description != nil {
39994		objectMap["description"] = hls.Description
39995	}
39996	if hls.Parameters != nil {
39997		objectMap["parameters"] = hls.Parameters
39998	}
39999	if hls.Annotations != nil {
40000		objectMap["annotations"] = hls.Annotations
40001	}
40002	if hls.Type != "" {
40003		objectMap["type"] = hls.Type
40004	}
40005	for k, v := range hls.AdditionalProperties {
40006		objectMap[k] = v
40007	}
40008	return json.Marshal(objectMap)
40009}
40010
40011// AsResponsysLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40012func (hls HdfsLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
40013	return nil, false
40014}
40015
40016// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40017func (hls HdfsLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
40018	return nil, false
40019}
40020
40021// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40022func (hls HdfsLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
40023	return nil, false
40024}
40025
40026// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40027func (hls HdfsLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
40028	return nil, false
40029}
40030
40031// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40032func (hls HdfsLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
40033	return nil, false
40034}
40035
40036// AsNetezzaLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40037func (hls HdfsLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
40038	return nil, false
40039}
40040
40041// AsVerticaLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40042func (hls HdfsLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
40043	return nil, false
40044}
40045
40046// AsZohoLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40047func (hls HdfsLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
40048	return nil, false
40049}
40050
40051// AsXeroLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40052func (hls HdfsLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
40053	return nil, false
40054}
40055
40056// AsSquareLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40057func (hls HdfsLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
40058	return nil, false
40059}
40060
40061// AsSparkLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40062func (hls HdfsLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
40063	return nil, false
40064}
40065
40066// AsShopifyLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40067func (hls HdfsLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
40068	return nil, false
40069}
40070
40071// AsServiceNowLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40072func (hls HdfsLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
40073	return nil, false
40074}
40075
40076// AsQuickBooksLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40077func (hls HdfsLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
40078	return nil, false
40079}
40080
40081// AsPrestoLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40082func (hls HdfsLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
40083	return nil, false
40084}
40085
40086// AsPhoenixLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40087func (hls HdfsLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
40088	return nil, false
40089}
40090
40091// AsPaypalLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40092func (hls HdfsLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
40093	return nil, false
40094}
40095
40096// AsMarketoLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40097func (hls HdfsLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
40098	return nil, false
40099}
40100
40101// AsMariaDBLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40102func (hls HdfsLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
40103	return nil, false
40104}
40105
40106// AsMagentoLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40107func (hls HdfsLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
40108	return nil, false
40109}
40110
40111// AsJiraLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40112func (hls HdfsLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
40113	return nil, false
40114}
40115
40116// AsImpalaLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40117func (hls HdfsLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
40118	return nil, false
40119}
40120
40121// AsHubspotLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40122func (hls HdfsLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
40123	return nil, false
40124}
40125
40126// AsHiveLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40127func (hls HdfsLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
40128	return nil, false
40129}
40130
40131// AsHBaseLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40132func (hls HdfsLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
40133	return nil, false
40134}
40135
40136// AsGreenplumLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40137func (hls HdfsLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
40138	return nil, false
40139}
40140
40141// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40142func (hls HdfsLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
40143	return nil, false
40144}
40145
40146// AsEloquaLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40147func (hls HdfsLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
40148	return nil, false
40149}
40150
40151// AsDrillLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40152func (hls HdfsLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
40153	return nil, false
40154}
40155
40156// AsCouchbaseLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40157func (hls HdfsLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
40158	return nil, false
40159}
40160
40161// AsConcurLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40162func (hls HdfsLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
40163	return nil, false
40164}
40165
40166// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40167func (hls HdfsLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
40168	return nil, false
40169}
40170
40171// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40172func (hls HdfsLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
40173	return nil, false
40174}
40175
40176// AsSapHanaLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40177func (hls HdfsLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
40178	return nil, false
40179}
40180
40181// AsSapBWLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40182func (hls HdfsLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
40183	return nil, false
40184}
40185
40186// AsSftpServerLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40187func (hls HdfsLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
40188	return nil, false
40189}
40190
40191// AsFtpServerLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40192func (hls HdfsLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
40193	return nil, false
40194}
40195
40196// AsHTTPLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40197func (hls HdfsLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
40198	return nil, false
40199}
40200
40201// AsAzureSearchLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40202func (hls HdfsLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
40203	return nil, false
40204}
40205
40206// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40207func (hls HdfsLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
40208	return nil, false
40209}
40210
40211// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40212func (hls HdfsLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
40213	return nil, false
40214}
40215
40216// AsAmazonS3LinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40217func (hls HdfsLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
40218	return nil, false
40219}
40220
40221// AsSapEccLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40222func (hls HdfsLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
40223	return nil, false
40224}
40225
40226// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40227func (hls HdfsLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
40228	return nil, false
40229}
40230
40231// AsSalesforceLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40232func (hls HdfsLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
40233	return nil, false
40234}
40235
40236// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40237func (hls HdfsLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
40238	return nil, false
40239}
40240
40241// AsMongoDbLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40242func (hls HdfsLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
40243	return nil, false
40244}
40245
40246// AsCassandraLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40247func (hls HdfsLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
40248	return nil, false
40249}
40250
40251// AsWebLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40252func (hls HdfsLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
40253	return nil, false
40254}
40255
40256// AsODataLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40257func (hls HdfsLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
40258	return nil, false
40259}
40260
40261// AsHdfsLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40262func (hls HdfsLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
40263	return &hls, true
40264}
40265
40266// AsOdbcLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40267func (hls HdfsLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
40268	return nil, false
40269}
40270
40271// AsAzureMLLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40272func (hls HdfsLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
40273	return nil, false
40274}
40275
40276// AsTeradataLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40277func (hls HdfsLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
40278	return nil, false
40279}
40280
40281// AsDb2LinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40282func (hls HdfsLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
40283	return nil, false
40284}
40285
40286// AsSybaseLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40287func (hls HdfsLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
40288	return nil, false
40289}
40290
40291// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40292func (hls HdfsLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
40293	return nil, false
40294}
40295
40296// AsMySQLLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40297func (hls HdfsLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
40298	return nil, false
40299}
40300
40301// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40302func (hls HdfsLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
40303	return nil, false
40304}
40305
40306// AsOracleLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40307func (hls HdfsLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
40308	return nil, false
40309}
40310
40311// AsFileServerLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40312func (hls HdfsLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
40313	return nil, false
40314}
40315
40316// AsHDInsightLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40317func (hls HdfsLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
40318	return nil, false
40319}
40320
40321// AsDynamicsLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40322func (hls HdfsLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
40323	return nil, false
40324}
40325
40326// AsCosmosDbLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40327func (hls HdfsLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
40328	return nil, false
40329}
40330
40331// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40332func (hls HdfsLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
40333	return nil, false
40334}
40335
40336// AsAzureBatchLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40337func (hls HdfsLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
40338	return nil, false
40339}
40340
40341// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40342func (hls HdfsLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
40343	return nil, false
40344}
40345
40346// AsSQLServerLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40347func (hls HdfsLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
40348	return nil, false
40349}
40350
40351// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40352func (hls HdfsLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
40353	return nil, false
40354}
40355
40356// AsAzureStorageLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40357func (hls HdfsLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
40358	return nil, false
40359}
40360
40361// AsLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40362func (hls HdfsLinkedService) AsLinkedService() (*LinkedService, bool) {
40363	return nil, false
40364}
40365
40366// AsBasicLinkedService is the BasicLinkedService implementation for HdfsLinkedService.
40367func (hls HdfsLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
40368	return &hls, true
40369}
40370
40371// UnmarshalJSON is the custom unmarshaler for HdfsLinkedService struct.
40372func (hls *HdfsLinkedService) UnmarshalJSON(body []byte) error {
40373	var m map[string]*json.RawMessage
40374	err := json.Unmarshal(body, &m)
40375	if err != nil {
40376		return err
40377	}
40378	for k, v := range m {
40379		switch k {
40380		case "typeProperties":
40381			if v != nil {
40382				var hdfsLinkedServiceTypeProperties HdfsLinkedServiceTypeProperties
40383				err = json.Unmarshal(*v, &hdfsLinkedServiceTypeProperties)
40384				if err != nil {
40385					return err
40386				}
40387				hls.HdfsLinkedServiceTypeProperties = &hdfsLinkedServiceTypeProperties
40388			}
40389		default:
40390			if v != nil {
40391				var additionalProperties interface{}
40392				err = json.Unmarshal(*v, &additionalProperties)
40393				if err != nil {
40394					return err
40395				}
40396				if hls.AdditionalProperties == nil {
40397					hls.AdditionalProperties = make(map[string]interface{})
40398				}
40399				hls.AdditionalProperties[k] = additionalProperties
40400			}
40401		case "connectVia":
40402			if v != nil {
40403				var connectVia IntegrationRuntimeReference
40404				err = json.Unmarshal(*v, &connectVia)
40405				if err != nil {
40406					return err
40407				}
40408				hls.ConnectVia = &connectVia
40409			}
40410		case "description":
40411			if v != nil {
40412				var description string
40413				err = json.Unmarshal(*v, &description)
40414				if err != nil {
40415					return err
40416				}
40417				hls.Description = &description
40418			}
40419		case "parameters":
40420			if v != nil {
40421				var parameters map[string]*ParameterSpecification
40422				err = json.Unmarshal(*v, &parameters)
40423				if err != nil {
40424					return err
40425				}
40426				hls.Parameters = parameters
40427			}
40428		case "annotations":
40429			if v != nil {
40430				var annotations []interface{}
40431				err = json.Unmarshal(*v, &annotations)
40432				if err != nil {
40433					return err
40434				}
40435				hls.Annotations = &annotations
40436			}
40437		case "type":
40438			if v != nil {
40439				var typeVar TypeBasicLinkedService
40440				err = json.Unmarshal(*v, &typeVar)
40441				if err != nil {
40442					return err
40443				}
40444				hls.Type = typeVar
40445			}
40446		}
40447	}
40448
40449	return nil
40450}
40451
40452// HdfsLinkedServiceTypeProperties HDFS linked service properties.
40453type HdfsLinkedServiceTypeProperties struct {
40454	// URL - The URL of the HDFS service endpoint, e.g. http://myhostname:50070/webhdfs/v1 . Type: string (or Expression with resultType string).
40455	URL interface{} `json:"url,omitempty"`
40456	// AuthenticationType - Type of authentication used to connect to the HDFS. Possible values are: Anonymous and Windows. Type: string (or Expression with resultType string).
40457	AuthenticationType interface{} `json:"authenticationType,omitempty"`
40458	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
40459	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
40460	// UserName - User name for Windows authentication. Type: string (or Expression with resultType string).
40461	UserName interface{} `json:"userName,omitempty"`
40462	// Password - Password for Windows authentication.
40463	Password BasicSecretBase `json:"password,omitempty"`
40464}
40465
40466// UnmarshalJSON is the custom unmarshaler for HdfsLinkedServiceTypeProperties struct.
40467func (hlstp *HdfsLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
40468	var m map[string]*json.RawMessage
40469	err := json.Unmarshal(body, &m)
40470	if err != nil {
40471		return err
40472	}
40473	for k, v := range m {
40474		switch k {
40475		case "url":
40476			if v != nil {
40477				var URL interface{}
40478				err = json.Unmarshal(*v, &URL)
40479				if err != nil {
40480					return err
40481				}
40482				hlstp.URL = URL
40483			}
40484		case "authenticationType":
40485			if v != nil {
40486				var authenticationType interface{}
40487				err = json.Unmarshal(*v, &authenticationType)
40488				if err != nil {
40489					return err
40490				}
40491				hlstp.AuthenticationType = authenticationType
40492			}
40493		case "encryptedCredential":
40494			if v != nil {
40495				var encryptedCredential interface{}
40496				err = json.Unmarshal(*v, &encryptedCredential)
40497				if err != nil {
40498					return err
40499				}
40500				hlstp.EncryptedCredential = encryptedCredential
40501			}
40502		case "userName":
40503			if v != nil {
40504				var userName interface{}
40505				err = json.Unmarshal(*v, &userName)
40506				if err != nil {
40507					return err
40508				}
40509				hlstp.UserName = userName
40510			}
40511		case "password":
40512			if v != nil {
40513				password, err := unmarshalBasicSecretBase(*v)
40514				if err != nil {
40515					return err
40516				}
40517				hlstp.Password = password
40518			}
40519		}
40520	}
40521
40522	return nil
40523}
40524
40525// HdfsSource a copy activity HDFS source.
40526type HdfsSource struct {
40527	// Recursive - If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean).
40528	Recursive interface{} `json:"recursive,omitempty"`
40529	// DistcpSettings - Specifies Distcp-related settings.
40530	DistcpSettings *DistcpSettings `json:"distcpSettings,omitempty"`
40531	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
40532	AdditionalProperties map[string]interface{} `json:""`
40533	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
40534	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
40535	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
40536	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
40537	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
40538	Type TypeBasicCopySource `json:"type,omitempty"`
40539}
40540
40541// MarshalJSON is the custom marshaler for HdfsSource.
40542func (hs HdfsSource) MarshalJSON() ([]byte, error) {
40543	hs.Type = TypeHdfsSource
40544	objectMap := make(map[string]interface{})
40545	objectMap["recursive"] = hs.Recursive
40546	if hs.DistcpSettings != nil {
40547		objectMap["distcpSettings"] = hs.DistcpSettings
40548	}
40549	objectMap["sourceRetryCount"] = hs.SourceRetryCount
40550	objectMap["sourceRetryWait"] = hs.SourceRetryWait
40551	if hs.Type != "" {
40552		objectMap["type"] = hs.Type
40553	}
40554	for k, v := range hs.AdditionalProperties {
40555		objectMap[k] = v
40556	}
40557	return json.Marshal(objectMap)
40558}
40559
40560// AsAmazonRedshiftSource is the BasicCopySource implementation for HdfsSource.
40561func (hs HdfsSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
40562	return nil, false
40563}
40564
40565// AsResponsysSource is the BasicCopySource implementation for HdfsSource.
40566func (hs HdfsSource) AsResponsysSource() (*ResponsysSource, bool) {
40567	return nil, false
40568}
40569
40570// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for HdfsSource.
40571func (hs HdfsSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
40572	return nil, false
40573}
40574
40575// AsVerticaSource is the BasicCopySource implementation for HdfsSource.
40576func (hs HdfsSource) AsVerticaSource() (*VerticaSource, bool) {
40577	return nil, false
40578}
40579
40580// AsNetezzaSource is the BasicCopySource implementation for HdfsSource.
40581func (hs HdfsSource) AsNetezzaSource() (*NetezzaSource, bool) {
40582	return nil, false
40583}
40584
40585// AsZohoSource is the BasicCopySource implementation for HdfsSource.
40586func (hs HdfsSource) AsZohoSource() (*ZohoSource, bool) {
40587	return nil, false
40588}
40589
40590// AsXeroSource is the BasicCopySource implementation for HdfsSource.
40591func (hs HdfsSource) AsXeroSource() (*XeroSource, bool) {
40592	return nil, false
40593}
40594
40595// AsSquareSource is the BasicCopySource implementation for HdfsSource.
40596func (hs HdfsSource) AsSquareSource() (*SquareSource, bool) {
40597	return nil, false
40598}
40599
40600// AsSparkSource is the BasicCopySource implementation for HdfsSource.
40601func (hs HdfsSource) AsSparkSource() (*SparkSource, bool) {
40602	return nil, false
40603}
40604
40605// AsShopifySource is the BasicCopySource implementation for HdfsSource.
40606func (hs HdfsSource) AsShopifySource() (*ShopifySource, bool) {
40607	return nil, false
40608}
40609
40610// AsServiceNowSource is the BasicCopySource implementation for HdfsSource.
40611func (hs HdfsSource) AsServiceNowSource() (*ServiceNowSource, bool) {
40612	return nil, false
40613}
40614
40615// AsQuickBooksSource is the BasicCopySource implementation for HdfsSource.
40616func (hs HdfsSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
40617	return nil, false
40618}
40619
40620// AsPrestoSource is the BasicCopySource implementation for HdfsSource.
40621func (hs HdfsSource) AsPrestoSource() (*PrestoSource, bool) {
40622	return nil, false
40623}
40624
40625// AsPhoenixSource is the BasicCopySource implementation for HdfsSource.
40626func (hs HdfsSource) AsPhoenixSource() (*PhoenixSource, bool) {
40627	return nil, false
40628}
40629
40630// AsPaypalSource is the BasicCopySource implementation for HdfsSource.
40631func (hs HdfsSource) AsPaypalSource() (*PaypalSource, bool) {
40632	return nil, false
40633}
40634
40635// AsMarketoSource is the BasicCopySource implementation for HdfsSource.
40636func (hs HdfsSource) AsMarketoSource() (*MarketoSource, bool) {
40637	return nil, false
40638}
40639
40640// AsMariaDBSource is the BasicCopySource implementation for HdfsSource.
40641func (hs HdfsSource) AsMariaDBSource() (*MariaDBSource, bool) {
40642	return nil, false
40643}
40644
40645// AsMagentoSource is the BasicCopySource implementation for HdfsSource.
40646func (hs HdfsSource) AsMagentoSource() (*MagentoSource, bool) {
40647	return nil, false
40648}
40649
40650// AsJiraSource is the BasicCopySource implementation for HdfsSource.
40651func (hs HdfsSource) AsJiraSource() (*JiraSource, bool) {
40652	return nil, false
40653}
40654
40655// AsImpalaSource is the BasicCopySource implementation for HdfsSource.
40656func (hs HdfsSource) AsImpalaSource() (*ImpalaSource, bool) {
40657	return nil, false
40658}
40659
40660// AsHubspotSource is the BasicCopySource implementation for HdfsSource.
40661func (hs HdfsSource) AsHubspotSource() (*HubspotSource, bool) {
40662	return nil, false
40663}
40664
40665// AsHiveSource is the BasicCopySource implementation for HdfsSource.
40666func (hs HdfsSource) AsHiveSource() (*HiveSource, bool) {
40667	return nil, false
40668}
40669
40670// AsHBaseSource is the BasicCopySource implementation for HdfsSource.
40671func (hs HdfsSource) AsHBaseSource() (*HBaseSource, bool) {
40672	return nil, false
40673}
40674
40675// AsGreenplumSource is the BasicCopySource implementation for HdfsSource.
40676func (hs HdfsSource) AsGreenplumSource() (*GreenplumSource, bool) {
40677	return nil, false
40678}
40679
40680// AsGoogleBigQuerySource is the BasicCopySource implementation for HdfsSource.
40681func (hs HdfsSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
40682	return nil, false
40683}
40684
40685// AsEloquaSource is the BasicCopySource implementation for HdfsSource.
40686func (hs HdfsSource) AsEloquaSource() (*EloquaSource, bool) {
40687	return nil, false
40688}
40689
40690// AsDrillSource is the BasicCopySource implementation for HdfsSource.
40691func (hs HdfsSource) AsDrillSource() (*DrillSource, bool) {
40692	return nil, false
40693}
40694
40695// AsCouchbaseSource is the BasicCopySource implementation for HdfsSource.
40696func (hs HdfsSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
40697	return nil, false
40698}
40699
40700// AsConcurSource is the BasicCopySource implementation for HdfsSource.
40701func (hs HdfsSource) AsConcurSource() (*ConcurSource, bool) {
40702	return nil, false
40703}
40704
40705// AsAzurePostgreSQLSource is the BasicCopySource implementation for HdfsSource.
40706func (hs HdfsSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
40707	return nil, false
40708}
40709
40710// AsAmazonMWSSource is the BasicCopySource implementation for HdfsSource.
40711func (hs HdfsSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
40712	return nil, false
40713}
40714
40715// AsHTTPSource is the BasicCopySource implementation for HdfsSource.
40716func (hs HdfsSource) AsHTTPSource() (*HTTPSource, bool) {
40717	return nil, false
40718}
40719
40720// AsAzureDataLakeStoreSource is the BasicCopySource implementation for HdfsSource.
40721func (hs HdfsSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
40722	return nil, false
40723}
40724
40725// AsMongoDbSource is the BasicCopySource implementation for HdfsSource.
40726func (hs HdfsSource) AsMongoDbSource() (*MongoDbSource, bool) {
40727	return nil, false
40728}
40729
40730// AsCassandraSource is the BasicCopySource implementation for HdfsSource.
40731func (hs HdfsSource) AsCassandraSource() (*CassandraSource, bool) {
40732	return nil, false
40733}
40734
40735// AsWebSource is the BasicCopySource implementation for HdfsSource.
40736func (hs HdfsSource) AsWebSource() (*WebSource, bool) {
40737	return nil, false
40738}
40739
40740// AsOracleSource is the BasicCopySource implementation for HdfsSource.
40741func (hs HdfsSource) AsOracleSource() (*OracleSource, bool) {
40742	return nil, false
40743}
40744
40745// AsAzureMySQLSource is the BasicCopySource implementation for HdfsSource.
40746func (hs HdfsSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
40747	return nil, false
40748}
40749
40750// AsHdfsSource is the BasicCopySource implementation for HdfsSource.
40751func (hs HdfsSource) AsHdfsSource() (*HdfsSource, bool) {
40752	return &hs, true
40753}
40754
40755// AsFileSystemSource is the BasicCopySource implementation for HdfsSource.
40756func (hs HdfsSource) AsFileSystemSource() (*FileSystemSource, bool) {
40757	return nil, false
40758}
40759
40760// AsSQLDWSource is the BasicCopySource implementation for HdfsSource.
40761func (hs HdfsSource) AsSQLDWSource() (*SQLDWSource, bool) {
40762	return nil, false
40763}
40764
40765// AsSQLSource is the BasicCopySource implementation for HdfsSource.
40766func (hs HdfsSource) AsSQLSource() (*SQLSource, bool) {
40767	return nil, false
40768}
40769
40770// AsSapEccSource is the BasicCopySource implementation for HdfsSource.
40771func (hs HdfsSource) AsSapEccSource() (*SapEccSource, bool) {
40772	return nil, false
40773}
40774
40775// AsSapCloudForCustomerSource is the BasicCopySource implementation for HdfsSource.
40776func (hs HdfsSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
40777	return nil, false
40778}
40779
40780// AsSalesforceSource is the BasicCopySource implementation for HdfsSource.
40781func (hs HdfsSource) AsSalesforceSource() (*SalesforceSource, bool) {
40782	return nil, false
40783}
40784
40785// AsRelationalSource is the BasicCopySource implementation for HdfsSource.
40786func (hs HdfsSource) AsRelationalSource() (*RelationalSource, bool) {
40787	return nil, false
40788}
40789
40790// AsDynamicsSource is the BasicCopySource implementation for HdfsSource.
40791func (hs HdfsSource) AsDynamicsSource() (*DynamicsSource, bool) {
40792	return nil, false
40793}
40794
40795// AsDocumentDbCollectionSource is the BasicCopySource implementation for HdfsSource.
40796func (hs HdfsSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
40797	return nil, false
40798}
40799
40800// AsBlobSource is the BasicCopySource implementation for HdfsSource.
40801func (hs HdfsSource) AsBlobSource() (*BlobSource, bool) {
40802	return nil, false
40803}
40804
40805// AsAzureTableSource is the BasicCopySource implementation for HdfsSource.
40806func (hs HdfsSource) AsAzureTableSource() (*AzureTableSource, bool) {
40807	return nil, false
40808}
40809
40810// AsCopySource is the BasicCopySource implementation for HdfsSource.
40811func (hs HdfsSource) AsCopySource() (*CopySource, bool) {
40812	return nil, false
40813}
40814
40815// AsBasicCopySource is the BasicCopySource implementation for HdfsSource.
40816func (hs HdfsSource) AsBasicCopySource() (BasicCopySource, bool) {
40817	return &hs, true
40818}
40819
40820// HDInsightHiveActivity hDInsight Hive activity type.
40821type HDInsightHiveActivity struct {
40822	// HDInsightHiveActivityTypeProperties - HDInsight Hive activity properties.
40823	*HDInsightHiveActivityTypeProperties `json:"typeProperties,omitempty"`
40824	// LinkedServiceName - Linked service reference.
40825	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
40826	// Policy - Activity policy.
40827	Policy *ActivityPolicy `json:"policy,omitempty"`
40828	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
40829	AdditionalProperties map[string]interface{} `json:""`
40830	// Name - Activity name.
40831	Name *string `json:"name,omitempty"`
40832	// Description - Activity description.
40833	Description *string `json:"description,omitempty"`
40834	// DependsOn - Activity depends on condition.
40835	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
40836	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
40837	Type TypeBasicActivity `json:"type,omitempty"`
40838}
40839
40840// MarshalJSON is the custom marshaler for HDInsightHiveActivity.
40841func (hiha HDInsightHiveActivity) MarshalJSON() ([]byte, error) {
40842	hiha.Type = TypeHDInsightHive
40843	objectMap := make(map[string]interface{})
40844	if hiha.HDInsightHiveActivityTypeProperties != nil {
40845		objectMap["typeProperties"] = hiha.HDInsightHiveActivityTypeProperties
40846	}
40847	if hiha.LinkedServiceName != nil {
40848		objectMap["linkedServiceName"] = hiha.LinkedServiceName
40849	}
40850	if hiha.Policy != nil {
40851		objectMap["policy"] = hiha.Policy
40852	}
40853	if hiha.Name != nil {
40854		objectMap["name"] = hiha.Name
40855	}
40856	if hiha.Description != nil {
40857		objectMap["description"] = hiha.Description
40858	}
40859	if hiha.DependsOn != nil {
40860		objectMap["dependsOn"] = hiha.DependsOn
40861	}
40862	if hiha.Type != "" {
40863		objectMap["type"] = hiha.Type
40864	}
40865	for k, v := range hiha.AdditionalProperties {
40866		objectMap[k] = v
40867	}
40868	return json.Marshal(objectMap)
40869}
40870
40871// AsDatabricksNotebookActivity is the BasicActivity implementation for HDInsightHiveActivity.
40872func (hiha HDInsightHiveActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
40873	return nil, false
40874}
40875
40876// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for HDInsightHiveActivity.
40877func (hiha HDInsightHiveActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
40878	return nil, false
40879}
40880
40881// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for HDInsightHiveActivity.
40882func (hiha HDInsightHiveActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
40883	return nil, false
40884}
40885
40886// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for HDInsightHiveActivity.
40887func (hiha HDInsightHiveActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
40888	return nil, false
40889}
40890
40891// AsGetMetadataActivity is the BasicActivity implementation for HDInsightHiveActivity.
40892func (hiha HDInsightHiveActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
40893	return nil, false
40894}
40895
40896// AsWebActivity is the BasicActivity implementation for HDInsightHiveActivity.
40897func (hiha HDInsightHiveActivity) AsWebActivity() (*WebActivity, bool) {
40898	return nil, false
40899}
40900
40901// AsLookupActivity is the BasicActivity implementation for HDInsightHiveActivity.
40902func (hiha HDInsightHiveActivity) AsLookupActivity() (*LookupActivity, bool) {
40903	return nil, false
40904}
40905
40906// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for HDInsightHiveActivity.
40907func (hiha HDInsightHiveActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
40908	return nil, false
40909}
40910
40911// AsCustomActivity is the BasicActivity implementation for HDInsightHiveActivity.
40912func (hiha HDInsightHiveActivity) AsCustomActivity() (*CustomActivity, bool) {
40913	return nil, false
40914}
40915
40916// AsExecuteSSISPackageActivity is the BasicActivity implementation for HDInsightHiveActivity.
40917func (hiha HDInsightHiveActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
40918	return nil, false
40919}
40920
40921// AsHDInsightSparkActivity is the BasicActivity implementation for HDInsightHiveActivity.
40922func (hiha HDInsightHiveActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
40923	return nil, false
40924}
40925
40926// AsHDInsightStreamingActivity is the BasicActivity implementation for HDInsightHiveActivity.
40927func (hiha HDInsightHiveActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
40928	return nil, false
40929}
40930
40931// AsHDInsightMapReduceActivity is the BasicActivity implementation for HDInsightHiveActivity.
40932func (hiha HDInsightHiveActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
40933	return nil, false
40934}
40935
40936// AsHDInsightPigActivity is the BasicActivity implementation for HDInsightHiveActivity.
40937func (hiha HDInsightHiveActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
40938	return nil, false
40939}
40940
40941// AsHDInsightHiveActivity is the BasicActivity implementation for HDInsightHiveActivity.
40942func (hiha HDInsightHiveActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
40943	return &hiha, true
40944}
40945
40946// AsCopyActivity is the BasicActivity implementation for HDInsightHiveActivity.
40947func (hiha HDInsightHiveActivity) AsCopyActivity() (*CopyActivity, bool) {
40948	return nil, false
40949}
40950
40951// AsExecutionActivity is the BasicActivity implementation for HDInsightHiveActivity.
40952func (hiha HDInsightHiveActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
40953	return nil, false
40954}
40955
40956// AsBasicExecutionActivity is the BasicActivity implementation for HDInsightHiveActivity.
40957func (hiha HDInsightHiveActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
40958	return &hiha, true
40959}
40960
40961// AsFilterActivity is the BasicActivity implementation for HDInsightHiveActivity.
40962func (hiha HDInsightHiveActivity) AsFilterActivity() (*FilterActivity, bool) {
40963	return nil, false
40964}
40965
40966// AsUntilActivity is the BasicActivity implementation for HDInsightHiveActivity.
40967func (hiha HDInsightHiveActivity) AsUntilActivity() (*UntilActivity, bool) {
40968	return nil, false
40969}
40970
40971// AsWaitActivity is the BasicActivity implementation for HDInsightHiveActivity.
40972func (hiha HDInsightHiveActivity) AsWaitActivity() (*WaitActivity, bool) {
40973	return nil, false
40974}
40975
40976// AsForEachActivity is the BasicActivity implementation for HDInsightHiveActivity.
40977func (hiha HDInsightHiveActivity) AsForEachActivity() (*ForEachActivity, bool) {
40978	return nil, false
40979}
40980
40981// AsIfConditionActivity is the BasicActivity implementation for HDInsightHiveActivity.
40982func (hiha HDInsightHiveActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
40983	return nil, false
40984}
40985
40986// AsExecutePipelineActivity is the BasicActivity implementation for HDInsightHiveActivity.
40987func (hiha HDInsightHiveActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
40988	return nil, false
40989}
40990
40991// AsControlActivity is the BasicActivity implementation for HDInsightHiveActivity.
40992func (hiha HDInsightHiveActivity) AsControlActivity() (*ControlActivity, bool) {
40993	return nil, false
40994}
40995
40996// AsBasicControlActivity is the BasicActivity implementation for HDInsightHiveActivity.
40997func (hiha HDInsightHiveActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
40998	return nil, false
40999}
41000
41001// AsActivity is the BasicActivity implementation for HDInsightHiveActivity.
41002func (hiha HDInsightHiveActivity) AsActivity() (*Activity, bool) {
41003	return nil, false
41004}
41005
41006// AsBasicActivity is the BasicActivity implementation for HDInsightHiveActivity.
41007func (hiha HDInsightHiveActivity) AsBasicActivity() (BasicActivity, bool) {
41008	return &hiha, true
41009}
41010
41011// UnmarshalJSON is the custom unmarshaler for HDInsightHiveActivity struct.
41012func (hiha *HDInsightHiveActivity) UnmarshalJSON(body []byte) error {
41013	var m map[string]*json.RawMessage
41014	err := json.Unmarshal(body, &m)
41015	if err != nil {
41016		return err
41017	}
41018	for k, v := range m {
41019		switch k {
41020		case "typeProperties":
41021			if v != nil {
41022				var hDInsightHiveActivityTypeProperties HDInsightHiveActivityTypeProperties
41023				err = json.Unmarshal(*v, &hDInsightHiveActivityTypeProperties)
41024				if err != nil {
41025					return err
41026				}
41027				hiha.HDInsightHiveActivityTypeProperties = &hDInsightHiveActivityTypeProperties
41028			}
41029		case "linkedServiceName":
41030			if v != nil {
41031				var linkedServiceName LinkedServiceReference
41032				err = json.Unmarshal(*v, &linkedServiceName)
41033				if err != nil {
41034					return err
41035				}
41036				hiha.LinkedServiceName = &linkedServiceName
41037			}
41038		case "policy":
41039			if v != nil {
41040				var policy ActivityPolicy
41041				err = json.Unmarshal(*v, &policy)
41042				if err != nil {
41043					return err
41044				}
41045				hiha.Policy = &policy
41046			}
41047		default:
41048			if v != nil {
41049				var additionalProperties interface{}
41050				err = json.Unmarshal(*v, &additionalProperties)
41051				if err != nil {
41052					return err
41053				}
41054				if hiha.AdditionalProperties == nil {
41055					hiha.AdditionalProperties = make(map[string]interface{})
41056				}
41057				hiha.AdditionalProperties[k] = additionalProperties
41058			}
41059		case "name":
41060			if v != nil {
41061				var name string
41062				err = json.Unmarshal(*v, &name)
41063				if err != nil {
41064					return err
41065				}
41066				hiha.Name = &name
41067			}
41068		case "description":
41069			if v != nil {
41070				var description string
41071				err = json.Unmarshal(*v, &description)
41072				if err != nil {
41073					return err
41074				}
41075				hiha.Description = &description
41076			}
41077		case "dependsOn":
41078			if v != nil {
41079				var dependsOn []ActivityDependency
41080				err = json.Unmarshal(*v, &dependsOn)
41081				if err != nil {
41082					return err
41083				}
41084				hiha.DependsOn = &dependsOn
41085			}
41086		case "type":
41087			if v != nil {
41088				var typeVar TypeBasicActivity
41089				err = json.Unmarshal(*v, &typeVar)
41090				if err != nil {
41091					return err
41092				}
41093				hiha.Type = typeVar
41094			}
41095		}
41096	}
41097
41098	return nil
41099}
41100
41101// HDInsightHiveActivityTypeProperties hDInsight Hive activity properties.
41102type HDInsightHiveActivityTypeProperties struct {
41103	// StorageLinkedServices - Storage linked service references.
41104	StorageLinkedServices *[]LinkedServiceReference `json:"storageLinkedServices,omitempty"`
41105	// Arguments - User specified arguments to HDInsightActivity.
41106	Arguments *[]interface{} `json:"arguments,omitempty"`
41107	// GetDebugInfo - Debug info option. Possible values include: 'None', 'Always', 'Failure'
41108	GetDebugInfo HDInsightActivityDebugInfoOption `json:"getDebugInfo,omitempty"`
41109	// ScriptPath - Script path. Type: string (or Expression with resultType string).
41110	ScriptPath interface{} `json:"scriptPath,omitempty"`
41111	// ScriptLinkedService - Script linked service reference.
41112	ScriptLinkedService *LinkedServiceReference `json:"scriptLinkedService,omitempty"`
41113	// Defines - Allows user to specify defines for Hive job request.
41114	Defines map[string]interface{} `json:"defines"`
41115}
41116
41117// MarshalJSON is the custom marshaler for HDInsightHiveActivityTypeProperties.
41118func (hihatp HDInsightHiveActivityTypeProperties) MarshalJSON() ([]byte, error) {
41119	objectMap := make(map[string]interface{})
41120	if hihatp.StorageLinkedServices != nil {
41121		objectMap["storageLinkedServices"] = hihatp.StorageLinkedServices
41122	}
41123	if hihatp.Arguments != nil {
41124		objectMap["arguments"] = hihatp.Arguments
41125	}
41126	if hihatp.GetDebugInfo != "" {
41127		objectMap["getDebugInfo"] = hihatp.GetDebugInfo
41128	}
41129	objectMap["scriptPath"] = hihatp.ScriptPath
41130	if hihatp.ScriptLinkedService != nil {
41131		objectMap["scriptLinkedService"] = hihatp.ScriptLinkedService
41132	}
41133	if hihatp.Defines != nil {
41134		objectMap["defines"] = hihatp.Defines
41135	}
41136	return json.Marshal(objectMap)
41137}
41138
41139// HDInsightLinkedService hDInsight linked service.
41140type HDInsightLinkedService struct {
41141	// HDInsightLinkedServiceTypeProperties - HDInsight linked service properties.
41142	*HDInsightLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
41143	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
41144	AdditionalProperties map[string]interface{} `json:""`
41145	// ConnectVia - The integration runtime reference.
41146	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
41147	// Description - Linked service description.
41148	Description *string `json:"description,omitempty"`
41149	// Parameters - Parameters for linked service.
41150	Parameters map[string]*ParameterSpecification `json:"parameters"`
41151	// Annotations - List of tags that can be used for describing the Dataset.
41152	Annotations *[]interface{} `json:"annotations,omitempty"`
41153	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
41154	Type TypeBasicLinkedService `json:"type,omitempty"`
41155}
41156
41157// MarshalJSON is the custom marshaler for HDInsightLinkedService.
41158func (hils HDInsightLinkedService) MarshalJSON() ([]byte, error) {
41159	hils.Type = TypeHDInsight
41160	objectMap := make(map[string]interface{})
41161	if hils.HDInsightLinkedServiceTypeProperties != nil {
41162		objectMap["typeProperties"] = hils.HDInsightLinkedServiceTypeProperties
41163	}
41164	if hils.ConnectVia != nil {
41165		objectMap["connectVia"] = hils.ConnectVia
41166	}
41167	if hils.Description != nil {
41168		objectMap["description"] = hils.Description
41169	}
41170	if hils.Parameters != nil {
41171		objectMap["parameters"] = hils.Parameters
41172	}
41173	if hils.Annotations != nil {
41174		objectMap["annotations"] = hils.Annotations
41175	}
41176	if hils.Type != "" {
41177		objectMap["type"] = hils.Type
41178	}
41179	for k, v := range hils.AdditionalProperties {
41180		objectMap[k] = v
41181	}
41182	return json.Marshal(objectMap)
41183}
41184
41185// AsResponsysLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41186func (hils HDInsightLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
41187	return nil, false
41188}
41189
41190// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41191func (hils HDInsightLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
41192	return nil, false
41193}
41194
41195// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41196func (hils HDInsightLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
41197	return nil, false
41198}
41199
41200// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41201func (hils HDInsightLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
41202	return nil, false
41203}
41204
41205// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41206func (hils HDInsightLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
41207	return nil, false
41208}
41209
41210// AsNetezzaLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41211func (hils HDInsightLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
41212	return nil, false
41213}
41214
41215// AsVerticaLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41216func (hils HDInsightLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
41217	return nil, false
41218}
41219
41220// AsZohoLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41221func (hils HDInsightLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
41222	return nil, false
41223}
41224
41225// AsXeroLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41226func (hils HDInsightLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
41227	return nil, false
41228}
41229
41230// AsSquareLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41231func (hils HDInsightLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
41232	return nil, false
41233}
41234
41235// AsSparkLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41236func (hils HDInsightLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
41237	return nil, false
41238}
41239
41240// AsShopifyLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41241func (hils HDInsightLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
41242	return nil, false
41243}
41244
41245// AsServiceNowLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41246func (hils HDInsightLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
41247	return nil, false
41248}
41249
41250// AsQuickBooksLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41251func (hils HDInsightLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
41252	return nil, false
41253}
41254
41255// AsPrestoLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41256func (hils HDInsightLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
41257	return nil, false
41258}
41259
41260// AsPhoenixLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41261func (hils HDInsightLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
41262	return nil, false
41263}
41264
41265// AsPaypalLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41266func (hils HDInsightLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
41267	return nil, false
41268}
41269
41270// AsMarketoLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41271func (hils HDInsightLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
41272	return nil, false
41273}
41274
41275// AsMariaDBLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41276func (hils HDInsightLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
41277	return nil, false
41278}
41279
41280// AsMagentoLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41281func (hils HDInsightLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
41282	return nil, false
41283}
41284
41285// AsJiraLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41286func (hils HDInsightLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
41287	return nil, false
41288}
41289
41290// AsImpalaLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41291func (hils HDInsightLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
41292	return nil, false
41293}
41294
41295// AsHubspotLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41296func (hils HDInsightLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
41297	return nil, false
41298}
41299
41300// AsHiveLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41301func (hils HDInsightLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
41302	return nil, false
41303}
41304
41305// AsHBaseLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41306func (hils HDInsightLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
41307	return nil, false
41308}
41309
41310// AsGreenplumLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41311func (hils HDInsightLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
41312	return nil, false
41313}
41314
41315// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41316func (hils HDInsightLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
41317	return nil, false
41318}
41319
41320// AsEloquaLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41321func (hils HDInsightLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
41322	return nil, false
41323}
41324
41325// AsDrillLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41326func (hils HDInsightLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
41327	return nil, false
41328}
41329
41330// AsCouchbaseLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41331func (hils HDInsightLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
41332	return nil, false
41333}
41334
41335// AsConcurLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41336func (hils HDInsightLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
41337	return nil, false
41338}
41339
41340// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41341func (hils HDInsightLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
41342	return nil, false
41343}
41344
41345// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41346func (hils HDInsightLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
41347	return nil, false
41348}
41349
41350// AsSapHanaLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41351func (hils HDInsightLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
41352	return nil, false
41353}
41354
41355// AsSapBWLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41356func (hils HDInsightLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
41357	return nil, false
41358}
41359
41360// AsSftpServerLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41361func (hils HDInsightLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
41362	return nil, false
41363}
41364
41365// AsFtpServerLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41366func (hils HDInsightLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
41367	return nil, false
41368}
41369
41370// AsHTTPLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41371func (hils HDInsightLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
41372	return nil, false
41373}
41374
41375// AsAzureSearchLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41376func (hils HDInsightLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
41377	return nil, false
41378}
41379
41380// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41381func (hils HDInsightLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
41382	return nil, false
41383}
41384
41385// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41386func (hils HDInsightLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
41387	return nil, false
41388}
41389
41390// AsAmazonS3LinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41391func (hils HDInsightLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
41392	return nil, false
41393}
41394
41395// AsSapEccLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41396func (hils HDInsightLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
41397	return nil, false
41398}
41399
41400// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41401func (hils HDInsightLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
41402	return nil, false
41403}
41404
41405// AsSalesforceLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41406func (hils HDInsightLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
41407	return nil, false
41408}
41409
41410// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41411func (hils HDInsightLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
41412	return nil, false
41413}
41414
41415// AsMongoDbLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41416func (hils HDInsightLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
41417	return nil, false
41418}
41419
41420// AsCassandraLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41421func (hils HDInsightLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
41422	return nil, false
41423}
41424
41425// AsWebLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41426func (hils HDInsightLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
41427	return nil, false
41428}
41429
41430// AsODataLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41431func (hils HDInsightLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
41432	return nil, false
41433}
41434
41435// AsHdfsLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41436func (hils HDInsightLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
41437	return nil, false
41438}
41439
41440// AsOdbcLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41441func (hils HDInsightLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
41442	return nil, false
41443}
41444
41445// AsAzureMLLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41446func (hils HDInsightLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
41447	return nil, false
41448}
41449
41450// AsTeradataLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41451func (hils HDInsightLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
41452	return nil, false
41453}
41454
41455// AsDb2LinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41456func (hils HDInsightLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
41457	return nil, false
41458}
41459
41460// AsSybaseLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41461func (hils HDInsightLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
41462	return nil, false
41463}
41464
41465// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41466func (hils HDInsightLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
41467	return nil, false
41468}
41469
41470// AsMySQLLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41471func (hils HDInsightLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
41472	return nil, false
41473}
41474
41475// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41476func (hils HDInsightLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
41477	return nil, false
41478}
41479
41480// AsOracleLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41481func (hils HDInsightLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
41482	return nil, false
41483}
41484
41485// AsFileServerLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41486func (hils HDInsightLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
41487	return nil, false
41488}
41489
41490// AsHDInsightLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41491func (hils HDInsightLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
41492	return &hils, true
41493}
41494
41495// AsDynamicsLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41496func (hils HDInsightLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
41497	return nil, false
41498}
41499
41500// AsCosmosDbLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41501func (hils HDInsightLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
41502	return nil, false
41503}
41504
41505// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41506func (hils HDInsightLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
41507	return nil, false
41508}
41509
41510// AsAzureBatchLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41511func (hils HDInsightLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
41512	return nil, false
41513}
41514
41515// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41516func (hils HDInsightLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
41517	return nil, false
41518}
41519
41520// AsSQLServerLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41521func (hils HDInsightLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
41522	return nil, false
41523}
41524
41525// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41526func (hils HDInsightLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
41527	return nil, false
41528}
41529
41530// AsAzureStorageLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41531func (hils HDInsightLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
41532	return nil, false
41533}
41534
41535// AsLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41536func (hils HDInsightLinkedService) AsLinkedService() (*LinkedService, bool) {
41537	return nil, false
41538}
41539
41540// AsBasicLinkedService is the BasicLinkedService implementation for HDInsightLinkedService.
41541func (hils HDInsightLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
41542	return &hils, true
41543}
41544
41545// UnmarshalJSON is the custom unmarshaler for HDInsightLinkedService struct.
41546func (hils *HDInsightLinkedService) UnmarshalJSON(body []byte) error {
41547	var m map[string]*json.RawMessage
41548	err := json.Unmarshal(body, &m)
41549	if err != nil {
41550		return err
41551	}
41552	for k, v := range m {
41553		switch k {
41554		case "typeProperties":
41555			if v != nil {
41556				var hDInsightLinkedServiceTypeProperties HDInsightLinkedServiceTypeProperties
41557				err = json.Unmarshal(*v, &hDInsightLinkedServiceTypeProperties)
41558				if err != nil {
41559					return err
41560				}
41561				hils.HDInsightLinkedServiceTypeProperties = &hDInsightLinkedServiceTypeProperties
41562			}
41563		default:
41564			if v != nil {
41565				var additionalProperties interface{}
41566				err = json.Unmarshal(*v, &additionalProperties)
41567				if err != nil {
41568					return err
41569				}
41570				if hils.AdditionalProperties == nil {
41571					hils.AdditionalProperties = make(map[string]interface{})
41572				}
41573				hils.AdditionalProperties[k] = additionalProperties
41574			}
41575		case "connectVia":
41576			if v != nil {
41577				var connectVia IntegrationRuntimeReference
41578				err = json.Unmarshal(*v, &connectVia)
41579				if err != nil {
41580					return err
41581				}
41582				hils.ConnectVia = &connectVia
41583			}
41584		case "description":
41585			if v != nil {
41586				var description string
41587				err = json.Unmarshal(*v, &description)
41588				if err != nil {
41589					return err
41590				}
41591				hils.Description = &description
41592			}
41593		case "parameters":
41594			if v != nil {
41595				var parameters map[string]*ParameterSpecification
41596				err = json.Unmarshal(*v, &parameters)
41597				if err != nil {
41598					return err
41599				}
41600				hils.Parameters = parameters
41601			}
41602		case "annotations":
41603			if v != nil {
41604				var annotations []interface{}
41605				err = json.Unmarshal(*v, &annotations)
41606				if err != nil {
41607					return err
41608				}
41609				hils.Annotations = &annotations
41610			}
41611		case "type":
41612			if v != nil {
41613				var typeVar TypeBasicLinkedService
41614				err = json.Unmarshal(*v, &typeVar)
41615				if err != nil {
41616					return err
41617				}
41618				hils.Type = typeVar
41619			}
41620		}
41621	}
41622
41623	return nil
41624}
41625
41626// HDInsightLinkedServiceTypeProperties hDInsight linked service properties.
41627type HDInsightLinkedServiceTypeProperties struct {
41628	// ClusterURI - HDInsight cluster URI. Type: string (or Expression with resultType string).
41629	ClusterURI interface{} `json:"clusterUri,omitempty"`
41630	// UserName - HDInsight cluster user name. Type: string (or Expression with resultType string).
41631	UserName interface{} `json:"userName,omitempty"`
41632	// Password - HDInsight cluster password.
41633	Password BasicSecretBase `json:"password,omitempty"`
41634	// LinkedServiceName - The Azure Storage linked service reference.
41635	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
41636	// HcatalogLinkedServiceName - A reference to the Azure SQL linked service that points to the HCatalog database.
41637	HcatalogLinkedServiceName *LinkedServiceReference `json:"hcatalogLinkedServiceName,omitempty"`
41638	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
41639	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
41640}
41641
41642// UnmarshalJSON is the custom unmarshaler for HDInsightLinkedServiceTypeProperties struct.
41643func (hilstp *HDInsightLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
41644	var m map[string]*json.RawMessage
41645	err := json.Unmarshal(body, &m)
41646	if err != nil {
41647		return err
41648	}
41649	for k, v := range m {
41650		switch k {
41651		case "clusterUri":
41652			if v != nil {
41653				var clusterURI interface{}
41654				err = json.Unmarshal(*v, &clusterURI)
41655				if err != nil {
41656					return err
41657				}
41658				hilstp.ClusterURI = clusterURI
41659			}
41660		case "userName":
41661			if v != nil {
41662				var userName interface{}
41663				err = json.Unmarshal(*v, &userName)
41664				if err != nil {
41665					return err
41666				}
41667				hilstp.UserName = userName
41668			}
41669		case "password":
41670			if v != nil {
41671				password, err := unmarshalBasicSecretBase(*v)
41672				if err != nil {
41673					return err
41674				}
41675				hilstp.Password = password
41676			}
41677		case "linkedServiceName":
41678			if v != nil {
41679				var linkedServiceName LinkedServiceReference
41680				err = json.Unmarshal(*v, &linkedServiceName)
41681				if err != nil {
41682					return err
41683				}
41684				hilstp.LinkedServiceName = &linkedServiceName
41685			}
41686		case "hcatalogLinkedServiceName":
41687			if v != nil {
41688				var hcatalogLinkedServiceName LinkedServiceReference
41689				err = json.Unmarshal(*v, &hcatalogLinkedServiceName)
41690				if err != nil {
41691					return err
41692				}
41693				hilstp.HcatalogLinkedServiceName = &hcatalogLinkedServiceName
41694			}
41695		case "encryptedCredential":
41696			if v != nil {
41697				var encryptedCredential interface{}
41698				err = json.Unmarshal(*v, &encryptedCredential)
41699				if err != nil {
41700					return err
41701				}
41702				hilstp.EncryptedCredential = encryptedCredential
41703			}
41704		}
41705	}
41706
41707	return nil
41708}
41709
41710// HDInsightMapReduceActivity hDInsight MapReduce activity type.
41711type HDInsightMapReduceActivity struct {
41712	// HDInsightMapReduceActivityTypeProperties - HDInsight MapReduce activity properties.
41713	*HDInsightMapReduceActivityTypeProperties `json:"typeProperties,omitempty"`
41714	// LinkedServiceName - Linked service reference.
41715	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
41716	// Policy - Activity policy.
41717	Policy *ActivityPolicy `json:"policy,omitempty"`
41718	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
41719	AdditionalProperties map[string]interface{} `json:""`
41720	// Name - Activity name.
41721	Name *string `json:"name,omitempty"`
41722	// Description - Activity description.
41723	Description *string `json:"description,omitempty"`
41724	// DependsOn - Activity depends on condition.
41725	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
41726	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
41727	Type TypeBasicActivity `json:"type,omitempty"`
41728}
41729
41730// MarshalJSON is the custom marshaler for HDInsightMapReduceActivity.
41731func (himra HDInsightMapReduceActivity) MarshalJSON() ([]byte, error) {
41732	himra.Type = TypeHDInsightMapReduce
41733	objectMap := make(map[string]interface{})
41734	if himra.HDInsightMapReduceActivityTypeProperties != nil {
41735		objectMap["typeProperties"] = himra.HDInsightMapReduceActivityTypeProperties
41736	}
41737	if himra.LinkedServiceName != nil {
41738		objectMap["linkedServiceName"] = himra.LinkedServiceName
41739	}
41740	if himra.Policy != nil {
41741		objectMap["policy"] = himra.Policy
41742	}
41743	if himra.Name != nil {
41744		objectMap["name"] = himra.Name
41745	}
41746	if himra.Description != nil {
41747		objectMap["description"] = himra.Description
41748	}
41749	if himra.DependsOn != nil {
41750		objectMap["dependsOn"] = himra.DependsOn
41751	}
41752	if himra.Type != "" {
41753		objectMap["type"] = himra.Type
41754	}
41755	for k, v := range himra.AdditionalProperties {
41756		objectMap[k] = v
41757	}
41758	return json.Marshal(objectMap)
41759}
41760
41761// AsDatabricksNotebookActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41762func (himra HDInsightMapReduceActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
41763	return nil, false
41764}
41765
41766// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41767func (himra HDInsightMapReduceActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
41768	return nil, false
41769}
41770
41771// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41772func (himra HDInsightMapReduceActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
41773	return nil, false
41774}
41775
41776// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41777func (himra HDInsightMapReduceActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
41778	return nil, false
41779}
41780
41781// AsGetMetadataActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41782func (himra HDInsightMapReduceActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
41783	return nil, false
41784}
41785
41786// AsWebActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41787func (himra HDInsightMapReduceActivity) AsWebActivity() (*WebActivity, bool) {
41788	return nil, false
41789}
41790
41791// AsLookupActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41792func (himra HDInsightMapReduceActivity) AsLookupActivity() (*LookupActivity, bool) {
41793	return nil, false
41794}
41795
41796// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41797func (himra HDInsightMapReduceActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
41798	return nil, false
41799}
41800
41801// AsCustomActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41802func (himra HDInsightMapReduceActivity) AsCustomActivity() (*CustomActivity, bool) {
41803	return nil, false
41804}
41805
41806// AsExecuteSSISPackageActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41807func (himra HDInsightMapReduceActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
41808	return nil, false
41809}
41810
41811// AsHDInsightSparkActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41812func (himra HDInsightMapReduceActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
41813	return nil, false
41814}
41815
41816// AsHDInsightStreamingActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41817func (himra HDInsightMapReduceActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
41818	return nil, false
41819}
41820
41821// AsHDInsightMapReduceActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41822func (himra HDInsightMapReduceActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
41823	return &himra, true
41824}
41825
41826// AsHDInsightPigActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41827func (himra HDInsightMapReduceActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
41828	return nil, false
41829}
41830
41831// AsHDInsightHiveActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41832func (himra HDInsightMapReduceActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
41833	return nil, false
41834}
41835
41836// AsCopyActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41837func (himra HDInsightMapReduceActivity) AsCopyActivity() (*CopyActivity, bool) {
41838	return nil, false
41839}
41840
41841// AsExecutionActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41842func (himra HDInsightMapReduceActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
41843	return nil, false
41844}
41845
41846// AsBasicExecutionActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41847func (himra HDInsightMapReduceActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
41848	return &himra, true
41849}
41850
41851// AsFilterActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41852func (himra HDInsightMapReduceActivity) AsFilterActivity() (*FilterActivity, bool) {
41853	return nil, false
41854}
41855
41856// AsUntilActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41857func (himra HDInsightMapReduceActivity) AsUntilActivity() (*UntilActivity, bool) {
41858	return nil, false
41859}
41860
41861// AsWaitActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41862func (himra HDInsightMapReduceActivity) AsWaitActivity() (*WaitActivity, bool) {
41863	return nil, false
41864}
41865
41866// AsForEachActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41867func (himra HDInsightMapReduceActivity) AsForEachActivity() (*ForEachActivity, bool) {
41868	return nil, false
41869}
41870
41871// AsIfConditionActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41872func (himra HDInsightMapReduceActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
41873	return nil, false
41874}
41875
41876// AsExecutePipelineActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41877func (himra HDInsightMapReduceActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
41878	return nil, false
41879}
41880
41881// AsControlActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41882func (himra HDInsightMapReduceActivity) AsControlActivity() (*ControlActivity, bool) {
41883	return nil, false
41884}
41885
41886// AsBasicControlActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41887func (himra HDInsightMapReduceActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
41888	return nil, false
41889}
41890
41891// AsActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41892func (himra HDInsightMapReduceActivity) AsActivity() (*Activity, bool) {
41893	return nil, false
41894}
41895
41896// AsBasicActivity is the BasicActivity implementation for HDInsightMapReduceActivity.
41897func (himra HDInsightMapReduceActivity) AsBasicActivity() (BasicActivity, bool) {
41898	return &himra, true
41899}
41900
41901// UnmarshalJSON is the custom unmarshaler for HDInsightMapReduceActivity struct.
41902func (himra *HDInsightMapReduceActivity) UnmarshalJSON(body []byte) error {
41903	var m map[string]*json.RawMessage
41904	err := json.Unmarshal(body, &m)
41905	if err != nil {
41906		return err
41907	}
41908	for k, v := range m {
41909		switch k {
41910		case "typeProperties":
41911			if v != nil {
41912				var hDInsightMapReduceActivityTypeProperties HDInsightMapReduceActivityTypeProperties
41913				err = json.Unmarshal(*v, &hDInsightMapReduceActivityTypeProperties)
41914				if err != nil {
41915					return err
41916				}
41917				himra.HDInsightMapReduceActivityTypeProperties = &hDInsightMapReduceActivityTypeProperties
41918			}
41919		case "linkedServiceName":
41920			if v != nil {
41921				var linkedServiceName LinkedServiceReference
41922				err = json.Unmarshal(*v, &linkedServiceName)
41923				if err != nil {
41924					return err
41925				}
41926				himra.LinkedServiceName = &linkedServiceName
41927			}
41928		case "policy":
41929			if v != nil {
41930				var policy ActivityPolicy
41931				err = json.Unmarshal(*v, &policy)
41932				if err != nil {
41933					return err
41934				}
41935				himra.Policy = &policy
41936			}
41937		default:
41938			if v != nil {
41939				var additionalProperties interface{}
41940				err = json.Unmarshal(*v, &additionalProperties)
41941				if err != nil {
41942					return err
41943				}
41944				if himra.AdditionalProperties == nil {
41945					himra.AdditionalProperties = make(map[string]interface{})
41946				}
41947				himra.AdditionalProperties[k] = additionalProperties
41948			}
41949		case "name":
41950			if v != nil {
41951				var name string
41952				err = json.Unmarshal(*v, &name)
41953				if err != nil {
41954					return err
41955				}
41956				himra.Name = &name
41957			}
41958		case "description":
41959			if v != nil {
41960				var description string
41961				err = json.Unmarshal(*v, &description)
41962				if err != nil {
41963					return err
41964				}
41965				himra.Description = &description
41966			}
41967		case "dependsOn":
41968			if v != nil {
41969				var dependsOn []ActivityDependency
41970				err = json.Unmarshal(*v, &dependsOn)
41971				if err != nil {
41972					return err
41973				}
41974				himra.DependsOn = &dependsOn
41975			}
41976		case "type":
41977			if v != nil {
41978				var typeVar TypeBasicActivity
41979				err = json.Unmarshal(*v, &typeVar)
41980				if err != nil {
41981					return err
41982				}
41983				himra.Type = typeVar
41984			}
41985		}
41986	}
41987
41988	return nil
41989}
41990
41991// HDInsightMapReduceActivityTypeProperties hDInsight MapReduce activity properties.
41992type HDInsightMapReduceActivityTypeProperties struct {
41993	// StorageLinkedServices - Storage linked service references.
41994	StorageLinkedServices *[]LinkedServiceReference `json:"storageLinkedServices,omitempty"`
41995	// Arguments - User specified arguments to HDInsightActivity.
41996	Arguments *[]interface{} `json:"arguments,omitempty"`
41997	// GetDebugInfo - Debug info option. Possible values include: 'None', 'Always', 'Failure'
41998	GetDebugInfo HDInsightActivityDebugInfoOption `json:"getDebugInfo,omitempty"`
41999	// ClassName - Class name. Type: string (or Expression with resultType string).
42000	ClassName interface{} `json:"className,omitempty"`
42001	// JarFilePath - Jar path. Type: string (or Expression with resultType string).
42002	JarFilePath interface{} `json:"jarFilePath,omitempty"`
42003	// JarLinkedService - Jar linked service reference.
42004	JarLinkedService *LinkedServiceReference `json:"jarLinkedService,omitempty"`
42005	// JarLibs - Jar libs.
42006	JarLibs *[]interface{} `json:"jarLibs,omitempty"`
42007	// Defines - Allows user to specify defines for the MapReduce job request.
42008	Defines map[string]interface{} `json:"defines"`
42009}
42010
42011// MarshalJSON is the custom marshaler for HDInsightMapReduceActivityTypeProperties.
42012func (himratp HDInsightMapReduceActivityTypeProperties) MarshalJSON() ([]byte, error) {
42013	objectMap := make(map[string]interface{})
42014	if himratp.StorageLinkedServices != nil {
42015		objectMap["storageLinkedServices"] = himratp.StorageLinkedServices
42016	}
42017	if himratp.Arguments != nil {
42018		objectMap["arguments"] = himratp.Arguments
42019	}
42020	if himratp.GetDebugInfo != "" {
42021		objectMap["getDebugInfo"] = himratp.GetDebugInfo
42022	}
42023	objectMap["className"] = himratp.ClassName
42024	objectMap["jarFilePath"] = himratp.JarFilePath
42025	if himratp.JarLinkedService != nil {
42026		objectMap["jarLinkedService"] = himratp.JarLinkedService
42027	}
42028	if himratp.JarLibs != nil {
42029		objectMap["jarLibs"] = himratp.JarLibs
42030	}
42031	if himratp.Defines != nil {
42032		objectMap["defines"] = himratp.Defines
42033	}
42034	return json.Marshal(objectMap)
42035}
42036
42037// HDInsightOnDemandLinkedService hDInsight ondemand linked service.
42038type HDInsightOnDemandLinkedService struct {
42039	// HDInsightOnDemandLinkedServiceTypeProperties - HDInsight ondemand linked service properties.
42040	*HDInsightOnDemandLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
42041	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
42042	AdditionalProperties map[string]interface{} `json:""`
42043	// ConnectVia - The integration runtime reference.
42044	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
42045	// Description - Linked service description.
42046	Description *string `json:"description,omitempty"`
42047	// Parameters - Parameters for linked service.
42048	Parameters map[string]*ParameterSpecification `json:"parameters"`
42049	// Annotations - List of tags that can be used for describing the Dataset.
42050	Annotations *[]interface{} `json:"annotations,omitempty"`
42051	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
42052	Type TypeBasicLinkedService `json:"type,omitempty"`
42053}
42054
42055// MarshalJSON is the custom marshaler for HDInsightOnDemandLinkedService.
42056func (hiodls HDInsightOnDemandLinkedService) MarshalJSON() ([]byte, error) {
42057	hiodls.Type = TypeHDInsightOnDemand
42058	objectMap := make(map[string]interface{})
42059	if hiodls.HDInsightOnDemandLinkedServiceTypeProperties != nil {
42060		objectMap["typeProperties"] = hiodls.HDInsightOnDemandLinkedServiceTypeProperties
42061	}
42062	if hiodls.ConnectVia != nil {
42063		objectMap["connectVia"] = hiodls.ConnectVia
42064	}
42065	if hiodls.Description != nil {
42066		objectMap["description"] = hiodls.Description
42067	}
42068	if hiodls.Parameters != nil {
42069		objectMap["parameters"] = hiodls.Parameters
42070	}
42071	if hiodls.Annotations != nil {
42072		objectMap["annotations"] = hiodls.Annotations
42073	}
42074	if hiodls.Type != "" {
42075		objectMap["type"] = hiodls.Type
42076	}
42077	for k, v := range hiodls.AdditionalProperties {
42078		objectMap[k] = v
42079	}
42080	return json.Marshal(objectMap)
42081}
42082
42083// AsResponsysLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42084func (hiodls HDInsightOnDemandLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
42085	return nil, false
42086}
42087
42088// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42089func (hiodls HDInsightOnDemandLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
42090	return nil, false
42091}
42092
42093// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42094func (hiodls HDInsightOnDemandLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
42095	return nil, false
42096}
42097
42098// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42099func (hiodls HDInsightOnDemandLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
42100	return &hiodls, true
42101}
42102
42103// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42104func (hiodls HDInsightOnDemandLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
42105	return nil, false
42106}
42107
42108// AsNetezzaLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42109func (hiodls HDInsightOnDemandLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
42110	return nil, false
42111}
42112
42113// AsVerticaLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42114func (hiodls HDInsightOnDemandLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
42115	return nil, false
42116}
42117
42118// AsZohoLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42119func (hiodls HDInsightOnDemandLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
42120	return nil, false
42121}
42122
42123// AsXeroLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42124func (hiodls HDInsightOnDemandLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
42125	return nil, false
42126}
42127
42128// AsSquareLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42129func (hiodls HDInsightOnDemandLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
42130	return nil, false
42131}
42132
42133// AsSparkLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42134func (hiodls HDInsightOnDemandLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
42135	return nil, false
42136}
42137
42138// AsShopifyLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42139func (hiodls HDInsightOnDemandLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
42140	return nil, false
42141}
42142
42143// AsServiceNowLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42144func (hiodls HDInsightOnDemandLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
42145	return nil, false
42146}
42147
42148// AsQuickBooksLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42149func (hiodls HDInsightOnDemandLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
42150	return nil, false
42151}
42152
42153// AsPrestoLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42154func (hiodls HDInsightOnDemandLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
42155	return nil, false
42156}
42157
42158// AsPhoenixLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42159func (hiodls HDInsightOnDemandLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
42160	return nil, false
42161}
42162
42163// AsPaypalLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42164func (hiodls HDInsightOnDemandLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
42165	return nil, false
42166}
42167
42168// AsMarketoLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42169func (hiodls HDInsightOnDemandLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
42170	return nil, false
42171}
42172
42173// AsMariaDBLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42174func (hiodls HDInsightOnDemandLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
42175	return nil, false
42176}
42177
42178// AsMagentoLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42179func (hiodls HDInsightOnDemandLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
42180	return nil, false
42181}
42182
42183// AsJiraLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42184func (hiodls HDInsightOnDemandLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
42185	return nil, false
42186}
42187
42188// AsImpalaLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42189func (hiodls HDInsightOnDemandLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
42190	return nil, false
42191}
42192
42193// AsHubspotLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42194func (hiodls HDInsightOnDemandLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
42195	return nil, false
42196}
42197
42198// AsHiveLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42199func (hiodls HDInsightOnDemandLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
42200	return nil, false
42201}
42202
42203// AsHBaseLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42204func (hiodls HDInsightOnDemandLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
42205	return nil, false
42206}
42207
42208// AsGreenplumLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42209func (hiodls HDInsightOnDemandLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
42210	return nil, false
42211}
42212
42213// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42214func (hiodls HDInsightOnDemandLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
42215	return nil, false
42216}
42217
42218// AsEloquaLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42219func (hiodls HDInsightOnDemandLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
42220	return nil, false
42221}
42222
42223// AsDrillLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42224func (hiodls HDInsightOnDemandLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
42225	return nil, false
42226}
42227
42228// AsCouchbaseLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42229func (hiodls HDInsightOnDemandLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
42230	return nil, false
42231}
42232
42233// AsConcurLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42234func (hiodls HDInsightOnDemandLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
42235	return nil, false
42236}
42237
42238// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42239func (hiodls HDInsightOnDemandLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
42240	return nil, false
42241}
42242
42243// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42244func (hiodls HDInsightOnDemandLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
42245	return nil, false
42246}
42247
42248// AsSapHanaLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42249func (hiodls HDInsightOnDemandLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
42250	return nil, false
42251}
42252
42253// AsSapBWLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42254func (hiodls HDInsightOnDemandLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
42255	return nil, false
42256}
42257
42258// AsSftpServerLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42259func (hiodls HDInsightOnDemandLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
42260	return nil, false
42261}
42262
42263// AsFtpServerLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42264func (hiodls HDInsightOnDemandLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
42265	return nil, false
42266}
42267
42268// AsHTTPLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42269func (hiodls HDInsightOnDemandLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
42270	return nil, false
42271}
42272
42273// AsAzureSearchLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42274func (hiodls HDInsightOnDemandLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
42275	return nil, false
42276}
42277
42278// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42279func (hiodls HDInsightOnDemandLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
42280	return nil, false
42281}
42282
42283// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42284func (hiodls HDInsightOnDemandLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
42285	return nil, false
42286}
42287
42288// AsAmazonS3LinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42289func (hiodls HDInsightOnDemandLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
42290	return nil, false
42291}
42292
42293// AsSapEccLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42294func (hiodls HDInsightOnDemandLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
42295	return nil, false
42296}
42297
42298// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42299func (hiodls HDInsightOnDemandLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
42300	return nil, false
42301}
42302
42303// AsSalesforceLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42304func (hiodls HDInsightOnDemandLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
42305	return nil, false
42306}
42307
42308// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42309func (hiodls HDInsightOnDemandLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
42310	return nil, false
42311}
42312
42313// AsMongoDbLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42314func (hiodls HDInsightOnDemandLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
42315	return nil, false
42316}
42317
42318// AsCassandraLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42319func (hiodls HDInsightOnDemandLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
42320	return nil, false
42321}
42322
42323// AsWebLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42324func (hiodls HDInsightOnDemandLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
42325	return nil, false
42326}
42327
42328// AsODataLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42329func (hiodls HDInsightOnDemandLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
42330	return nil, false
42331}
42332
42333// AsHdfsLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42334func (hiodls HDInsightOnDemandLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
42335	return nil, false
42336}
42337
42338// AsOdbcLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42339func (hiodls HDInsightOnDemandLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
42340	return nil, false
42341}
42342
42343// AsAzureMLLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42344func (hiodls HDInsightOnDemandLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
42345	return nil, false
42346}
42347
42348// AsTeradataLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42349func (hiodls HDInsightOnDemandLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
42350	return nil, false
42351}
42352
42353// AsDb2LinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42354func (hiodls HDInsightOnDemandLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
42355	return nil, false
42356}
42357
42358// AsSybaseLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42359func (hiodls HDInsightOnDemandLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
42360	return nil, false
42361}
42362
42363// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42364func (hiodls HDInsightOnDemandLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
42365	return nil, false
42366}
42367
42368// AsMySQLLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42369func (hiodls HDInsightOnDemandLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
42370	return nil, false
42371}
42372
42373// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42374func (hiodls HDInsightOnDemandLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
42375	return nil, false
42376}
42377
42378// AsOracleLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42379func (hiodls HDInsightOnDemandLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
42380	return nil, false
42381}
42382
42383// AsFileServerLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42384func (hiodls HDInsightOnDemandLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
42385	return nil, false
42386}
42387
42388// AsHDInsightLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42389func (hiodls HDInsightOnDemandLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
42390	return nil, false
42391}
42392
42393// AsDynamicsLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42394func (hiodls HDInsightOnDemandLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
42395	return nil, false
42396}
42397
42398// AsCosmosDbLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42399func (hiodls HDInsightOnDemandLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
42400	return nil, false
42401}
42402
42403// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42404func (hiodls HDInsightOnDemandLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
42405	return nil, false
42406}
42407
42408// AsAzureBatchLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42409func (hiodls HDInsightOnDemandLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
42410	return nil, false
42411}
42412
42413// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42414func (hiodls HDInsightOnDemandLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
42415	return nil, false
42416}
42417
42418// AsSQLServerLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42419func (hiodls HDInsightOnDemandLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
42420	return nil, false
42421}
42422
42423// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42424func (hiodls HDInsightOnDemandLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
42425	return nil, false
42426}
42427
42428// AsAzureStorageLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42429func (hiodls HDInsightOnDemandLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
42430	return nil, false
42431}
42432
42433// AsLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42434func (hiodls HDInsightOnDemandLinkedService) AsLinkedService() (*LinkedService, bool) {
42435	return nil, false
42436}
42437
42438// AsBasicLinkedService is the BasicLinkedService implementation for HDInsightOnDemandLinkedService.
42439func (hiodls HDInsightOnDemandLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
42440	return &hiodls, true
42441}
42442
42443// UnmarshalJSON is the custom unmarshaler for HDInsightOnDemandLinkedService struct.
42444func (hiodls *HDInsightOnDemandLinkedService) UnmarshalJSON(body []byte) error {
42445	var m map[string]*json.RawMessage
42446	err := json.Unmarshal(body, &m)
42447	if err != nil {
42448		return err
42449	}
42450	for k, v := range m {
42451		switch k {
42452		case "typeProperties":
42453			if v != nil {
42454				var hDInsightOnDemandLinkedServiceTypeProperties HDInsightOnDemandLinkedServiceTypeProperties
42455				err = json.Unmarshal(*v, &hDInsightOnDemandLinkedServiceTypeProperties)
42456				if err != nil {
42457					return err
42458				}
42459				hiodls.HDInsightOnDemandLinkedServiceTypeProperties = &hDInsightOnDemandLinkedServiceTypeProperties
42460			}
42461		default:
42462			if v != nil {
42463				var additionalProperties interface{}
42464				err = json.Unmarshal(*v, &additionalProperties)
42465				if err != nil {
42466					return err
42467				}
42468				if hiodls.AdditionalProperties == nil {
42469					hiodls.AdditionalProperties = make(map[string]interface{})
42470				}
42471				hiodls.AdditionalProperties[k] = additionalProperties
42472			}
42473		case "connectVia":
42474			if v != nil {
42475				var connectVia IntegrationRuntimeReference
42476				err = json.Unmarshal(*v, &connectVia)
42477				if err != nil {
42478					return err
42479				}
42480				hiodls.ConnectVia = &connectVia
42481			}
42482		case "description":
42483			if v != nil {
42484				var description string
42485				err = json.Unmarshal(*v, &description)
42486				if err != nil {
42487					return err
42488				}
42489				hiodls.Description = &description
42490			}
42491		case "parameters":
42492			if v != nil {
42493				var parameters map[string]*ParameterSpecification
42494				err = json.Unmarshal(*v, &parameters)
42495				if err != nil {
42496					return err
42497				}
42498				hiodls.Parameters = parameters
42499			}
42500		case "annotations":
42501			if v != nil {
42502				var annotations []interface{}
42503				err = json.Unmarshal(*v, &annotations)
42504				if err != nil {
42505					return err
42506				}
42507				hiodls.Annotations = &annotations
42508			}
42509		case "type":
42510			if v != nil {
42511				var typeVar TypeBasicLinkedService
42512				err = json.Unmarshal(*v, &typeVar)
42513				if err != nil {
42514					return err
42515				}
42516				hiodls.Type = typeVar
42517			}
42518		}
42519	}
42520
42521	return nil
42522}
42523
42524// HDInsightOnDemandLinkedServiceTypeProperties hDInsight ondemand linked service properties.
42525type HDInsightOnDemandLinkedServiceTypeProperties struct {
42526	// ClusterSize - Number of worker/data nodes in the cluster. Suggestion value: 4. Type: string (or Expression with resultType string).
42527	ClusterSize interface{} `json:"clusterSize,omitempty"`
42528	// TimeToLive - The allowed idle time for the on-demand HDInsight cluster. Specifies how long the on-demand HDInsight cluster stays alive after completion of an activity run if there are no other active jobs in the cluster. The minimum value is 5 mins. Type: string (or Expression with resultType string).
42529	TimeToLive interface{} `json:"timeToLive,omitempty"`
42530	// Version - Version of the HDInsight cluster.  Type: string (or Expression with resultType string).
42531	Version interface{} `json:"version,omitempty"`
42532	// LinkedServiceName - Azure Storage linked service to be used by the on-demand cluster for storing and processing data.
42533	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
42534	// HostSubscriptionID - The customer’s subscription to host the cluster. Type: string (or Expression with resultType string).
42535	HostSubscriptionID interface{} `json:"hostSubscriptionId,omitempty"`
42536	// ServicePrincipalID - The service principal id for the hostSubscriptionId. Type: string (or Expression with resultType string).
42537	ServicePrincipalID interface{} `json:"servicePrincipalId,omitempty"`
42538	// ServicePrincipalKey - The key for the service principal id.
42539	ServicePrincipalKey BasicSecretBase `json:"servicePrincipalKey,omitempty"`
42540	// Tenant - The Tenant id/name to which the service principal belongs. Type: string (or Expression with resultType string).
42541	Tenant interface{} `json:"tenant,omitempty"`
42542	// ClusterResourceGroup - The resource group where the cluster belongs. Type: string (or Expression with resultType string).
42543	ClusterResourceGroup interface{} `json:"clusterResourceGroup,omitempty"`
42544	// ClusterNamePrefix - The prefix of cluster name, postfix will be distinct with timestamp. Type: string (or Expression with resultType string).
42545	ClusterNamePrefix interface{} `json:"clusterNamePrefix,omitempty"`
42546	// ClusterUserName - The username to access the cluster. Type: string (or Expression with resultType string).
42547	ClusterUserName interface{} `json:"clusterUserName,omitempty"`
42548	// ClusterPassword - The password to access the cluster.
42549	ClusterPassword BasicSecretBase `json:"clusterPassword,omitempty"`
42550	// ClusterSSHUserName - The username to SSH remotely connect to cluster’s node (for Linux). Type: string (or Expression with resultType string).
42551	ClusterSSHUserName interface{} `json:"clusterSshUserName,omitempty"`
42552	// ClusterSSHPassword - The password to SSH remotely connect cluster’s node (for Linux).
42553	ClusterSSHPassword BasicSecretBase `json:"clusterSshPassword,omitempty"`
42554	// AdditionalLinkedServiceNames - Specifies additional storage accounts for the HDInsight linked service so that the Data Factory service can register them on your behalf.
42555	AdditionalLinkedServiceNames *[]LinkedServiceReference `json:"additionalLinkedServiceNames,omitempty"`
42556	// HcatalogLinkedServiceName - The name of Azure SQL linked service that point to the HCatalog database. The on-demand HDInsight cluster is created by using the Azure SQL database as the metastore.
42557	HcatalogLinkedServiceName *LinkedServiceReference `json:"hcatalogLinkedServiceName,omitempty"`
42558	// ClusterType - The cluster type. Type: string (or Expression with resultType string).
42559	ClusterType interface{} `json:"clusterType,omitempty"`
42560	// SparkVersion - The version of spark if the cluster type is 'spark'. Type: string (or Expression with resultType string).
42561	SparkVersion interface{} `json:"sparkVersion,omitempty"`
42562	// CoreConfiguration - Specifies the core configuration parameters (as in core-site.xml) for the HDInsight cluster to be created.
42563	CoreConfiguration interface{} `json:"coreConfiguration,omitempty"`
42564	// HBaseConfiguration - Specifies the HBase configuration parameters (hbase-site.xml) for the HDInsight cluster.
42565	HBaseConfiguration interface{} `json:"hBaseConfiguration,omitempty"`
42566	// HdfsConfiguration - Specifies the HDFS configuration parameters (hdfs-site.xml) for the HDInsight cluster.
42567	HdfsConfiguration interface{} `json:"hdfsConfiguration,omitempty"`
42568	// HiveConfiguration - Specifies the hive configuration parameters (hive-site.xml) for the HDInsight cluster.
42569	HiveConfiguration interface{} `json:"hiveConfiguration,omitempty"`
42570	// MapReduceConfiguration - Specifies the MapReduce configuration parameters (mapred-site.xml) for the HDInsight cluster.
42571	MapReduceConfiguration interface{} `json:"mapReduceConfiguration,omitempty"`
42572	// OozieConfiguration - Specifies the Oozie configuration parameters (oozie-site.xml) for the HDInsight cluster.
42573	OozieConfiguration interface{} `json:"oozieConfiguration,omitempty"`
42574	// StormConfiguration - Specifies the Storm configuration parameters (storm-site.xml) for the HDInsight cluster.
42575	StormConfiguration interface{} `json:"stormConfiguration,omitempty"`
42576	// YarnConfiguration - Specifies the Yarn configuration parameters (yarn-site.xml) for the HDInsight cluster.
42577	YarnConfiguration interface{} `json:"yarnConfiguration,omitempty"`
42578	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
42579	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
42580	// HeadNodeSize - Specifies the size of the head node for the HDInsight cluster.
42581	HeadNodeSize interface{} `json:"headNodeSize,omitempty"`
42582	// DataNodeSize - Specifies the size of the data node for the HDInsight cluster.
42583	DataNodeSize interface{} `json:"dataNodeSize,omitempty"`
42584	// ZookeeperNodeSize - Specifies the size of the Zoo Keeper node for the HDInsight cluster.
42585	ZookeeperNodeSize interface{} `json:"zookeeperNodeSize,omitempty"`
42586}
42587
42588// UnmarshalJSON is the custom unmarshaler for HDInsightOnDemandLinkedServiceTypeProperties struct.
42589func (hiodlstp *HDInsightOnDemandLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
42590	var m map[string]*json.RawMessage
42591	err := json.Unmarshal(body, &m)
42592	if err != nil {
42593		return err
42594	}
42595	for k, v := range m {
42596		switch k {
42597		case "clusterSize":
42598			if v != nil {
42599				var clusterSize interface{}
42600				err = json.Unmarshal(*v, &clusterSize)
42601				if err != nil {
42602					return err
42603				}
42604				hiodlstp.ClusterSize = clusterSize
42605			}
42606		case "timeToLive":
42607			if v != nil {
42608				var timeToLive interface{}
42609				err = json.Unmarshal(*v, &timeToLive)
42610				if err != nil {
42611					return err
42612				}
42613				hiodlstp.TimeToLive = timeToLive
42614			}
42615		case "version":
42616			if v != nil {
42617				var version interface{}
42618				err = json.Unmarshal(*v, &version)
42619				if err != nil {
42620					return err
42621				}
42622				hiodlstp.Version = version
42623			}
42624		case "linkedServiceName":
42625			if v != nil {
42626				var linkedServiceName LinkedServiceReference
42627				err = json.Unmarshal(*v, &linkedServiceName)
42628				if err != nil {
42629					return err
42630				}
42631				hiodlstp.LinkedServiceName = &linkedServiceName
42632			}
42633		case "hostSubscriptionId":
42634			if v != nil {
42635				var hostSubscriptionID interface{}
42636				err = json.Unmarshal(*v, &hostSubscriptionID)
42637				if err != nil {
42638					return err
42639				}
42640				hiodlstp.HostSubscriptionID = hostSubscriptionID
42641			}
42642		case "servicePrincipalId":
42643			if v != nil {
42644				var servicePrincipalID interface{}
42645				err = json.Unmarshal(*v, &servicePrincipalID)
42646				if err != nil {
42647					return err
42648				}
42649				hiodlstp.ServicePrincipalID = servicePrincipalID
42650			}
42651		case "servicePrincipalKey":
42652			if v != nil {
42653				servicePrincipalKey, err := unmarshalBasicSecretBase(*v)
42654				if err != nil {
42655					return err
42656				}
42657				hiodlstp.ServicePrincipalKey = servicePrincipalKey
42658			}
42659		case "tenant":
42660			if v != nil {
42661				var tenant interface{}
42662				err = json.Unmarshal(*v, &tenant)
42663				if err != nil {
42664					return err
42665				}
42666				hiodlstp.Tenant = tenant
42667			}
42668		case "clusterResourceGroup":
42669			if v != nil {
42670				var clusterResourceGroup interface{}
42671				err = json.Unmarshal(*v, &clusterResourceGroup)
42672				if err != nil {
42673					return err
42674				}
42675				hiodlstp.ClusterResourceGroup = clusterResourceGroup
42676			}
42677		case "clusterNamePrefix":
42678			if v != nil {
42679				var clusterNamePrefix interface{}
42680				err = json.Unmarshal(*v, &clusterNamePrefix)
42681				if err != nil {
42682					return err
42683				}
42684				hiodlstp.ClusterNamePrefix = clusterNamePrefix
42685			}
42686		case "clusterUserName":
42687			if v != nil {
42688				var clusterUserName interface{}
42689				err = json.Unmarshal(*v, &clusterUserName)
42690				if err != nil {
42691					return err
42692				}
42693				hiodlstp.ClusterUserName = clusterUserName
42694			}
42695		case "clusterPassword":
42696			if v != nil {
42697				clusterPassword, err := unmarshalBasicSecretBase(*v)
42698				if err != nil {
42699					return err
42700				}
42701				hiodlstp.ClusterPassword = clusterPassword
42702			}
42703		case "clusterSshUserName":
42704			if v != nil {
42705				var clusterSSHUserName interface{}
42706				err = json.Unmarshal(*v, &clusterSSHUserName)
42707				if err != nil {
42708					return err
42709				}
42710				hiodlstp.ClusterSSHUserName = clusterSSHUserName
42711			}
42712		case "clusterSshPassword":
42713			if v != nil {
42714				clusterSSHPassword, err := unmarshalBasicSecretBase(*v)
42715				if err != nil {
42716					return err
42717				}
42718				hiodlstp.ClusterSSHPassword = clusterSSHPassword
42719			}
42720		case "additionalLinkedServiceNames":
42721			if v != nil {
42722				var additionalLinkedServiceNames []LinkedServiceReference
42723				err = json.Unmarshal(*v, &additionalLinkedServiceNames)
42724				if err != nil {
42725					return err
42726				}
42727				hiodlstp.AdditionalLinkedServiceNames = &additionalLinkedServiceNames
42728			}
42729		case "hcatalogLinkedServiceName":
42730			if v != nil {
42731				var hcatalogLinkedServiceName LinkedServiceReference
42732				err = json.Unmarshal(*v, &hcatalogLinkedServiceName)
42733				if err != nil {
42734					return err
42735				}
42736				hiodlstp.HcatalogLinkedServiceName = &hcatalogLinkedServiceName
42737			}
42738		case "clusterType":
42739			if v != nil {
42740				var clusterType interface{}
42741				err = json.Unmarshal(*v, &clusterType)
42742				if err != nil {
42743					return err
42744				}
42745				hiodlstp.ClusterType = clusterType
42746			}
42747		case "sparkVersion":
42748			if v != nil {
42749				var sparkVersion interface{}
42750				err = json.Unmarshal(*v, &sparkVersion)
42751				if err != nil {
42752					return err
42753				}
42754				hiodlstp.SparkVersion = sparkVersion
42755			}
42756		case "coreConfiguration":
42757			if v != nil {
42758				var coreConfiguration interface{}
42759				err = json.Unmarshal(*v, &coreConfiguration)
42760				if err != nil {
42761					return err
42762				}
42763				hiodlstp.CoreConfiguration = coreConfiguration
42764			}
42765		case "hBaseConfiguration":
42766			if v != nil {
42767				var hBaseConfiguration interface{}
42768				err = json.Unmarshal(*v, &hBaseConfiguration)
42769				if err != nil {
42770					return err
42771				}
42772				hiodlstp.HBaseConfiguration = hBaseConfiguration
42773			}
42774		case "hdfsConfiguration":
42775			if v != nil {
42776				var hdfsConfiguration interface{}
42777				err = json.Unmarshal(*v, &hdfsConfiguration)
42778				if err != nil {
42779					return err
42780				}
42781				hiodlstp.HdfsConfiguration = hdfsConfiguration
42782			}
42783		case "hiveConfiguration":
42784			if v != nil {
42785				var hiveConfiguration interface{}
42786				err = json.Unmarshal(*v, &hiveConfiguration)
42787				if err != nil {
42788					return err
42789				}
42790				hiodlstp.HiveConfiguration = hiveConfiguration
42791			}
42792		case "mapReduceConfiguration":
42793			if v != nil {
42794				var mapReduceConfiguration interface{}
42795				err = json.Unmarshal(*v, &mapReduceConfiguration)
42796				if err != nil {
42797					return err
42798				}
42799				hiodlstp.MapReduceConfiguration = mapReduceConfiguration
42800			}
42801		case "oozieConfiguration":
42802			if v != nil {
42803				var oozieConfiguration interface{}
42804				err = json.Unmarshal(*v, &oozieConfiguration)
42805				if err != nil {
42806					return err
42807				}
42808				hiodlstp.OozieConfiguration = oozieConfiguration
42809			}
42810		case "stormConfiguration":
42811			if v != nil {
42812				var stormConfiguration interface{}
42813				err = json.Unmarshal(*v, &stormConfiguration)
42814				if err != nil {
42815					return err
42816				}
42817				hiodlstp.StormConfiguration = stormConfiguration
42818			}
42819		case "yarnConfiguration":
42820			if v != nil {
42821				var yarnConfiguration interface{}
42822				err = json.Unmarshal(*v, &yarnConfiguration)
42823				if err != nil {
42824					return err
42825				}
42826				hiodlstp.YarnConfiguration = yarnConfiguration
42827			}
42828		case "encryptedCredential":
42829			if v != nil {
42830				var encryptedCredential interface{}
42831				err = json.Unmarshal(*v, &encryptedCredential)
42832				if err != nil {
42833					return err
42834				}
42835				hiodlstp.EncryptedCredential = encryptedCredential
42836			}
42837		case "headNodeSize":
42838			if v != nil {
42839				var headNodeSize interface{}
42840				err = json.Unmarshal(*v, &headNodeSize)
42841				if err != nil {
42842					return err
42843				}
42844				hiodlstp.HeadNodeSize = headNodeSize
42845			}
42846		case "dataNodeSize":
42847			if v != nil {
42848				var dataNodeSize interface{}
42849				err = json.Unmarshal(*v, &dataNodeSize)
42850				if err != nil {
42851					return err
42852				}
42853				hiodlstp.DataNodeSize = dataNodeSize
42854			}
42855		case "zookeeperNodeSize":
42856			if v != nil {
42857				var zookeeperNodeSize interface{}
42858				err = json.Unmarshal(*v, &zookeeperNodeSize)
42859				if err != nil {
42860					return err
42861				}
42862				hiodlstp.ZookeeperNodeSize = zookeeperNodeSize
42863			}
42864		}
42865	}
42866
42867	return nil
42868}
42869
42870// HDInsightPigActivity hDInsight Pig activity type.
42871type HDInsightPigActivity struct {
42872	// HDInsightPigActivityTypeProperties - HDInsight Pig activity properties.
42873	*HDInsightPigActivityTypeProperties `json:"typeProperties,omitempty"`
42874	// LinkedServiceName - Linked service reference.
42875	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
42876	// Policy - Activity policy.
42877	Policy *ActivityPolicy `json:"policy,omitempty"`
42878	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
42879	AdditionalProperties map[string]interface{} `json:""`
42880	// Name - Activity name.
42881	Name *string `json:"name,omitempty"`
42882	// Description - Activity description.
42883	Description *string `json:"description,omitempty"`
42884	// DependsOn - Activity depends on condition.
42885	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
42886	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
42887	Type TypeBasicActivity `json:"type,omitempty"`
42888}
42889
42890// MarshalJSON is the custom marshaler for HDInsightPigActivity.
42891func (hipa HDInsightPigActivity) MarshalJSON() ([]byte, error) {
42892	hipa.Type = TypeHDInsightPig
42893	objectMap := make(map[string]interface{})
42894	if hipa.HDInsightPigActivityTypeProperties != nil {
42895		objectMap["typeProperties"] = hipa.HDInsightPigActivityTypeProperties
42896	}
42897	if hipa.LinkedServiceName != nil {
42898		objectMap["linkedServiceName"] = hipa.LinkedServiceName
42899	}
42900	if hipa.Policy != nil {
42901		objectMap["policy"] = hipa.Policy
42902	}
42903	if hipa.Name != nil {
42904		objectMap["name"] = hipa.Name
42905	}
42906	if hipa.Description != nil {
42907		objectMap["description"] = hipa.Description
42908	}
42909	if hipa.DependsOn != nil {
42910		objectMap["dependsOn"] = hipa.DependsOn
42911	}
42912	if hipa.Type != "" {
42913		objectMap["type"] = hipa.Type
42914	}
42915	for k, v := range hipa.AdditionalProperties {
42916		objectMap[k] = v
42917	}
42918	return json.Marshal(objectMap)
42919}
42920
42921// AsDatabricksNotebookActivity is the BasicActivity implementation for HDInsightPigActivity.
42922func (hipa HDInsightPigActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
42923	return nil, false
42924}
42925
42926// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for HDInsightPigActivity.
42927func (hipa HDInsightPigActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
42928	return nil, false
42929}
42930
42931// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for HDInsightPigActivity.
42932func (hipa HDInsightPigActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
42933	return nil, false
42934}
42935
42936// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for HDInsightPigActivity.
42937func (hipa HDInsightPigActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
42938	return nil, false
42939}
42940
42941// AsGetMetadataActivity is the BasicActivity implementation for HDInsightPigActivity.
42942func (hipa HDInsightPigActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
42943	return nil, false
42944}
42945
42946// AsWebActivity is the BasicActivity implementation for HDInsightPigActivity.
42947func (hipa HDInsightPigActivity) AsWebActivity() (*WebActivity, bool) {
42948	return nil, false
42949}
42950
42951// AsLookupActivity is the BasicActivity implementation for HDInsightPigActivity.
42952func (hipa HDInsightPigActivity) AsLookupActivity() (*LookupActivity, bool) {
42953	return nil, false
42954}
42955
42956// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for HDInsightPigActivity.
42957func (hipa HDInsightPigActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
42958	return nil, false
42959}
42960
42961// AsCustomActivity is the BasicActivity implementation for HDInsightPigActivity.
42962func (hipa HDInsightPigActivity) AsCustomActivity() (*CustomActivity, bool) {
42963	return nil, false
42964}
42965
42966// AsExecuteSSISPackageActivity is the BasicActivity implementation for HDInsightPigActivity.
42967func (hipa HDInsightPigActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
42968	return nil, false
42969}
42970
42971// AsHDInsightSparkActivity is the BasicActivity implementation for HDInsightPigActivity.
42972func (hipa HDInsightPigActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
42973	return nil, false
42974}
42975
42976// AsHDInsightStreamingActivity is the BasicActivity implementation for HDInsightPigActivity.
42977func (hipa HDInsightPigActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
42978	return nil, false
42979}
42980
42981// AsHDInsightMapReduceActivity is the BasicActivity implementation for HDInsightPigActivity.
42982func (hipa HDInsightPigActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
42983	return nil, false
42984}
42985
42986// AsHDInsightPigActivity is the BasicActivity implementation for HDInsightPigActivity.
42987func (hipa HDInsightPigActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
42988	return &hipa, true
42989}
42990
42991// AsHDInsightHiveActivity is the BasicActivity implementation for HDInsightPigActivity.
42992func (hipa HDInsightPigActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
42993	return nil, false
42994}
42995
42996// AsCopyActivity is the BasicActivity implementation for HDInsightPigActivity.
42997func (hipa HDInsightPigActivity) AsCopyActivity() (*CopyActivity, bool) {
42998	return nil, false
42999}
43000
43001// AsExecutionActivity is the BasicActivity implementation for HDInsightPigActivity.
43002func (hipa HDInsightPigActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
43003	return nil, false
43004}
43005
43006// AsBasicExecutionActivity is the BasicActivity implementation for HDInsightPigActivity.
43007func (hipa HDInsightPigActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
43008	return &hipa, true
43009}
43010
43011// AsFilterActivity is the BasicActivity implementation for HDInsightPigActivity.
43012func (hipa HDInsightPigActivity) AsFilterActivity() (*FilterActivity, bool) {
43013	return nil, false
43014}
43015
43016// AsUntilActivity is the BasicActivity implementation for HDInsightPigActivity.
43017func (hipa HDInsightPigActivity) AsUntilActivity() (*UntilActivity, bool) {
43018	return nil, false
43019}
43020
43021// AsWaitActivity is the BasicActivity implementation for HDInsightPigActivity.
43022func (hipa HDInsightPigActivity) AsWaitActivity() (*WaitActivity, bool) {
43023	return nil, false
43024}
43025
43026// AsForEachActivity is the BasicActivity implementation for HDInsightPigActivity.
43027func (hipa HDInsightPigActivity) AsForEachActivity() (*ForEachActivity, bool) {
43028	return nil, false
43029}
43030
43031// AsIfConditionActivity is the BasicActivity implementation for HDInsightPigActivity.
43032func (hipa HDInsightPigActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
43033	return nil, false
43034}
43035
43036// AsExecutePipelineActivity is the BasicActivity implementation for HDInsightPigActivity.
43037func (hipa HDInsightPigActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
43038	return nil, false
43039}
43040
43041// AsControlActivity is the BasicActivity implementation for HDInsightPigActivity.
43042func (hipa HDInsightPigActivity) AsControlActivity() (*ControlActivity, bool) {
43043	return nil, false
43044}
43045
43046// AsBasicControlActivity is the BasicActivity implementation for HDInsightPigActivity.
43047func (hipa HDInsightPigActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
43048	return nil, false
43049}
43050
43051// AsActivity is the BasicActivity implementation for HDInsightPigActivity.
43052func (hipa HDInsightPigActivity) AsActivity() (*Activity, bool) {
43053	return nil, false
43054}
43055
43056// AsBasicActivity is the BasicActivity implementation for HDInsightPigActivity.
43057func (hipa HDInsightPigActivity) AsBasicActivity() (BasicActivity, bool) {
43058	return &hipa, true
43059}
43060
43061// UnmarshalJSON is the custom unmarshaler for HDInsightPigActivity struct.
43062func (hipa *HDInsightPigActivity) UnmarshalJSON(body []byte) error {
43063	var m map[string]*json.RawMessage
43064	err := json.Unmarshal(body, &m)
43065	if err != nil {
43066		return err
43067	}
43068	for k, v := range m {
43069		switch k {
43070		case "typeProperties":
43071			if v != nil {
43072				var hDInsightPigActivityTypeProperties HDInsightPigActivityTypeProperties
43073				err = json.Unmarshal(*v, &hDInsightPigActivityTypeProperties)
43074				if err != nil {
43075					return err
43076				}
43077				hipa.HDInsightPigActivityTypeProperties = &hDInsightPigActivityTypeProperties
43078			}
43079		case "linkedServiceName":
43080			if v != nil {
43081				var linkedServiceName LinkedServiceReference
43082				err = json.Unmarshal(*v, &linkedServiceName)
43083				if err != nil {
43084					return err
43085				}
43086				hipa.LinkedServiceName = &linkedServiceName
43087			}
43088		case "policy":
43089			if v != nil {
43090				var policy ActivityPolicy
43091				err = json.Unmarshal(*v, &policy)
43092				if err != nil {
43093					return err
43094				}
43095				hipa.Policy = &policy
43096			}
43097		default:
43098			if v != nil {
43099				var additionalProperties interface{}
43100				err = json.Unmarshal(*v, &additionalProperties)
43101				if err != nil {
43102					return err
43103				}
43104				if hipa.AdditionalProperties == nil {
43105					hipa.AdditionalProperties = make(map[string]interface{})
43106				}
43107				hipa.AdditionalProperties[k] = additionalProperties
43108			}
43109		case "name":
43110			if v != nil {
43111				var name string
43112				err = json.Unmarshal(*v, &name)
43113				if err != nil {
43114					return err
43115				}
43116				hipa.Name = &name
43117			}
43118		case "description":
43119			if v != nil {
43120				var description string
43121				err = json.Unmarshal(*v, &description)
43122				if err != nil {
43123					return err
43124				}
43125				hipa.Description = &description
43126			}
43127		case "dependsOn":
43128			if v != nil {
43129				var dependsOn []ActivityDependency
43130				err = json.Unmarshal(*v, &dependsOn)
43131				if err != nil {
43132					return err
43133				}
43134				hipa.DependsOn = &dependsOn
43135			}
43136		case "type":
43137			if v != nil {
43138				var typeVar TypeBasicActivity
43139				err = json.Unmarshal(*v, &typeVar)
43140				if err != nil {
43141					return err
43142				}
43143				hipa.Type = typeVar
43144			}
43145		}
43146	}
43147
43148	return nil
43149}
43150
43151// HDInsightPigActivityTypeProperties hDInsight Pig activity properties.
43152type HDInsightPigActivityTypeProperties struct {
43153	// StorageLinkedServices - Storage linked service references.
43154	StorageLinkedServices *[]LinkedServiceReference `json:"storageLinkedServices,omitempty"`
43155	// Arguments - User specified arguments to HDInsightActivity.
43156	Arguments *[]interface{} `json:"arguments,omitempty"`
43157	// GetDebugInfo - Debug info option. Possible values include: 'None', 'Always', 'Failure'
43158	GetDebugInfo HDInsightActivityDebugInfoOption `json:"getDebugInfo,omitempty"`
43159	// ScriptPath - Script path. Type: string (or Expression with resultType string).
43160	ScriptPath interface{} `json:"scriptPath,omitempty"`
43161	// ScriptLinkedService - Script linked service reference.
43162	ScriptLinkedService *LinkedServiceReference `json:"scriptLinkedService,omitempty"`
43163	// Defines - Allows user to specify defines for Pig job request.
43164	Defines map[string]interface{} `json:"defines"`
43165}
43166
43167// MarshalJSON is the custom marshaler for HDInsightPigActivityTypeProperties.
43168func (hipatp HDInsightPigActivityTypeProperties) MarshalJSON() ([]byte, error) {
43169	objectMap := make(map[string]interface{})
43170	if hipatp.StorageLinkedServices != nil {
43171		objectMap["storageLinkedServices"] = hipatp.StorageLinkedServices
43172	}
43173	if hipatp.Arguments != nil {
43174		objectMap["arguments"] = hipatp.Arguments
43175	}
43176	if hipatp.GetDebugInfo != "" {
43177		objectMap["getDebugInfo"] = hipatp.GetDebugInfo
43178	}
43179	objectMap["scriptPath"] = hipatp.ScriptPath
43180	if hipatp.ScriptLinkedService != nil {
43181		objectMap["scriptLinkedService"] = hipatp.ScriptLinkedService
43182	}
43183	if hipatp.Defines != nil {
43184		objectMap["defines"] = hipatp.Defines
43185	}
43186	return json.Marshal(objectMap)
43187}
43188
43189// HDInsightSparkActivity hDInsight Spark activity.
43190type HDInsightSparkActivity struct {
43191	// HDInsightSparkActivityTypeProperties - HDInsight spark activity properties.
43192	*HDInsightSparkActivityTypeProperties `json:"typeProperties,omitempty"`
43193	// LinkedServiceName - Linked service reference.
43194	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
43195	// Policy - Activity policy.
43196	Policy *ActivityPolicy `json:"policy,omitempty"`
43197	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
43198	AdditionalProperties map[string]interface{} `json:""`
43199	// Name - Activity name.
43200	Name *string `json:"name,omitempty"`
43201	// Description - Activity description.
43202	Description *string `json:"description,omitempty"`
43203	// DependsOn - Activity depends on condition.
43204	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
43205	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
43206	Type TypeBasicActivity `json:"type,omitempty"`
43207}
43208
43209// MarshalJSON is the custom marshaler for HDInsightSparkActivity.
43210func (hisa HDInsightSparkActivity) MarshalJSON() ([]byte, error) {
43211	hisa.Type = TypeHDInsightSpark
43212	objectMap := make(map[string]interface{})
43213	if hisa.HDInsightSparkActivityTypeProperties != nil {
43214		objectMap["typeProperties"] = hisa.HDInsightSparkActivityTypeProperties
43215	}
43216	if hisa.LinkedServiceName != nil {
43217		objectMap["linkedServiceName"] = hisa.LinkedServiceName
43218	}
43219	if hisa.Policy != nil {
43220		objectMap["policy"] = hisa.Policy
43221	}
43222	if hisa.Name != nil {
43223		objectMap["name"] = hisa.Name
43224	}
43225	if hisa.Description != nil {
43226		objectMap["description"] = hisa.Description
43227	}
43228	if hisa.DependsOn != nil {
43229		objectMap["dependsOn"] = hisa.DependsOn
43230	}
43231	if hisa.Type != "" {
43232		objectMap["type"] = hisa.Type
43233	}
43234	for k, v := range hisa.AdditionalProperties {
43235		objectMap[k] = v
43236	}
43237	return json.Marshal(objectMap)
43238}
43239
43240// AsDatabricksNotebookActivity is the BasicActivity implementation for HDInsightSparkActivity.
43241func (hisa HDInsightSparkActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
43242	return nil, false
43243}
43244
43245// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for HDInsightSparkActivity.
43246func (hisa HDInsightSparkActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
43247	return nil, false
43248}
43249
43250// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for HDInsightSparkActivity.
43251func (hisa HDInsightSparkActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
43252	return nil, false
43253}
43254
43255// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for HDInsightSparkActivity.
43256func (hisa HDInsightSparkActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
43257	return nil, false
43258}
43259
43260// AsGetMetadataActivity is the BasicActivity implementation for HDInsightSparkActivity.
43261func (hisa HDInsightSparkActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
43262	return nil, false
43263}
43264
43265// AsWebActivity is the BasicActivity implementation for HDInsightSparkActivity.
43266func (hisa HDInsightSparkActivity) AsWebActivity() (*WebActivity, bool) {
43267	return nil, false
43268}
43269
43270// AsLookupActivity is the BasicActivity implementation for HDInsightSparkActivity.
43271func (hisa HDInsightSparkActivity) AsLookupActivity() (*LookupActivity, bool) {
43272	return nil, false
43273}
43274
43275// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for HDInsightSparkActivity.
43276func (hisa HDInsightSparkActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
43277	return nil, false
43278}
43279
43280// AsCustomActivity is the BasicActivity implementation for HDInsightSparkActivity.
43281func (hisa HDInsightSparkActivity) AsCustomActivity() (*CustomActivity, bool) {
43282	return nil, false
43283}
43284
43285// AsExecuteSSISPackageActivity is the BasicActivity implementation for HDInsightSparkActivity.
43286func (hisa HDInsightSparkActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
43287	return nil, false
43288}
43289
43290// AsHDInsightSparkActivity is the BasicActivity implementation for HDInsightSparkActivity.
43291func (hisa HDInsightSparkActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
43292	return &hisa, true
43293}
43294
43295// AsHDInsightStreamingActivity is the BasicActivity implementation for HDInsightSparkActivity.
43296func (hisa HDInsightSparkActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
43297	return nil, false
43298}
43299
43300// AsHDInsightMapReduceActivity is the BasicActivity implementation for HDInsightSparkActivity.
43301func (hisa HDInsightSparkActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
43302	return nil, false
43303}
43304
43305// AsHDInsightPigActivity is the BasicActivity implementation for HDInsightSparkActivity.
43306func (hisa HDInsightSparkActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
43307	return nil, false
43308}
43309
43310// AsHDInsightHiveActivity is the BasicActivity implementation for HDInsightSparkActivity.
43311func (hisa HDInsightSparkActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
43312	return nil, false
43313}
43314
43315// AsCopyActivity is the BasicActivity implementation for HDInsightSparkActivity.
43316func (hisa HDInsightSparkActivity) AsCopyActivity() (*CopyActivity, bool) {
43317	return nil, false
43318}
43319
43320// AsExecutionActivity is the BasicActivity implementation for HDInsightSparkActivity.
43321func (hisa HDInsightSparkActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
43322	return nil, false
43323}
43324
43325// AsBasicExecutionActivity is the BasicActivity implementation for HDInsightSparkActivity.
43326func (hisa HDInsightSparkActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
43327	return &hisa, true
43328}
43329
43330// AsFilterActivity is the BasicActivity implementation for HDInsightSparkActivity.
43331func (hisa HDInsightSparkActivity) AsFilterActivity() (*FilterActivity, bool) {
43332	return nil, false
43333}
43334
43335// AsUntilActivity is the BasicActivity implementation for HDInsightSparkActivity.
43336func (hisa HDInsightSparkActivity) AsUntilActivity() (*UntilActivity, bool) {
43337	return nil, false
43338}
43339
43340// AsWaitActivity is the BasicActivity implementation for HDInsightSparkActivity.
43341func (hisa HDInsightSparkActivity) AsWaitActivity() (*WaitActivity, bool) {
43342	return nil, false
43343}
43344
43345// AsForEachActivity is the BasicActivity implementation for HDInsightSparkActivity.
43346func (hisa HDInsightSparkActivity) AsForEachActivity() (*ForEachActivity, bool) {
43347	return nil, false
43348}
43349
43350// AsIfConditionActivity is the BasicActivity implementation for HDInsightSparkActivity.
43351func (hisa HDInsightSparkActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
43352	return nil, false
43353}
43354
43355// AsExecutePipelineActivity is the BasicActivity implementation for HDInsightSparkActivity.
43356func (hisa HDInsightSparkActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
43357	return nil, false
43358}
43359
43360// AsControlActivity is the BasicActivity implementation for HDInsightSparkActivity.
43361func (hisa HDInsightSparkActivity) AsControlActivity() (*ControlActivity, bool) {
43362	return nil, false
43363}
43364
43365// AsBasicControlActivity is the BasicActivity implementation for HDInsightSparkActivity.
43366func (hisa HDInsightSparkActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
43367	return nil, false
43368}
43369
43370// AsActivity is the BasicActivity implementation for HDInsightSparkActivity.
43371func (hisa HDInsightSparkActivity) AsActivity() (*Activity, bool) {
43372	return nil, false
43373}
43374
43375// AsBasicActivity is the BasicActivity implementation for HDInsightSparkActivity.
43376func (hisa HDInsightSparkActivity) AsBasicActivity() (BasicActivity, bool) {
43377	return &hisa, true
43378}
43379
43380// UnmarshalJSON is the custom unmarshaler for HDInsightSparkActivity struct.
43381func (hisa *HDInsightSparkActivity) UnmarshalJSON(body []byte) error {
43382	var m map[string]*json.RawMessage
43383	err := json.Unmarshal(body, &m)
43384	if err != nil {
43385		return err
43386	}
43387	for k, v := range m {
43388		switch k {
43389		case "typeProperties":
43390			if v != nil {
43391				var hDInsightSparkActivityTypeProperties HDInsightSparkActivityTypeProperties
43392				err = json.Unmarshal(*v, &hDInsightSparkActivityTypeProperties)
43393				if err != nil {
43394					return err
43395				}
43396				hisa.HDInsightSparkActivityTypeProperties = &hDInsightSparkActivityTypeProperties
43397			}
43398		case "linkedServiceName":
43399			if v != nil {
43400				var linkedServiceName LinkedServiceReference
43401				err = json.Unmarshal(*v, &linkedServiceName)
43402				if err != nil {
43403					return err
43404				}
43405				hisa.LinkedServiceName = &linkedServiceName
43406			}
43407		case "policy":
43408			if v != nil {
43409				var policy ActivityPolicy
43410				err = json.Unmarshal(*v, &policy)
43411				if err != nil {
43412					return err
43413				}
43414				hisa.Policy = &policy
43415			}
43416		default:
43417			if v != nil {
43418				var additionalProperties interface{}
43419				err = json.Unmarshal(*v, &additionalProperties)
43420				if err != nil {
43421					return err
43422				}
43423				if hisa.AdditionalProperties == nil {
43424					hisa.AdditionalProperties = make(map[string]interface{})
43425				}
43426				hisa.AdditionalProperties[k] = additionalProperties
43427			}
43428		case "name":
43429			if v != nil {
43430				var name string
43431				err = json.Unmarshal(*v, &name)
43432				if err != nil {
43433					return err
43434				}
43435				hisa.Name = &name
43436			}
43437		case "description":
43438			if v != nil {
43439				var description string
43440				err = json.Unmarshal(*v, &description)
43441				if err != nil {
43442					return err
43443				}
43444				hisa.Description = &description
43445			}
43446		case "dependsOn":
43447			if v != nil {
43448				var dependsOn []ActivityDependency
43449				err = json.Unmarshal(*v, &dependsOn)
43450				if err != nil {
43451					return err
43452				}
43453				hisa.DependsOn = &dependsOn
43454			}
43455		case "type":
43456			if v != nil {
43457				var typeVar TypeBasicActivity
43458				err = json.Unmarshal(*v, &typeVar)
43459				if err != nil {
43460					return err
43461				}
43462				hisa.Type = typeVar
43463			}
43464		}
43465	}
43466
43467	return nil
43468}
43469
43470// HDInsightSparkActivityTypeProperties hDInsight spark activity properties.
43471type HDInsightSparkActivityTypeProperties struct {
43472	// RootPath - The root path in 'sparkJobLinkedService' for all the job’s files. Type: string (or Expression with resultType string).
43473	RootPath interface{} `json:"rootPath,omitempty"`
43474	// EntryFilePath - The relative path to the root folder of the code/package to be executed. Type: string (or Expression with resultType string).
43475	EntryFilePath interface{} `json:"entryFilePath,omitempty"`
43476	// Arguments - The user-specified arguments to HDInsightSparkActivity.
43477	Arguments *[]interface{} `json:"arguments,omitempty"`
43478	// GetDebugInfo - Debug info option. Possible values include: 'None', 'Always', 'Failure'
43479	GetDebugInfo HDInsightActivityDebugInfoOption `json:"getDebugInfo,omitempty"`
43480	// SparkJobLinkedService - The storage linked service for uploading the entry file and dependencies, and for receiving logs.
43481	SparkJobLinkedService *LinkedServiceReference `json:"sparkJobLinkedService,omitempty"`
43482	// ClassName - The application's Java/Spark main class.
43483	ClassName *string `json:"className,omitempty"`
43484	// ProxyUser - The user to impersonate that will execute the job. Type: string (or Expression with resultType string).
43485	ProxyUser interface{} `json:"proxyUser,omitempty"`
43486	// SparkConfig - Spark configuration property.
43487	SparkConfig map[string]interface{} `json:"sparkConfig"`
43488}
43489
43490// MarshalJSON is the custom marshaler for HDInsightSparkActivityTypeProperties.
43491func (hisatp HDInsightSparkActivityTypeProperties) MarshalJSON() ([]byte, error) {
43492	objectMap := make(map[string]interface{})
43493	objectMap["rootPath"] = hisatp.RootPath
43494	objectMap["entryFilePath"] = hisatp.EntryFilePath
43495	if hisatp.Arguments != nil {
43496		objectMap["arguments"] = hisatp.Arguments
43497	}
43498	if hisatp.GetDebugInfo != "" {
43499		objectMap["getDebugInfo"] = hisatp.GetDebugInfo
43500	}
43501	if hisatp.SparkJobLinkedService != nil {
43502		objectMap["sparkJobLinkedService"] = hisatp.SparkJobLinkedService
43503	}
43504	if hisatp.ClassName != nil {
43505		objectMap["className"] = hisatp.ClassName
43506	}
43507	objectMap["proxyUser"] = hisatp.ProxyUser
43508	if hisatp.SparkConfig != nil {
43509		objectMap["sparkConfig"] = hisatp.SparkConfig
43510	}
43511	return json.Marshal(objectMap)
43512}
43513
43514// HDInsightStreamingActivity hDInsight streaming activity type.
43515type HDInsightStreamingActivity struct {
43516	// HDInsightStreamingActivityTypeProperties - HDInsight streaming activity properties.
43517	*HDInsightStreamingActivityTypeProperties `json:"typeProperties,omitempty"`
43518	// LinkedServiceName - Linked service reference.
43519	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
43520	// Policy - Activity policy.
43521	Policy *ActivityPolicy `json:"policy,omitempty"`
43522	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
43523	AdditionalProperties map[string]interface{} `json:""`
43524	// Name - Activity name.
43525	Name *string `json:"name,omitempty"`
43526	// Description - Activity description.
43527	Description *string `json:"description,omitempty"`
43528	// DependsOn - Activity depends on condition.
43529	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
43530	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
43531	Type TypeBasicActivity `json:"type,omitempty"`
43532}
43533
43534// MarshalJSON is the custom marshaler for HDInsightStreamingActivity.
43535func (hisa HDInsightStreamingActivity) MarshalJSON() ([]byte, error) {
43536	hisa.Type = TypeHDInsightStreaming
43537	objectMap := make(map[string]interface{})
43538	if hisa.HDInsightStreamingActivityTypeProperties != nil {
43539		objectMap["typeProperties"] = hisa.HDInsightStreamingActivityTypeProperties
43540	}
43541	if hisa.LinkedServiceName != nil {
43542		objectMap["linkedServiceName"] = hisa.LinkedServiceName
43543	}
43544	if hisa.Policy != nil {
43545		objectMap["policy"] = hisa.Policy
43546	}
43547	if hisa.Name != nil {
43548		objectMap["name"] = hisa.Name
43549	}
43550	if hisa.Description != nil {
43551		objectMap["description"] = hisa.Description
43552	}
43553	if hisa.DependsOn != nil {
43554		objectMap["dependsOn"] = hisa.DependsOn
43555	}
43556	if hisa.Type != "" {
43557		objectMap["type"] = hisa.Type
43558	}
43559	for k, v := range hisa.AdditionalProperties {
43560		objectMap[k] = v
43561	}
43562	return json.Marshal(objectMap)
43563}
43564
43565// AsDatabricksNotebookActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43566func (hisa HDInsightStreamingActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
43567	return nil, false
43568}
43569
43570// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43571func (hisa HDInsightStreamingActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
43572	return nil, false
43573}
43574
43575// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43576func (hisa HDInsightStreamingActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
43577	return nil, false
43578}
43579
43580// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43581func (hisa HDInsightStreamingActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
43582	return nil, false
43583}
43584
43585// AsGetMetadataActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43586func (hisa HDInsightStreamingActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
43587	return nil, false
43588}
43589
43590// AsWebActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43591func (hisa HDInsightStreamingActivity) AsWebActivity() (*WebActivity, bool) {
43592	return nil, false
43593}
43594
43595// AsLookupActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43596func (hisa HDInsightStreamingActivity) AsLookupActivity() (*LookupActivity, bool) {
43597	return nil, false
43598}
43599
43600// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43601func (hisa HDInsightStreamingActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
43602	return nil, false
43603}
43604
43605// AsCustomActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43606func (hisa HDInsightStreamingActivity) AsCustomActivity() (*CustomActivity, bool) {
43607	return nil, false
43608}
43609
43610// AsExecuteSSISPackageActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43611func (hisa HDInsightStreamingActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
43612	return nil, false
43613}
43614
43615// AsHDInsightSparkActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43616func (hisa HDInsightStreamingActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
43617	return nil, false
43618}
43619
43620// AsHDInsightStreamingActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43621func (hisa HDInsightStreamingActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
43622	return &hisa, true
43623}
43624
43625// AsHDInsightMapReduceActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43626func (hisa HDInsightStreamingActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
43627	return nil, false
43628}
43629
43630// AsHDInsightPigActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43631func (hisa HDInsightStreamingActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
43632	return nil, false
43633}
43634
43635// AsHDInsightHiveActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43636func (hisa HDInsightStreamingActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
43637	return nil, false
43638}
43639
43640// AsCopyActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43641func (hisa HDInsightStreamingActivity) AsCopyActivity() (*CopyActivity, bool) {
43642	return nil, false
43643}
43644
43645// AsExecutionActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43646func (hisa HDInsightStreamingActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
43647	return nil, false
43648}
43649
43650// AsBasicExecutionActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43651func (hisa HDInsightStreamingActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
43652	return &hisa, true
43653}
43654
43655// AsFilterActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43656func (hisa HDInsightStreamingActivity) AsFilterActivity() (*FilterActivity, bool) {
43657	return nil, false
43658}
43659
43660// AsUntilActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43661func (hisa HDInsightStreamingActivity) AsUntilActivity() (*UntilActivity, bool) {
43662	return nil, false
43663}
43664
43665// AsWaitActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43666func (hisa HDInsightStreamingActivity) AsWaitActivity() (*WaitActivity, bool) {
43667	return nil, false
43668}
43669
43670// AsForEachActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43671func (hisa HDInsightStreamingActivity) AsForEachActivity() (*ForEachActivity, bool) {
43672	return nil, false
43673}
43674
43675// AsIfConditionActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43676func (hisa HDInsightStreamingActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
43677	return nil, false
43678}
43679
43680// AsExecutePipelineActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43681func (hisa HDInsightStreamingActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
43682	return nil, false
43683}
43684
43685// AsControlActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43686func (hisa HDInsightStreamingActivity) AsControlActivity() (*ControlActivity, bool) {
43687	return nil, false
43688}
43689
43690// AsBasicControlActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43691func (hisa HDInsightStreamingActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
43692	return nil, false
43693}
43694
43695// AsActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43696func (hisa HDInsightStreamingActivity) AsActivity() (*Activity, bool) {
43697	return nil, false
43698}
43699
43700// AsBasicActivity is the BasicActivity implementation for HDInsightStreamingActivity.
43701func (hisa HDInsightStreamingActivity) AsBasicActivity() (BasicActivity, bool) {
43702	return &hisa, true
43703}
43704
43705// UnmarshalJSON is the custom unmarshaler for HDInsightStreamingActivity struct.
43706func (hisa *HDInsightStreamingActivity) UnmarshalJSON(body []byte) error {
43707	var m map[string]*json.RawMessage
43708	err := json.Unmarshal(body, &m)
43709	if err != nil {
43710		return err
43711	}
43712	for k, v := range m {
43713		switch k {
43714		case "typeProperties":
43715			if v != nil {
43716				var hDInsightStreamingActivityTypeProperties HDInsightStreamingActivityTypeProperties
43717				err = json.Unmarshal(*v, &hDInsightStreamingActivityTypeProperties)
43718				if err != nil {
43719					return err
43720				}
43721				hisa.HDInsightStreamingActivityTypeProperties = &hDInsightStreamingActivityTypeProperties
43722			}
43723		case "linkedServiceName":
43724			if v != nil {
43725				var linkedServiceName LinkedServiceReference
43726				err = json.Unmarshal(*v, &linkedServiceName)
43727				if err != nil {
43728					return err
43729				}
43730				hisa.LinkedServiceName = &linkedServiceName
43731			}
43732		case "policy":
43733			if v != nil {
43734				var policy ActivityPolicy
43735				err = json.Unmarshal(*v, &policy)
43736				if err != nil {
43737					return err
43738				}
43739				hisa.Policy = &policy
43740			}
43741		default:
43742			if v != nil {
43743				var additionalProperties interface{}
43744				err = json.Unmarshal(*v, &additionalProperties)
43745				if err != nil {
43746					return err
43747				}
43748				if hisa.AdditionalProperties == nil {
43749					hisa.AdditionalProperties = make(map[string]interface{})
43750				}
43751				hisa.AdditionalProperties[k] = additionalProperties
43752			}
43753		case "name":
43754			if v != nil {
43755				var name string
43756				err = json.Unmarshal(*v, &name)
43757				if err != nil {
43758					return err
43759				}
43760				hisa.Name = &name
43761			}
43762		case "description":
43763			if v != nil {
43764				var description string
43765				err = json.Unmarshal(*v, &description)
43766				if err != nil {
43767					return err
43768				}
43769				hisa.Description = &description
43770			}
43771		case "dependsOn":
43772			if v != nil {
43773				var dependsOn []ActivityDependency
43774				err = json.Unmarshal(*v, &dependsOn)
43775				if err != nil {
43776					return err
43777				}
43778				hisa.DependsOn = &dependsOn
43779			}
43780		case "type":
43781			if v != nil {
43782				var typeVar TypeBasicActivity
43783				err = json.Unmarshal(*v, &typeVar)
43784				if err != nil {
43785					return err
43786				}
43787				hisa.Type = typeVar
43788			}
43789		}
43790	}
43791
43792	return nil
43793}
43794
43795// HDInsightStreamingActivityTypeProperties hDInsight streaming activity properties.
43796type HDInsightStreamingActivityTypeProperties struct {
43797	// StorageLinkedServices - Storage linked service references.
43798	StorageLinkedServices *[]LinkedServiceReference `json:"storageLinkedServices,omitempty"`
43799	// Arguments - User specified arguments to HDInsightActivity.
43800	Arguments *[]interface{} `json:"arguments,omitempty"`
43801	// GetDebugInfo - Debug info option. Possible values include: 'None', 'Always', 'Failure'
43802	GetDebugInfo HDInsightActivityDebugInfoOption `json:"getDebugInfo,omitempty"`
43803	// Mapper - Mapper executable name. Type: string (or Expression with resultType string).
43804	Mapper interface{} `json:"mapper,omitempty"`
43805	// Reducer - Reducer executable name. Type: string (or Expression with resultType string).
43806	Reducer interface{} `json:"reducer,omitempty"`
43807	// Input - Input blob path. Type: string (or Expression with resultType string).
43808	Input interface{} `json:"input,omitempty"`
43809	// Output - Output blob path. Type: string (or Expression with resultType string).
43810	Output interface{} `json:"output,omitempty"`
43811	// FilePaths - Paths to streaming job files. Can be directories.
43812	FilePaths *[]interface{} `json:"filePaths,omitempty"`
43813	// FileLinkedService - Linked service reference where the files are located.
43814	FileLinkedService *LinkedServiceReference `json:"fileLinkedService,omitempty"`
43815	// Combiner - Combiner executable name. Type: string (or Expression with resultType string).
43816	Combiner interface{} `json:"combiner,omitempty"`
43817	// CommandEnvironment - Command line environment values.
43818	CommandEnvironment *[]interface{} `json:"commandEnvironment,omitempty"`
43819	// Defines - Allows user to specify defines for streaming job request.
43820	Defines map[string]interface{} `json:"defines"`
43821}
43822
43823// MarshalJSON is the custom marshaler for HDInsightStreamingActivityTypeProperties.
43824func (hisatp HDInsightStreamingActivityTypeProperties) MarshalJSON() ([]byte, error) {
43825	objectMap := make(map[string]interface{})
43826	if hisatp.StorageLinkedServices != nil {
43827		objectMap["storageLinkedServices"] = hisatp.StorageLinkedServices
43828	}
43829	if hisatp.Arguments != nil {
43830		objectMap["arguments"] = hisatp.Arguments
43831	}
43832	if hisatp.GetDebugInfo != "" {
43833		objectMap["getDebugInfo"] = hisatp.GetDebugInfo
43834	}
43835	objectMap["mapper"] = hisatp.Mapper
43836	objectMap["reducer"] = hisatp.Reducer
43837	objectMap["input"] = hisatp.Input
43838	objectMap["output"] = hisatp.Output
43839	if hisatp.FilePaths != nil {
43840		objectMap["filePaths"] = hisatp.FilePaths
43841	}
43842	if hisatp.FileLinkedService != nil {
43843		objectMap["fileLinkedService"] = hisatp.FileLinkedService
43844	}
43845	objectMap["combiner"] = hisatp.Combiner
43846	if hisatp.CommandEnvironment != nil {
43847		objectMap["commandEnvironment"] = hisatp.CommandEnvironment
43848	}
43849	if hisatp.Defines != nil {
43850		objectMap["defines"] = hisatp.Defines
43851	}
43852	return json.Marshal(objectMap)
43853}
43854
43855// HiveLinkedService hive Server linked service.
43856type HiveLinkedService struct {
43857	// HiveLinkedServiceTypeProperties - Hive Server linked service properties.
43858	*HiveLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
43859	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
43860	AdditionalProperties map[string]interface{} `json:""`
43861	// ConnectVia - The integration runtime reference.
43862	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
43863	// Description - Linked service description.
43864	Description *string `json:"description,omitempty"`
43865	// Parameters - Parameters for linked service.
43866	Parameters map[string]*ParameterSpecification `json:"parameters"`
43867	// Annotations - List of tags that can be used for describing the Dataset.
43868	Annotations *[]interface{} `json:"annotations,omitempty"`
43869	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
43870	Type TypeBasicLinkedService `json:"type,omitempty"`
43871}
43872
43873// MarshalJSON is the custom marshaler for HiveLinkedService.
43874func (hls HiveLinkedService) MarshalJSON() ([]byte, error) {
43875	hls.Type = TypeHive
43876	objectMap := make(map[string]interface{})
43877	if hls.HiveLinkedServiceTypeProperties != nil {
43878		objectMap["typeProperties"] = hls.HiveLinkedServiceTypeProperties
43879	}
43880	if hls.ConnectVia != nil {
43881		objectMap["connectVia"] = hls.ConnectVia
43882	}
43883	if hls.Description != nil {
43884		objectMap["description"] = hls.Description
43885	}
43886	if hls.Parameters != nil {
43887		objectMap["parameters"] = hls.Parameters
43888	}
43889	if hls.Annotations != nil {
43890		objectMap["annotations"] = hls.Annotations
43891	}
43892	if hls.Type != "" {
43893		objectMap["type"] = hls.Type
43894	}
43895	for k, v := range hls.AdditionalProperties {
43896		objectMap[k] = v
43897	}
43898	return json.Marshal(objectMap)
43899}
43900
43901// AsResponsysLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43902func (hls HiveLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
43903	return nil, false
43904}
43905
43906// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43907func (hls HiveLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
43908	return nil, false
43909}
43910
43911// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43912func (hls HiveLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
43913	return nil, false
43914}
43915
43916// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43917func (hls HiveLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
43918	return nil, false
43919}
43920
43921// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43922func (hls HiveLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
43923	return nil, false
43924}
43925
43926// AsNetezzaLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43927func (hls HiveLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
43928	return nil, false
43929}
43930
43931// AsVerticaLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43932func (hls HiveLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
43933	return nil, false
43934}
43935
43936// AsZohoLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43937func (hls HiveLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
43938	return nil, false
43939}
43940
43941// AsXeroLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43942func (hls HiveLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
43943	return nil, false
43944}
43945
43946// AsSquareLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43947func (hls HiveLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
43948	return nil, false
43949}
43950
43951// AsSparkLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43952func (hls HiveLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
43953	return nil, false
43954}
43955
43956// AsShopifyLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43957func (hls HiveLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
43958	return nil, false
43959}
43960
43961// AsServiceNowLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43962func (hls HiveLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
43963	return nil, false
43964}
43965
43966// AsQuickBooksLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43967func (hls HiveLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
43968	return nil, false
43969}
43970
43971// AsPrestoLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43972func (hls HiveLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
43973	return nil, false
43974}
43975
43976// AsPhoenixLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43977func (hls HiveLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
43978	return nil, false
43979}
43980
43981// AsPaypalLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43982func (hls HiveLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
43983	return nil, false
43984}
43985
43986// AsMarketoLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43987func (hls HiveLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
43988	return nil, false
43989}
43990
43991// AsMariaDBLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43992func (hls HiveLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
43993	return nil, false
43994}
43995
43996// AsMagentoLinkedService is the BasicLinkedService implementation for HiveLinkedService.
43997func (hls HiveLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
43998	return nil, false
43999}
44000
44001// AsJiraLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44002func (hls HiveLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
44003	return nil, false
44004}
44005
44006// AsImpalaLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44007func (hls HiveLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
44008	return nil, false
44009}
44010
44011// AsHubspotLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44012func (hls HiveLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
44013	return nil, false
44014}
44015
44016// AsHiveLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44017func (hls HiveLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
44018	return &hls, true
44019}
44020
44021// AsHBaseLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44022func (hls HiveLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
44023	return nil, false
44024}
44025
44026// AsGreenplumLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44027func (hls HiveLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
44028	return nil, false
44029}
44030
44031// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44032func (hls HiveLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
44033	return nil, false
44034}
44035
44036// AsEloquaLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44037func (hls HiveLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
44038	return nil, false
44039}
44040
44041// AsDrillLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44042func (hls HiveLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
44043	return nil, false
44044}
44045
44046// AsCouchbaseLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44047func (hls HiveLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
44048	return nil, false
44049}
44050
44051// AsConcurLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44052func (hls HiveLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
44053	return nil, false
44054}
44055
44056// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44057func (hls HiveLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
44058	return nil, false
44059}
44060
44061// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44062func (hls HiveLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
44063	return nil, false
44064}
44065
44066// AsSapHanaLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44067func (hls HiveLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
44068	return nil, false
44069}
44070
44071// AsSapBWLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44072func (hls HiveLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
44073	return nil, false
44074}
44075
44076// AsSftpServerLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44077func (hls HiveLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
44078	return nil, false
44079}
44080
44081// AsFtpServerLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44082func (hls HiveLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
44083	return nil, false
44084}
44085
44086// AsHTTPLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44087func (hls HiveLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
44088	return nil, false
44089}
44090
44091// AsAzureSearchLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44092func (hls HiveLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
44093	return nil, false
44094}
44095
44096// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44097func (hls HiveLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
44098	return nil, false
44099}
44100
44101// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44102func (hls HiveLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
44103	return nil, false
44104}
44105
44106// AsAmazonS3LinkedService is the BasicLinkedService implementation for HiveLinkedService.
44107func (hls HiveLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
44108	return nil, false
44109}
44110
44111// AsSapEccLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44112func (hls HiveLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
44113	return nil, false
44114}
44115
44116// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44117func (hls HiveLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
44118	return nil, false
44119}
44120
44121// AsSalesforceLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44122func (hls HiveLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
44123	return nil, false
44124}
44125
44126// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44127func (hls HiveLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
44128	return nil, false
44129}
44130
44131// AsMongoDbLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44132func (hls HiveLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
44133	return nil, false
44134}
44135
44136// AsCassandraLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44137func (hls HiveLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
44138	return nil, false
44139}
44140
44141// AsWebLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44142func (hls HiveLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
44143	return nil, false
44144}
44145
44146// AsODataLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44147func (hls HiveLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
44148	return nil, false
44149}
44150
44151// AsHdfsLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44152func (hls HiveLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
44153	return nil, false
44154}
44155
44156// AsOdbcLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44157func (hls HiveLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
44158	return nil, false
44159}
44160
44161// AsAzureMLLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44162func (hls HiveLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
44163	return nil, false
44164}
44165
44166// AsTeradataLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44167func (hls HiveLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
44168	return nil, false
44169}
44170
44171// AsDb2LinkedService is the BasicLinkedService implementation for HiveLinkedService.
44172func (hls HiveLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
44173	return nil, false
44174}
44175
44176// AsSybaseLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44177func (hls HiveLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
44178	return nil, false
44179}
44180
44181// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44182func (hls HiveLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
44183	return nil, false
44184}
44185
44186// AsMySQLLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44187func (hls HiveLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
44188	return nil, false
44189}
44190
44191// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44192func (hls HiveLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
44193	return nil, false
44194}
44195
44196// AsOracleLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44197func (hls HiveLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
44198	return nil, false
44199}
44200
44201// AsFileServerLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44202func (hls HiveLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
44203	return nil, false
44204}
44205
44206// AsHDInsightLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44207func (hls HiveLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
44208	return nil, false
44209}
44210
44211// AsDynamicsLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44212func (hls HiveLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
44213	return nil, false
44214}
44215
44216// AsCosmosDbLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44217func (hls HiveLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
44218	return nil, false
44219}
44220
44221// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44222func (hls HiveLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
44223	return nil, false
44224}
44225
44226// AsAzureBatchLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44227func (hls HiveLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
44228	return nil, false
44229}
44230
44231// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44232func (hls HiveLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
44233	return nil, false
44234}
44235
44236// AsSQLServerLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44237func (hls HiveLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
44238	return nil, false
44239}
44240
44241// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44242func (hls HiveLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
44243	return nil, false
44244}
44245
44246// AsAzureStorageLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44247func (hls HiveLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
44248	return nil, false
44249}
44250
44251// AsLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44252func (hls HiveLinkedService) AsLinkedService() (*LinkedService, bool) {
44253	return nil, false
44254}
44255
44256// AsBasicLinkedService is the BasicLinkedService implementation for HiveLinkedService.
44257func (hls HiveLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
44258	return &hls, true
44259}
44260
44261// UnmarshalJSON is the custom unmarshaler for HiveLinkedService struct.
44262func (hls *HiveLinkedService) UnmarshalJSON(body []byte) error {
44263	var m map[string]*json.RawMessage
44264	err := json.Unmarshal(body, &m)
44265	if err != nil {
44266		return err
44267	}
44268	for k, v := range m {
44269		switch k {
44270		case "typeProperties":
44271			if v != nil {
44272				var hiveLinkedServiceTypeProperties HiveLinkedServiceTypeProperties
44273				err = json.Unmarshal(*v, &hiveLinkedServiceTypeProperties)
44274				if err != nil {
44275					return err
44276				}
44277				hls.HiveLinkedServiceTypeProperties = &hiveLinkedServiceTypeProperties
44278			}
44279		default:
44280			if v != nil {
44281				var additionalProperties interface{}
44282				err = json.Unmarshal(*v, &additionalProperties)
44283				if err != nil {
44284					return err
44285				}
44286				if hls.AdditionalProperties == nil {
44287					hls.AdditionalProperties = make(map[string]interface{})
44288				}
44289				hls.AdditionalProperties[k] = additionalProperties
44290			}
44291		case "connectVia":
44292			if v != nil {
44293				var connectVia IntegrationRuntimeReference
44294				err = json.Unmarshal(*v, &connectVia)
44295				if err != nil {
44296					return err
44297				}
44298				hls.ConnectVia = &connectVia
44299			}
44300		case "description":
44301			if v != nil {
44302				var description string
44303				err = json.Unmarshal(*v, &description)
44304				if err != nil {
44305					return err
44306				}
44307				hls.Description = &description
44308			}
44309		case "parameters":
44310			if v != nil {
44311				var parameters map[string]*ParameterSpecification
44312				err = json.Unmarshal(*v, &parameters)
44313				if err != nil {
44314					return err
44315				}
44316				hls.Parameters = parameters
44317			}
44318		case "annotations":
44319			if v != nil {
44320				var annotations []interface{}
44321				err = json.Unmarshal(*v, &annotations)
44322				if err != nil {
44323					return err
44324				}
44325				hls.Annotations = &annotations
44326			}
44327		case "type":
44328			if v != nil {
44329				var typeVar TypeBasicLinkedService
44330				err = json.Unmarshal(*v, &typeVar)
44331				if err != nil {
44332					return err
44333				}
44334				hls.Type = typeVar
44335			}
44336		}
44337	}
44338
44339	return nil
44340}
44341
44342// HiveLinkedServiceTypeProperties hive Server linked service properties.
44343type HiveLinkedServiceTypeProperties struct {
44344	// Host - IP address or host name of the Hive server, separated by ';' for multiple hosts (only when serviceDiscoveryMode is enable).
44345	Host interface{} `json:"host,omitempty"`
44346	// Port - The TCP port that the Hive server uses to listen for client connections.
44347	Port interface{} `json:"port,omitempty"`
44348	// ServerType - The type of Hive server. Possible values include: 'HiveServer1', 'HiveServer2', 'HiveThriftServer'
44349	ServerType HiveServerType `json:"serverType,omitempty"`
44350	// ThriftTransportProtocol - The transport protocol to use in the Thrift layer. Possible values include: 'Binary', 'SASL', 'HTTP'
44351	ThriftTransportProtocol HiveThriftTransportProtocol `json:"thriftTransportProtocol,omitempty"`
44352	// AuthenticationType - The authentication method used to access the Hive server. Possible values include: 'Anonymous', 'Username', 'UsernameAndPassword', 'WindowsAzureHDInsightService'
44353	AuthenticationType HiveAuthenticationType `json:"authenticationType,omitempty"`
44354	// ServiceDiscoveryMode - true to indicate using the ZooKeeper service, false not.
44355	ServiceDiscoveryMode interface{} `json:"serviceDiscoveryMode,omitempty"`
44356	// ZooKeeperNameSpace - The namespace on ZooKeeper under which Hive Server 2 nodes are added.
44357	ZooKeeperNameSpace interface{} `json:"zooKeeperNameSpace,omitempty"`
44358	// UseNativeQuery - Specifies whether the driver uses native HiveQL queries,or converts them into an equivalent form in HiveQL.
44359	UseNativeQuery interface{} `json:"useNativeQuery,omitempty"`
44360	// Username - The user name that you use to access Hive Server.
44361	Username interface{} `json:"username,omitempty"`
44362	// Password - The password corresponding to the user name that you provided in the Username field
44363	Password BasicSecretBase `json:"password,omitempty"`
44364	// HTTPPath - The partial URL corresponding to the Hive server.
44365	HTTPPath interface{} `json:"httpPath,omitempty"`
44366	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
44367	EnableSsl interface{} `json:"enableSsl,omitempty"`
44368	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
44369	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
44370	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
44371	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
44372	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
44373	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
44374	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
44375	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
44376	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
44377	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
44378}
44379
44380// UnmarshalJSON is the custom unmarshaler for HiveLinkedServiceTypeProperties struct.
44381func (hlstp *HiveLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
44382	var m map[string]*json.RawMessage
44383	err := json.Unmarshal(body, &m)
44384	if err != nil {
44385		return err
44386	}
44387	for k, v := range m {
44388		switch k {
44389		case "host":
44390			if v != nil {
44391				var host interface{}
44392				err = json.Unmarshal(*v, &host)
44393				if err != nil {
44394					return err
44395				}
44396				hlstp.Host = host
44397			}
44398		case "port":
44399			if v != nil {
44400				var port interface{}
44401				err = json.Unmarshal(*v, &port)
44402				if err != nil {
44403					return err
44404				}
44405				hlstp.Port = port
44406			}
44407		case "serverType":
44408			if v != nil {
44409				var serverType HiveServerType
44410				err = json.Unmarshal(*v, &serverType)
44411				if err != nil {
44412					return err
44413				}
44414				hlstp.ServerType = serverType
44415			}
44416		case "thriftTransportProtocol":
44417			if v != nil {
44418				var thriftTransportProtocol HiveThriftTransportProtocol
44419				err = json.Unmarshal(*v, &thriftTransportProtocol)
44420				if err != nil {
44421					return err
44422				}
44423				hlstp.ThriftTransportProtocol = thriftTransportProtocol
44424			}
44425		case "authenticationType":
44426			if v != nil {
44427				var authenticationType HiveAuthenticationType
44428				err = json.Unmarshal(*v, &authenticationType)
44429				if err != nil {
44430					return err
44431				}
44432				hlstp.AuthenticationType = authenticationType
44433			}
44434		case "serviceDiscoveryMode":
44435			if v != nil {
44436				var serviceDiscoveryMode interface{}
44437				err = json.Unmarshal(*v, &serviceDiscoveryMode)
44438				if err != nil {
44439					return err
44440				}
44441				hlstp.ServiceDiscoveryMode = serviceDiscoveryMode
44442			}
44443		case "zooKeeperNameSpace":
44444			if v != nil {
44445				var zooKeeperNameSpace interface{}
44446				err = json.Unmarshal(*v, &zooKeeperNameSpace)
44447				if err != nil {
44448					return err
44449				}
44450				hlstp.ZooKeeperNameSpace = zooKeeperNameSpace
44451			}
44452		case "useNativeQuery":
44453			if v != nil {
44454				var useNativeQuery interface{}
44455				err = json.Unmarshal(*v, &useNativeQuery)
44456				if err != nil {
44457					return err
44458				}
44459				hlstp.UseNativeQuery = useNativeQuery
44460			}
44461		case "username":
44462			if v != nil {
44463				var username interface{}
44464				err = json.Unmarshal(*v, &username)
44465				if err != nil {
44466					return err
44467				}
44468				hlstp.Username = username
44469			}
44470		case "password":
44471			if v != nil {
44472				password, err := unmarshalBasicSecretBase(*v)
44473				if err != nil {
44474					return err
44475				}
44476				hlstp.Password = password
44477			}
44478		case "httpPath":
44479			if v != nil {
44480				var HTTPPath interface{}
44481				err = json.Unmarshal(*v, &HTTPPath)
44482				if err != nil {
44483					return err
44484				}
44485				hlstp.HTTPPath = HTTPPath
44486			}
44487		case "enableSsl":
44488			if v != nil {
44489				var enableSsl interface{}
44490				err = json.Unmarshal(*v, &enableSsl)
44491				if err != nil {
44492					return err
44493				}
44494				hlstp.EnableSsl = enableSsl
44495			}
44496		case "trustedCertPath":
44497			if v != nil {
44498				var trustedCertPath interface{}
44499				err = json.Unmarshal(*v, &trustedCertPath)
44500				if err != nil {
44501					return err
44502				}
44503				hlstp.TrustedCertPath = trustedCertPath
44504			}
44505		case "useSystemTrustStore":
44506			if v != nil {
44507				var useSystemTrustStore interface{}
44508				err = json.Unmarshal(*v, &useSystemTrustStore)
44509				if err != nil {
44510					return err
44511				}
44512				hlstp.UseSystemTrustStore = useSystemTrustStore
44513			}
44514		case "allowHostNameCNMismatch":
44515			if v != nil {
44516				var allowHostNameCNMismatch interface{}
44517				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
44518				if err != nil {
44519					return err
44520				}
44521				hlstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
44522			}
44523		case "allowSelfSignedServerCert":
44524			if v != nil {
44525				var allowSelfSignedServerCert interface{}
44526				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
44527				if err != nil {
44528					return err
44529				}
44530				hlstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
44531			}
44532		case "encryptedCredential":
44533			if v != nil {
44534				var encryptedCredential interface{}
44535				err = json.Unmarshal(*v, &encryptedCredential)
44536				if err != nil {
44537					return err
44538				}
44539				hlstp.EncryptedCredential = encryptedCredential
44540			}
44541		}
44542	}
44543
44544	return nil
44545}
44546
44547// HiveObjectDataset hive Server dataset.
44548type HiveObjectDataset struct {
44549	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
44550	AdditionalProperties map[string]interface{} `json:""`
44551	// Description - Dataset description.
44552	Description *string `json:"description,omitempty"`
44553	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
44554	Structure interface{} `json:"structure,omitempty"`
44555	// LinkedServiceName - Linked service reference.
44556	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
44557	// Parameters - Parameters for dataset.
44558	Parameters map[string]*ParameterSpecification `json:"parameters"`
44559	// Annotations - List of tags that can be used for describing the Dataset.
44560	Annotations *[]interface{} `json:"annotations,omitempty"`
44561	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
44562	Type TypeBasicDataset `json:"type,omitempty"`
44563}
44564
44565// MarshalJSON is the custom marshaler for HiveObjectDataset.
44566func (hod HiveObjectDataset) MarshalJSON() ([]byte, error) {
44567	hod.Type = TypeHiveObject
44568	objectMap := make(map[string]interface{})
44569	if hod.Description != nil {
44570		objectMap["description"] = hod.Description
44571	}
44572	objectMap["structure"] = hod.Structure
44573	if hod.LinkedServiceName != nil {
44574		objectMap["linkedServiceName"] = hod.LinkedServiceName
44575	}
44576	if hod.Parameters != nil {
44577		objectMap["parameters"] = hod.Parameters
44578	}
44579	if hod.Annotations != nil {
44580		objectMap["annotations"] = hod.Annotations
44581	}
44582	if hod.Type != "" {
44583		objectMap["type"] = hod.Type
44584	}
44585	for k, v := range hod.AdditionalProperties {
44586		objectMap[k] = v
44587	}
44588	return json.Marshal(objectMap)
44589}
44590
44591// AsResponsysObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44592func (hod HiveObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
44593	return nil, false
44594}
44595
44596// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44597func (hod HiveObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
44598	return nil, false
44599}
44600
44601// AsVerticaTableDataset is the BasicDataset implementation for HiveObjectDataset.
44602func (hod HiveObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
44603	return nil, false
44604}
44605
44606// AsNetezzaTableDataset is the BasicDataset implementation for HiveObjectDataset.
44607func (hod HiveObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
44608	return nil, false
44609}
44610
44611// AsZohoObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44612func (hod HiveObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
44613	return nil, false
44614}
44615
44616// AsXeroObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44617func (hod HiveObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
44618	return nil, false
44619}
44620
44621// AsSquareObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44622func (hod HiveObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
44623	return nil, false
44624}
44625
44626// AsSparkObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44627func (hod HiveObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
44628	return nil, false
44629}
44630
44631// AsShopifyObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44632func (hod HiveObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
44633	return nil, false
44634}
44635
44636// AsServiceNowObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44637func (hod HiveObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
44638	return nil, false
44639}
44640
44641// AsQuickBooksObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44642func (hod HiveObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
44643	return nil, false
44644}
44645
44646// AsPrestoObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44647func (hod HiveObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
44648	return nil, false
44649}
44650
44651// AsPhoenixObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44652func (hod HiveObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
44653	return nil, false
44654}
44655
44656// AsPaypalObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44657func (hod HiveObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
44658	return nil, false
44659}
44660
44661// AsMarketoObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44662func (hod HiveObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
44663	return nil, false
44664}
44665
44666// AsMariaDBTableDataset is the BasicDataset implementation for HiveObjectDataset.
44667func (hod HiveObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
44668	return nil, false
44669}
44670
44671// AsMagentoObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44672func (hod HiveObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
44673	return nil, false
44674}
44675
44676// AsJiraObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44677func (hod HiveObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
44678	return nil, false
44679}
44680
44681// AsImpalaObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44682func (hod HiveObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
44683	return nil, false
44684}
44685
44686// AsHubspotObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44687func (hod HiveObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
44688	return nil, false
44689}
44690
44691// AsHiveObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44692func (hod HiveObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
44693	return &hod, true
44694}
44695
44696// AsHBaseObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44697func (hod HiveObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
44698	return nil, false
44699}
44700
44701// AsGreenplumTableDataset is the BasicDataset implementation for HiveObjectDataset.
44702func (hod HiveObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
44703	return nil, false
44704}
44705
44706// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44707func (hod HiveObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
44708	return nil, false
44709}
44710
44711// AsEloquaObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44712func (hod HiveObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
44713	return nil, false
44714}
44715
44716// AsDrillTableDataset is the BasicDataset implementation for HiveObjectDataset.
44717func (hod HiveObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
44718	return nil, false
44719}
44720
44721// AsCouchbaseTableDataset is the BasicDataset implementation for HiveObjectDataset.
44722func (hod HiveObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
44723	return nil, false
44724}
44725
44726// AsConcurObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44727func (hod HiveObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
44728	return nil, false
44729}
44730
44731// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for HiveObjectDataset.
44732func (hod HiveObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
44733	return nil, false
44734}
44735
44736// AsAmazonMWSObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44737func (hod HiveObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
44738	return nil, false
44739}
44740
44741// AsHTTPDataset is the BasicDataset implementation for HiveObjectDataset.
44742func (hod HiveObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
44743	return nil, false
44744}
44745
44746// AsAzureSearchIndexDataset is the BasicDataset implementation for HiveObjectDataset.
44747func (hod HiveObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
44748	return nil, false
44749}
44750
44751// AsWebTableDataset is the BasicDataset implementation for HiveObjectDataset.
44752func (hod HiveObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
44753	return nil, false
44754}
44755
44756// AsSQLServerTableDataset is the BasicDataset implementation for HiveObjectDataset.
44757func (hod HiveObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
44758	return nil, false
44759}
44760
44761// AsSapEccResourceDataset is the BasicDataset implementation for HiveObjectDataset.
44762func (hod HiveObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
44763	return nil, false
44764}
44765
44766// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for HiveObjectDataset.
44767func (hod HiveObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
44768	return nil, false
44769}
44770
44771// AsSalesforceObjectDataset is the BasicDataset implementation for HiveObjectDataset.
44772func (hod HiveObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
44773	return nil, false
44774}
44775
44776// AsRelationalTableDataset is the BasicDataset implementation for HiveObjectDataset.
44777func (hod HiveObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
44778	return nil, false
44779}
44780
44781// AsAzureMySQLTableDataset is the BasicDataset implementation for HiveObjectDataset.
44782func (hod HiveObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
44783	return nil, false
44784}
44785
44786// AsOracleTableDataset is the BasicDataset implementation for HiveObjectDataset.
44787func (hod HiveObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
44788	return nil, false
44789}
44790
44791// AsODataResourceDataset is the BasicDataset implementation for HiveObjectDataset.
44792func (hod HiveObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
44793	return nil, false
44794}
44795
44796// AsMongoDbCollectionDataset is the BasicDataset implementation for HiveObjectDataset.
44797func (hod HiveObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
44798	return nil, false
44799}
44800
44801// AsFileShareDataset is the BasicDataset implementation for HiveObjectDataset.
44802func (hod HiveObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
44803	return nil, false
44804}
44805
44806// AsAzureDataLakeStoreDataset is the BasicDataset implementation for HiveObjectDataset.
44807func (hod HiveObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
44808	return nil, false
44809}
44810
44811// AsDynamicsEntityDataset is the BasicDataset implementation for HiveObjectDataset.
44812func (hod HiveObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
44813	return nil, false
44814}
44815
44816// AsDocumentDbCollectionDataset is the BasicDataset implementation for HiveObjectDataset.
44817func (hod HiveObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
44818	return nil, false
44819}
44820
44821// AsCustomDataset is the BasicDataset implementation for HiveObjectDataset.
44822func (hod HiveObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
44823	return nil, false
44824}
44825
44826// AsCassandraTableDataset is the BasicDataset implementation for HiveObjectDataset.
44827func (hod HiveObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
44828	return nil, false
44829}
44830
44831// AsAzureSQLDWTableDataset is the BasicDataset implementation for HiveObjectDataset.
44832func (hod HiveObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
44833	return nil, false
44834}
44835
44836// AsAzureSQLTableDataset is the BasicDataset implementation for HiveObjectDataset.
44837func (hod HiveObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
44838	return nil, false
44839}
44840
44841// AsAzureTableDataset is the BasicDataset implementation for HiveObjectDataset.
44842func (hod HiveObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
44843	return nil, false
44844}
44845
44846// AsAzureBlobDataset is the BasicDataset implementation for HiveObjectDataset.
44847func (hod HiveObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
44848	return nil, false
44849}
44850
44851// AsAmazonS3Dataset is the BasicDataset implementation for HiveObjectDataset.
44852func (hod HiveObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
44853	return nil, false
44854}
44855
44856// AsDataset is the BasicDataset implementation for HiveObjectDataset.
44857func (hod HiveObjectDataset) AsDataset() (*Dataset, bool) {
44858	return nil, false
44859}
44860
44861// AsBasicDataset is the BasicDataset implementation for HiveObjectDataset.
44862func (hod HiveObjectDataset) AsBasicDataset() (BasicDataset, bool) {
44863	return &hod, true
44864}
44865
44866// HiveSource a copy activity Hive Server source.
44867type HiveSource struct {
44868	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
44869	Query interface{} `json:"query,omitempty"`
44870	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
44871	AdditionalProperties map[string]interface{} `json:""`
44872	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
44873	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
44874	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
44875	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
44876	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
44877	Type TypeBasicCopySource `json:"type,omitempty"`
44878}
44879
44880// MarshalJSON is the custom marshaler for HiveSource.
44881func (hs HiveSource) MarshalJSON() ([]byte, error) {
44882	hs.Type = TypeHiveSource
44883	objectMap := make(map[string]interface{})
44884	objectMap["query"] = hs.Query
44885	objectMap["sourceRetryCount"] = hs.SourceRetryCount
44886	objectMap["sourceRetryWait"] = hs.SourceRetryWait
44887	if hs.Type != "" {
44888		objectMap["type"] = hs.Type
44889	}
44890	for k, v := range hs.AdditionalProperties {
44891		objectMap[k] = v
44892	}
44893	return json.Marshal(objectMap)
44894}
44895
44896// AsAmazonRedshiftSource is the BasicCopySource implementation for HiveSource.
44897func (hs HiveSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
44898	return nil, false
44899}
44900
44901// AsResponsysSource is the BasicCopySource implementation for HiveSource.
44902func (hs HiveSource) AsResponsysSource() (*ResponsysSource, bool) {
44903	return nil, false
44904}
44905
44906// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for HiveSource.
44907func (hs HiveSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
44908	return nil, false
44909}
44910
44911// AsVerticaSource is the BasicCopySource implementation for HiveSource.
44912func (hs HiveSource) AsVerticaSource() (*VerticaSource, bool) {
44913	return nil, false
44914}
44915
44916// AsNetezzaSource is the BasicCopySource implementation for HiveSource.
44917func (hs HiveSource) AsNetezzaSource() (*NetezzaSource, bool) {
44918	return nil, false
44919}
44920
44921// AsZohoSource is the BasicCopySource implementation for HiveSource.
44922func (hs HiveSource) AsZohoSource() (*ZohoSource, bool) {
44923	return nil, false
44924}
44925
44926// AsXeroSource is the BasicCopySource implementation for HiveSource.
44927func (hs HiveSource) AsXeroSource() (*XeroSource, bool) {
44928	return nil, false
44929}
44930
44931// AsSquareSource is the BasicCopySource implementation for HiveSource.
44932func (hs HiveSource) AsSquareSource() (*SquareSource, bool) {
44933	return nil, false
44934}
44935
44936// AsSparkSource is the BasicCopySource implementation for HiveSource.
44937func (hs HiveSource) AsSparkSource() (*SparkSource, bool) {
44938	return nil, false
44939}
44940
44941// AsShopifySource is the BasicCopySource implementation for HiveSource.
44942func (hs HiveSource) AsShopifySource() (*ShopifySource, bool) {
44943	return nil, false
44944}
44945
44946// AsServiceNowSource is the BasicCopySource implementation for HiveSource.
44947func (hs HiveSource) AsServiceNowSource() (*ServiceNowSource, bool) {
44948	return nil, false
44949}
44950
44951// AsQuickBooksSource is the BasicCopySource implementation for HiveSource.
44952func (hs HiveSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
44953	return nil, false
44954}
44955
44956// AsPrestoSource is the BasicCopySource implementation for HiveSource.
44957func (hs HiveSource) AsPrestoSource() (*PrestoSource, bool) {
44958	return nil, false
44959}
44960
44961// AsPhoenixSource is the BasicCopySource implementation for HiveSource.
44962func (hs HiveSource) AsPhoenixSource() (*PhoenixSource, bool) {
44963	return nil, false
44964}
44965
44966// AsPaypalSource is the BasicCopySource implementation for HiveSource.
44967func (hs HiveSource) AsPaypalSource() (*PaypalSource, bool) {
44968	return nil, false
44969}
44970
44971// AsMarketoSource is the BasicCopySource implementation for HiveSource.
44972func (hs HiveSource) AsMarketoSource() (*MarketoSource, bool) {
44973	return nil, false
44974}
44975
44976// AsMariaDBSource is the BasicCopySource implementation for HiveSource.
44977func (hs HiveSource) AsMariaDBSource() (*MariaDBSource, bool) {
44978	return nil, false
44979}
44980
44981// AsMagentoSource is the BasicCopySource implementation for HiveSource.
44982func (hs HiveSource) AsMagentoSource() (*MagentoSource, bool) {
44983	return nil, false
44984}
44985
44986// AsJiraSource is the BasicCopySource implementation for HiveSource.
44987func (hs HiveSource) AsJiraSource() (*JiraSource, bool) {
44988	return nil, false
44989}
44990
44991// AsImpalaSource is the BasicCopySource implementation for HiveSource.
44992func (hs HiveSource) AsImpalaSource() (*ImpalaSource, bool) {
44993	return nil, false
44994}
44995
44996// AsHubspotSource is the BasicCopySource implementation for HiveSource.
44997func (hs HiveSource) AsHubspotSource() (*HubspotSource, bool) {
44998	return nil, false
44999}
45000
45001// AsHiveSource is the BasicCopySource implementation for HiveSource.
45002func (hs HiveSource) AsHiveSource() (*HiveSource, bool) {
45003	return &hs, true
45004}
45005
45006// AsHBaseSource is the BasicCopySource implementation for HiveSource.
45007func (hs HiveSource) AsHBaseSource() (*HBaseSource, bool) {
45008	return nil, false
45009}
45010
45011// AsGreenplumSource is the BasicCopySource implementation for HiveSource.
45012func (hs HiveSource) AsGreenplumSource() (*GreenplumSource, bool) {
45013	return nil, false
45014}
45015
45016// AsGoogleBigQuerySource is the BasicCopySource implementation for HiveSource.
45017func (hs HiveSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
45018	return nil, false
45019}
45020
45021// AsEloquaSource is the BasicCopySource implementation for HiveSource.
45022func (hs HiveSource) AsEloquaSource() (*EloquaSource, bool) {
45023	return nil, false
45024}
45025
45026// AsDrillSource is the BasicCopySource implementation for HiveSource.
45027func (hs HiveSource) AsDrillSource() (*DrillSource, bool) {
45028	return nil, false
45029}
45030
45031// AsCouchbaseSource is the BasicCopySource implementation for HiveSource.
45032func (hs HiveSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
45033	return nil, false
45034}
45035
45036// AsConcurSource is the BasicCopySource implementation for HiveSource.
45037func (hs HiveSource) AsConcurSource() (*ConcurSource, bool) {
45038	return nil, false
45039}
45040
45041// AsAzurePostgreSQLSource is the BasicCopySource implementation for HiveSource.
45042func (hs HiveSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
45043	return nil, false
45044}
45045
45046// AsAmazonMWSSource is the BasicCopySource implementation for HiveSource.
45047func (hs HiveSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
45048	return nil, false
45049}
45050
45051// AsHTTPSource is the BasicCopySource implementation for HiveSource.
45052func (hs HiveSource) AsHTTPSource() (*HTTPSource, bool) {
45053	return nil, false
45054}
45055
45056// AsAzureDataLakeStoreSource is the BasicCopySource implementation for HiveSource.
45057func (hs HiveSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
45058	return nil, false
45059}
45060
45061// AsMongoDbSource is the BasicCopySource implementation for HiveSource.
45062func (hs HiveSource) AsMongoDbSource() (*MongoDbSource, bool) {
45063	return nil, false
45064}
45065
45066// AsCassandraSource is the BasicCopySource implementation for HiveSource.
45067func (hs HiveSource) AsCassandraSource() (*CassandraSource, bool) {
45068	return nil, false
45069}
45070
45071// AsWebSource is the BasicCopySource implementation for HiveSource.
45072func (hs HiveSource) AsWebSource() (*WebSource, bool) {
45073	return nil, false
45074}
45075
45076// AsOracleSource is the BasicCopySource implementation for HiveSource.
45077func (hs HiveSource) AsOracleSource() (*OracleSource, bool) {
45078	return nil, false
45079}
45080
45081// AsAzureMySQLSource is the BasicCopySource implementation for HiveSource.
45082func (hs HiveSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
45083	return nil, false
45084}
45085
45086// AsHdfsSource is the BasicCopySource implementation for HiveSource.
45087func (hs HiveSource) AsHdfsSource() (*HdfsSource, bool) {
45088	return nil, false
45089}
45090
45091// AsFileSystemSource is the BasicCopySource implementation for HiveSource.
45092func (hs HiveSource) AsFileSystemSource() (*FileSystemSource, bool) {
45093	return nil, false
45094}
45095
45096// AsSQLDWSource is the BasicCopySource implementation for HiveSource.
45097func (hs HiveSource) AsSQLDWSource() (*SQLDWSource, bool) {
45098	return nil, false
45099}
45100
45101// AsSQLSource is the BasicCopySource implementation for HiveSource.
45102func (hs HiveSource) AsSQLSource() (*SQLSource, bool) {
45103	return nil, false
45104}
45105
45106// AsSapEccSource is the BasicCopySource implementation for HiveSource.
45107func (hs HiveSource) AsSapEccSource() (*SapEccSource, bool) {
45108	return nil, false
45109}
45110
45111// AsSapCloudForCustomerSource is the BasicCopySource implementation for HiveSource.
45112func (hs HiveSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
45113	return nil, false
45114}
45115
45116// AsSalesforceSource is the BasicCopySource implementation for HiveSource.
45117func (hs HiveSource) AsSalesforceSource() (*SalesforceSource, bool) {
45118	return nil, false
45119}
45120
45121// AsRelationalSource is the BasicCopySource implementation for HiveSource.
45122func (hs HiveSource) AsRelationalSource() (*RelationalSource, bool) {
45123	return nil, false
45124}
45125
45126// AsDynamicsSource is the BasicCopySource implementation for HiveSource.
45127func (hs HiveSource) AsDynamicsSource() (*DynamicsSource, bool) {
45128	return nil, false
45129}
45130
45131// AsDocumentDbCollectionSource is the BasicCopySource implementation for HiveSource.
45132func (hs HiveSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
45133	return nil, false
45134}
45135
45136// AsBlobSource is the BasicCopySource implementation for HiveSource.
45137func (hs HiveSource) AsBlobSource() (*BlobSource, bool) {
45138	return nil, false
45139}
45140
45141// AsAzureTableSource is the BasicCopySource implementation for HiveSource.
45142func (hs HiveSource) AsAzureTableSource() (*AzureTableSource, bool) {
45143	return nil, false
45144}
45145
45146// AsCopySource is the BasicCopySource implementation for HiveSource.
45147func (hs HiveSource) AsCopySource() (*CopySource, bool) {
45148	return nil, false
45149}
45150
45151// AsBasicCopySource is the BasicCopySource implementation for HiveSource.
45152func (hs HiveSource) AsBasicCopySource() (BasicCopySource, bool) {
45153	return &hs, true
45154}
45155
45156// HTTPDataset a file in an HTTP web server.
45157type HTTPDataset struct {
45158	// HTTPDatasetTypeProperties - Properties specific to this dataset type.
45159	*HTTPDatasetTypeProperties `json:"typeProperties,omitempty"`
45160	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
45161	AdditionalProperties map[string]interface{} `json:""`
45162	// Description - Dataset description.
45163	Description *string `json:"description,omitempty"`
45164	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
45165	Structure interface{} `json:"structure,omitempty"`
45166	// LinkedServiceName - Linked service reference.
45167	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
45168	// Parameters - Parameters for dataset.
45169	Parameters map[string]*ParameterSpecification `json:"parameters"`
45170	// Annotations - List of tags that can be used for describing the Dataset.
45171	Annotations *[]interface{} `json:"annotations,omitempty"`
45172	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
45173	Type TypeBasicDataset `json:"type,omitempty"`
45174}
45175
45176// MarshalJSON is the custom marshaler for HTTPDataset.
45177func (hd HTTPDataset) MarshalJSON() ([]byte, error) {
45178	hd.Type = TypeHTTPFile
45179	objectMap := make(map[string]interface{})
45180	if hd.HTTPDatasetTypeProperties != nil {
45181		objectMap["typeProperties"] = hd.HTTPDatasetTypeProperties
45182	}
45183	if hd.Description != nil {
45184		objectMap["description"] = hd.Description
45185	}
45186	objectMap["structure"] = hd.Structure
45187	if hd.LinkedServiceName != nil {
45188		objectMap["linkedServiceName"] = hd.LinkedServiceName
45189	}
45190	if hd.Parameters != nil {
45191		objectMap["parameters"] = hd.Parameters
45192	}
45193	if hd.Annotations != nil {
45194		objectMap["annotations"] = hd.Annotations
45195	}
45196	if hd.Type != "" {
45197		objectMap["type"] = hd.Type
45198	}
45199	for k, v := range hd.AdditionalProperties {
45200		objectMap[k] = v
45201	}
45202	return json.Marshal(objectMap)
45203}
45204
45205// AsResponsysObjectDataset is the BasicDataset implementation for HTTPDataset.
45206func (hd HTTPDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
45207	return nil, false
45208}
45209
45210// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for HTTPDataset.
45211func (hd HTTPDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
45212	return nil, false
45213}
45214
45215// AsVerticaTableDataset is the BasicDataset implementation for HTTPDataset.
45216func (hd HTTPDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
45217	return nil, false
45218}
45219
45220// AsNetezzaTableDataset is the BasicDataset implementation for HTTPDataset.
45221func (hd HTTPDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
45222	return nil, false
45223}
45224
45225// AsZohoObjectDataset is the BasicDataset implementation for HTTPDataset.
45226func (hd HTTPDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
45227	return nil, false
45228}
45229
45230// AsXeroObjectDataset is the BasicDataset implementation for HTTPDataset.
45231func (hd HTTPDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
45232	return nil, false
45233}
45234
45235// AsSquareObjectDataset is the BasicDataset implementation for HTTPDataset.
45236func (hd HTTPDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
45237	return nil, false
45238}
45239
45240// AsSparkObjectDataset is the BasicDataset implementation for HTTPDataset.
45241func (hd HTTPDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
45242	return nil, false
45243}
45244
45245// AsShopifyObjectDataset is the BasicDataset implementation for HTTPDataset.
45246func (hd HTTPDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
45247	return nil, false
45248}
45249
45250// AsServiceNowObjectDataset is the BasicDataset implementation for HTTPDataset.
45251func (hd HTTPDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
45252	return nil, false
45253}
45254
45255// AsQuickBooksObjectDataset is the BasicDataset implementation for HTTPDataset.
45256func (hd HTTPDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
45257	return nil, false
45258}
45259
45260// AsPrestoObjectDataset is the BasicDataset implementation for HTTPDataset.
45261func (hd HTTPDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
45262	return nil, false
45263}
45264
45265// AsPhoenixObjectDataset is the BasicDataset implementation for HTTPDataset.
45266func (hd HTTPDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
45267	return nil, false
45268}
45269
45270// AsPaypalObjectDataset is the BasicDataset implementation for HTTPDataset.
45271func (hd HTTPDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
45272	return nil, false
45273}
45274
45275// AsMarketoObjectDataset is the BasicDataset implementation for HTTPDataset.
45276func (hd HTTPDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
45277	return nil, false
45278}
45279
45280// AsMariaDBTableDataset is the BasicDataset implementation for HTTPDataset.
45281func (hd HTTPDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
45282	return nil, false
45283}
45284
45285// AsMagentoObjectDataset is the BasicDataset implementation for HTTPDataset.
45286func (hd HTTPDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
45287	return nil, false
45288}
45289
45290// AsJiraObjectDataset is the BasicDataset implementation for HTTPDataset.
45291func (hd HTTPDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
45292	return nil, false
45293}
45294
45295// AsImpalaObjectDataset is the BasicDataset implementation for HTTPDataset.
45296func (hd HTTPDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
45297	return nil, false
45298}
45299
45300// AsHubspotObjectDataset is the BasicDataset implementation for HTTPDataset.
45301func (hd HTTPDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
45302	return nil, false
45303}
45304
45305// AsHiveObjectDataset is the BasicDataset implementation for HTTPDataset.
45306func (hd HTTPDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
45307	return nil, false
45308}
45309
45310// AsHBaseObjectDataset is the BasicDataset implementation for HTTPDataset.
45311func (hd HTTPDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
45312	return nil, false
45313}
45314
45315// AsGreenplumTableDataset is the BasicDataset implementation for HTTPDataset.
45316func (hd HTTPDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
45317	return nil, false
45318}
45319
45320// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for HTTPDataset.
45321func (hd HTTPDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
45322	return nil, false
45323}
45324
45325// AsEloquaObjectDataset is the BasicDataset implementation for HTTPDataset.
45326func (hd HTTPDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
45327	return nil, false
45328}
45329
45330// AsDrillTableDataset is the BasicDataset implementation for HTTPDataset.
45331func (hd HTTPDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
45332	return nil, false
45333}
45334
45335// AsCouchbaseTableDataset is the BasicDataset implementation for HTTPDataset.
45336func (hd HTTPDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
45337	return nil, false
45338}
45339
45340// AsConcurObjectDataset is the BasicDataset implementation for HTTPDataset.
45341func (hd HTTPDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
45342	return nil, false
45343}
45344
45345// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for HTTPDataset.
45346func (hd HTTPDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
45347	return nil, false
45348}
45349
45350// AsAmazonMWSObjectDataset is the BasicDataset implementation for HTTPDataset.
45351func (hd HTTPDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
45352	return nil, false
45353}
45354
45355// AsHTTPDataset is the BasicDataset implementation for HTTPDataset.
45356func (hd HTTPDataset) AsHTTPDataset() (*HTTPDataset, bool) {
45357	return &hd, true
45358}
45359
45360// AsAzureSearchIndexDataset is the BasicDataset implementation for HTTPDataset.
45361func (hd HTTPDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
45362	return nil, false
45363}
45364
45365// AsWebTableDataset is the BasicDataset implementation for HTTPDataset.
45366func (hd HTTPDataset) AsWebTableDataset() (*WebTableDataset, bool) {
45367	return nil, false
45368}
45369
45370// AsSQLServerTableDataset is the BasicDataset implementation for HTTPDataset.
45371func (hd HTTPDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
45372	return nil, false
45373}
45374
45375// AsSapEccResourceDataset is the BasicDataset implementation for HTTPDataset.
45376func (hd HTTPDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
45377	return nil, false
45378}
45379
45380// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for HTTPDataset.
45381func (hd HTTPDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
45382	return nil, false
45383}
45384
45385// AsSalesforceObjectDataset is the BasicDataset implementation for HTTPDataset.
45386func (hd HTTPDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
45387	return nil, false
45388}
45389
45390// AsRelationalTableDataset is the BasicDataset implementation for HTTPDataset.
45391func (hd HTTPDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
45392	return nil, false
45393}
45394
45395// AsAzureMySQLTableDataset is the BasicDataset implementation for HTTPDataset.
45396func (hd HTTPDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
45397	return nil, false
45398}
45399
45400// AsOracleTableDataset is the BasicDataset implementation for HTTPDataset.
45401func (hd HTTPDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
45402	return nil, false
45403}
45404
45405// AsODataResourceDataset is the BasicDataset implementation for HTTPDataset.
45406func (hd HTTPDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
45407	return nil, false
45408}
45409
45410// AsMongoDbCollectionDataset is the BasicDataset implementation for HTTPDataset.
45411func (hd HTTPDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
45412	return nil, false
45413}
45414
45415// AsFileShareDataset is the BasicDataset implementation for HTTPDataset.
45416func (hd HTTPDataset) AsFileShareDataset() (*FileShareDataset, bool) {
45417	return nil, false
45418}
45419
45420// AsAzureDataLakeStoreDataset is the BasicDataset implementation for HTTPDataset.
45421func (hd HTTPDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
45422	return nil, false
45423}
45424
45425// AsDynamicsEntityDataset is the BasicDataset implementation for HTTPDataset.
45426func (hd HTTPDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
45427	return nil, false
45428}
45429
45430// AsDocumentDbCollectionDataset is the BasicDataset implementation for HTTPDataset.
45431func (hd HTTPDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
45432	return nil, false
45433}
45434
45435// AsCustomDataset is the BasicDataset implementation for HTTPDataset.
45436func (hd HTTPDataset) AsCustomDataset() (*CustomDataset, bool) {
45437	return nil, false
45438}
45439
45440// AsCassandraTableDataset is the BasicDataset implementation for HTTPDataset.
45441func (hd HTTPDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
45442	return nil, false
45443}
45444
45445// AsAzureSQLDWTableDataset is the BasicDataset implementation for HTTPDataset.
45446func (hd HTTPDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
45447	return nil, false
45448}
45449
45450// AsAzureSQLTableDataset is the BasicDataset implementation for HTTPDataset.
45451func (hd HTTPDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
45452	return nil, false
45453}
45454
45455// AsAzureTableDataset is the BasicDataset implementation for HTTPDataset.
45456func (hd HTTPDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
45457	return nil, false
45458}
45459
45460// AsAzureBlobDataset is the BasicDataset implementation for HTTPDataset.
45461func (hd HTTPDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
45462	return nil, false
45463}
45464
45465// AsAmazonS3Dataset is the BasicDataset implementation for HTTPDataset.
45466func (hd HTTPDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
45467	return nil, false
45468}
45469
45470// AsDataset is the BasicDataset implementation for HTTPDataset.
45471func (hd HTTPDataset) AsDataset() (*Dataset, bool) {
45472	return nil, false
45473}
45474
45475// AsBasicDataset is the BasicDataset implementation for HTTPDataset.
45476func (hd HTTPDataset) AsBasicDataset() (BasicDataset, bool) {
45477	return &hd, true
45478}
45479
45480// UnmarshalJSON is the custom unmarshaler for HTTPDataset struct.
45481func (hd *HTTPDataset) UnmarshalJSON(body []byte) error {
45482	var m map[string]*json.RawMessage
45483	err := json.Unmarshal(body, &m)
45484	if err != nil {
45485		return err
45486	}
45487	for k, v := range m {
45488		switch k {
45489		case "typeProperties":
45490			if v != nil {
45491				var HTTPDatasetTypeProperties HTTPDatasetTypeProperties
45492				err = json.Unmarshal(*v, &HTTPDatasetTypeProperties)
45493				if err != nil {
45494					return err
45495				}
45496				hd.HTTPDatasetTypeProperties = &HTTPDatasetTypeProperties
45497			}
45498		default:
45499			if v != nil {
45500				var additionalProperties interface{}
45501				err = json.Unmarshal(*v, &additionalProperties)
45502				if err != nil {
45503					return err
45504				}
45505				if hd.AdditionalProperties == nil {
45506					hd.AdditionalProperties = make(map[string]interface{})
45507				}
45508				hd.AdditionalProperties[k] = additionalProperties
45509			}
45510		case "description":
45511			if v != nil {
45512				var description string
45513				err = json.Unmarshal(*v, &description)
45514				if err != nil {
45515					return err
45516				}
45517				hd.Description = &description
45518			}
45519		case "structure":
45520			if v != nil {
45521				var structure interface{}
45522				err = json.Unmarshal(*v, &structure)
45523				if err != nil {
45524					return err
45525				}
45526				hd.Structure = structure
45527			}
45528		case "linkedServiceName":
45529			if v != nil {
45530				var linkedServiceName LinkedServiceReference
45531				err = json.Unmarshal(*v, &linkedServiceName)
45532				if err != nil {
45533					return err
45534				}
45535				hd.LinkedServiceName = &linkedServiceName
45536			}
45537		case "parameters":
45538			if v != nil {
45539				var parameters map[string]*ParameterSpecification
45540				err = json.Unmarshal(*v, &parameters)
45541				if err != nil {
45542					return err
45543				}
45544				hd.Parameters = parameters
45545			}
45546		case "annotations":
45547			if v != nil {
45548				var annotations []interface{}
45549				err = json.Unmarshal(*v, &annotations)
45550				if err != nil {
45551					return err
45552				}
45553				hd.Annotations = &annotations
45554			}
45555		case "type":
45556			if v != nil {
45557				var typeVar TypeBasicDataset
45558				err = json.Unmarshal(*v, &typeVar)
45559				if err != nil {
45560					return err
45561				}
45562				hd.Type = typeVar
45563			}
45564		}
45565	}
45566
45567	return nil
45568}
45569
45570// HTTPDatasetTypeProperties properties specific to this dataset type.
45571type HTTPDatasetTypeProperties struct {
45572	// RelativeURL - The relative URL based on the URL in the HttpLinkedService refers to an HTTP file Type: string (or Expression with resultType string).
45573	RelativeURL interface{} `json:"relativeUrl,omitempty"`
45574	// RequestMethod - The HTTP method for the HTTP request. Type: string (or Expression with resultType string).
45575	RequestMethod interface{} `json:"requestMethod,omitempty"`
45576	// RequestBody - The body for the HTTP request. Type: string (or Expression with resultType string).
45577	RequestBody interface{} `json:"requestBody,omitempty"`
45578	// AdditionalHeaders - The headers for the HTTP Request. e.g. request-header-name-1:request-header-value-1
45579	// ...
45580	// request-header-name-n:request-header-value-n Type: string (or Expression with resultType string).
45581	AdditionalHeaders interface{} `json:"additionalHeaders,omitempty"`
45582	// Format - The format of files.
45583	Format BasicDatasetStorageFormat `json:"format,omitempty"`
45584	// Compression - The data compression method used on files.
45585	Compression BasicDatasetCompression `json:"compression,omitempty"`
45586}
45587
45588// UnmarshalJSON is the custom unmarshaler for HTTPDatasetTypeProperties struct.
45589func (hdtp *HTTPDatasetTypeProperties) UnmarshalJSON(body []byte) error {
45590	var m map[string]*json.RawMessage
45591	err := json.Unmarshal(body, &m)
45592	if err != nil {
45593		return err
45594	}
45595	for k, v := range m {
45596		switch k {
45597		case "relativeUrl":
45598			if v != nil {
45599				var relativeURL interface{}
45600				err = json.Unmarshal(*v, &relativeURL)
45601				if err != nil {
45602					return err
45603				}
45604				hdtp.RelativeURL = relativeURL
45605			}
45606		case "requestMethod":
45607			if v != nil {
45608				var requestMethod interface{}
45609				err = json.Unmarshal(*v, &requestMethod)
45610				if err != nil {
45611					return err
45612				}
45613				hdtp.RequestMethod = requestMethod
45614			}
45615		case "requestBody":
45616			if v != nil {
45617				var requestBody interface{}
45618				err = json.Unmarshal(*v, &requestBody)
45619				if err != nil {
45620					return err
45621				}
45622				hdtp.RequestBody = requestBody
45623			}
45624		case "additionalHeaders":
45625			if v != nil {
45626				var additionalHeaders interface{}
45627				err = json.Unmarshal(*v, &additionalHeaders)
45628				if err != nil {
45629					return err
45630				}
45631				hdtp.AdditionalHeaders = additionalHeaders
45632			}
45633		case "format":
45634			if v != nil {
45635				formatVar, err := unmarshalBasicDatasetStorageFormat(*v)
45636				if err != nil {
45637					return err
45638				}
45639				hdtp.Format = formatVar
45640			}
45641		case "compression":
45642			if v != nil {
45643				compression, err := unmarshalBasicDatasetCompression(*v)
45644				if err != nil {
45645					return err
45646				}
45647				hdtp.Compression = compression
45648			}
45649		}
45650	}
45651
45652	return nil
45653}
45654
45655// HTTPLinkedService linked service for an HTTP source.
45656type HTTPLinkedService struct {
45657	// HTTPLinkedServiceTypeProperties - Properties specific to this linked service type.
45658	*HTTPLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
45659	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
45660	AdditionalProperties map[string]interface{} `json:""`
45661	// ConnectVia - The integration runtime reference.
45662	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
45663	// Description - Linked service description.
45664	Description *string `json:"description,omitempty"`
45665	// Parameters - Parameters for linked service.
45666	Parameters map[string]*ParameterSpecification `json:"parameters"`
45667	// Annotations - List of tags that can be used for describing the Dataset.
45668	Annotations *[]interface{} `json:"annotations,omitempty"`
45669	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
45670	Type TypeBasicLinkedService `json:"type,omitempty"`
45671}
45672
45673// MarshalJSON is the custom marshaler for HTTPLinkedService.
45674func (hls HTTPLinkedService) MarshalJSON() ([]byte, error) {
45675	hls.Type = TypeHTTPServer
45676	objectMap := make(map[string]interface{})
45677	if hls.HTTPLinkedServiceTypeProperties != nil {
45678		objectMap["typeProperties"] = hls.HTTPLinkedServiceTypeProperties
45679	}
45680	if hls.ConnectVia != nil {
45681		objectMap["connectVia"] = hls.ConnectVia
45682	}
45683	if hls.Description != nil {
45684		objectMap["description"] = hls.Description
45685	}
45686	if hls.Parameters != nil {
45687		objectMap["parameters"] = hls.Parameters
45688	}
45689	if hls.Annotations != nil {
45690		objectMap["annotations"] = hls.Annotations
45691	}
45692	if hls.Type != "" {
45693		objectMap["type"] = hls.Type
45694	}
45695	for k, v := range hls.AdditionalProperties {
45696		objectMap[k] = v
45697	}
45698	return json.Marshal(objectMap)
45699}
45700
45701// AsResponsysLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45702func (hls HTTPLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
45703	return nil, false
45704}
45705
45706// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45707func (hls HTTPLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
45708	return nil, false
45709}
45710
45711// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45712func (hls HTTPLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
45713	return nil, false
45714}
45715
45716// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45717func (hls HTTPLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
45718	return nil, false
45719}
45720
45721// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45722func (hls HTTPLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
45723	return nil, false
45724}
45725
45726// AsNetezzaLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45727func (hls HTTPLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
45728	return nil, false
45729}
45730
45731// AsVerticaLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45732func (hls HTTPLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
45733	return nil, false
45734}
45735
45736// AsZohoLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45737func (hls HTTPLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
45738	return nil, false
45739}
45740
45741// AsXeroLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45742func (hls HTTPLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
45743	return nil, false
45744}
45745
45746// AsSquareLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45747func (hls HTTPLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
45748	return nil, false
45749}
45750
45751// AsSparkLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45752func (hls HTTPLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
45753	return nil, false
45754}
45755
45756// AsShopifyLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45757func (hls HTTPLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
45758	return nil, false
45759}
45760
45761// AsServiceNowLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45762func (hls HTTPLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
45763	return nil, false
45764}
45765
45766// AsQuickBooksLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45767func (hls HTTPLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
45768	return nil, false
45769}
45770
45771// AsPrestoLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45772func (hls HTTPLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
45773	return nil, false
45774}
45775
45776// AsPhoenixLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45777func (hls HTTPLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
45778	return nil, false
45779}
45780
45781// AsPaypalLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45782func (hls HTTPLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
45783	return nil, false
45784}
45785
45786// AsMarketoLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45787func (hls HTTPLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
45788	return nil, false
45789}
45790
45791// AsMariaDBLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45792func (hls HTTPLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
45793	return nil, false
45794}
45795
45796// AsMagentoLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45797func (hls HTTPLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
45798	return nil, false
45799}
45800
45801// AsJiraLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45802func (hls HTTPLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
45803	return nil, false
45804}
45805
45806// AsImpalaLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45807func (hls HTTPLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
45808	return nil, false
45809}
45810
45811// AsHubspotLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45812func (hls HTTPLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
45813	return nil, false
45814}
45815
45816// AsHiveLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45817func (hls HTTPLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
45818	return nil, false
45819}
45820
45821// AsHBaseLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45822func (hls HTTPLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
45823	return nil, false
45824}
45825
45826// AsGreenplumLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45827func (hls HTTPLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
45828	return nil, false
45829}
45830
45831// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45832func (hls HTTPLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
45833	return nil, false
45834}
45835
45836// AsEloquaLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45837func (hls HTTPLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
45838	return nil, false
45839}
45840
45841// AsDrillLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45842func (hls HTTPLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
45843	return nil, false
45844}
45845
45846// AsCouchbaseLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45847func (hls HTTPLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
45848	return nil, false
45849}
45850
45851// AsConcurLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45852func (hls HTTPLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
45853	return nil, false
45854}
45855
45856// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45857func (hls HTTPLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
45858	return nil, false
45859}
45860
45861// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45862func (hls HTTPLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
45863	return nil, false
45864}
45865
45866// AsSapHanaLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45867func (hls HTTPLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
45868	return nil, false
45869}
45870
45871// AsSapBWLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45872func (hls HTTPLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
45873	return nil, false
45874}
45875
45876// AsSftpServerLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45877func (hls HTTPLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
45878	return nil, false
45879}
45880
45881// AsFtpServerLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45882func (hls HTTPLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
45883	return nil, false
45884}
45885
45886// AsHTTPLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45887func (hls HTTPLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
45888	return &hls, true
45889}
45890
45891// AsAzureSearchLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45892func (hls HTTPLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
45893	return nil, false
45894}
45895
45896// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45897func (hls HTTPLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
45898	return nil, false
45899}
45900
45901// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45902func (hls HTTPLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
45903	return nil, false
45904}
45905
45906// AsAmazonS3LinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45907func (hls HTTPLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
45908	return nil, false
45909}
45910
45911// AsSapEccLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45912func (hls HTTPLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
45913	return nil, false
45914}
45915
45916// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45917func (hls HTTPLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
45918	return nil, false
45919}
45920
45921// AsSalesforceLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45922func (hls HTTPLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
45923	return nil, false
45924}
45925
45926// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45927func (hls HTTPLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
45928	return nil, false
45929}
45930
45931// AsMongoDbLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45932func (hls HTTPLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
45933	return nil, false
45934}
45935
45936// AsCassandraLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45937func (hls HTTPLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
45938	return nil, false
45939}
45940
45941// AsWebLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45942func (hls HTTPLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
45943	return nil, false
45944}
45945
45946// AsODataLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45947func (hls HTTPLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
45948	return nil, false
45949}
45950
45951// AsHdfsLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45952func (hls HTTPLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
45953	return nil, false
45954}
45955
45956// AsOdbcLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45957func (hls HTTPLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
45958	return nil, false
45959}
45960
45961// AsAzureMLLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45962func (hls HTTPLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
45963	return nil, false
45964}
45965
45966// AsTeradataLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45967func (hls HTTPLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
45968	return nil, false
45969}
45970
45971// AsDb2LinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45972func (hls HTTPLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
45973	return nil, false
45974}
45975
45976// AsSybaseLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45977func (hls HTTPLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
45978	return nil, false
45979}
45980
45981// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45982func (hls HTTPLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
45983	return nil, false
45984}
45985
45986// AsMySQLLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45987func (hls HTTPLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
45988	return nil, false
45989}
45990
45991// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45992func (hls HTTPLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
45993	return nil, false
45994}
45995
45996// AsOracleLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
45997func (hls HTTPLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
45998	return nil, false
45999}
46000
46001// AsFileServerLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46002func (hls HTTPLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
46003	return nil, false
46004}
46005
46006// AsHDInsightLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46007func (hls HTTPLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
46008	return nil, false
46009}
46010
46011// AsDynamicsLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46012func (hls HTTPLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
46013	return nil, false
46014}
46015
46016// AsCosmosDbLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46017func (hls HTTPLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
46018	return nil, false
46019}
46020
46021// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46022func (hls HTTPLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
46023	return nil, false
46024}
46025
46026// AsAzureBatchLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46027func (hls HTTPLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
46028	return nil, false
46029}
46030
46031// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46032func (hls HTTPLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
46033	return nil, false
46034}
46035
46036// AsSQLServerLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46037func (hls HTTPLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
46038	return nil, false
46039}
46040
46041// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46042func (hls HTTPLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
46043	return nil, false
46044}
46045
46046// AsAzureStorageLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46047func (hls HTTPLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
46048	return nil, false
46049}
46050
46051// AsLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46052func (hls HTTPLinkedService) AsLinkedService() (*LinkedService, bool) {
46053	return nil, false
46054}
46055
46056// AsBasicLinkedService is the BasicLinkedService implementation for HTTPLinkedService.
46057func (hls HTTPLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
46058	return &hls, true
46059}
46060
46061// UnmarshalJSON is the custom unmarshaler for HTTPLinkedService struct.
46062func (hls *HTTPLinkedService) UnmarshalJSON(body []byte) error {
46063	var m map[string]*json.RawMessage
46064	err := json.Unmarshal(body, &m)
46065	if err != nil {
46066		return err
46067	}
46068	for k, v := range m {
46069		switch k {
46070		case "typeProperties":
46071			if v != nil {
46072				var HTTPLinkedServiceTypeProperties HTTPLinkedServiceTypeProperties
46073				err = json.Unmarshal(*v, &HTTPLinkedServiceTypeProperties)
46074				if err != nil {
46075					return err
46076				}
46077				hls.HTTPLinkedServiceTypeProperties = &HTTPLinkedServiceTypeProperties
46078			}
46079		default:
46080			if v != nil {
46081				var additionalProperties interface{}
46082				err = json.Unmarshal(*v, &additionalProperties)
46083				if err != nil {
46084					return err
46085				}
46086				if hls.AdditionalProperties == nil {
46087					hls.AdditionalProperties = make(map[string]interface{})
46088				}
46089				hls.AdditionalProperties[k] = additionalProperties
46090			}
46091		case "connectVia":
46092			if v != nil {
46093				var connectVia IntegrationRuntimeReference
46094				err = json.Unmarshal(*v, &connectVia)
46095				if err != nil {
46096					return err
46097				}
46098				hls.ConnectVia = &connectVia
46099			}
46100		case "description":
46101			if v != nil {
46102				var description string
46103				err = json.Unmarshal(*v, &description)
46104				if err != nil {
46105					return err
46106				}
46107				hls.Description = &description
46108			}
46109		case "parameters":
46110			if v != nil {
46111				var parameters map[string]*ParameterSpecification
46112				err = json.Unmarshal(*v, &parameters)
46113				if err != nil {
46114					return err
46115				}
46116				hls.Parameters = parameters
46117			}
46118		case "annotations":
46119			if v != nil {
46120				var annotations []interface{}
46121				err = json.Unmarshal(*v, &annotations)
46122				if err != nil {
46123					return err
46124				}
46125				hls.Annotations = &annotations
46126			}
46127		case "type":
46128			if v != nil {
46129				var typeVar TypeBasicLinkedService
46130				err = json.Unmarshal(*v, &typeVar)
46131				if err != nil {
46132					return err
46133				}
46134				hls.Type = typeVar
46135			}
46136		}
46137	}
46138
46139	return nil
46140}
46141
46142// HTTPLinkedServiceTypeProperties properties specific to this linked service type.
46143type HTTPLinkedServiceTypeProperties struct {
46144	// URL - The base URL of the HTTP endpoint, e.g. http://www.microsoft.com. Type: string (or Expression with resultType string).
46145	URL interface{} `json:"url,omitempty"`
46146	// AuthenticationType - The authentication type to be used to connect to the HTTP server. Possible values include: 'HTTPAuthenticationTypeBasic', 'HTTPAuthenticationTypeAnonymous', 'HTTPAuthenticationTypeDigest', 'HTTPAuthenticationTypeWindows', 'HTTPAuthenticationTypeClientCertificate'
46147	AuthenticationType HTTPAuthenticationType `json:"authenticationType,omitempty"`
46148	// UserName - User name for Basic, Digest, or Windows authentication. Type: string (or Expression with resultType string).
46149	UserName interface{} `json:"userName,omitempty"`
46150	// Password - Password for Basic, Digest, Windows, or ClientCertificate with EmbeddedCertData authentication.
46151	Password BasicSecretBase `json:"password,omitempty"`
46152	// EmbeddedCertData - Base64 encoded certificate data for ClientCertificate authentication. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. Type: string (or Expression with resultType string).
46153	EmbeddedCertData interface{} `json:"embeddedCertData,omitempty"`
46154	// CertThumbprint - Thumbprint of certificate for ClientCertificate authentication. Only valid for on-premises copy. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. Type: string (or Expression with resultType string).
46155	CertThumbprint interface{} `json:"certThumbprint,omitempty"`
46156	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
46157	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
46158	// EnableServerCertificateValidation - If true, validate the HTTPS server SSL certificate. Default value is true. Type: boolean (or Expression with resultType boolean).
46159	EnableServerCertificateValidation interface{} `json:"enableServerCertificateValidation,omitempty"`
46160}
46161
46162// UnmarshalJSON is the custom unmarshaler for HTTPLinkedServiceTypeProperties struct.
46163func (hlstp *HTTPLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
46164	var m map[string]*json.RawMessage
46165	err := json.Unmarshal(body, &m)
46166	if err != nil {
46167		return err
46168	}
46169	for k, v := range m {
46170		switch k {
46171		case "url":
46172			if v != nil {
46173				var URL interface{}
46174				err = json.Unmarshal(*v, &URL)
46175				if err != nil {
46176					return err
46177				}
46178				hlstp.URL = URL
46179			}
46180		case "authenticationType":
46181			if v != nil {
46182				var authenticationType HTTPAuthenticationType
46183				err = json.Unmarshal(*v, &authenticationType)
46184				if err != nil {
46185					return err
46186				}
46187				hlstp.AuthenticationType = authenticationType
46188			}
46189		case "userName":
46190			if v != nil {
46191				var userName interface{}
46192				err = json.Unmarshal(*v, &userName)
46193				if err != nil {
46194					return err
46195				}
46196				hlstp.UserName = userName
46197			}
46198		case "password":
46199			if v != nil {
46200				password, err := unmarshalBasicSecretBase(*v)
46201				if err != nil {
46202					return err
46203				}
46204				hlstp.Password = password
46205			}
46206		case "embeddedCertData":
46207			if v != nil {
46208				var embeddedCertData interface{}
46209				err = json.Unmarshal(*v, &embeddedCertData)
46210				if err != nil {
46211					return err
46212				}
46213				hlstp.EmbeddedCertData = embeddedCertData
46214			}
46215		case "certThumbprint":
46216			if v != nil {
46217				var certThumbprint interface{}
46218				err = json.Unmarshal(*v, &certThumbprint)
46219				if err != nil {
46220					return err
46221				}
46222				hlstp.CertThumbprint = certThumbprint
46223			}
46224		case "encryptedCredential":
46225			if v != nil {
46226				var encryptedCredential interface{}
46227				err = json.Unmarshal(*v, &encryptedCredential)
46228				if err != nil {
46229					return err
46230				}
46231				hlstp.EncryptedCredential = encryptedCredential
46232			}
46233		case "enableServerCertificateValidation":
46234			if v != nil {
46235				var enableServerCertificateValidation interface{}
46236				err = json.Unmarshal(*v, &enableServerCertificateValidation)
46237				if err != nil {
46238					return err
46239				}
46240				hlstp.EnableServerCertificateValidation = enableServerCertificateValidation
46241			}
46242		}
46243	}
46244
46245	return nil
46246}
46247
46248// HTTPSource a copy activity source for an HTTP file.
46249type HTTPSource struct {
46250	// HTTPRequestTimeout - Specifies the timeout for a HTTP client to get HTTP response from HTTP server. The default value is equivalent to System.Net.HttpWebRequest.Timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
46251	HTTPRequestTimeout interface{} `json:"httpRequestTimeout,omitempty"`
46252	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
46253	AdditionalProperties map[string]interface{} `json:""`
46254	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
46255	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
46256	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
46257	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
46258	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
46259	Type TypeBasicCopySource `json:"type,omitempty"`
46260}
46261
46262// MarshalJSON is the custom marshaler for HTTPSource.
46263func (hs HTTPSource) MarshalJSON() ([]byte, error) {
46264	hs.Type = TypeHTTPSource
46265	objectMap := make(map[string]interface{})
46266	objectMap["httpRequestTimeout"] = hs.HTTPRequestTimeout
46267	objectMap["sourceRetryCount"] = hs.SourceRetryCount
46268	objectMap["sourceRetryWait"] = hs.SourceRetryWait
46269	if hs.Type != "" {
46270		objectMap["type"] = hs.Type
46271	}
46272	for k, v := range hs.AdditionalProperties {
46273		objectMap[k] = v
46274	}
46275	return json.Marshal(objectMap)
46276}
46277
46278// AsAmazonRedshiftSource is the BasicCopySource implementation for HTTPSource.
46279func (hs HTTPSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
46280	return nil, false
46281}
46282
46283// AsResponsysSource is the BasicCopySource implementation for HTTPSource.
46284func (hs HTTPSource) AsResponsysSource() (*ResponsysSource, bool) {
46285	return nil, false
46286}
46287
46288// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for HTTPSource.
46289func (hs HTTPSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
46290	return nil, false
46291}
46292
46293// AsVerticaSource is the BasicCopySource implementation for HTTPSource.
46294func (hs HTTPSource) AsVerticaSource() (*VerticaSource, bool) {
46295	return nil, false
46296}
46297
46298// AsNetezzaSource is the BasicCopySource implementation for HTTPSource.
46299func (hs HTTPSource) AsNetezzaSource() (*NetezzaSource, bool) {
46300	return nil, false
46301}
46302
46303// AsZohoSource is the BasicCopySource implementation for HTTPSource.
46304func (hs HTTPSource) AsZohoSource() (*ZohoSource, bool) {
46305	return nil, false
46306}
46307
46308// AsXeroSource is the BasicCopySource implementation for HTTPSource.
46309func (hs HTTPSource) AsXeroSource() (*XeroSource, bool) {
46310	return nil, false
46311}
46312
46313// AsSquareSource is the BasicCopySource implementation for HTTPSource.
46314func (hs HTTPSource) AsSquareSource() (*SquareSource, bool) {
46315	return nil, false
46316}
46317
46318// AsSparkSource is the BasicCopySource implementation for HTTPSource.
46319func (hs HTTPSource) AsSparkSource() (*SparkSource, bool) {
46320	return nil, false
46321}
46322
46323// AsShopifySource is the BasicCopySource implementation for HTTPSource.
46324func (hs HTTPSource) AsShopifySource() (*ShopifySource, bool) {
46325	return nil, false
46326}
46327
46328// AsServiceNowSource is the BasicCopySource implementation for HTTPSource.
46329func (hs HTTPSource) AsServiceNowSource() (*ServiceNowSource, bool) {
46330	return nil, false
46331}
46332
46333// AsQuickBooksSource is the BasicCopySource implementation for HTTPSource.
46334func (hs HTTPSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
46335	return nil, false
46336}
46337
46338// AsPrestoSource is the BasicCopySource implementation for HTTPSource.
46339func (hs HTTPSource) AsPrestoSource() (*PrestoSource, bool) {
46340	return nil, false
46341}
46342
46343// AsPhoenixSource is the BasicCopySource implementation for HTTPSource.
46344func (hs HTTPSource) AsPhoenixSource() (*PhoenixSource, bool) {
46345	return nil, false
46346}
46347
46348// AsPaypalSource is the BasicCopySource implementation for HTTPSource.
46349func (hs HTTPSource) AsPaypalSource() (*PaypalSource, bool) {
46350	return nil, false
46351}
46352
46353// AsMarketoSource is the BasicCopySource implementation for HTTPSource.
46354func (hs HTTPSource) AsMarketoSource() (*MarketoSource, bool) {
46355	return nil, false
46356}
46357
46358// AsMariaDBSource is the BasicCopySource implementation for HTTPSource.
46359func (hs HTTPSource) AsMariaDBSource() (*MariaDBSource, bool) {
46360	return nil, false
46361}
46362
46363// AsMagentoSource is the BasicCopySource implementation for HTTPSource.
46364func (hs HTTPSource) AsMagentoSource() (*MagentoSource, bool) {
46365	return nil, false
46366}
46367
46368// AsJiraSource is the BasicCopySource implementation for HTTPSource.
46369func (hs HTTPSource) AsJiraSource() (*JiraSource, bool) {
46370	return nil, false
46371}
46372
46373// AsImpalaSource is the BasicCopySource implementation for HTTPSource.
46374func (hs HTTPSource) AsImpalaSource() (*ImpalaSource, bool) {
46375	return nil, false
46376}
46377
46378// AsHubspotSource is the BasicCopySource implementation for HTTPSource.
46379func (hs HTTPSource) AsHubspotSource() (*HubspotSource, bool) {
46380	return nil, false
46381}
46382
46383// AsHiveSource is the BasicCopySource implementation for HTTPSource.
46384func (hs HTTPSource) AsHiveSource() (*HiveSource, bool) {
46385	return nil, false
46386}
46387
46388// AsHBaseSource is the BasicCopySource implementation for HTTPSource.
46389func (hs HTTPSource) AsHBaseSource() (*HBaseSource, bool) {
46390	return nil, false
46391}
46392
46393// AsGreenplumSource is the BasicCopySource implementation for HTTPSource.
46394func (hs HTTPSource) AsGreenplumSource() (*GreenplumSource, bool) {
46395	return nil, false
46396}
46397
46398// AsGoogleBigQuerySource is the BasicCopySource implementation for HTTPSource.
46399func (hs HTTPSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
46400	return nil, false
46401}
46402
46403// AsEloquaSource is the BasicCopySource implementation for HTTPSource.
46404func (hs HTTPSource) AsEloquaSource() (*EloquaSource, bool) {
46405	return nil, false
46406}
46407
46408// AsDrillSource is the BasicCopySource implementation for HTTPSource.
46409func (hs HTTPSource) AsDrillSource() (*DrillSource, bool) {
46410	return nil, false
46411}
46412
46413// AsCouchbaseSource is the BasicCopySource implementation for HTTPSource.
46414func (hs HTTPSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
46415	return nil, false
46416}
46417
46418// AsConcurSource is the BasicCopySource implementation for HTTPSource.
46419func (hs HTTPSource) AsConcurSource() (*ConcurSource, bool) {
46420	return nil, false
46421}
46422
46423// AsAzurePostgreSQLSource is the BasicCopySource implementation for HTTPSource.
46424func (hs HTTPSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
46425	return nil, false
46426}
46427
46428// AsAmazonMWSSource is the BasicCopySource implementation for HTTPSource.
46429func (hs HTTPSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
46430	return nil, false
46431}
46432
46433// AsHTTPSource is the BasicCopySource implementation for HTTPSource.
46434func (hs HTTPSource) AsHTTPSource() (*HTTPSource, bool) {
46435	return &hs, true
46436}
46437
46438// AsAzureDataLakeStoreSource is the BasicCopySource implementation for HTTPSource.
46439func (hs HTTPSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
46440	return nil, false
46441}
46442
46443// AsMongoDbSource is the BasicCopySource implementation for HTTPSource.
46444func (hs HTTPSource) AsMongoDbSource() (*MongoDbSource, bool) {
46445	return nil, false
46446}
46447
46448// AsCassandraSource is the BasicCopySource implementation for HTTPSource.
46449func (hs HTTPSource) AsCassandraSource() (*CassandraSource, bool) {
46450	return nil, false
46451}
46452
46453// AsWebSource is the BasicCopySource implementation for HTTPSource.
46454func (hs HTTPSource) AsWebSource() (*WebSource, bool) {
46455	return nil, false
46456}
46457
46458// AsOracleSource is the BasicCopySource implementation for HTTPSource.
46459func (hs HTTPSource) AsOracleSource() (*OracleSource, bool) {
46460	return nil, false
46461}
46462
46463// AsAzureMySQLSource is the BasicCopySource implementation for HTTPSource.
46464func (hs HTTPSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
46465	return nil, false
46466}
46467
46468// AsHdfsSource is the BasicCopySource implementation for HTTPSource.
46469func (hs HTTPSource) AsHdfsSource() (*HdfsSource, bool) {
46470	return nil, false
46471}
46472
46473// AsFileSystemSource is the BasicCopySource implementation for HTTPSource.
46474func (hs HTTPSource) AsFileSystemSource() (*FileSystemSource, bool) {
46475	return nil, false
46476}
46477
46478// AsSQLDWSource is the BasicCopySource implementation for HTTPSource.
46479func (hs HTTPSource) AsSQLDWSource() (*SQLDWSource, bool) {
46480	return nil, false
46481}
46482
46483// AsSQLSource is the BasicCopySource implementation for HTTPSource.
46484func (hs HTTPSource) AsSQLSource() (*SQLSource, bool) {
46485	return nil, false
46486}
46487
46488// AsSapEccSource is the BasicCopySource implementation for HTTPSource.
46489func (hs HTTPSource) AsSapEccSource() (*SapEccSource, bool) {
46490	return nil, false
46491}
46492
46493// AsSapCloudForCustomerSource is the BasicCopySource implementation for HTTPSource.
46494func (hs HTTPSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
46495	return nil, false
46496}
46497
46498// AsSalesforceSource is the BasicCopySource implementation for HTTPSource.
46499func (hs HTTPSource) AsSalesforceSource() (*SalesforceSource, bool) {
46500	return nil, false
46501}
46502
46503// AsRelationalSource is the BasicCopySource implementation for HTTPSource.
46504func (hs HTTPSource) AsRelationalSource() (*RelationalSource, bool) {
46505	return nil, false
46506}
46507
46508// AsDynamicsSource is the BasicCopySource implementation for HTTPSource.
46509func (hs HTTPSource) AsDynamicsSource() (*DynamicsSource, bool) {
46510	return nil, false
46511}
46512
46513// AsDocumentDbCollectionSource is the BasicCopySource implementation for HTTPSource.
46514func (hs HTTPSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
46515	return nil, false
46516}
46517
46518// AsBlobSource is the BasicCopySource implementation for HTTPSource.
46519func (hs HTTPSource) AsBlobSource() (*BlobSource, bool) {
46520	return nil, false
46521}
46522
46523// AsAzureTableSource is the BasicCopySource implementation for HTTPSource.
46524func (hs HTTPSource) AsAzureTableSource() (*AzureTableSource, bool) {
46525	return nil, false
46526}
46527
46528// AsCopySource is the BasicCopySource implementation for HTTPSource.
46529func (hs HTTPSource) AsCopySource() (*CopySource, bool) {
46530	return nil, false
46531}
46532
46533// AsBasicCopySource is the BasicCopySource implementation for HTTPSource.
46534func (hs HTTPSource) AsBasicCopySource() (BasicCopySource, bool) {
46535	return &hs, true
46536}
46537
46538// HubspotLinkedService hubspot Serivce linked service.
46539type HubspotLinkedService struct {
46540	// HubspotLinkedServiceTypeProperties - Hubspot Serivce linked service properties.
46541	*HubspotLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
46542	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
46543	AdditionalProperties map[string]interface{} `json:""`
46544	// ConnectVia - The integration runtime reference.
46545	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
46546	// Description - Linked service description.
46547	Description *string `json:"description,omitempty"`
46548	// Parameters - Parameters for linked service.
46549	Parameters map[string]*ParameterSpecification `json:"parameters"`
46550	// Annotations - List of tags that can be used for describing the Dataset.
46551	Annotations *[]interface{} `json:"annotations,omitempty"`
46552	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
46553	Type TypeBasicLinkedService `json:"type,omitempty"`
46554}
46555
46556// MarshalJSON is the custom marshaler for HubspotLinkedService.
46557func (hls HubspotLinkedService) MarshalJSON() ([]byte, error) {
46558	hls.Type = TypeHubspot
46559	objectMap := make(map[string]interface{})
46560	if hls.HubspotLinkedServiceTypeProperties != nil {
46561		objectMap["typeProperties"] = hls.HubspotLinkedServiceTypeProperties
46562	}
46563	if hls.ConnectVia != nil {
46564		objectMap["connectVia"] = hls.ConnectVia
46565	}
46566	if hls.Description != nil {
46567		objectMap["description"] = hls.Description
46568	}
46569	if hls.Parameters != nil {
46570		objectMap["parameters"] = hls.Parameters
46571	}
46572	if hls.Annotations != nil {
46573		objectMap["annotations"] = hls.Annotations
46574	}
46575	if hls.Type != "" {
46576		objectMap["type"] = hls.Type
46577	}
46578	for k, v := range hls.AdditionalProperties {
46579		objectMap[k] = v
46580	}
46581	return json.Marshal(objectMap)
46582}
46583
46584// AsResponsysLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46585func (hls HubspotLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
46586	return nil, false
46587}
46588
46589// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46590func (hls HubspotLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
46591	return nil, false
46592}
46593
46594// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46595func (hls HubspotLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
46596	return nil, false
46597}
46598
46599// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46600func (hls HubspotLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
46601	return nil, false
46602}
46603
46604// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46605func (hls HubspotLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
46606	return nil, false
46607}
46608
46609// AsNetezzaLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46610func (hls HubspotLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
46611	return nil, false
46612}
46613
46614// AsVerticaLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46615func (hls HubspotLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
46616	return nil, false
46617}
46618
46619// AsZohoLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46620func (hls HubspotLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
46621	return nil, false
46622}
46623
46624// AsXeroLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46625func (hls HubspotLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
46626	return nil, false
46627}
46628
46629// AsSquareLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46630func (hls HubspotLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
46631	return nil, false
46632}
46633
46634// AsSparkLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46635func (hls HubspotLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
46636	return nil, false
46637}
46638
46639// AsShopifyLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46640func (hls HubspotLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
46641	return nil, false
46642}
46643
46644// AsServiceNowLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46645func (hls HubspotLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
46646	return nil, false
46647}
46648
46649// AsQuickBooksLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46650func (hls HubspotLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
46651	return nil, false
46652}
46653
46654// AsPrestoLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46655func (hls HubspotLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
46656	return nil, false
46657}
46658
46659// AsPhoenixLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46660func (hls HubspotLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
46661	return nil, false
46662}
46663
46664// AsPaypalLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46665func (hls HubspotLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
46666	return nil, false
46667}
46668
46669// AsMarketoLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46670func (hls HubspotLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
46671	return nil, false
46672}
46673
46674// AsMariaDBLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46675func (hls HubspotLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
46676	return nil, false
46677}
46678
46679// AsMagentoLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46680func (hls HubspotLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
46681	return nil, false
46682}
46683
46684// AsJiraLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46685func (hls HubspotLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
46686	return nil, false
46687}
46688
46689// AsImpalaLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46690func (hls HubspotLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
46691	return nil, false
46692}
46693
46694// AsHubspotLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46695func (hls HubspotLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
46696	return &hls, true
46697}
46698
46699// AsHiveLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46700func (hls HubspotLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
46701	return nil, false
46702}
46703
46704// AsHBaseLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46705func (hls HubspotLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
46706	return nil, false
46707}
46708
46709// AsGreenplumLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46710func (hls HubspotLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
46711	return nil, false
46712}
46713
46714// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46715func (hls HubspotLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
46716	return nil, false
46717}
46718
46719// AsEloquaLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46720func (hls HubspotLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
46721	return nil, false
46722}
46723
46724// AsDrillLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46725func (hls HubspotLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
46726	return nil, false
46727}
46728
46729// AsCouchbaseLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46730func (hls HubspotLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
46731	return nil, false
46732}
46733
46734// AsConcurLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46735func (hls HubspotLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
46736	return nil, false
46737}
46738
46739// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46740func (hls HubspotLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
46741	return nil, false
46742}
46743
46744// AsAmazonMWSLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46745func (hls HubspotLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
46746	return nil, false
46747}
46748
46749// AsSapHanaLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46750func (hls HubspotLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
46751	return nil, false
46752}
46753
46754// AsSapBWLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46755func (hls HubspotLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
46756	return nil, false
46757}
46758
46759// AsSftpServerLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46760func (hls HubspotLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
46761	return nil, false
46762}
46763
46764// AsFtpServerLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46765func (hls HubspotLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
46766	return nil, false
46767}
46768
46769// AsHTTPLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46770func (hls HubspotLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
46771	return nil, false
46772}
46773
46774// AsAzureSearchLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46775func (hls HubspotLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
46776	return nil, false
46777}
46778
46779// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46780func (hls HubspotLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
46781	return nil, false
46782}
46783
46784// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46785func (hls HubspotLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
46786	return nil, false
46787}
46788
46789// AsAmazonS3LinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46790func (hls HubspotLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
46791	return nil, false
46792}
46793
46794// AsSapEccLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46795func (hls HubspotLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
46796	return nil, false
46797}
46798
46799// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46800func (hls HubspotLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
46801	return nil, false
46802}
46803
46804// AsSalesforceLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46805func (hls HubspotLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
46806	return nil, false
46807}
46808
46809// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46810func (hls HubspotLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
46811	return nil, false
46812}
46813
46814// AsMongoDbLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46815func (hls HubspotLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
46816	return nil, false
46817}
46818
46819// AsCassandraLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46820func (hls HubspotLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
46821	return nil, false
46822}
46823
46824// AsWebLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46825func (hls HubspotLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
46826	return nil, false
46827}
46828
46829// AsODataLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46830func (hls HubspotLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
46831	return nil, false
46832}
46833
46834// AsHdfsLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46835func (hls HubspotLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
46836	return nil, false
46837}
46838
46839// AsOdbcLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46840func (hls HubspotLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
46841	return nil, false
46842}
46843
46844// AsAzureMLLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46845func (hls HubspotLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
46846	return nil, false
46847}
46848
46849// AsTeradataLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46850func (hls HubspotLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
46851	return nil, false
46852}
46853
46854// AsDb2LinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46855func (hls HubspotLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
46856	return nil, false
46857}
46858
46859// AsSybaseLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46860func (hls HubspotLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
46861	return nil, false
46862}
46863
46864// AsPostgreSQLLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46865func (hls HubspotLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
46866	return nil, false
46867}
46868
46869// AsMySQLLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46870func (hls HubspotLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
46871	return nil, false
46872}
46873
46874// AsAzureMySQLLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46875func (hls HubspotLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
46876	return nil, false
46877}
46878
46879// AsOracleLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46880func (hls HubspotLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
46881	return nil, false
46882}
46883
46884// AsFileServerLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46885func (hls HubspotLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
46886	return nil, false
46887}
46888
46889// AsHDInsightLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46890func (hls HubspotLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
46891	return nil, false
46892}
46893
46894// AsDynamicsLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46895func (hls HubspotLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
46896	return nil, false
46897}
46898
46899// AsCosmosDbLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46900func (hls HubspotLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
46901	return nil, false
46902}
46903
46904// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46905func (hls HubspotLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
46906	return nil, false
46907}
46908
46909// AsAzureBatchLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46910func (hls HubspotLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
46911	return nil, false
46912}
46913
46914// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46915func (hls HubspotLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
46916	return nil, false
46917}
46918
46919// AsSQLServerLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46920func (hls HubspotLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
46921	return nil, false
46922}
46923
46924// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46925func (hls HubspotLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
46926	return nil, false
46927}
46928
46929// AsAzureStorageLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46930func (hls HubspotLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
46931	return nil, false
46932}
46933
46934// AsLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46935func (hls HubspotLinkedService) AsLinkedService() (*LinkedService, bool) {
46936	return nil, false
46937}
46938
46939// AsBasicLinkedService is the BasicLinkedService implementation for HubspotLinkedService.
46940func (hls HubspotLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
46941	return &hls, true
46942}
46943
46944// UnmarshalJSON is the custom unmarshaler for HubspotLinkedService struct.
46945func (hls *HubspotLinkedService) UnmarshalJSON(body []byte) error {
46946	var m map[string]*json.RawMessage
46947	err := json.Unmarshal(body, &m)
46948	if err != nil {
46949		return err
46950	}
46951	for k, v := range m {
46952		switch k {
46953		case "typeProperties":
46954			if v != nil {
46955				var hubspotLinkedServiceTypeProperties HubspotLinkedServiceTypeProperties
46956				err = json.Unmarshal(*v, &hubspotLinkedServiceTypeProperties)
46957				if err != nil {
46958					return err
46959				}
46960				hls.HubspotLinkedServiceTypeProperties = &hubspotLinkedServiceTypeProperties
46961			}
46962		default:
46963			if v != nil {
46964				var additionalProperties interface{}
46965				err = json.Unmarshal(*v, &additionalProperties)
46966				if err != nil {
46967					return err
46968				}
46969				if hls.AdditionalProperties == nil {
46970					hls.AdditionalProperties = make(map[string]interface{})
46971				}
46972				hls.AdditionalProperties[k] = additionalProperties
46973			}
46974		case "connectVia":
46975			if v != nil {
46976				var connectVia IntegrationRuntimeReference
46977				err = json.Unmarshal(*v, &connectVia)
46978				if err != nil {
46979					return err
46980				}
46981				hls.ConnectVia = &connectVia
46982			}
46983		case "description":
46984			if v != nil {
46985				var description string
46986				err = json.Unmarshal(*v, &description)
46987				if err != nil {
46988					return err
46989				}
46990				hls.Description = &description
46991			}
46992		case "parameters":
46993			if v != nil {
46994				var parameters map[string]*ParameterSpecification
46995				err = json.Unmarshal(*v, &parameters)
46996				if err != nil {
46997					return err
46998				}
46999				hls.Parameters = parameters
47000			}
47001		case "annotations":
47002			if v != nil {
47003				var annotations []interface{}
47004				err = json.Unmarshal(*v, &annotations)
47005				if err != nil {
47006					return err
47007				}
47008				hls.Annotations = &annotations
47009			}
47010		case "type":
47011			if v != nil {
47012				var typeVar TypeBasicLinkedService
47013				err = json.Unmarshal(*v, &typeVar)
47014				if err != nil {
47015					return err
47016				}
47017				hls.Type = typeVar
47018			}
47019		}
47020	}
47021
47022	return nil
47023}
47024
47025// HubspotLinkedServiceTypeProperties hubspot Serivce linked service properties.
47026type HubspotLinkedServiceTypeProperties struct {
47027	// ClientID - The client ID associated with your Hubspot application.
47028	ClientID interface{} `json:"clientId,omitempty"`
47029	// ClientSecret - The client secret associated with your Hubspot application.
47030	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
47031	// AccessToken - The access token obtained when initially authenticating your OAuth integration.
47032	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
47033	// RefreshToken - The refresh token obtained when initially authenticating your OAuth integration.
47034	RefreshToken BasicSecretBase `json:"refreshToken,omitempty"`
47035	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
47036	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
47037	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
47038	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
47039	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
47040	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
47041	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
47042	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
47043}
47044
47045// UnmarshalJSON is the custom unmarshaler for HubspotLinkedServiceTypeProperties struct.
47046func (hlstp *HubspotLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
47047	var m map[string]*json.RawMessage
47048	err := json.Unmarshal(body, &m)
47049	if err != nil {
47050		return err
47051	}
47052	for k, v := range m {
47053		switch k {
47054		case "clientId":
47055			if v != nil {
47056				var clientID interface{}
47057				err = json.Unmarshal(*v, &clientID)
47058				if err != nil {
47059					return err
47060				}
47061				hlstp.ClientID = clientID
47062			}
47063		case "clientSecret":
47064			if v != nil {
47065				clientSecret, err := unmarshalBasicSecretBase(*v)
47066				if err != nil {
47067					return err
47068				}
47069				hlstp.ClientSecret = clientSecret
47070			}
47071		case "accessToken":
47072			if v != nil {
47073				accessToken, err := unmarshalBasicSecretBase(*v)
47074				if err != nil {
47075					return err
47076				}
47077				hlstp.AccessToken = accessToken
47078			}
47079		case "refreshToken":
47080			if v != nil {
47081				refreshToken, err := unmarshalBasicSecretBase(*v)
47082				if err != nil {
47083					return err
47084				}
47085				hlstp.RefreshToken = refreshToken
47086			}
47087		case "useEncryptedEndpoints":
47088			if v != nil {
47089				var useEncryptedEndpoints interface{}
47090				err = json.Unmarshal(*v, &useEncryptedEndpoints)
47091				if err != nil {
47092					return err
47093				}
47094				hlstp.UseEncryptedEndpoints = useEncryptedEndpoints
47095			}
47096		case "useHostVerification":
47097			if v != nil {
47098				var useHostVerification interface{}
47099				err = json.Unmarshal(*v, &useHostVerification)
47100				if err != nil {
47101					return err
47102				}
47103				hlstp.UseHostVerification = useHostVerification
47104			}
47105		case "usePeerVerification":
47106			if v != nil {
47107				var usePeerVerification interface{}
47108				err = json.Unmarshal(*v, &usePeerVerification)
47109				if err != nil {
47110					return err
47111				}
47112				hlstp.UsePeerVerification = usePeerVerification
47113			}
47114		case "encryptedCredential":
47115			if v != nil {
47116				var encryptedCredential interface{}
47117				err = json.Unmarshal(*v, &encryptedCredential)
47118				if err != nil {
47119					return err
47120				}
47121				hlstp.EncryptedCredential = encryptedCredential
47122			}
47123		}
47124	}
47125
47126	return nil
47127}
47128
47129// HubspotObjectDataset hubspot Serivce dataset.
47130type HubspotObjectDataset struct {
47131	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
47132	AdditionalProperties map[string]interface{} `json:""`
47133	// Description - Dataset description.
47134	Description *string `json:"description,omitempty"`
47135	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
47136	Structure interface{} `json:"structure,omitempty"`
47137	// LinkedServiceName - Linked service reference.
47138	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
47139	// Parameters - Parameters for dataset.
47140	Parameters map[string]*ParameterSpecification `json:"parameters"`
47141	// Annotations - List of tags that can be used for describing the Dataset.
47142	Annotations *[]interface{} `json:"annotations,omitempty"`
47143	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
47144	Type TypeBasicDataset `json:"type,omitempty"`
47145}
47146
47147// MarshalJSON is the custom marshaler for HubspotObjectDataset.
47148func (hod HubspotObjectDataset) MarshalJSON() ([]byte, error) {
47149	hod.Type = TypeHubspotObject
47150	objectMap := make(map[string]interface{})
47151	if hod.Description != nil {
47152		objectMap["description"] = hod.Description
47153	}
47154	objectMap["structure"] = hod.Structure
47155	if hod.LinkedServiceName != nil {
47156		objectMap["linkedServiceName"] = hod.LinkedServiceName
47157	}
47158	if hod.Parameters != nil {
47159		objectMap["parameters"] = hod.Parameters
47160	}
47161	if hod.Annotations != nil {
47162		objectMap["annotations"] = hod.Annotations
47163	}
47164	if hod.Type != "" {
47165		objectMap["type"] = hod.Type
47166	}
47167	for k, v := range hod.AdditionalProperties {
47168		objectMap[k] = v
47169	}
47170	return json.Marshal(objectMap)
47171}
47172
47173// AsResponsysObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47174func (hod HubspotObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
47175	return nil, false
47176}
47177
47178// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47179func (hod HubspotObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
47180	return nil, false
47181}
47182
47183// AsVerticaTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47184func (hod HubspotObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
47185	return nil, false
47186}
47187
47188// AsNetezzaTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47189func (hod HubspotObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
47190	return nil, false
47191}
47192
47193// AsZohoObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47194func (hod HubspotObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
47195	return nil, false
47196}
47197
47198// AsXeroObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47199func (hod HubspotObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
47200	return nil, false
47201}
47202
47203// AsSquareObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47204func (hod HubspotObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
47205	return nil, false
47206}
47207
47208// AsSparkObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47209func (hod HubspotObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
47210	return nil, false
47211}
47212
47213// AsShopifyObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47214func (hod HubspotObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
47215	return nil, false
47216}
47217
47218// AsServiceNowObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47219func (hod HubspotObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
47220	return nil, false
47221}
47222
47223// AsQuickBooksObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47224func (hod HubspotObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
47225	return nil, false
47226}
47227
47228// AsPrestoObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47229func (hod HubspotObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
47230	return nil, false
47231}
47232
47233// AsPhoenixObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47234func (hod HubspotObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
47235	return nil, false
47236}
47237
47238// AsPaypalObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47239func (hod HubspotObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
47240	return nil, false
47241}
47242
47243// AsMarketoObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47244func (hod HubspotObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
47245	return nil, false
47246}
47247
47248// AsMariaDBTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47249func (hod HubspotObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
47250	return nil, false
47251}
47252
47253// AsMagentoObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47254func (hod HubspotObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
47255	return nil, false
47256}
47257
47258// AsJiraObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47259func (hod HubspotObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
47260	return nil, false
47261}
47262
47263// AsImpalaObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47264func (hod HubspotObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
47265	return nil, false
47266}
47267
47268// AsHubspotObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47269func (hod HubspotObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
47270	return &hod, true
47271}
47272
47273// AsHiveObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47274func (hod HubspotObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
47275	return nil, false
47276}
47277
47278// AsHBaseObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47279func (hod HubspotObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
47280	return nil, false
47281}
47282
47283// AsGreenplumTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47284func (hod HubspotObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
47285	return nil, false
47286}
47287
47288// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47289func (hod HubspotObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
47290	return nil, false
47291}
47292
47293// AsEloquaObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47294func (hod HubspotObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
47295	return nil, false
47296}
47297
47298// AsDrillTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47299func (hod HubspotObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
47300	return nil, false
47301}
47302
47303// AsCouchbaseTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47304func (hod HubspotObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
47305	return nil, false
47306}
47307
47308// AsConcurObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47309func (hod HubspotObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
47310	return nil, false
47311}
47312
47313// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47314func (hod HubspotObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
47315	return nil, false
47316}
47317
47318// AsAmazonMWSObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47319func (hod HubspotObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
47320	return nil, false
47321}
47322
47323// AsHTTPDataset is the BasicDataset implementation for HubspotObjectDataset.
47324func (hod HubspotObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
47325	return nil, false
47326}
47327
47328// AsAzureSearchIndexDataset is the BasicDataset implementation for HubspotObjectDataset.
47329func (hod HubspotObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
47330	return nil, false
47331}
47332
47333// AsWebTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47334func (hod HubspotObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
47335	return nil, false
47336}
47337
47338// AsSQLServerTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47339func (hod HubspotObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
47340	return nil, false
47341}
47342
47343// AsSapEccResourceDataset is the BasicDataset implementation for HubspotObjectDataset.
47344func (hod HubspotObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
47345	return nil, false
47346}
47347
47348// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for HubspotObjectDataset.
47349func (hod HubspotObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
47350	return nil, false
47351}
47352
47353// AsSalesforceObjectDataset is the BasicDataset implementation for HubspotObjectDataset.
47354func (hod HubspotObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
47355	return nil, false
47356}
47357
47358// AsRelationalTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47359func (hod HubspotObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
47360	return nil, false
47361}
47362
47363// AsAzureMySQLTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47364func (hod HubspotObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
47365	return nil, false
47366}
47367
47368// AsOracleTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47369func (hod HubspotObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
47370	return nil, false
47371}
47372
47373// AsODataResourceDataset is the BasicDataset implementation for HubspotObjectDataset.
47374func (hod HubspotObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
47375	return nil, false
47376}
47377
47378// AsMongoDbCollectionDataset is the BasicDataset implementation for HubspotObjectDataset.
47379func (hod HubspotObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
47380	return nil, false
47381}
47382
47383// AsFileShareDataset is the BasicDataset implementation for HubspotObjectDataset.
47384func (hod HubspotObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
47385	return nil, false
47386}
47387
47388// AsAzureDataLakeStoreDataset is the BasicDataset implementation for HubspotObjectDataset.
47389func (hod HubspotObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
47390	return nil, false
47391}
47392
47393// AsDynamicsEntityDataset is the BasicDataset implementation for HubspotObjectDataset.
47394func (hod HubspotObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
47395	return nil, false
47396}
47397
47398// AsDocumentDbCollectionDataset is the BasicDataset implementation for HubspotObjectDataset.
47399func (hod HubspotObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
47400	return nil, false
47401}
47402
47403// AsCustomDataset is the BasicDataset implementation for HubspotObjectDataset.
47404func (hod HubspotObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
47405	return nil, false
47406}
47407
47408// AsCassandraTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47409func (hod HubspotObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
47410	return nil, false
47411}
47412
47413// AsAzureSQLDWTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47414func (hod HubspotObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
47415	return nil, false
47416}
47417
47418// AsAzureSQLTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47419func (hod HubspotObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
47420	return nil, false
47421}
47422
47423// AsAzureTableDataset is the BasicDataset implementation for HubspotObjectDataset.
47424func (hod HubspotObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
47425	return nil, false
47426}
47427
47428// AsAzureBlobDataset is the BasicDataset implementation for HubspotObjectDataset.
47429func (hod HubspotObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
47430	return nil, false
47431}
47432
47433// AsAmazonS3Dataset is the BasicDataset implementation for HubspotObjectDataset.
47434func (hod HubspotObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
47435	return nil, false
47436}
47437
47438// AsDataset is the BasicDataset implementation for HubspotObjectDataset.
47439func (hod HubspotObjectDataset) AsDataset() (*Dataset, bool) {
47440	return nil, false
47441}
47442
47443// AsBasicDataset is the BasicDataset implementation for HubspotObjectDataset.
47444func (hod HubspotObjectDataset) AsBasicDataset() (BasicDataset, bool) {
47445	return &hod, true
47446}
47447
47448// HubspotSource a copy activity Hubspot Serivce source.
47449type HubspotSource struct {
47450	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
47451	Query interface{} `json:"query,omitempty"`
47452	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
47453	AdditionalProperties map[string]interface{} `json:""`
47454	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
47455	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
47456	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
47457	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
47458	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
47459	Type TypeBasicCopySource `json:"type,omitempty"`
47460}
47461
47462// MarshalJSON is the custom marshaler for HubspotSource.
47463func (hs HubspotSource) MarshalJSON() ([]byte, error) {
47464	hs.Type = TypeHubspotSource
47465	objectMap := make(map[string]interface{})
47466	objectMap["query"] = hs.Query
47467	objectMap["sourceRetryCount"] = hs.SourceRetryCount
47468	objectMap["sourceRetryWait"] = hs.SourceRetryWait
47469	if hs.Type != "" {
47470		objectMap["type"] = hs.Type
47471	}
47472	for k, v := range hs.AdditionalProperties {
47473		objectMap[k] = v
47474	}
47475	return json.Marshal(objectMap)
47476}
47477
47478// AsAmazonRedshiftSource is the BasicCopySource implementation for HubspotSource.
47479func (hs HubspotSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
47480	return nil, false
47481}
47482
47483// AsResponsysSource is the BasicCopySource implementation for HubspotSource.
47484func (hs HubspotSource) AsResponsysSource() (*ResponsysSource, bool) {
47485	return nil, false
47486}
47487
47488// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for HubspotSource.
47489func (hs HubspotSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
47490	return nil, false
47491}
47492
47493// AsVerticaSource is the BasicCopySource implementation for HubspotSource.
47494func (hs HubspotSource) AsVerticaSource() (*VerticaSource, bool) {
47495	return nil, false
47496}
47497
47498// AsNetezzaSource is the BasicCopySource implementation for HubspotSource.
47499func (hs HubspotSource) AsNetezzaSource() (*NetezzaSource, bool) {
47500	return nil, false
47501}
47502
47503// AsZohoSource is the BasicCopySource implementation for HubspotSource.
47504func (hs HubspotSource) AsZohoSource() (*ZohoSource, bool) {
47505	return nil, false
47506}
47507
47508// AsXeroSource is the BasicCopySource implementation for HubspotSource.
47509func (hs HubspotSource) AsXeroSource() (*XeroSource, bool) {
47510	return nil, false
47511}
47512
47513// AsSquareSource is the BasicCopySource implementation for HubspotSource.
47514func (hs HubspotSource) AsSquareSource() (*SquareSource, bool) {
47515	return nil, false
47516}
47517
47518// AsSparkSource is the BasicCopySource implementation for HubspotSource.
47519func (hs HubspotSource) AsSparkSource() (*SparkSource, bool) {
47520	return nil, false
47521}
47522
47523// AsShopifySource is the BasicCopySource implementation for HubspotSource.
47524func (hs HubspotSource) AsShopifySource() (*ShopifySource, bool) {
47525	return nil, false
47526}
47527
47528// AsServiceNowSource is the BasicCopySource implementation for HubspotSource.
47529func (hs HubspotSource) AsServiceNowSource() (*ServiceNowSource, bool) {
47530	return nil, false
47531}
47532
47533// AsQuickBooksSource is the BasicCopySource implementation for HubspotSource.
47534func (hs HubspotSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
47535	return nil, false
47536}
47537
47538// AsPrestoSource is the BasicCopySource implementation for HubspotSource.
47539func (hs HubspotSource) AsPrestoSource() (*PrestoSource, bool) {
47540	return nil, false
47541}
47542
47543// AsPhoenixSource is the BasicCopySource implementation for HubspotSource.
47544func (hs HubspotSource) AsPhoenixSource() (*PhoenixSource, bool) {
47545	return nil, false
47546}
47547
47548// AsPaypalSource is the BasicCopySource implementation for HubspotSource.
47549func (hs HubspotSource) AsPaypalSource() (*PaypalSource, bool) {
47550	return nil, false
47551}
47552
47553// AsMarketoSource is the BasicCopySource implementation for HubspotSource.
47554func (hs HubspotSource) AsMarketoSource() (*MarketoSource, bool) {
47555	return nil, false
47556}
47557
47558// AsMariaDBSource is the BasicCopySource implementation for HubspotSource.
47559func (hs HubspotSource) AsMariaDBSource() (*MariaDBSource, bool) {
47560	return nil, false
47561}
47562
47563// AsMagentoSource is the BasicCopySource implementation for HubspotSource.
47564func (hs HubspotSource) AsMagentoSource() (*MagentoSource, bool) {
47565	return nil, false
47566}
47567
47568// AsJiraSource is the BasicCopySource implementation for HubspotSource.
47569func (hs HubspotSource) AsJiraSource() (*JiraSource, bool) {
47570	return nil, false
47571}
47572
47573// AsImpalaSource is the BasicCopySource implementation for HubspotSource.
47574func (hs HubspotSource) AsImpalaSource() (*ImpalaSource, bool) {
47575	return nil, false
47576}
47577
47578// AsHubspotSource is the BasicCopySource implementation for HubspotSource.
47579func (hs HubspotSource) AsHubspotSource() (*HubspotSource, bool) {
47580	return &hs, true
47581}
47582
47583// AsHiveSource is the BasicCopySource implementation for HubspotSource.
47584func (hs HubspotSource) AsHiveSource() (*HiveSource, bool) {
47585	return nil, false
47586}
47587
47588// AsHBaseSource is the BasicCopySource implementation for HubspotSource.
47589func (hs HubspotSource) AsHBaseSource() (*HBaseSource, bool) {
47590	return nil, false
47591}
47592
47593// AsGreenplumSource is the BasicCopySource implementation for HubspotSource.
47594func (hs HubspotSource) AsGreenplumSource() (*GreenplumSource, bool) {
47595	return nil, false
47596}
47597
47598// AsGoogleBigQuerySource is the BasicCopySource implementation for HubspotSource.
47599func (hs HubspotSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
47600	return nil, false
47601}
47602
47603// AsEloquaSource is the BasicCopySource implementation for HubspotSource.
47604func (hs HubspotSource) AsEloquaSource() (*EloquaSource, bool) {
47605	return nil, false
47606}
47607
47608// AsDrillSource is the BasicCopySource implementation for HubspotSource.
47609func (hs HubspotSource) AsDrillSource() (*DrillSource, bool) {
47610	return nil, false
47611}
47612
47613// AsCouchbaseSource is the BasicCopySource implementation for HubspotSource.
47614func (hs HubspotSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
47615	return nil, false
47616}
47617
47618// AsConcurSource is the BasicCopySource implementation for HubspotSource.
47619func (hs HubspotSource) AsConcurSource() (*ConcurSource, bool) {
47620	return nil, false
47621}
47622
47623// AsAzurePostgreSQLSource is the BasicCopySource implementation for HubspotSource.
47624func (hs HubspotSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
47625	return nil, false
47626}
47627
47628// AsAmazonMWSSource is the BasicCopySource implementation for HubspotSource.
47629func (hs HubspotSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
47630	return nil, false
47631}
47632
47633// AsHTTPSource is the BasicCopySource implementation for HubspotSource.
47634func (hs HubspotSource) AsHTTPSource() (*HTTPSource, bool) {
47635	return nil, false
47636}
47637
47638// AsAzureDataLakeStoreSource is the BasicCopySource implementation for HubspotSource.
47639func (hs HubspotSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
47640	return nil, false
47641}
47642
47643// AsMongoDbSource is the BasicCopySource implementation for HubspotSource.
47644func (hs HubspotSource) AsMongoDbSource() (*MongoDbSource, bool) {
47645	return nil, false
47646}
47647
47648// AsCassandraSource is the BasicCopySource implementation for HubspotSource.
47649func (hs HubspotSource) AsCassandraSource() (*CassandraSource, bool) {
47650	return nil, false
47651}
47652
47653// AsWebSource is the BasicCopySource implementation for HubspotSource.
47654func (hs HubspotSource) AsWebSource() (*WebSource, bool) {
47655	return nil, false
47656}
47657
47658// AsOracleSource is the BasicCopySource implementation for HubspotSource.
47659func (hs HubspotSource) AsOracleSource() (*OracleSource, bool) {
47660	return nil, false
47661}
47662
47663// AsAzureMySQLSource is the BasicCopySource implementation for HubspotSource.
47664func (hs HubspotSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
47665	return nil, false
47666}
47667
47668// AsHdfsSource is the BasicCopySource implementation for HubspotSource.
47669func (hs HubspotSource) AsHdfsSource() (*HdfsSource, bool) {
47670	return nil, false
47671}
47672
47673// AsFileSystemSource is the BasicCopySource implementation for HubspotSource.
47674func (hs HubspotSource) AsFileSystemSource() (*FileSystemSource, bool) {
47675	return nil, false
47676}
47677
47678// AsSQLDWSource is the BasicCopySource implementation for HubspotSource.
47679func (hs HubspotSource) AsSQLDWSource() (*SQLDWSource, bool) {
47680	return nil, false
47681}
47682
47683// AsSQLSource is the BasicCopySource implementation for HubspotSource.
47684func (hs HubspotSource) AsSQLSource() (*SQLSource, bool) {
47685	return nil, false
47686}
47687
47688// AsSapEccSource is the BasicCopySource implementation for HubspotSource.
47689func (hs HubspotSource) AsSapEccSource() (*SapEccSource, bool) {
47690	return nil, false
47691}
47692
47693// AsSapCloudForCustomerSource is the BasicCopySource implementation for HubspotSource.
47694func (hs HubspotSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
47695	return nil, false
47696}
47697
47698// AsSalesforceSource is the BasicCopySource implementation for HubspotSource.
47699func (hs HubspotSource) AsSalesforceSource() (*SalesforceSource, bool) {
47700	return nil, false
47701}
47702
47703// AsRelationalSource is the BasicCopySource implementation for HubspotSource.
47704func (hs HubspotSource) AsRelationalSource() (*RelationalSource, bool) {
47705	return nil, false
47706}
47707
47708// AsDynamicsSource is the BasicCopySource implementation for HubspotSource.
47709func (hs HubspotSource) AsDynamicsSource() (*DynamicsSource, bool) {
47710	return nil, false
47711}
47712
47713// AsDocumentDbCollectionSource is the BasicCopySource implementation for HubspotSource.
47714func (hs HubspotSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
47715	return nil, false
47716}
47717
47718// AsBlobSource is the BasicCopySource implementation for HubspotSource.
47719func (hs HubspotSource) AsBlobSource() (*BlobSource, bool) {
47720	return nil, false
47721}
47722
47723// AsAzureTableSource is the BasicCopySource implementation for HubspotSource.
47724func (hs HubspotSource) AsAzureTableSource() (*AzureTableSource, bool) {
47725	return nil, false
47726}
47727
47728// AsCopySource is the BasicCopySource implementation for HubspotSource.
47729func (hs HubspotSource) AsCopySource() (*CopySource, bool) {
47730	return nil, false
47731}
47732
47733// AsBasicCopySource is the BasicCopySource implementation for HubspotSource.
47734func (hs HubspotSource) AsBasicCopySource() (BasicCopySource, bool) {
47735	return &hs, true
47736}
47737
47738// IfConditionActivity this activity evaluates a boolean expression and executes either the activities under the
47739// ifTrueActivities property or the ifFalseActivities property depending on the result of the expression.
47740type IfConditionActivity struct {
47741	// IfConditionActivityTypeProperties - IfCondition activity properties.
47742	*IfConditionActivityTypeProperties `json:"typeProperties,omitempty"`
47743	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
47744	AdditionalProperties map[string]interface{} `json:""`
47745	// Name - Activity name.
47746	Name *string `json:"name,omitempty"`
47747	// Description - Activity description.
47748	Description *string `json:"description,omitempty"`
47749	// DependsOn - Activity depends on condition.
47750	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
47751	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
47752	Type TypeBasicActivity `json:"type,omitempty"`
47753}
47754
47755// MarshalJSON is the custom marshaler for IfConditionActivity.
47756func (ica IfConditionActivity) MarshalJSON() ([]byte, error) {
47757	ica.Type = TypeIfCondition
47758	objectMap := make(map[string]interface{})
47759	if ica.IfConditionActivityTypeProperties != nil {
47760		objectMap["typeProperties"] = ica.IfConditionActivityTypeProperties
47761	}
47762	if ica.Name != nil {
47763		objectMap["name"] = ica.Name
47764	}
47765	if ica.Description != nil {
47766		objectMap["description"] = ica.Description
47767	}
47768	if ica.DependsOn != nil {
47769		objectMap["dependsOn"] = ica.DependsOn
47770	}
47771	if ica.Type != "" {
47772		objectMap["type"] = ica.Type
47773	}
47774	for k, v := range ica.AdditionalProperties {
47775		objectMap[k] = v
47776	}
47777	return json.Marshal(objectMap)
47778}
47779
47780// AsDatabricksNotebookActivity is the BasicActivity implementation for IfConditionActivity.
47781func (ica IfConditionActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
47782	return nil, false
47783}
47784
47785// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for IfConditionActivity.
47786func (ica IfConditionActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
47787	return nil, false
47788}
47789
47790// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for IfConditionActivity.
47791func (ica IfConditionActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
47792	return nil, false
47793}
47794
47795// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for IfConditionActivity.
47796func (ica IfConditionActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
47797	return nil, false
47798}
47799
47800// AsGetMetadataActivity is the BasicActivity implementation for IfConditionActivity.
47801func (ica IfConditionActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
47802	return nil, false
47803}
47804
47805// AsWebActivity is the BasicActivity implementation for IfConditionActivity.
47806func (ica IfConditionActivity) AsWebActivity() (*WebActivity, bool) {
47807	return nil, false
47808}
47809
47810// AsLookupActivity is the BasicActivity implementation for IfConditionActivity.
47811func (ica IfConditionActivity) AsLookupActivity() (*LookupActivity, bool) {
47812	return nil, false
47813}
47814
47815// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for IfConditionActivity.
47816func (ica IfConditionActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
47817	return nil, false
47818}
47819
47820// AsCustomActivity is the BasicActivity implementation for IfConditionActivity.
47821func (ica IfConditionActivity) AsCustomActivity() (*CustomActivity, bool) {
47822	return nil, false
47823}
47824
47825// AsExecuteSSISPackageActivity is the BasicActivity implementation for IfConditionActivity.
47826func (ica IfConditionActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
47827	return nil, false
47828}
47829
47830// AsHDInsightSparkActivity is the BasicActivity implementation for IfConditionActivity.
47831func (ica IfConditionActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
47832	return nil, false
47833}
47834
47835// AsHDInsightStreamingActivity is the BasicActivity implementation for IfConditionActivity.
47836func (ica IfConditionActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
47837	return nil, false
47838}
47839
47840// AsHDInsightMapReduceActivity is the BasicActivity implementation for IfConditionActivity.
47841func (ica IfConditionActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
47842	return nil, false
47843}
47844
47845// AsHDInsightPigActivity is the BasicActivity implementation for IfConditionActivity.
47846func (ica IfConditionActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
47847	return nil, false
47848}
47849
47850// AsHDInsightHiveActivity is the BasicActivity implementation for IfConditionActivity.
47851func (ica IfConditionActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
47852	return nil, false
47853}
47854
47855// AsCopyActivity is the BasicActivity implementation for IfConditionActivity.
47856func (ica IfConditionActivity) AsCopyActivity() (*CopyActivity, bool) {
47857	return nil, false
47858}
47859
47860// AsExecutionActivity is the BasicActivity implementation for IfConditionActivity.
47861func (ica IfConditionActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
47862	return nil, false
47863}
47864
47865// AsBasicExecutionActivity is the BasicActivity implementation for IfConditionActivity.
47866func (ica IfConditionActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
47867	return nil, false
47868}
47869
47870// AsFilterActivity is the BasicActivity implementation for IfConditionActivity.
47871func (ica IfConditionActivity) AsFilterActivity() (*FilterActivity, bool) {
47872	return nil, false
47873}
47874
47875// AsUntilActivity is the BasicActivity implementation for IfConditionActivity.
47876func (ica IfConditionActivity) AsUntilActivity() (*UntilActivity, bool) {
47877	return nil, false
47878}
47879
47880// AsWaitActivity is the BasicActivity implementation for IfConditionActivity.
47881func (ica IfConditionActivity) AsWaitActivity() (*WaitActivity, bool) {
47882	return nil, false
47883}
47884
47885// AsForEachActivity is the BasicActivity implementation for IfConditionActivity.
47886func (ica IfConditionActivity) AsForEachActivity() (*ForEachActivity, bool) {
47887	return nil, false
47888}
47889
47890// AsIfConditionActivity is the BasicActivity implementation for IfConditionActivity.
47891func (ica IfConditionActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
47892	return &ica, true
47893}
47894
47895// AsExecutePipelineActivity is the BasicActivity implementation for IfConditionActivity.
47896func (ica IfConditionActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
47897	return nil, false
47898}
47899
47900// AsControlActivity is the BasicActivity implementation for IfConditionActivity.
47901func (ica IfConditionActivity) AsControlActivity() (*ControlActivity, bool) {
47902	return nil, false
47903}
47904
47905// AsBasicControlActivity is the BasicActivity implementation for IfConditionActivity.
47906func (ica IfConditionActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
47907	return &ica, true
47908}
47909
47910// AsActivity is the BasicActivity implementation for IfConditionActivity.
47911func (ica IfConditionActivity) AsActivity() (*Activity, bool) {
47912	return nil, false
47913}
47914
47915// AsBasicActivity is the BasicActivity implementation for IfConditionActivity.
47916func (ica IfConditionActivity) AsBasicActivity() (BasicActivity, bool) {
47917	return &ica, true
47918}
47919
47920// UnmarshalJSON is the custom unmarshaler for IfConditionActivity struct.
47921func (ica *IfConditionActivity) UnmarshalJSON(body []byte) error {
47922	var m map[string]*json.RawMessage
47923	err := json.Unmarshal(body, &m)
47924	if err != nil {
47925		return err
47926	}
47927	for k, v := range m {
47928		switch k {
47929		case "typeProperties":
47930			if v != nil {
47931				var ifConditionActivityTypeProperties IfConditionActivityTypeProperties
47932				err = json.Unmarshal(*v, &ifConditionActivityTypeProperties)
47933				if err != nil {
47934					return err
47935				}
47936				ica.IfConditionActivityTypeProperties = &ifConditionActivityTypeProperties
47937			}
47938		default:
47939			if v != nil {
47940				var additionalProperties interface{}
47941				err = json.Unmarshal(*v, &additionalProperties)
47942				if err != nil {
47943					return err
47944				}
47945				if ica.AdditionalProperties == nil {
47946					ica.AdditionalProperties = make(map[string]interface{})
47947				}
47948				ica.AdditionalProperties[k] = additionalProperties
47949			}
47950		case "name":
47951			if v != nil {
47952				var name string
47953				err = json.Unmarshal(*v, &name)
47954				if err != nil {
47955					return err
47956				}
47957				ica.Name = &name
47958			}
47959		case "description":
47960			if v != nil {
47961				var description string
47962				err = json.Unmarshal(*v, &description)
47963				if err != nil {
47964					return err
47965				}
47966				ica.Description = &description
47967			}
47968		case "dependsOn":
47969			if v != nil {
47970				var dependsOn []ActivityDependency
47971				err = json.Unmarshal(*v, &dependsOn)
47972				if err != nil {
47973					return err
47974				}
47975				ica.DependsOn = &dependsOn
47976			}
47977		case "type":
47978			if v != nil {
47979				var typeVar TypeBasicActivity
47980				err = json.Unmarshal(*v, &typeVar)
47981				if err != nil {
47982					return err
47983				}
47984				ica.Type = typeVar
47985			}
47986		}
47987	}
47988
47989	return nil
47990}
47991
47992// IfConditionActivityTypeProperties ifCondition activity properties.
47993type IfConditionActivityTypeProperties struct {
47994	// Expression - An expression that would evaluate to Boolean. This is used to determine the block of activities (ifTrueActivities or ifFalseActivities) that will be executed.
47995	Expression *Expression `json:"expression,omitempty"`
47996	// IfTrueActivities - List of activities to execute if expression is evaluated to true. This is an optional property and if not provided, the activity will exit without any action.
47997	IfTrueActivities *[]BasicActivity `json:"ifTrueActivities,omitempty"`
47998	// IfFalseActivities - List of activities to execute if expression is evaluated to false. This is an optional property and if not provided, the activity will exit without any action.
47999	IfFalseActivities *[]BasicActivity `json:"ifFalseActivities,omitempty"`
48000}
48001
48002// UnmarshalJSON is the custom unmarshaler for IfConditionActivityTypeProperties struct.
48003func (icatp *IfConditionActivityTypeProperties) UnmarshalJSON(body []byte) error {
48004	var m map[string]*json.RawMessage
48005	err := json.Unmarshal(body, &m)
48006	if err != nil {
48007		return err
48008	}
48009	for k, v := range m {
48010		switch k {
48011		case "expression":
48012			if v != nil {
48013				var expression Expression
48014				err = json.Unmarshal(*v, &expression)
48015				if err != nil {
48016					return err
48017				}
48018				icatp.Expression = &expression
48019			}
48020		case "ifTrueActivities":
48021			if v != nil {
48022				ifTrueActivities, err := unmarshalBasicActivityArray(*v)
48023				if err != nil {
48024					return err
48025				}
48026				icatp.IfTrueActivities = &ifTrueActivities
48027			}
48028		case "ifFalseActivities":
48029			if v != nil {
48030				ifFalseActivities, err := unmarshalBasicActivityArray(*v)
48031				if err != nil {
48032					return err
48033				}
48034				icatp.IfFalseActivities = &ifFalseActivities
48035			}
48036		}
48037	}
48038
48039	return nil
48040}
48041
48042// ImpalaLinkedService impala server linked service.
48043type ImpalaLinkedService struct {
48044	// ImpalaLinkedServiceTypeProperties - Impala server linked service properties.
48045	*ImpalaLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
48046	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
48047	AdditionalProperties map[string]interface{} `json:""`
48048	// ConnectVia - The integration runtime reference.
48049	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
48050	// Description - Linked service description.
48051	Description *string `json:"description,omitempty"`
48052	// Parameters - Parameters for linked service.
48053	Parameters map[string]*ParameterSpecification `json:"parameters"`
48054	// Annotations - List of tags that can be used for describing the Dataset.
48055	Annotations *[]interface{} `json:"annotations,omitempty"`
48056	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
48057	Type TypeBasicLinkedService `json:"type,omitempty"`
48058}
48059
48060// MarshalJSON is the custom marshaler for ImpalaLinkedService.
48061func (ils ImpalaLinkedService) MarshalJSON() ([]byte, error) {
48062	ils.Type = TypeImpala
48063	objectMap := make(map[string]interface{})
48064	if ils.ImpalaLinkedServiceTypeProperties != nil {
48065		objectMap["typeProperties"] = ils.ImpalaLinkedServiceTypeProperties
48066	}
48067	if ils.ConnectVia != nil {
48068		objectMap["connectVia"] = ils.ConnectVia
48069	}
48070	if ils.Description != nil {
48071		objectMap["description"] = ils.Description
48072	}
48073	if ils.Parameters != nil {
48074		objectMap["parameters"] = ils.Parameters
48075	}
48076	if ils.Annotations != nil {
48077		objectMap["annotations"] = ils.Annotations
48078	}
48079	if ils.Type != "" {
48080		objectMap["type"] = ils.Type
48081	}
48082	for k, v := range ils.AdditionalProperties {
48083		objectMap[k] = v
48084	}
48085	return json.Marshal(objectMap)
48086}
48087
48088// AsResponsysLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48089func (ils ImpalaLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
48090	return nil, false
48091}
48092
48093// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48094func (ils ImpalaLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
48095	return nil, false
48096}
48097
48098// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48099func (ils ImpalaLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
48100	return nil, false
48101}
48102
48103// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48104func (ils ImpalaLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
48105	return nil, false
48106}
48107
48108// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48109func (ils ImpalaLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
48110	return nil, false
48111}
48112
48113// AsNetezzaLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48114func (ils ImpalaLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
48115	return nil, false
48116}
48117
48118// AsVerticaLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48119func (ils ImpalaLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
48120	return nil, false
48121}
48122
48123// AsZohoLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48124func (ils ImpalaLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
48125	return nil, false
48126}
48127
48128// AsXeroLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48129func (ils ImpalaLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
48130	return nil, false
48131}
48132
48133// AsSquareLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48134func (ils ImpalaLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
48135	return nil, false
48136}
48137
48138// AsSparkLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48139func (ils ImpalaLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
48140	return nil, false
48141}
48142
48143// AsShopifyLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48144func (ils ImpalaLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
48145	return nil, false
48146}
48147
48148// AsServiceNowLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48149func (ils ImpalaLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
48150	return nil, false
48151}
48152
48153// AsQuickBooksLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48154func (ils ImpalaLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
48155	return nil, false
48156}
48157
48158// AsPrestoLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48159func (ils ImpalaLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
48160	return nil, false
48161}
48162
48163// AsPhoenixLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48164func (ils ImpalaLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
48165	return nil, false
48166}
48167
48168// AsPaypalLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48169func (ils ImpalaLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
48170	return nil, false
48171}
48172
48173// AsMarketoLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48174func (ils ImpalaLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
48175	return nil, false
48176}
48177
48178// AsMariaDBLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48179func (ils ImpalaLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
48180	return nil, false
48181}
48182
48183// AsMagentoLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48184func (ils ImpalaLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
48185	return nil, false
48186}
48187
48188// AsJiraLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48189func (ils ImpalaLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
48190	return nil, false
48191}
48192
48193// AsImpalaLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48194func (ils ImpalaLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
48195	return &ils, true
48196}
48197
48198// AsHubspotLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48199func (ils ImpalaLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
48200	return nil, false
48201}
48202
48203// AsHiveLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48204func (ils ImpalaLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
48205	return nil, false
48206}
48207
48208// AsHBaseLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48209func (ils ImpalaLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
48210	return nil, false
48211}
48212
48213// AsGreenplumLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48214func (ils ImpalaLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
48215	return nil, false
48216}
48217
48218// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48219func (ils ImpalaLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
48220	return nil, false
48221}
48222
48223// AsEloquaLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48224func (ils ImpalaLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
48225	return nil, false
48226}
48227
48228// AsDrillLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48229func (ils ImpalaLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
48230	return nil, false
48231}
48232
48233// AsCouchbaseLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48234func (ils ImpalaLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
48235	return nil, false
48236}
48237
48238// AsConcurLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48239func (ils ImpalaLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
48240	return nil, false
48241}
48242
48243// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48244func (ils ImpalaLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
48245	return nil, false
48246}
48247
48248// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48249func (ils ImpalaLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
48250	return nil, false
48251}
48252
48253// AsSapHanaLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48254func (ils ImpalaLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
48255	return nil, false
48256}
48257
48258// AsSapBWLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48259func (ils ImpalaLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
48260	return nil, false
48261}
48262
48263// AsSftpServerLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48264func (ils ImpalaLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
48265	return nil, false
48266}
48267
48268// AsFtpServerLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48269func (ils ImpalaLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
48270	return nil, false
48271}
48272
48273// AsHTTPLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48274func (ils ImpalaLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
48275	return nil, false
48276}
48277
48278// AsAzureSearchLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48279func (ils ImpalaLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
48280	return nil, false
48281}
48282
48283// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48284func (ils ImpalaLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
48285	return nil, false
48286}
48287
48288// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48289func (ils ImpalaLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
48290	return nil, false
48291}
48292
48293// AsAmazonS3LinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48294func (ils ImpalaLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
48295	return nil, false
48296}
48297
48298// AsSapEccLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48299func (ils ImpalaLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
48300	return nil, false
48301}
48302
48303// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48304func (ils ImpalaLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
48305	return nil, false
48306}
48307
48308// AsSalesforceLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48309func (ils ImpalaLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
48310	return nil, false
48311}
48312
48313// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48314func (ils ImpalaLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
48315	return nil, false
48316}
48317
48318// AsMongoDbLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48319func (ils ImpalaLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
48320	return nil, false
48321}
48322
48323// AsCassandraLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48324func (ils ImpalaLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
48325	return nil, false
48326}
48327
48328// AsWebLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48329func (ils ImpalaLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
48330	return nil, false
48331}
48332
48333// AsODataLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48334func (ils ImpalaLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
48335	return nil, false
48336}
48337
48338// AsHdfsLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48339func (ils ImpalaLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
48340	return nil, false
48341}
48342
48343// AsOdbcLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48344func (ils ImpalaLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
48345	return nil, false
48346}
48347
48348// AsAzureMLLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48349func (ils ImpalaLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
48350	return nil, false
48351}
48352
48353// AsTeradataLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48354func (ils ImpalaLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
48355	return nil, false
48356}
48357
48358// AsDb2LinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48359func (ils ImpalaLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
48360	return nil, false
48361}
48362
48363// AsSybaseLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48364func (ils ImpalaLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
48365	return nil, false
48366}
48367
48368// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48369func (ils ImpalaLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
48370	return nil, false
48371}
48372
48373// AsMySQLLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48374func (ils ImpalaLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
48375	return nil, false
48376}
48377
48378// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48379func (ils ImpalaLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
48380	return nil, false
48381}
48382
48383// AsOracleLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48384func (ils ImpalaLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
48385	return nil, false
48386}
48387
48388// AsFileServerLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48389func (ils ImpalaLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
48390	return nil, false
48391}
48392
48393// AsHDInsightLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48394func (ils ImpalaLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
48395	return nil, false
48396}
48397
48398// AsDynamicsLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48399func (ils ImpalaLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
48400	return nil, false
48401}
48402
48403// AsCosmosDbLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48404func (ils ImpalaLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
48405	return nil, false
48406}
48407
48408// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48409func (ils ImpalaLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
48410	return nil, false
48411}
48412
48413// AsAzureBatchLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48414func (ils ImpalaLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
48415	return nil, false
48416}
48417
48418// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48419func (ils ImpalaLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
48420	return nil, false
48421}
48422
48423// AsSQLServerLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48424func (ils ImpalaLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
48425	return nil, false
48426}
48427
48428// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48429func (ils ImpalaLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
48430	return nil, false
48431}
48432
48433// AsAzureStorageLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48434func (ils ImpalaLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
48435	return nil, false
48436}
48437
48438// AsLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48439func (ils ImpalaLinkedService) AsLinkedService() (*LinkedService, bool) {
48440	return nil, false
48441}
48442
48443// AsBasicLinkedService is the BasicLinkedService implementation for ImpalaLinkedService.
48444func (ils ImpalaLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
48445	return &ils, true
48446}
48447
48448// UnmarshalJSON is the custom unmarshaler for ImpalaLinkedService struct.
48449func (ils *ImpalaLinkedService) UnmarshalJSON(body []byte) error {
48450	var m map[string]*json.RawMessage
48451	err := json.Unmarshal(body, &m)
48452	if err != nil {
48453		return err
48454	}
48455	for k, v := range m {
48456		switch k {
48457		case "typeProperties":
48458			if v != nil {
48459				var impalaLinkedServiceTypeProperties ImpalaLinkedServiceTypeProperties
48460				err = json.Unmarshal(*v, &impalaLinkedServiceTypeProperties)
48461				if err != nil {
48462					return err
48463				}
48464				ils.ImpalaLinkedServiceTypeProperties = &impalaLinkedServiceTypeProperties
48465			}
48466		default:
48467			if v != nil {
48468				var additionalProperties interface{}
48469				err = json.Unmarshal(*v, &additionalProperties)
48470				if err != nil {
48471					return err
48472				}
48473				if ils.AdditionalProperties == nil {
48474					ils.AdditionalProperties = make(map[string]interface{})
48475				}
48476				ils.AdditionalProperties[k] = additionalProperties
48477			}
48478		case "connectVia":
48479			if v != nil {
48480				var connectVia IntegrationRuntimeReference
48481				err = json.Unmarshal(*v, &connectVia)
48482				if err != nil {
48483					return err
48484				}
48485				ils.ConnectVia = &connectVia
48486			}
48487		case "description":
48488			if v != nil {
48489				var description string
48490				err = json.Unmarshal(*v, &description)
48491				if err != nil {
48492					return err
48493				}
48494				ils.Description = &description
48495			}
48496		case "parameters":
48497			if v != nil {
48498				var parameters map[string]*ParameterSpecification
48499				err = json.Unmarshal(*v, &parameters)
48500				if err != nil {
48501					return err
48502				}
48503				ils.Parameters = parameters
48504			}
48505		case "annotations":
48506			if v != nil {
48507				var annotations []interface{}
48508				err = json.Unmarshal(*v, &annotations)
48509				if err != nil {
48510					return err
48511				}
48512				ils.Annotations = &annotations
48513			}
48514		case "type":
48515			if v != nil {
48516				var typeVar TypeBasicLinkedService
48517				err = json.Unmarshal(*v, &typeVar)
48518				if err != nil {
48519					return err
48520				}
48521				ils.Type = typeVar
48522			}
48523		}
48524	}
48525
48526	return nil
48527}
48528
48529// ImpalaLinkedServiceTypeProperties impala server linked service properties.
48530type ImpalaLinkedServiceTypeProperties struct {
48531	// Host - The IP address or host name of the Impala server. (i.e. 192.168.222.160)
48532	Host interface{} `json:"host,omitempty"`
48533	// Port - The TCP port that the Impala server uses to listen for client connections. The default value is 21050.
48534	Port interface{} `json:"port,omitempty"`
48535	// AuthenticationType - The authentication type to use. Possible values include: 'ImpalaAuthenticationTypeAnonymous', 'ImpalaAuthenticationTypeSASLUsername', 'ImpalaAuthenticationTypeUsernameAndPassword'
48536	AuthenticationType ImpalaAuthenticationType `json:"authenticationType,omitempty"`
48537	// Username - The user name used to access the Impala server. The default value is anonymous when using SASLUsername.
48538	Username interface{} `json:"username,omitempty"`
48539	// Password - The password corresponding to the user name when using UsernameAndPassword.
48540	Password BasicSecretBase `json:"password,omitempty"`
48541	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
48542	EnableSsl interface{} `json:"enableSsl,omitempty"`
48543	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
48544	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
48545	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
48546	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
48547	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
48548	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
48549	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
48550	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
48551	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
48552	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
48553}
48554
48555// UnmarshalJSON is the custom unmarshaler for ImpalaLinkedServiceTypeProperties struct.
48556func (ilstp *ImpalaLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
48557	var m map[string]*json.RawMessage
48558	err := json.Unmarshal(body, &m)
48559	if err != nil {
48560		return err
48561	}
48562	for k, v := range m {
48563		switch k {
48564		case "host":
48565			if v != nil {
48566				var host interface{}
48567				err = json.Unmarshal(*v, &host)
48568				if err != nil {
48569					return err
48570				}
48571				ilstp.Host = host
48572			}
48573		case "port":
48574			if v != nil {
48575				var port interface{}
48576				err = json.Unmarshal(*v, &port)
48577				if err != nil {
48578					return err
48579				}
48580				ilstp.Port = port
48581			}
48582		case "authenticationType":
48583			if v != nil {
48584				var authenticationType ImpalaAuthenticationType
48585				err = json.Unmarshal(*v, &authenticationType)
48586				if err != nil {
48587					return err
48588				}
48589				ilstp.AuthenticationType = authenticationType
48590			}
48591		case "username":
48592			if v != nil {
48593				var username interface{}
48594				err = json.Unmarshal(*v, &username)
48595				if err != nil {
48596					return err
48597				}
48598				ilstp.Username = username
48599			}
48600		case "password":
48601			if v != nil {
48602				password, err := unmarshalBasicSecretBase(*v)
48603				if err != nil {
48604					return err
48605				}
48606				ilstp.Password = password
48607			}
48608		case "enableSsl":
48609			if v != nil {
48610				var enableSsl interface{}
48611				err = json.Unmarshal(*v, &enableSsl)
48612				if err != nil {
48613					return err
48614				}
48615				ilstp.EnableSsl = enableSsl
48616			}
48617		case "trustedCertPath":
48618			if v != nil {
48619				var trustedCertPath interface{}
48620				err = json.Unmarshal(*v, &trustedCertPath)
48621				if err != nil {
48622					return err
48623				}
48624				ilstp.TrustedCertPath = trustedCertPath
48625			}
48626		case "useSystemTrustStore":
48627			if v != nil {
48628				var useSystemTrustStore interface{}
48629				err = json.Unmarshal(*v, &useSystemTrustStore)
48630				if err != nil {
48631					return err
48632				}
48633				ilstp.UseSystemTrustStore = useSystemTrustStore
48634			}
48635		case "allowHostNameCNMismatch":
48636			if v != nil {
48637				var allowHostNameCNMismatch interface{}
48638				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
48639				if err != nil {
48640					return err
48641				}
48642				ilstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
48643			}
48644		case "allowSelfSignedServerCert":
48645			if v != nil {
48646				var allowSelfSignedServerCert interface{}
48647				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
48648				if err != nil {
48649					return err
48650				}
48651				ilstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
48652			}
48653		case "encryptedCredential":
48654			if v != nil {
48655				var encryptedCredential interface{}
48656				err = json.Unmarshal(*v, &encryptedCredential)
48657				if err != nil {
48658					return err
48659				}
48660				ilstp.EncryptedCredential = encryptedCredential
48661			}
48662		}
48663	}
48664
48665	return nil
48666}
48667
48668// ImpalaObjectDataset impala server dataset.
48669type ImpalaObjectDataset struct {
48670	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
48671	AdditionalProperties map[string]interface{} `json:""`
48672	// Description - Dataset description.
48673	Description *string `json:"description,omitempty"`
48674	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
48675	Structure interface{} `json:"structure,omitempty"`
48676	// LinkedServiceName - Linked service reference.
48677	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
48678	// Parameters - Parameters for dataset.
48679	Parameters map[string]*ParameterSpecification `json:"parameters"`
48680	// Annotations - List of tags that can be used for describing the Dataset.
48681	Annotations *[]interface{} `json:"annotations,omitempty"`
48682	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
48683	Type TypeBasicDataset `json:"type,omitempty"`
48684}
48685
48686// MarshalJSON is the custom marshaler for ImpalaObjectDataset.
48687func (iod ImpalaObjectDataset) MarshalJSON() ([]byte, error) {
48688	iod.Type = TypeImpalaObject
48689	objectMap := make(map[string]interface{})
48690	if iod.Description != nil {
48691		objectMap["description"] = iod.Description
48692	}
48693	objectMap["structure"] = iod.Structure
48694	if iod.LinkedServiceName != nil {
48695		objectMap["linkedServiceName"] = iod.LinkedServiceName
48696	}
48697	if iod.Parameters != nil {
48698		objectMap["parameters"] = iod.Parameters
48699	}
48700	if iod.Annotations != nil {
48701		objectMap["annotations"] = iod.Annotations
48702	}
48703	if iod.Type != "" {
48704		objectMap["type"] = iod.Type
48705	}
48706	for k, v := range iod.AdditionalProperties {
48707		objectMap[k] = v
48708	}
48709	return json.Marshal(objectMap)
48710}
48711
48712// AsResponsysObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48713func (iod ImpalaObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
48714	return nil, false
48715}
48716
48717// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48718func (iod ImpalaObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
48719	return nil, false
48720}
48721
48722// AsVerticaTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48723func (iod ImpalaObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
48724	return nil, false
48725}
48726
48727// AsNetezzaTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48728func (iod ImpalaObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
48729	return nil, false
48730}
48731
48732// AsZohoObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48733func (iod ImpalaObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
48734	return nil, false
48735}
48736
48737// AsXeroObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48738func (iod ImpalaObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
48739	return nil, false
48740}
48741
48742// AsSquareObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48743func (iod ImpalaObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
48744	return nil, false
48745}
48746
48747// AsSparkObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48748func (iod ImpalaObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
48749	return nil, false
48750}
48751
48752// AsShopifyObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48753func (iod ImpalaObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
48754	return nil, false
48755}
48756
48757// AsServiceNowObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48758func (iod ImpalaObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
48759	return nil, false
48760}
48761
48762// AsQuickBooksObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48763func (iod ImpalaObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
48764	return nil, false
48765}
48766
48767// AsPrestoObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48768func (iod ImpalaObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
48769	return nil, false
48770}
48771
48772// AsPhoenixObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48773func (iod ImpalaObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
48774	return nil, false
48775}
48776
48777// AsPaypalObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48778func (iod ImpalaObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
48779	return nil, false
48780}
48781
48782// AsMarketoObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48783func (iod ImpalaObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
48784	return nil, false
48785}
48786
48787// AsMariaDBTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48788func (iod ImpalaObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
48789	return nil, false
48790}
48791
48792// AsMagentoObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48793func (iod ImpalaObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
48794	return nil, false
48795}
48796
48797// AsJiraObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48798func (iod ImpalaObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
48799	return nil, false
48800}
48801
48802// AsImpalaObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48803func (iod ImpalaObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
48804	return &iod, true
48805}
48806
48807// AsHubspotObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48808func (iod ImpalaObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
48809	return nil, false
48810}
48811
48812// AsHiveObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48813func (iod ImpalaObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
48814	return nil, false
48815}
48816
48817// AsHBaseObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48818func (iod ImpalaObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
48819	return nil, false
48820}
48821
48822// AsGreenplumTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48823func (iod ImpalaObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
48824	return nil, false
48825}
48826
48827// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48828func (iod ImpalaObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
48829	return nil, false
48830}
48831
48832// AsEloquaObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48833func (iod ImpalaObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
48834	return nil, false
48835}
48836
48837// AsDrillTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48838func (iod ImpalaObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
48839	return nil, false
48840}
48841
48842// AsCouchbaseTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48843func (iod ImpalaObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
48844	return nil, false
48845}
48846
48847// AsConcurObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48848func (iod ImpalaObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
48849	return nil, false
48850}
48851
48852// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48853func (iod ImpalaObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
48854	return nil, false
48855}
48856
48857// AsAmazonMWSObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48858func (iod ImpalaObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
48859	return nil, false
48860}
48861
48862// AsHTTPDataset is the BasicDataset implementation for ImpalaObjectDataset.
48863func (iod ImpalaObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
48864	return nil, false
48865}
48866
48867// AsAzureSearchIndexDataset is the BasicDataset implementation for ImpalaObjectDataset.
48868func (iod ImpalaObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
48869	return nil, false
48870}
48871
48872// AsWebTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48873func (iod ImpalaObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
48874	return nil, false
48875}
48876
48877// AsSQLServerTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48878func (iod ImpalaObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
48879	return nil, false
48880}
48881
48882// AsSapEccResourceDataset is the BasicDataset implementation for ImpalaObjectDataset.
48883func (iod ImpalaObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
48884	return nil, false
48885}
48886
48887// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ImpalaObjectDataset.
48888func (iod ImpalaObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
48889	return nil, false
48890}
48891
48892// AsSalesforceObjectDataset is the BasicDataset implementation for ImpalaObjectDataset.
48893func (iod ImpalaObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
48894	return nil, false
48895}
48896
48897// AsRelationalTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48898func (iod ImpalaObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
48899	return nil, false
48900}
48901
48902// AsAzureMySQLTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48903func (iod ImpalaObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
48904	return nil, false
48905}
48906
48907// AsOracleTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48908func (iod ImpalaObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
48909	return nil, false
48910}
48911
48912// AsODataResourceDataset is the BasicDataset implementation for ImpalaObjectDataset.
48913func (iod ImpalaObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
48914	return nil, false
48915}
48916
48917// AsMongoDbCollectionDataset is the BasicDataset implementation for ImpalaObjectDataset.
48918func (iod ImpalaObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
48919	return nil, false
48920}
48921
48922// AsFileShareDataset is the BasicDataset implementation for ImpalaObjectDataset.
48923func (iod ImpalaObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
48924	return nil, false
48925}
48926
48927// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ImpalaObjectDataset.
48928func (iod ImpalaObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
48929	return nil, false
48930}
48931
48932// AsDynamicsEntityDataset is the BasicDataset implementation for ImpalaObjectDataset.
48933func (iod ImpalaObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
48934	return nil, false
48935}
48936
48937// AsDocumentDbCollectionDataset is the BasicDataset implementation for ImpalaObjectDataset.
48938func (iod ImpalaObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
48939	return nil, false
48940}
48941
48942// AsCustomDataset is the BasicDataset implementation for ImpalaObjectDataset.
48943func (iod ImpalaObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
48944	return nil, false
48945}
48946
48947// AsCassandraTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48948func (iod ImpalaObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
48949	return nil, false
48950}
48951
48952// AsAzureSQLDWTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48953func (iod ImpalaObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
48954	return nil, false
48955}
48956
48957// AsAzureSQLTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48958func (iod ImpalaObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
48959	return nil, false
48960}
48961
48962// AsAzureTableDataset is the BasicDataset implementation for ImpalaObjectDataset.
48963func (iod ImpalaObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
48964	return nil, false
48965}
48966
48967// AsAzureBlobDataset is the BasicDataset implementation for ImpalaObjectDataset.
48968func (iod ImpalaObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
48969	return nil, false
48970}
48971
48972// AsAmazonS3Dataset is the BasicDataset implementation for ImpalaObjectDataset.
48973func (iod ImpalaObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
48974	return nil, false
48975}
48976
48977// AsDataset is the BasicDataset implementation for ImpalaObjectDataset.
48978func (iod ImpalaObjectDataset) AsDataset() (*Dataset, bool) {
48979	return nil, false
48980}
48981
48982// AsBasicDataset is the BasicDataset implementation for ImpalaObjectDataset.
48983func (iod ImpalaObjectDataset) AsBasicDataset() (BasicDataset, bool) {
48984	return &iod, true
48985}
48986
48987// ImpalaSource a copy activity Impala server source.
48988type ImpalaSource struct {
48989	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
48990	Query interface{} `json:"query,omitempty"`
48991	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
48992	AdditionalProperties map[string]interface{} `json:""`
48993	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
48994	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
48995	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
48996	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
48997	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
48998	Type TypeBasicCopySource `json:"type,omitempty"`
48999}
49000
49001// MarshalJSON is the custom marshaler for ImpalaSource.
49002func (is ImpalaSource) MarshalJSON() ([]byte, error) {
49003	is.Type = TypeImpalaSource
49004	objectMap := make(map[string]interface{})
49005	objectMap["query"] = is.Query
49006	objectMap["sourceRetryCount"] = is.SourceRetryCount
49007	objectMap["sourceRetryWait"] = is.SourceRetryWait
49008	if is.Type != "" {
49009		objectMap["type"] = is.Type
49010	}
49011	for k, v := range is.AdditionalProperties {
49012		objectMap[k] = v
49013	}
49014	return json.Marshal(objectMap)
49015}
49016
49017// AsAmazonRedshiftSource is the BasicCopySource implementation for ImpalaSource.
49018func (is ImpalaSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
49019	return nil, false
49020}
49021
49022// AsResponsysSource is the BasicCopySource implementation for ImpalaSource.
49023func (is ImpalaSource) AsResponsysSource() (*ResponsysSource, bool) {
49024	return nil, false
49025}
49026
49027// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ImpalaSource.
49028func (is ImpalaSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
49029	return nil, false
49030}
49031
49032// AsVerticaSource is the BasicCopySource implementation for ImpalaSource.
49033func (is ImpalaSource) AsVerticaSource() (*VerticaSource, bool) {
49034	return nil, false
49035}
49036
49037// AsNetezzaSource is the BasicCopySource implementation for ImpalaSource.
49038func (is ImpalaSource) AsNetezzaSource() (*NetezzaSource, bool) {
49039	return nil, false
49040}
49041
49042// AsZohoSource is the BasicCopySource implementation for ImpalaSource.
49043func (is ImpalaSource) AsZohoSource() (*ZohoSource, bool) {
49044	return nil, false
49045}
49046
49047// AsXeroSource is the BasicCopySource implementation for ImpalaSource.
49048func (is ImpalaSource) AsXeroSource() (*XeroSource, bool) {
49049	return nil, false
49050}
49051
49052// AsSquareSource is the BasicCopySource implementation for ImpalaSource.
49053func (is ImpalaSource) AsSquareSource() (*SquareSource, bool) {
49054	return nil, false
49055}
49056
49057// AsSparkSource is the BasicCopySource implementation for ImpalaSource.
49058func (is ImpalaSource) AsSparkSource() (*SparkSource, bool) {
49059	return nil, false
49060}
49061
49062// AsShopifySource is the BasicCopySource implementation for ImpalaSource.
49063func (is ImpalaSource) AsShopifySource() (*ShopifySource, bool) {
49064	return nil, false
49065}
49066
49067// AsServiceNowSource is the BasicCopySource implementation for ImpalaSource.
49068func (is ImpalaSource) AsServiceNowSource() (*ServiceNowSource, bool) {
49069	return nil, false
49070}
49071
49072// AsQuickBooksSource is the BasicCopySource implementation for ImpalaSource.
49073func (is ImpalaSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
49074	return nil, false
49075}
49076
49077// AsPrestoSource is the BasicCopySource implementation for ImpalaSource.
49078func (is ImpalaSource) AsPrestoSource() (*PrestoSource, bool) {
49079	return nil, false
49080}
49081
49082// AsPhoenixSource is the BasicCopySource implementation for ImpalaSource.
49083func (is ImpalaSource) AsPhoenixSource() (*PhoenixSource, bool) {
49084	return nil, false
49085}
49086
49087// AsPaypalSource is the BasicCopySource implementation for ImpalaSource.
49088func (is ImpalaSource) AsPaypalSource() (*PaypalSource, bool) {
49089	return nil, false
49090}
49091
49092// AsMarketoSource is the BasicCopySource implementation for ImpalaSource.
49093func (is ImpalaSource) AsMarketoSource() (*MarketoSource, bool) {
49094	return nil, false
49095}
49096
49097// AsMariaDBSource is the BasicCopySource implementation for ImpalaSource.
49098func (is ImpalaSource) AsMariaDBSource() (*MariaDBSource, bool) {
49099	return nil, false
49100}
49101
49102// AsMagentoSource is the BasicCopySource implementation for ImpalaSource.
49103func (is ImpalaSource) AsMagentoSource() (*MagentoSource, bool) {
49104	return nil, false
49105}
49106
49107// AsJiraSource is the BasicCopySource implementation for ImpalaSource.
49108func (is ImpalaSource) AsJiraSource() (*JiraSource, bool) {
49109	return nil, false
49110}
49111
49112// AsImpalaSource is the BasicCopySource implementation for ImpalaSource.
49113func (is ImpalaSource) AsImpalaSource() (*ImpalaSource, bool) {
49114	return &is, true
49115}
49116
49117// AsHubspotSource is the BasicCopySource implementation for ImpalaSource.
49118func (is ImpalaSource) AsHubspotSource() (*HubspotSource, bool) {
49119	return nil, false
49120}
49121
49122// AsHiveSource is the BasicCopySource implementation for ImpalaSource.
49123func (is ImpalaSource) AsHiveSource() (*HiveSource, bool) {
49124	return nil, false
49125}
49126
49127// AsHBaseSource is the BasicCopySource implementation for ImpalaSource.
49128func (is ImpalaSource) AsHBaseSource() (*HBaseSource, bool) {
49129	return nil, false
49130}
49131
49132// AsGreenplumSource is the BasicCopySource implementation for ImpalaSource.
49133func (is ImpalaSource) AsGreenplumSource() (*GreenplumSource, bool) {
49134	return nil, false
49135}
49136
49137// AsGoogleBigQuerySource is the BasicCopySource implementation for ImpalaSource.
49138func (is ImpalaSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
49139	return nil, false
49140}
49141
49142// AsEloquaSource is the BasicCopySource implementation for ImpalaSource.
49143func (is ImpalaSource) AsEloquaSource() (*EloquaSource, bool) {
49144	return nil, false
49145}
49146
49147// AsDrillSource is the BasicCopySource implementation for ImpalaSource.
49148func (is ImpalaSource) AsDrillSource() (*DrillSource, bool) {
49149	return nil, false
49150}
49151
49152// AsCouchbaseSource is the BasicCopySource implementation for ImpalaSource.
49153func (is ImpalaSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
49154	return nil, false
49155}
49156
49157// AsConcurSource is the BasicCopySource implementation for ImpalaSource.
49158func (is ImpalaSource) AsConcurSource() (*ConcurSource, bool) {
49159	return nil, false
49160}
49161
49162// AsAzurePostgreSQLSource is the BasicCopySource implementation for ImpalaSource.
49163func (is ImpalaSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
49164	return nil, false
49165}
49166
49167// AsAmazonMWSSource is the BasicCopySource implementation for ImpalaSource.
49168func (is ImpalaSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
49169	return nil, false
49170}
49171
49172// AsHTTPSource is the BasicCopySource implementation for ImpalaSource.
49173func (is ImpalaSource) AsHTTPSource() (*HTTPSource, bool) {
49174	return nil, false
49175}
49176
49177// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ImpalaSource.
49178func (is ImpalaSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
49179	return nil, false
49180}
49181
49182// AsMongoDbSource is the BasicCopySource implementation for ImpalaSource.
49183func (is ImpalaSource) AsMongoDbSource() (*MongoDbSource, bool) {
49184	return nil, false
49185}
49186
49187// AsCassandraSource is the BasicCopySource implementation for ImpalaSource.
49188func (is ImpalaSource) AsCassandraSource() (*CassandraSource, bool) {
49189	return nil, false
49190}
49191
49192// AsWebSource is the BasicCopySource implementation for ImpalaSource.
49193func (is ImpalaSource) AsWebSource() (*WebSource, bool) {
49194	return nil, false
49195}
49196
49197// AsOracleSource is the BasicCopySource implementation for ImpalaSource.
49198func (is ImpalaSource) AsOracleSource() (*OracleSource, bool) {
49199	return nil, false
49200}
49201
49202// AsAzureMySQLSource is the BasicCopySource implementation for ImpalaSource.
49203func (is ImpalaSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
49204	return nil, false
49205}
49206
49207// AsHdfsSource is the BasicCopySource implementation for ImpalaSource.
49208func (is ImpalaSource) AsHdfsSource() (*HdfsSource, bool) {
49209	return nil, false
49210}
49211
49212// AsFileSystemSource is the BasicCopySource implementation for ImpalaSource.
49213func (is ImpalaSource) AsFileSystemSource() (*FileSystemSource, bool) {
49214	return nil, false
49215}
49216
49217// AsSQLDWSource is the BasicCopySource implementation for ImpalaSource.
49218func (is ImpalaSource) AsSQLDWSource() (*SQLDWSource, bool) {
49219	return nil, false
49220}
49221
49222// AsSQLSource is the BasicCopySource implementation for ImpalaSource.
49223func (is ImpalaSource) AsSQLSource() (*SQLSource, bool) {
49224	return nil, false
49225}
49226
49227// AsSapEccSource is the BasicCopySource implementation for ImpalaSource.
49228func (is ImpalaSource) AsSapEccSource() (*SapEccSource, bool) {
49229	return nil, false
49230}
49231
49232// AsSapCloudForCustomerSource is the BasicCopySource implementation for ImpalaSource.
49233func (is ImpalaSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
49234	return nil, false
49235}
49236
49237// AsSalesforceSource is the BasicCopySource implementation for ImpalaSource.
49238func (is ImpalaSource) AsSalesforceSource() (*SalesforceSource, bool) {
49239	return nil, false
49240}
49241
49242// AsRelationalSource is the BasicCopySource implementation for ImpalaSource.
49243func (is ImpalaSource) AsRelationalSource() (*RelationalSource, bool) {
49244	return nil, false
49245}
49246
49247// AsDynamicsSource is the BasicCopySource implementation for ImpalaSource.
49248func (is ImpalaSource) AsDynamicsSource() (*DynamicsSource, bool) {
49249	return nil, false
49250}
49251
49252// AsDocumentDbCollectionSource is the BasicCopySource implementation for ImpalaSource.
49253func (is ImpalaSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
49254	return nil, false
49255}
49256
49257// AsBlobSource is the BasicCopySource implementation for ImpalaSource.
49258func (is ImpalaSource) AsBlobSource() (*BlobSource, bool) {
49259	return nil, false
49260}
49261
49262// AsAzureTableSource is the BasicCopySource implementation for ImpalaSource.
49263func (is ImpalaSource) AsAzureTableSource() (*AzureTableSource, bool) {
49264	return nil, false
49265}
49266
49267// AsCopySource is the BasicCopySource implementation for ImpalaSource.
49268func (is ImpalaSource) AsCopySource() (*CopySource, bool) {
49269	return nil, false
49270}
49271
49272// AsBasicCopySource is the BasicCopySource implementation for ImpalaSource.
49273func (is ImpalaSource) AsBasicCopySource() (BasicCopySource, bool) {
49274	return &is, true
49275}
49276
49277// BasicIntegrationRuntime azure Data Factory nested object which serves as a compute resource for activities.
49278type BasicIntegrationRuntime interface {
49279	AsSelfHostedIntegrationRuntime() (*SelfHostedIntegrationRuntime, bool)
49280	AsManagedIntegrationRuntime() (*ManagedIntegrationRuntime, bool)
49281	AsIntegrationRuntime() (*IntegrationRuntime, bool)
49282}
49283
49284// IntegrationRuntime azure Data Factory nested object which serves as a compute resource for activities.
49285type IntegrationRuntime struct {
49286	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49287	AdditionalProperties map[string]interface{} `json:""`
49288	// Description - Integration runtime description.
49289	Description *string `json:"description,omitempty"`
49290	// Type - Possible values include: 'TypeIntegrationRuntime', 'TypeSelfHosted', 'TypeManaged'
49291	Type TypeBasicIntegrationRuntime `json:"type,omitempty"`
49292}
49293
49294func unmarshalBasicIntegrationRuntime(body []byte) (BasicIntegrationRuntime, error) {
49295	var m map[string]interface{}
49296	err := json.Unmarshal(body, &m)
49297	if err != nil {
49298		return nil, err
49299	}
49300
49301	switch m["type"] {
49302	case string(TypeSelfHosted):
49303		var shir SelfHostedIntegrationRuntime
49304		err := json.Unmarshal(body, &shir)
49305		return shir, err
49306	case string(TypeManaged):
49307		var mir ManagedIntegrationRuntime
49308		err := json.Unmarshal(body, &mir)
49309		return mir, err
49310	default:
49311		var ir IntegrationRuntime
49312		err := json.Unmarshal(body, &ir)
49313		return ir, err
49314	}
49315}
49316func unmarshalBasicIntegrationRuntimeArray(body []byte) ([]BasicIntegrationRuntime, error) {
49317	var rawMessages []*json.RawMessage
49318	err := json.Unmarshal(body, &rawMessages)
49319	if err != nil {
49320		return nil, err
49321	}
49322
49323	irArray := make([]BasicIntegrationRuntime, len(rawMessages))
49324
49325	for index, rawMessage := range rawMessages {
49326		ir, err := unmarshalBasicIntegrationRuntime(*rawMessage)
49327		if err != nil {
49328			return nil, err
49329		}
49330		irArray[index] = ir
49331	}
49332	return irArray, nil
49333}
49334
49335// MarshalJSON is the custom marshaler for IntegrationRuntime.
49336func (ir IntegrationRuntime) MarshalJSON() ([]byte, error) {
49337	ir.Type = TypeIntegrationRuntime
49338	objectMap := make(map[string]interface{})
49339	if ir.Description != nil {
49340		objectMap["description"] = ir.Description
49341	}
49342	if ir.Type != "" {
49343		objectMap["type"] = ir.Type
49344	}
49345	for k, v := range ir.AdditionalProperties {
49346		objectMap[k] = v
49347	}
49348	return json.Marshal(objectMap)
49349}
49350
49351// AsSelfHostedIntegrationRuntime is the BasicIntegrationRuntime implementation for IntegrationRuntime.
49352func (ir IntegrationRuntime) AsSelfHostedIntegrationRuntime() (*SelfHostedIntegrationRuntime, bool) {
49353	return nil, false
49354}
49355
49356// AsManagedIntegrationRuntime is the BasicIntegrationRuntime implementation for IntegrationRuntime.
49357func (ir IntegrationRuntime) AsManagedIntegrationRuntime() (*ManagedIntegrationRuntime, bool) {
49358	return nil, false
49359}
49360
49361// AsIntegrationRuntime is the BasicIntegrationRuntime implementation for IntegrationRuntime.
49362func (ir IntegrationRuntime) AsIntegrationRuntime() (*IntegrationRuntime, bool) {
49363	return &ir, true
49364}
49365
49366// AsBasicIntegrationRuntime is the BasicIntegrationRuntime implementation for IntegrationRuntime.
49367func (ir IntegrationRuntime) AsBasicIntegrationRuntime() (BasicIntegrationRuntime, bool) {
49368	return &ir, true
49369}
49370
49371// IntegrationRuntimeAuthKeys the integration runtime authentication keys.
49372type IntegrationRuntimeAuthKeys struct {
49373	autorest.Response `json:"-"`
49374	// AuthKey1 - The primary integration runtime authentication key.
49375	AuthKey1 *string `json:"authKey1,omitempty"`
49376	// AuthKey2 - The secondary integration runtime authentication key.
49377	AuthKey2 *string `json:"authKey2,omitempty"`
49378}
49379
49380// IntegrationRuntimeComputeProperties the compute resource properties for managed integration runtime.
49381type IntegrationRuntimeComputeProperties struct {
49382	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49383	AdditionalProperties map[string]interface{} `json:""`
49384	// Location - The location for managed integration runtime. The supported regions could be found on https://docs.microsoft.com/en-us/azure/data-factory/data-factory-data-movement-activities
49385	Location *string `json:"location,omitempty"`
49386	// NodeSize - The node size requirement to managed integration runtime.
49387	NodeSize *string `json:"nodeSize,omitempty"`
49388	// NumberOfNodes - The required number of nodes for managed integration runtime.
49389	NumberOfNodes *int32 `json:"numberOfNodes,omitempty"`
49390	// MaxParallelExecutionsPerNode - Maximum parallel executions count per node for managed integration runtime.
49391	MaxParallelExecutionsPerNode *int32 `json:"maxParallelExecutionsPerNode,omitempty"`
49392	// VNetProperties - VNet properties for managed integration runtime.
49393	VNetProperties *IntegrationRuntimeVNetProperties `json:"vNetProperties,omitempty"`
49394}
49395
49396// MarshalJSON is the custom marshaler for IntegrationRuntimeComputeProperties.
49397func (ircp IntegrationRuntimeComputeProperties) MarshalJSON() ([]byte, error) {
49398	objectMap := make(map[string]interface{})
49399	if ircp.Location != nil {
49400		objectMap["location"] = ircp.Location
49401	}
49402	if ircp.NodeSize != nil {
49403		objectMap["nodeSize"] = ircp.NodeSize
49404	}
49405	if ircp.NumberOfNodes != nil {
49406		objectMap["numberOfNodes"] = ircp.NumberOfNodes
49407	}
49408	if ircp.MaxParallelExecutionsPerNode != nil {
49409		objectMap["maxParallelExecutionsPerNode"] = ircp.MaxParallelExecutionsPerNode
49410	}
49411	if ircp.VNetProperties != nil {
49412		objectMap["vNetProperties"] = ircp.VNetProperties
49413	}
49414	for k, v := range ircp.AdditionalProperties {
49415		objectMap[k] = v
49416	}
49417	return json.Marshal(objectMap)
49418}
49419
49420// IntegrationRuntimeConnectionInfo connection information for encrypting the on-premises data source credentials.
49421type IntegrationRuntimeConnectionInfo struct {
49422	autorest.Response `json:"-"`
49423	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49424	AdditionalProperties map[string]interface{} `json:""`
49425	// ServiceToken - The token generated in service. Callers use this token to authenticate to integration runtime.
49426	ServiceToken *string `json:"serviceToken,omitempty"`
49427	// IdentityCertThumbprint - The integration runtime SSL certificate thumbprint. Click-Once application uses it to do server validation.
49428	IdentityCertThumbprint *string `json:"identityCertThumbprint,omitempty"`
49429	// HostServiceURI - The on-premises integration runtime host URL.
49430	HostServiceURI *string `json:"hostServiceUri,omitempty"`
49431	// Version - The integration runtime version.
49432	Version *string `json:"version,omitempty"`
49433	// PublicKey - The public key for encrypting a credential when transferring the credential to the integration runtime.
49434	PublicKey *string `json:"publicKey,omitempty"`
49435	// IsIdentityCertExprired - Whether the identity certificate is expired.
49436	IsIdentityCertExprired *bool `json:"isIdentityCertExprired,omitempty"`
49437}
49438
49439// MarshalJSON is the custom marshaler for IntegrationRuntimeConnectionInfo.
49440func (irci IntegrationRuntimeConnectionInfo) MarshalJSON() ([]byte, error) {
49441	objectMap := make(map[string]interface{})
49442	if irci.ServiceToken != nil {
49443		objectMap["serviceToken"] = irci.ServiceToken
49444	}
49445	if irci.IdentityCertThumbprint != nil {
49446		objectMap["identityCertThumbprint"] = irci.IdentityCertThumbprint
49447	}
49448	if irci.HostServiceURI != nil {
49449		objectMap["hostServiceUri"] = irci.HostServiceURI
49450	}
49451	if irci.Version != nil {
49452		objectMap["version"] = irci.Version
49453	}
49454	if irci.PublicKey != nil {
49455		objectMap["publicKey"] = irci.PublicKey
49456	}
49457	if irci.IsIdentityCertExprired != nil {
49458		objectMap["isIdentityCertExprired"] = irci.IsIdentityCertExprired
49459	}
49460	for k, v := range irci.AdditionalProperties {
49461		objectMap[k] = v
49462	}
49463	return json.Marshal(objectMap)
49464}
49465
49466// IntegrationRuntimeCustomSetupScriptProperties custom setup script properties for a managed dedicated integration
49467// runtime.
49468type IntegrationRuntimeCustomSetupScriptProperties struct {
49469	// BlobContainerURI - The URI of the Azure blob container that contains the custom setup script.
49470	BlobContainerURI *string `json:"blobContainerUri,omitempty"`
49471	// SasToken - The SAS token of the Azure blob container.
49472	SasToken *SecureString `json:"sasToken,omitempty"`
49473}
49474
49475// IntegrationRuntimeListResponse a list of integration runtime resources.
49476type IntegrationRuntimeListResponse struct {
49477	autorest.Response `json:"-"`
49478	// Value - List of integration runtimes.
49479	Value *[]IntegrationRuntimeResource `json:"value,omitempty"`
49480	// NextLink - The link to the next page of results, if any remaining results exist.
49481	NextLink *string `json:"nextLink,omitempty"`
49482}
49483
49484// IntegrationRuntimeListResponseIterator provides access to a complete listing of IntegrationRuntimeResource
49485// values.
49486type IntegrationRuntimeListResponseIterator struct {
49487	i    int
49488	page IntegrationRuntimeListResponsePage
49489}
49490
49491// Next advances to the next value.  If there was an error making
49492// the request the iterator does not advance and the error is returned.
49493func (iter *IntegrationRuntimeListResponseIterator) Next() error {
49494	iter.i++
49495	if iter.i < len(iter.page.Values()) {
49496		return nil
49497	}
49498	err := iter.page.Next()
49499	if err != nil {
49500		iter.i--
49501		return err
49502	}
49503	iter.i = 0
49504	return nil
49505}
49506
49507// NotDone returns true if the enumeration should be started or is not yet complete.
49508func (iter IntegrationRuntimeListResponseIterator) NotDone() bool {
49509	return iter.page.NotDone() && iter.i < len(iter.page.Values())
49510}
49511
49512// Response returns the raw server response from the last page request.
49513func (iter IntegrationRuntimeListResponseIterator) Response() IntegrationRuntimeListResponse {
49514	return iter.page.Response()
49515}
49516
49517// Value returns the current value or a zero-initialized value if the
49518// iterator has advanced beyond the end of the collection.
49519func (iter IntegrationRuntimeListResponseIterator) Value() IntegrationRuntimeResource {
49520	if !iter.page.NotDone() {
49521		return IntegrationRuntimeResource{}
49522	}
49523	return iter.page.Values()[iter.i]
49524}
49525
49526// IsEmpty returns true if the ListResult contains no values.
49527func (irlr IntegrationRuntimeListResponse) IsEmpty() bool {
49528	return irlr.Value == nil || len(*irlr.Value) == 0
49529}
49530
49531// integrationRuntimeListResponsePreparer prepares a request to retrieve the next set of results.
49532// It returns nil if no more results exist.
49533func (irlr IntegrationRuntimeListResponse) integrationRuntimeListResponsePreparer() (*http.Request, error) {
49534	if irlr.NextLink == nil || len(to.String(irlr.NextLink)) < 1 {
49535		return nil, nil
49536	}
49537	return autorest.Prepare(&http.Request{},
49538		autorest.AsJSON(),
49539		autorest.AsGet(),
49540		autorest.WithBaseURL(to.String(irlr.NextLink)))
49541}
49542
49543// IntegrationRuntimeListResponsePage contains a page of IntegrationRuntimeResource values.
49544type IntegrationRuntimeListResponsePage struct {
49545	fn   func(IntegrationRuntimeListResponse) (IntegrationRuntimeListResponse, error)
49546	irlr IntegrationRuntimeListResponse
49547}
49548
49549// Next advances to the next page of values.  If there was an error making
49550// the request the page does not advance and the error is returned.
49551func (page *IntegrationRuntimeListResponsePage) Next() error {
49552	next, err := page.fn(page.irlr)
49553	if err != nil {
49554		return err
49555	}
49556	page.irlr = next
49557	return nil
49558}
49559
49560// NotDone returns true if the page enumeration should be started or is not yet complete.
49561func (page IntegrationRuntimeListResponsePage) NotDone() bool {
49562	return !page.irlr.IsEmpty()
49563}
49564
49565// Response returns the raw server response from the last page request.
49566func (page IntegrationRuntimeListResponsePage) Response() IntegrationRuntimeListResponse {
49567	return page.irlr
49568}
49569
49570// Values returns the slice of values for the current page or nil if there are no values.
49571func (page IntegrationRuntimeListResponsePage) Values() []IntegrationRuntimeResource {
49572	if page.irlr.IsEmpty() {
49573		return nil
49574	}
49575	return *page.irlr.Value
49576}
49577
49578// IntegrationRuntimeMonitoringData get monitoring data response.
49579type IntegrationRuntimeMonitoringData struct {
49580	autorest.Response `json:"-"`
49581	// Name - Integration runtime name.
49582	Name *string `json:"name,omitempty"`
49583	// Nodes - Integration runtime node monitoring data.
49584	Nodes *[]IntegrationRuntimeNodeMonitoringData `json:"nodes,omitempty"`
49585}
49586
49587// IntegrationRuntimeNodeIPAddress the IP address of self-hosted integration runtime node.
49588type IntegrationRuntimeNodeIPAddress struct {
49589	autorest.Response `json:"-"`
49590	// IPAddress - The IP address of self-hosted integration runtime node.
49591	IPAddress *string `json:"ipAddress,omitempty"`
49592}
49593
49594// IntegrationRuntimeNodeMonitoringData monitoring data for integration runtime node.
49595type IntegrationRuntimeNodeMonitoringData struct {
49596	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49597	AdditionalProperties map[string]interface{} `json:""`
49598	// NodeName - Name of the integration runtime node.
49599	NodeName *string `json:"nodeName,omitempty"`
49600	// AvailableMemoryInMB - Available memory (MB) on the integration runtime node.
49601	AvailableMemoryInMB *int32 `json:"availableMemoryInMB,omitempty"`
49602	// CPUUtilization - CPU percentage on the integration runtime node.
49603	CPUUtilization *float64 `json:"cpuUtilization,omitempty"`
49604	// ConcurrentJobsLimit - Maximum concurrent jobs on the integration runtime node.
49605	ConcurrentJobsLimit *int32 `json:"concurrentJobsLimit,omitempty"`
49606	// ConcurrentJobsRunning - The number of jobs currently running on the integration runtime node.
49607	ConcurrentJobsRunning *int32 `json:"concurrentJobsRunning,omitempty"`
49608	// MaxConcurrentJobs - The maximum concurrent jobs in this integration runtime.
49609	MaxConcurrentJobs *int32 `json:"maxConcurrentJobs,omitempty"`
49610	// SentBytes - Sent bytes on the integration runtime node.
49611	SentBytes *float64 `json:"sentBytes,omitempty"`
49612	// ReceivedBytes - Received bytes on the integration runtime node.
49613	ReceivedBytes *float64 `json:"receivedBytes,omitempty"`
49614}
49615
49616// MarshalJSON is the custom marshaler for IntegrationRuntimeNodeMonitoringData.
49617func (irnmd IntegrationRuntimeNodeMonitoringData) MarshalJSON() ([]byte, error) {
49618	objectMap := make(map[string]interface{})
49619	if irnmd.NodeName != nil {
49620		objectMap["nodeName"] = irnmd.NodeName
49621	}
49622	if irnmd.AvailableMemoryInMB != nil {
49623		objectMap["availableMemoryInMB"] = irnmd.AvailableMemoryInMB
49624	}
49625	if irnmd.CPUUtilization != nil {
49626		objectMap["cpuUtilization"] = irnmd.CPUUtilization
49627	}
49628	if irnmd.ConcurrentJobsLimit != nil {
49629		objectMap["concurrentJobsLimit"] = irnmd.ConcurrentJobsLimit
49630	}
49631	if irnmd.ConcurrentJobsRunning != nil {
49632		objectMap["concurrentJobsRunning"] = irnmd.ConcurrentJobsRunning
49633	}
49634	if irnmd.MaxConcurrentJobs != nil {
49635		objectMap["maxConcurrentJobs"] = irnmd.MaxConcurrentJobs
49636	}
49637	if irnmd.SentBytes != nil {
49638		objectMap["sentBytes"] = irnmd.SentBytes
49639	}
49640	if irnmd.ReceivedBytes != nil {
49641		objectMap["receivedBytes"] = irnmd.ReceivedBytes
49642	}
49643	for k, v := range irnmd.AdditionalProperties {
49644		objectMap[k] = v
49645	}
49646	return json.Marshal(objectMap)
49647}
49648
49649// IntegrationRuntimeReference integration runtime reference type.
49650type IntegrationRuntimeReference struct {
49651	// Type - Type of integration runtime.
49652	Type *string `json:"type,omitempty"`
49653	// ReferenceName - Reference integration runtime name.
49654	ReferenceName *string `json:"referenceName,omitempty"`
49655	// Parameters - Arguments for integration runtime.
49656	Parameters map[string]interface{} `json:"parameters"`
49657}
49658
49659// MarshalJSON is the custom marshaler for IntegrationRuntimeReference.
49660func (irr IntegrationRuntimeReference) MarshalJSON() ([]byte, error) {
49661	objectMap := make(map[string]interface{})
49662	if irr.Type != nil {
49663		objectMap["type"] = irr.Type
49664	}
49665	if irr.ReferenceName != nil {
49666		objectMap["referenceName"] = irr.ReferenceName
49667	}
49668	if irr.Parameters != nil {
49669		objectMap["parameters"] = irr.Parameters
49670	}
49671	return json.Marshal(objectMap)
49672}
49673
49674// IntegrationRuntimeRegenerateKeyParameters parameters to regenerate the authentication key.
49675type IntegrationRuntimeRegenerateKeyParameters struct {
49676	// KeyName - The name of the authentication key to regenerate. Possible values include: 'AuthKey1', 'AuthKey2'
49677	KeyName IntegrationRuntimeAuthKeyName `json:"keyName,omitempty"`
49678}
49679
49680// IntegrationRuntimeRemoveNodeRequest request to remove a node.
49681type IntegrationRuntimeRemoveNodeRequest struct {
49682	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49683	AdditionalProperties map[string]interface{} `json:""`
49684	// NodeName - The name of the node to be removed.
49685	NodeName *string `json:"nodeName,omitempty"`
49686}
49687
49688// MarshalJSON is the custom marshaler for IntegrationRuntimeRemoveNodeRequest.
49689func (irrnr IntegrationRuntimeRemoveNodeRequest) MarshalJSON() ([]byte, error) {
49690	objectMap := make(map[string]interface{})
49691	if irrnr.NodeName != nil {
49692		objectMap["nodeName"] = irrnr.NodeName
49693	}
49694	for k, v := range irrnr.AdditionalProperties {
49695		objectMap[k] = v
49696	}
49697	return json.Marshal(objectMap)
49698}
49699
49700// IntegrationRuntimeResource integration runtime resource type.
49701type IntegrationRuntimeResource struct {
49702	autorest.Response `json:"-"`
49703	// Properties - Integration runtime properties.
49704	Properties BasicIntegrationRuntime `json:"properties,omitempty"`
49705	// ID - The resource identifier.
49706	ID *string `json:"id,omitempty"`
49707	// Name - The resource name.
49708	Name *string `json:"name,omitempty"`
49709	// Type - The resource type.
49710	Type *string `json:"type,omitempty"`
49711	// Etag - Etag identifies change in the resource.
49712	Etag *string `json:"etag,omitempty"`
49713}
49714
49715// UnmarshalJSON is the custom unmarshaler for IntegrationRuntimeResource struct.
49716func (irr *IntegrationRuntimeResource) UnmarshalJSON(body []byte) error {
49717	var m map[string]*json.RawMessage
49718	err := json.Unmarshal(body, &m)
49719	if err != nil {
49720		return err
49721	}
49722	for k, v := range m {
49723		switch k {
49724		case "properties":
49725			if v != nil {
49726				properties, err := unmarshalBasicIntegrationRuntime(*v)
49727				if err != nil {
49728					return err
49729				}
49730				irr.Properties = properties
49731			}
49732		case "id":
49733			if v != nil {
49734				var ID string
49735				err = json.Unmarshal(*v, &ID)
49736				if err != nil {
49737					return err
49738				}
49739				irr.ID = &ID
49740			}
49741		case "name":
49742			if v != nil {
49743				var name string
49744				err = json.Unmarshal(*v, &name)
49745				if err != nil {
49746					return err
49747				}
49748				irr.Name = &name
49749			}
49750		case "type":
49751			if v != nil {
49752				var typeVar string
49753				err = json.Unmarshal(*v, &typeVar)
49754				if err != nil {
49755					return err
49756				}
49757				irr.Type = &typeVar
49758			}
49759		case "etag":
49760			if v != nil {
49761				var etag string
49762				err = json.Unmarshal(*v, &etag)
49763				if err != nil {
49764					return err
49765				}
49766				irr.Etag = &etag
49767			}
49768		}
49769	}
49770
49771	return nil
49772}
49773
49774// IntegrationRuntimeSsisCatalogInfo catalog information for managed dedicated integration runtime.
49775type IntegrationRuntimeSsisCatalogInfo struct {
49776	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49777	AdditionalProperties map[string]interface{} `json:""`
49778	// CatalogServerEndpoint - The catalog database server URL.
49779	CatalogServerEndpoint *string `json:"catalogServerEndpoint,omitempty"`
49780	// CatalogAdminUserName - The administrator user name of catalog database.
49781	CatalogAdminUserName *string `json:"catalogAdminUserName,omitempty"`
49782	// CatalogAdminPassword - The password of the administrator user account of the catalog database.
49783	CatalogAdminPassword *SecureString `json:"catalogAdminPassword,omitempty"`
49784	// CatalogPricingTier - The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/. Possible values include: 'IntegrationRuntimeSsisCatalogPricingTierBasic', 'IntegrationRuntimeSsisCatalogPricingTierStandard', 'IntegrationRuntimeSsisCatalogPricingTierPremium', 'IntegrationRuntimeSsisCatalogPricingTierPremiumRS'
49785	CatalogPricingTier IntegrationRuntimeSsisCatalogPricingTier `json:"catalogPricingTier,omitempty"`
49786}
49787
49788// MarshalJSON is the custom marshaler for IntegrationRuntimeSsisCatalogInfo.
49789func (irsci IntegrationRuntimeSsisCatalogInfo) MarshalJSON() ([]byte, error) {
49790	objectMap := make(map[string]interface{})
49791	if irsci.CatalogServerEndpoint != nil {
49792		objectMap["catalogServerEndpoint"] = irsci.CatalogServerEndpoint
49793	}
49794	if irsci.CatalogAdminUserName != nil {
49795		objectMap["catalogAdminUserName"] = irsci.CatalogAdminUserName
49796	}
49797	if irsci.CatalogAdminPassword != nil {
49798		objectMap["catalogAdminPassword"] = irsci.CatalogAdminPassword
49799	}
49800	if irsci.CatalogPricingTier != "" {
49801		objectMap["catalogPricingTier"] = irsci.CatalogPricingTier
49802	}
49803	for k, v := range irsci.AdditionalProperties {
49804		objectMap[k] = v
49805	}
49806	return json.Marshal(objectMap)
49807}
49808
49809// IntegrationRuntimeSsisProperties SSIS properties for managed integration runtime.
49810type IntegrationRuntimeSsisProperties struct {
49811	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49812	AdditionalProperties map[string]interface{} `json:""`
49813	// CatalogInfo - Catalog information for managed dedicated integration runtime.
49814	CatalogInfo *IntegrationRuntimeSsisCatalogInfo `json:"catalogInfo,omitempty"`
49815	// LicenseType - License type for bringing your own license scenario. Possible values include: 'BasePrice', 'LicenseIncluded'
49816	LicenseType IntegrationRuntimeLicenseType `json:"licenseType,omitempty"`
49817	// CustomSetupScriptProperties - Custom setup script properties for a managed dedicated integration runtime.
49818	CustomSetupScriptProperties *IntegrationRuntimeCustomSetupScriptProperties `json:"customSetupScriptProperties,omitempty"`
49819	// Edition - The edition for the SSIS Integration Runtime. Possible values include: 'Standard', 'Enterprise'
49820	Edition IntegrationRuntimeEdition `json:"edition,omitempty"`
49821}
49822
49823// MarshalJSON is the custom marshaler for IntegrationRuntimeSsisProperties.
49824func (irsp IntegrationRuntimeSsisProperties) MarshalJSON() ([]byte, error) {
49825	objectMap := make(map[string]interface{})
49826	if irsp.CatalogInfo != nil {
49827		objectMap["catalogInfo"] = irsp.CatalogInfo
49828	}
49829	if irsp.LicenseType != "" {
49830		objectMap["licenseType"] = irsp.LicenseType
49831	}
49832	if irsp.CustomSetupScriptProperties != nil {
49833		objectMap["customSetupScriptProperties"] = irsp.CustomSetupScriptProperties
49834	}
49835	if irsp.Edition != "" {
49836		objectMap["edition"] = irsp.Edition
49837	}
49838	for k, v := range irsp.AdditionalProperties {
49839		objectMap[k] = v
49840	}
49841	return json.Marshal(objectMap)
49842}
49843
49844// IntegrationRuntimesStartFuture an abstraction for monitoring and retrieving the results of a long-running
49845// operation.
49846type IntegrationRuntimesStartFuture struct {
49847	azure.Future
49848	req *http.Request
49849}
49850
49851// Result returns the result of the asynchronous operation.
49852// If the operation has not completed it will return an error.
49853func (future IntegrationRuntimesStartFuture) Result(client IntegrationRuntimesClient) (irsr IntegrationRuntimeStatusResponse, err error) {
49854	var done bool
49855	done, err = future.Done(client)
49856	if err != nil {
49857		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStartFuture", "Result", future.Response(), "Polling failure")
49858		return
49859	}
49860	if !done {
49861		return irsr, azure.NewAsyncOpIncompleteError("datafactory.IntegrationRuntimesStartFuture")
49862	}
49863	if future.PollingMethod() == azure.PollingLocation {
49864		irsr, err = client.StartResponder(future.Response())
49865		if err != nil {
49866			err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStartFuture", "Result", future.Response(), "Failure responding to request")
49867		}
49868		return
49869	}
49870	var req *http.Request
49871	var resp *http.Response
49872	if future.PollingURL() != "" {
49873		req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil)
49874		if err != nil {
49875			return
49876		}
49877	} else {
49878		req = autorest.ChangeToGet(future.req)
49879	}
49880	resp, err = autorest.SendWithSender(client, req,
49881		autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
49882	if err != nil {
49883		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStartFuture", "Result", resp, "Failure sending request")
49884		return
49885	}
49886	irsr, err = client.StartResponder(resp)
49887	if err != nil {
49888		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStartFuture", "Result", resp, "Failure responding to request")
49889	}
49890	return
49891}
49892
49893// IntegrationRuntimesStopFuture an abstraction for monitoring and retrieving the results of a long-running
49894// operation.
49895type IntegrationRuntimesStopFuture struct {
49896	azure.Future
49897	req *http.Request
49898}
49899
49900// Result returns the result of the asynchronous operation.
49901// If the operation has not completed it will return an error.
49902func (future IntegrationRuntimesStopFuture) Result(client IntegrationRuntimesClient) (ar autorest.Response, err error) {
49903	var done bool
49904	done, err = future.Done(client)
49905	if err != nil {
49906		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStopFuture", "Result", future.Response(), "Polling failure")
49907		return
49908	}
49909	if !done {
49910		return ar, azure.NewAsyncOpIncompleteError("datafactory.IntegrationRuntimesStopFuture")
49911	}
49912	if future.PollingMethod() == azure.PollingLocation {
49913		ar, err = client.StopResponder(future.Response())
49914		if err != nil {
49915			err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStopFuture", "Result", future.Response(), "Failure responding to request")
49916		}
49917		return
49918	}
49919	var req *http.Request
49920	var resp *http.Response
49921	if future.PollingURL() != "" {
49922		req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil)
49923		if err != nil {
49924			return
49925		}
49926	} else {
49927		req = autorest.ChangeToGet(future.req)
49928	}
49929	resp, err = autorest.SendWithSender(client, req,
49930		autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
49931	if err != nil {
49932		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStopFuture", "Result", resp, "Failure sending request")
49933		return
49934	}
49935	ar, err = client.StopResponder(resp)
49936	if err != nil {
49937		err = autorest.NewErrorWithError(err, "datafactory.IntegrationRuntimesStopFuture", "Result", resp, "Failure responding to request")
49938	}
49939	return
49940}
49941
49942// BasicIntegrationRuntimeStatus integration runtime status.
49943type BasicIntegrationRuntimeStatus interface {
49944	AsSelfHostedIntegrationRuntimeStatus() (*SelfHostedIntegrationRuntimeStatus, bool)
49945	AsManagedIntegrationRuntimeStatus() (*ManagedIntegrationRuntimeStatus, bool)
49946	AsIntegrationRuntimeStatus() (*IntegrationRuntimeStatus, bool)
49947}
49948
49949// IntegrationRuntimeStatus integration runtime status.
49950type IntegrationRuntimeStatus struct {
49951	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
49952	AdditionalProperties map[string]interface{} `json:""`
49953	// DataFactoryName - The data factory name which the integration runtime belong to.
49954	DataFactoryName *string `json:"dataFactoryName,omitempty"`
49955	// State - The state of integration runtime. Possible values include: 'Initial', 'Stopped', 'Started', 'Starting', 'Stopping', 'NeedRegistration', 'Online', 'Limited', 'Offline'
49956	State IntegrationRuntimeState `json:"state,omitempty"`
49957	// Type - Possible values include: 'TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus', 'TypeBasicIntegrationRuntimeStatusTypeSelfHosted', 'TypeBasicIntegrationRuntimeStatusTypeManaged'
49958	Type TypeBasicIntegrationRuntimeStatus `json:"type,omitempty"`
49959}
49960
49961func unmarshalBasicIntegrationRuntimeStatus(body []byte) (BasicIntegrationRuntimeStatus, error) {
49962	var m map[string]interface{}
49963	err := json.Unmarshal(body, &m)
49964	if err != nil {
49965		return nil, err
49966	}
49967
49968	switch m["type"] {
49969	case string(TypeBasicIntegrationRuntimeStatusTypeSelfHosted):
49970		var shirs SelfHostedIntegrationRuntimeStatus
49971		err := json.Unmarshal(body, &shirs)
49972		return shirs, err
49973	case string(TypeBasicIntegrationRuntimeStatusTypeManaged):
49974		var mirs ManagedIntegrationRuntimeStatus
49975		err := json.Unmarshal(body, &mirs)
49976		return mirs, err
49977	default:
49978		var irs IntegrationRuntimeStatus
49979		err := json.Unmarshal(body, &irs)
49980		return irs, err
49981	}
49982}
49983func unmarshalBasicIntegrationRuntimeStatusArray(body []byte) ([]BasicIntegrationRuntimeStatus, error) {
49984	var rawMessages []*json.RawMessage
49985	err := json.Unmarshal(body, &rawMessages)
49986	if err != nil {
49987		return nil, err
49988	}
49989
49990	irsArray := make([]BasicIntegrationRuntimeStatus, len(rawMessages))
49991
49992	for index, rawMessage := range rawMessages {
49993		irs, err := unmarshalBasicIntegrationRuntimeStatus(*rawMessage)
49994		if err != nil {
49995			return nil, err
49996		}
49997		irsArray[index] = irs
49998	}
49999	return irsArray, nil
50000}
50001
50002// MarshalJSON is the custom marshaler for IntegrationRuntimeStatus.
50003func (irs IntegrationRuntimeStatus) MarshalJSON() ([]byte, error) {
50004	irs.Type = TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus
50005	objectMap := make(map[string]interface{})
50006	if irs.DataFactoryName != nil {
50007		objectMap["dataFactoryName"] = irs.DataFactoryName
50008	}
50009	if irs.State != "" {
50010		objectMap["state"] = irs.State
50011	}
50012	if irs.Type != "" {
50013		objectMap["type"] = irs.Type
50014	}
50015	for k, v := range irs.AdditionalProperties {
50016		objectMap[k] = v
50017	}
50018	return json.Marshal(objectMap)
50019}
50020
50021// AsSelfHostedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for IntegrationRuntimeStatus.
50022func (irs IntegrationRuntimeStatus) AsSelfHostedIntegrationRuntimeStatus() (*SelfHostedIntegrationRuntimeStatus, bool) {
50023	return nil, false
50024}
50025
50026// AsManagedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for IntegrationRuntimeStatus.
50027func (irs IntegrationRuntimeStatus) AsManagedIntegrationRuntimeStatus() (*ManagedIntegrationRuntimeStatus, bool) {
50028	return nil, false
50029}
50030
50031// AsIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for IntegrationRuntimeStatus.
50032func (irs IntegrationRuntimeStatus) AsIntegrationRuntimeStatus() (*IntegrationRuntimeStatus, bool) {
50033	return &irs, true
50034}
50035
50036// AsBasicIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for IntegrationRuntimeStatus.
50037func (irs IntegrationRuntimeStatus) AsBasicIntegrationRuntimeStatus() (BasicIntegrationRuntimeStatus, bool) {
50038	return &irs, true
50039}
50040
50041// IntegrationRuntimeStatusListResponse a list of integration runtime status.
50042type IntegrationRuntimeStatusListResponse struct {
50043	// Value - List of integration runtime status.
50044	Value *[]IntegrationRuntimeStatusResponse `json:"value,omitempty"`
50045	// NextLink - The link to the next page of results, if any remaining results exist.
50046	NextLink *string `json:"nextLink,omitempty"`
50047}
50048
50049// IntegrationRuntimeStatusResponse integration runtime status response.
50050type IntegrationRuntimeStatusResponse struct {
50051	autorest.Response `json:"-"`
50052	// Name - The integration runtime name.
50053	Name *string `json:"name,omitempty"`
50054	// Properties - Integration runtime properties.
50055	Properties BasicIntegrationRuntimeStatus `json:"properties,omitempty"`
50056}
50057
50058// UnmarshalJSON is the custom unmarshaler for IntegrationRuntimeStatusResponse struct.
50059func (irsr *IntegrationRuntimeStatusResponse) UnmarshalJSON(body []byte) error {
50060	var m map[string]*json.RawMessage
50061	err := json.Unmarshal(body, &m)
50062	if err != nil {
50063		return err
50064	}
50065	for k, v := range m {
50066		switch k {
50067		case "name":
50068			if v != nil {
50069				var name string
50070				err = json.Unmarshal(*v, &name)
50071				if err != nil {
50072					return err
50073				}
50074				irsr.Name = &name
50075			}
50076		case "properties":
50077			if v != nil {
50078				properties, err := unmarshalBasicIntegrationRuntimeStatus(*v)
50079				if err != nil {
50080					return err
50081				}
50082				irsr.Properties = properties
50083			}
50084		}
50085	}
50086
50087	return nil
50088}
50089
50090// IntegrationRuntimeVNetProperties vNet properties for managed integration runtime.
50091type IntegrationRuntimeVNetProperties struct {
50092	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
50093	AdditionalProperties map[string]interface{} `json:""`
50094	// VNetID - The ID of the VNet that this integration runtime will join.
50095	VNetID *string `json:"vNetId,omitempty"`
50096	// Subnet - The name of the subnet this integration runtime will join.
50097	Subnet *string `json:"subnet,omitempty"`
50098}
50099
50100// MarshalJSON is the custom marshaler for IntegrationRuntimeVNetProperties.
50101func (irvnp IntegrationRuntimeVNetProperties) MarshalJSON() ([]byte, error) {
50102	objectMap := make(map[string]interface{})
50103	if irvnp.VNetID != nil {
50104		objectMap["vNetId"] = irvnp.VNetID
50105	}
50106	if irvnp.Subnet != nil {
50107		objectMap["subnet"] = irvnp.Subnet
50108	}
50109	for k, v := range irvnp.AdditionalProperties {
50110		objectMap[k] = v
50111	}
50112	return json.Marshal(objectMap)
50113}
50114
50115// JiraLinkedService jira Serivce linked service.
50116type JiraLinkedService struct {
50117	// JiraLinkedServiceTypeProperties - Jira Serivce linked service properties.
50118	*JiraLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
50119	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
50120	AdditionalProperties map[string]interface{} `json:""`
50121	// ConnectVia - The integration runtime reference.
50122	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
50123	// Description - Linked service description.
50124	Description *string `json:"description,omitempty"`
50125	// Parameters - Parameters for linked service.
50126	Parameters map[string]*ParameterSpecification `json:"parameters"`
50127	// Annotations - List of tags that can be used for describing the Dataset.
50128	Annotations *[]interface{} `json:"annotations,omitempty"`
50129	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
50130	Type TypeBasicLinkedService `json:"type,omitempty"`
50131}
50132
50133// MarshalJSON is the custom marshaler for JiraLinkedService.
50134func (jls JiraLinkedService) MarshalJSON() ([]byte, error) {
50135	jls.Type = TypeJira
50136	objectMap := make(map[string]interface{})
50137	if jls.JiraLinkedServiceTypeProperties != nil {
50138		objectMap["typeProperties"] = jls.JiraLinkedServiceTypeProperties
50139	}
50140	if jls.ConnectVia != nil {
50141		objectMap["connectVia"] = jls.ConnectVia
50142	}
50143	if jls.Description != nil {
50144		objectMap["description"] = jls.Description
50145	}
50146	if jls.Parameters != nil {
50147		objectMap["parameters"] = jls.Parameters
50148	}
50149	if jls.Annotations != nil {
50150		objectMap["annotations"] = jls.Annotations
50151	}
50152	if jls.Type != "" {
50153		objectMap["type"] = jls.Type
50154	}
50155	for k, v := range jls.AdditionalProperties {
50156		objectMap[k] = v
50157	}
50158	return json.Marshal(objectMap)
50159}
50160
50161// AsResponsysLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50162func (jls JiraLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
50163	return nil, false
50164}
50165
50166// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50167func (jls JiraLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
50168	return nil, false
50169}
50170
50171// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50172func (jls JiraLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
50173	return nil, false
50174}
50175
50176// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50177func (jls JiraLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
50178	return nil, false
50179}
50180
50181// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50182func (jls JiraLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
50183	return nil, false
50184}
50185
50186// AsNetezzaLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50187func (jls JiraLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
50188	return nil, false
50189}
50190
50191// AsVerticaLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50192func (jls JiraLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
50193	return nil, false
50194}
50195
50196// AsZohoLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50197func (jls JiraLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
50198	return nil, false
50199}
50200
50201// AsXeroLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50202func (jls JiraLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
50203	return nil, false
50204}
50205
50206// AsSquareLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50207func (jls JiraLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
50208	return nil, false
50209}
50210
50211// AsSparkLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50212func (jls JiraLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
50213	return nil, false
50214}
50215
50216// AsShopifyLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50217func (jls JiraLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
50218	return nil, false
50219}
50220
50221// AsServiceNowLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50222func (jls JiraLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
50223	return nil, false
50224}
50225
50226// AsQuickBooksLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50227func (jls JiraLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
50228	return nil, false
50229}
50230
50231// AsPrestoLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50232func (jls JiraLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
50233	return nil, false
50234}
50235
50236// AsPhoenixLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50237func (jls JiraLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
50238	return nil, false
50239}
50240
50241// AsPaypalLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50242func (jls JiraLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
50243	return nil, false
50244}
50245
50246// AsMarketoLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50247func (jls JiraLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
50248	return nil, false
50249}
50250
50251// AsMariaDBLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50252func (jls JiraLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
50253	return nil, false
50254}
50255
50256// AsMagentoLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50257func (jls JiraLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
50258	return nil, false
50259}
50260
50261// AsJiraLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50262func (jls JiraLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
50263	return &jls, true
50264}
50265
50266// AsImpalaLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50267func (jls JiraLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
50268	return nil, false
50269}
50270
50271// AsHubspotLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50272func (jls JiraLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
50273	return nil, false
50274}
50275
50276// AsHiveLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50277func (jls JiraLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
50278	return nil, false
50279}
50280
50281// AsHBaseLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50282func (jls JiraLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
50283	return nil, false
50284}
50285
50286// AsGreenplumLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50287func (jls JiraLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
50288	return nil, false
50289}
50290
50291// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50292func (jls JiraLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
50293	return nil, false
50294}
50295
50296// AsEloquaLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50297func (jls JiraLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
50298	return nil, false
50299}
50300
50301// AsDrillLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50302func (jls JiraLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
50303	return nil, false
50304}
50305
50306// AsCouchbaseLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50307func (jls JiraLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
50308	return nil, false
50309}
50310
50311// AsConcurLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50312func (jls JiraLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
50313	return nil, false
50314}
50315
50316// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50317func (jls JiraLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
50318	return nil, false
50319}
50320
50321// AsAmazonMWSLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50322func (jls JiraLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
50323	return nil, false
50324}
50325
50326// AsSapHanaLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50327func (jls JiraLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
50328	return nil, false
50329}
50330
50331// AsSapBWLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50332func (jls JiraLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
50333	return nil, false
50334}
50335
50336// AsSftpServerLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50337func (jls JiraLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
50338	return nil, false
50339}
50340
50341// AsFtpServerLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50342func (jls JiraLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
50343	return nil, false
50344}
50345
50346// AsHTTPLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50347func (jls JiraLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
50348	return nil, false
50349}
50350
50351// AsAzureSearchLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50352func (jls JiraLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
50353	return nil, false
50354}
50355
50356// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50357func (jls JiraLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
50358	return nil, false
50359}
50360
50361// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50362func (jls JiraLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
50363	return nil, false
50364}
50365
50366// AsAmazonS3LinkedService is the BasicLinkedService implementation for JiraLinkedService.
50367func (jls JiraLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
50368	return nil, false
50369}
50370
50371// AsSapEccLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50372func (jls JiraLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
50373	return nil, false
50374}
50375
50376// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50377func (jls JiraLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
50378	return nil, false
50379}
50380
50381// AsSalesforceLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50382func (jls JiraLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
50383	return nil, false
50384}
50385
50386// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50387func (jls JiraLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
50388	return nil, false
50389}
50390
50391// AsMongoDbLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50392func (jls JiraLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
50393	return nil, false
50394}
50395
50396// AsCassandraLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50397func (jls JiraLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
50398	return nil, false
50399}
50400
50401// AsWebLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50402func (jls JiraLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
50403	return nil, false
50404}
50405
50406// AsODataLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50407func (jls JiraLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
50408	return nil, false
50409}
50410
50411// AsHdfsLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50412func (jls JiraLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
50413	return nil, false
50414}
50415
50416// AsOdbcLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50417func (jls JiraLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
50418	return nil, false
50419}
50420
50421// AsAzureMLLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50422func (jls JiraLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
50423	return nil, false
50424}
50425
50426// AsTeradataLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50427func (jls JiraLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
50428	return nil, false
50429}
50430
50431// AsDb2LinkedService is the BasicLinkedService implementation for JiraLinkedService.
50432func (jls JiraLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
50433	return nil, false
50434}
50435
50436// AsSybaseLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50437func (jls JiraLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
50438	return nil, false
50439}
50440
50441// AsPostgreSQLLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50442func (jls JiraLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
50443	return nil, false
50444}
50445
50446// AsMySQLLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50447func (jls JiraLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
50448	return nil, false
50449}
50450
50451// AsAzureMySQLLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50452func (jls JiraLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
50453	return nil, false
50454}
50455
50456// AsOracleLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50457func (jls JiraLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
50458	return nil, false
50459}
50460
50461// AsFileServerLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50462func (jls JiraLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
50463	return nil, false
50464}
50465
50466// AsHDInsightLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50467func (jls JiraLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
50468	return nil, false
50469}
50470
50471// AsDynamicsLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50472func (jls JiraLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
50473	return nil, false
50474}
50475
50476// AsCosmosDbLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50477func (jls JiraLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
50478	return nil, false
50479}
50480
50481// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50482func (jls JiraLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
50483	return nil, false
50484}
50485
50486// AsAzureBatchLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50487func (jls JiraLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
50488	return nil, false
50489}
50490
50491// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50492func (jls JiraLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
50493	return nil, false
50494}
50495
50496// AsSQLServerLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50497func (jls JiraLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
50498	return nil, false
50499}
50500
50501// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50502func (jls JiraLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
50503	return nil, false
50504}
50505
50506// AsAzureStorageLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50507func (jls JiraLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
50508	return nil, false
50509}
50510
50511// AsLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50512func (jls JiraLinkedService) AsLinkedService() (*LinkedService, bool) {
50513	return nil, false
50514}
50515
50516// AsBasicLinkedService is the BasicLinkedService implementation for JiraLinkedService.
50517func (jls JiraLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
50518	return &jls, true
50519}
50520
50521// UnmarshalJSON is the custom unmarshaler for JiraLinkedService struct.
50522func (jls *JiraLinkedService) UnmarshalJSON(body []byte) error {
50523	var m map[string]*json.RawMessage
50524	err := json.Unmarshal(body, &m)
50525	if err != nil {
50526		return err
50527	}
50528	for k, v := range m {
50529		switch k {
50530		case "typeProperties":
50531			if v != nil {
50532				var jiraLinkedServiceTypeProperties JiraLinkedServiceTypeProperties
50533				err = json.Unmarshal(*v, &jiraLinkedServiceTypeProperties)
50534				if err != nil {
50535					return err
50536				}
50537				jls.JiraLinkedServiceTypeProperties = &jiraLinkedServiceTypeProperties
50538			}
50539		default:
50540			if v != nil {
50541				var additionalProperties interface{}
50542				err = json.Unmarshal(*v, &additionalProperties)
50543				if err != nil {
50544					return err
50545				}
50546				if jls.AdditionalProperties == nil {
50547					jls.AdditionalProperties = make(map[string]interface{})
50548				}
50549				jls.AdditionalProperties[k] = additionalProperties
50550			}
50551		case "connectVia":
50552			if v != nil {
50553				var connectVia IntegrationRuntimeReference
50554				err = json.Unmarshal(*v, &connectVia)
50555				if err != nil {
50556					return err
50557				}
50558				jls.ConnectVia = &connectVia
50559			}
50560		case "description":
50561			if v != nil {
50562				var description string
50563				err = json.Unmarshal(*v, &description)
50564				if err != nil {
50565					return err
50566				}
50567				jls.Description = &description
50568			}
50569		case "parameters":
50570			if v != nil {
50571				var parameters map[string]*ParameterSpecification
50572				err = json.Unmarshal(*v, &parameters)
50573				if err != nil {
50574					return err
50575				}
50576				jls.Parameters = parameters
50577			}
50578		case "annotations":
50579			if v != nil {
50580				var annotations []interface{}
50581				err = json.Unmarshal(*v, &annotations)
50582				if err != nil {
50583					return err
50584				}
50585				jls.Annotations = &annotations
50586			}
50587		case "type":
50588			if v != nil {
50589				var typeVar TypeBasicLinkedService
50590				err = json.Unmarshal(*v, &typeVar)
50591				if err != nil {
50592					return err
50593				}
50594				jls.Type = typeVar
50595			}
50596		}
50597	}
50598
50599	return nil
50600}
50601
50602// JiraLinkedServiceTypeProperties jira Serivce linked service properties.
50603type JiraLinkedServiceTypeProperties struct {
50604	// Host - The IP address or host name of the Jira service. (e.g. jira.example.com)
50605	Host interface{} `json:"host,omitempty"`
50606	// Port - The TCP port that the Jira server uses to listen for client connections. The default value is 443 if connecting through HTTPS, or 8080 if connecting through HTTP.
50607	Port interface{} `json:"port,omitempty"`
50608	// Username - The user name that you use to access Jira Service.
50609	Username interface{} `json:"username,omitempty"`
50610	// Password - The password corresponding to the user name that you provided in the username field.
50611	Password BasicSecretBase `json:"password,omitempty"`
50612	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
50613	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
50614	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
50615	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
50616	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
50617	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
50618	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
50619	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
50620}
50621
50622// UnmarshalJSON is the custom unmarshaler for JiraLinkedServiceTypeProperties struct.
50623func (jlstp *JiraLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
50624	var m map[string]*json.RawMessage
50625	err := json.Unmarshal(body, &m)
50626	if err != nil {
50627		return err
50628	}
50629	for k, v := range m {
50630		switch k {
50631		case "host":
50632			if v != nil {
50633				var host interface{}
50634				err = json.Unmarshal(*v, &host)
50635				if err != nil {
50636					return err
50637				}
50638				jlstp.Host = host
50639			}
50640		case "port":
50641			if v != nil {
50642				var port interface{}
50643				err = json.Unmarshal(*v, &port)
50644				if err != nil {
50645					return err
50646				}
50647				jlstp.Port = port
50648			}
50649		case "username":
50650			if v != nil {
50651				var username interface{}
50652				err = json.Unmarshal(*v, &username)
50653				if err != nil {
50654					return err
50655				}
50656				jlstp.Username = username
50657			}
50658		case "password":
50659			if v != nil {
50660				password, err := unmarshalBasicSecretBase(*v)
50661				if err != nil {
50662					return err
50663				}
50664				jlstp.Password = password
50665			}
50666		case "useEncryptedEndpoints":
50667			if v != nil {
50668				var useEncryptedEndpoints interface{}
50669				err = json.Unmarshal(*v, &useEncryptedEndpoints)
50670				if err != nil {
50671					return err
50672				}
50673				jlstp.UseEncryptedEndpoints = useEncryptedEndpoints
50674			}
50675		case "useHostVerification":
50676			if v != nil {
50677				var useHostVerification interface{}
50678				err = json.Unmarshal(*v, &useHostVerification)
50679				if err != nil {
50680					return err
50681				}
50682				jlstp.UseHostVerification = useHostVerification
50683			}
50684		case "usePeerVerification":
50685			if v != nil {
50686				var usePeerVerification interface{}
50687				err = json.Unmarshal(*v, &usePeerVerification)
50688				if err != nil {
50689					return err
50690				}
50691				jlstp.UsePeerVerification = usePeerVerification
50692			}
50693		case "encryptedCredential":
50694			if v != nil {
50695				var encryptedCredential interface{}
50696				err = json.Unmarshal(*v, &encryptedCredential)
50697				if err != nil {
50698					return err
50699				}
50700				jlstp.EncryptedCredential = encryptedCredential
50701			}
50702		}
50703	}
50704
50705	return nil
50706}
50707
50708// JiraObjectDataset jira Serivce dataset.
50709type JiraObjectDataset struct {
50710	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
50711	AdditionalProperties map[string]interface{} `json:""`
50712	// Description - Dataset description.
50713	Description *string `json:"description,omitempty"`
50714	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
50715	Structure interface{} `json:"structure,omitempty"`
50716	// LinkedServiceName - Linked service reference.
50717	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
50718	// Parameters - Parameters for dataset.
50719	Parameters map[string]*ParameterSpecification `json:"parameters"`
50720	// Annotations - List of tags that can be used for describing the Dataset.
50721	Annotations *[]interface{} `json:"annotations,omitempty"`
50722	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
50723	Type TypeBasicDataset `json:"type,omitempty"`
50724}
50725
50726// MarshalJSON is the custom marshaler for JiraObjectDataset.
50727func (jod JiraObjectDataset) MarshalJSON() ([]byte, error) {
50728	jod.Type = TypeJiraObject
50729	objectMap := make(map[string]interface{})
50730	if jod.Description != nil {
50731		objectMap["description"] = jod.Description
50732	}
50733	objectMap["structure"] = jod.Structure
50734	if jod.LinkedServiceName != nil {
50735		objectMap["linkedServiceName"] = jod.LinkedServiceName
50736	}
50737	if jod.Parameters != nil {
50738		objectMap["parameters"] = jod.Parameters
50739	}
50740	if jod.Annotations != nil {
50741		objectMap["annotations"] = jod.Annotations
50742	}
50743	if jod.Type != "" {
50744		objectMap["type"] = jod.Type
50745	}
50746	for k, v := range jod.AdditionalProperties {
50747		objectMap[k] = v
50748	}
50749	return json.Marshal(objectMap)
50750}
50751
50752// AsResponsysObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50753func (jod JiraObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
50754	return nil, false
50755}
50756
50757// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50758func (jod JiraObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
50759	return nil, false
50760}
50761
50762// AsVerticaTableDataset is the BasicDataset implementation for JiraObjectDataset.
50763func (jod JiraObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
50764	return nil, false
50765}
50766
50767// AsNetezzaTableDataset is the BasicDataset implementation for JiraObjectDataset.
50768func (jod JiraObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
50769	return nil, false
50770}
50771
50772// AsZohoObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50773func (jod JiraObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
50774	return nil, false
50775}
50776
50777// AsXeroObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50778func (jod JiraObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
50779	return nil, false
50780}
50781
50782// AsSquareObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50783func (jod JiraObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
50784	return nil, false
50785}
50786
50787// AsSparkObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50788func (jod JiraObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
50789	return nil, false
50790}
50791
50792// AsShopifyObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50793func (jod JiraObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
50794	return nil, false
50795}
50796
50797// AsServiceNowObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50798func (jod JiraObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
50799	return nil, false
50800}
50801
50802// AsQuickBooksObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50803func (jod JiraObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
50804	return nil, false
50805}
50806
50807// AsPrestoObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50808func (jod JiraObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
50809	return nil, false
50810}
50811
50812// AsPhoenixObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50813func (jod JiraObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
50814	return nil, false
50815}
50816
50817// AsPaypalObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50818func (jod JiraObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
50819	return nil, false
50820}
50821
50822// AsMarketoObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50823func (jod JiraObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
50824	return nil, false
50825}
50826
50827// AsMariaDBTableDataset is the BasicDataset implementation for JiraObjectDataset.
50828func (jod JiraObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
50829	return nil, false
50830}
50831
50832// AsMagentoObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50833func (jod JiraObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
50834	return nil, false
50835}
50836
50837// AsJiraObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50838func (jod JiraObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
50839	return &jod, true
50840}
50841
50842// AsImpalaObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50843func (jod JiraObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
50844	return nil, false
50845}
50846
50847// AsHubspotObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50848func (jod JiraObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
50849	return nil, false
50850}
50851
50852// AsHiveObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50853func (jod JiraObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
50854	return nil, false
50855}
50856
50857// AsHBaseObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50858func (jod JiraObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
50859	return nil, false
50860}
50861
50862// AsGreenplumTableDataset is the BasicDataset implementation for JiraObjectDataset.
50863func (jod JiraObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
50864	return nil, false
50865}
50866
50867// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50868func (jod JiraObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
50869	return nil, false
50870}
50871
50872// AsEloquaObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50873func (jod JiraObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
50874	return nil, false
50875}
50876
50877// AsDrillTableDataset is the BasicDataset implementation for JiraObjectDataset.
50878func (jod JiraObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
50879	return nil, false
50880}
50881
50882// AsCouchbaseTableDataset is the BasicDataset implementation for JiraObjectDataset.
50883func (jod JiraObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
50884	return nil, false
50885}
50886
50887// AsConcurObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50888func (jod JiraObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
50889	return nil, false
50890}
50891
50892// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for JiraObjectDataset.
50893func (jod JiraObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
50894	return nil, false
50895}
50896
50897// AsAmazonMWSObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50898func (jod JiraObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
50899	return nil, false
50900}
50901
50902// AsHTTPDataset is the BasicDataset implementation for JiraObjectDataset.
50903func (jod JiraObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
50904	return nil, false
50905}
50906
50907// AsAzureSearchIndexDataset is the BasicDataset implementation for JiraObjectDataset.
50908func (jod JiraObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
50909	return nil, false
50910}
50911
50912// AsWebTableDataset is the BasicDataset implementation for JiraObjectDataset.
50913func (jod JiraObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
50914	return nil, false
50915}
50916
50917// AsSQLServerTableDataset is the BasicDataset implementation for JiraObjectDataset.
50918func (jod JiraObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
50919	return nil, false
50920}
50921
50922// AsSapEccResourceDataset is the BasicDataset implementation for JiraObjectDataset.
50923func (jod JiraObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
50924	return nil, false
50925}
50926
50927// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for JiraObjectDataset.
50928func (jod JiraObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
50929	return nil, false
50930}
50931
50932// AsSalesforceObjectDataset is the BasicDataset implementation for JiraObjectDataset.
50933func (jod JiraObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
50934	return nil, false
50935}
50936
50937// AsRelationalTableDataset is the BasicDataset implementation for JiraObjectDataset.
50938func (jod JiraObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
50939	return nil, false
50940}
50941
50942// AsAzureMySQLTableDataset is the BasicDataset implementation for JiraObjectDataset.
50943func (jod JiraObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
50944	return nil, false
50945}
50946
50947// AsOracleTableDataset is the BasicDataset implementation for JiraObjectDataset.
50948func (jod JiraObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
50949	return nil, false
50950}
50951
50952// AsODataResourceDataset is the BasicDataset implementation for JiraObjectDataset.
50953func (jod JiraObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
50954	return nil, false
50955}
50956
50957// AsMongoDbCollectionDataset is the BasicDataset implementation for JiraObjectDataset.
50958func (jod JiraObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
50959	return nil, false
50960}
50961
50962// AsFileShareDataset is the BasicDataset implementation for JiraObjectDataset.
50963func (jod JiraObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
50964	return nil, false
50965}
50966
50967// AsAzureDataLakeStoreDataset is the BasicDataset implementation for JiraObjectDataset.
50968func (jod JiraObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
50969	return nil, false
50970}
50971
50972// AsDynamicsEntityDataset is the BasicDataset implementation for JiraObjectDataset.
50973func (jod JiraObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
50974	return nil, false
50975}
50976
50977// AsDocumentDbCollectionDataset is the BasicDataset implementation for JiraObjectDataset.
50978func (jod JiraObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
50979	return nil, false
50980}
50981
50982// AsCustomDataset is the BasicDataset implementation for JiraObjectDataset.
50983func (jod JiraObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
50984	return nil, false
50985}
50986
50987// AsCassandraTableDataset is the BasicDataset implementation for JiraObjectDataset.
50988func (jod JiraObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
50989	return nil, false
50990}
50991
50992// AsAzureSQLDWTableDataset is the BasicDataset implementation for JiraObjectDataset.
50993func (jod JiraObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
50994	return nil, false
50995}
50996
50997// AsAzureSQLTableDataset is the BasicDataset implementation for JiraObjectDataset.
50998func (jod JiraObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
50999	return nil, false
51000}
51001
51002// AsAzureTableDataset is the BasicDataset implementation for JiraObjectDataset.
51003func (jod JiraObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
51004	return nil, false
51005}
51006
51007// AsAzureBlobDataset is the BasicDataset implementation for JiraObjectDataset.
51008func (jod JiraObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
51009	return nil, false
51010}
51011
51012// AsAmazonS3Dataset is the BasicDataset implementation for JiraObjectDataset.
51013func (jod JiraObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
51014	return nil, false
51015}
51016
51017// AsDataset is the BasicDataset implementation for JiraObjectDataset.
51018func (jod JiraObjectDataset) AsDataset() (*Dataset, bool) {
51019	return nil, false
51020}
51021
51022// AsBasicDataset is the BasicDataset implementation for JiraObjectDataset.
51023func (jod JiraObjectDataset) AsBasicDataset() (BasicDataset, bool) {
51024	return &jod, true
51025}
51026
51027// JiraSource a copy activity Jira Serivce source.
51028type JiraSource struct {
51029	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
51030	Query interface{} `json:"query,omitempty"`
51031	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
51032	AdditionalProperties map[string]interface{} `json:""`
51033	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
51034	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
51035	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
51036	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
51037	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
51038	Type TypeBasicCopySource `json:"type,omitempty"`
51039}
51040
51041// MarshalJSON is the custom marshaler for JiraSource.
51042func (js JiraSource) MarshalJSON() ([]byte, error) {
51043	js.Type = TypeJiraSource
51044	objectMap := make(map[string]interface{})
51045	objectMap["query"] = js.Query
51046	objectMap["sourceRetryCount"] = js.SourceRetryCount
51047	objectMap["sourceRetryWait"] = js.SourceRetryWait
51048	if js.Type != "" {
51049		objectMap["type"] = js.Type
51050	}
51051	for k, v := range js.AdditionalProperties {
51052		objectMap[k] = v
51053	}
51054	return json.Marshal(objectMap)
51055}
51056
51057// AsAmazonRedshiftSource is the BasicCopySource implementation for JiraSource.
51058func (js JiraSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
51059	return nil, false
51060}
51061
51062// AsResponsysSource is the BasicCopySource implementation for JiraSource.
51063func (js JiraSource) AsResponsysSource() (*ResponsysSource, bool) {
51064	return nil, false
51065}
51066
51067// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for JiraSource.
51068func (js JiraSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
51069	return nil, false
51070}
51071
51072// AsVerticaSource is the BasicCopySource implementation for JiraSource.
51073func (js JiraSource) AsVerticaSource() (*VerticaSource, bool) {
51074	return nil, false
51075}
51076
51077// AsNetezzaSource is the BasicCopySource implementation for JiraSource.
51078func (js JiraSource) AsNetezzaSource() (*NetezzaSource, bool) {
51079	return nil, false
51080}
51081
51082// AsZohoSource is the BasicCopySource implementation for JiraSource.
51083func (js JiraSource) AsZohoSource() (*ZohoSource, bool) {
51084	return nil, false
51085}
51086
51087// AsXeroSource is the BasicCopySource implementation for JiraSource.
51088func (js JiraSource) AsXeroSource() (*XeroSource, bool) {
51089	return nil, false
51090}
51091
51092// AsSquareSource is the BasicCopySource implementation for JiraSource.
51093func (js JiraSource) AsSquareSource() (*SquareSource, bool) {
51094	return nil, false
51095}
51096
51097// AsSparkSource is the BasicCopySource implementation for JiraSource.
51098func (js JiraSource) AsSparkSource() (*SparkSource, bool) {
51099	return nil, false
51100}
51101
51102// AsShopifySource is the BasicCopySource implementation for JiraSource.
51103func (js JiraSource) AsShopifySource() (*ShopifySource, bool) {
51104	return nil, false
51105}
51106
51107// AsServiceNowSource is the BasicCopySource implementation for JiraSource.
51108func (js JiraSource) AsServiceNowSource() (*ServiceNowSource, bool) {
51109	return nil, false
51110}
51111
51112// AsQuickBooksSource is the BasicCopySource implementation for JiraSource.
51113func (js JiraSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
51114	return nil, false
51115}
51116
51117// AsPrestoSource is the BasicCopySource implementation for JiraSource.
51118func (js JiraSource) AsPrestoSource() (*PrestoSource, bool) {
51119	return nil, false
51120}
51121
51122// AsPhoenixSource is the BasicCopySource implementation for JiraSource.
51123func (js JiraSource) AsPhoenixSource() (*PhoenixSource, bool) {
51124	return nil, false
51125}
51126
51127// AsPaypalSource is the BasicCopySource implementation for JiraSource.
51128func (js JiraSource) AsPaypalSource() (*PaypalSource, bool) {
51129	return nil, false
51130}
51131
51132// AsMarketoSource is the BasicCopySource implementation for JiraSource.
51133func (js JiraSource) AsMarketoSource() (*MarketoSource, bool) {
51134	return nil, false
51135}
51136
51137// AsMariaDBSource is the BasicCopySource implementation for JiraSource.
51138func (js JiraSource) AsMariaDBSource() (*MariaDBSource, bool) {
51139	return nil, false
51140}
51141
51142// AsMagentoSource is the BasicCopySource implementation for JiraSource.
51143func (js JiraSource) AsMagentoSource() (*MagentoSource, bool) {
51144	return nil, false
51145}
51146
51147// AsJiraSource is the BasicCopySource implementation for JiraSource.
51148func (js JiraSource) AsJiraSource() (*JiraSource, bool) {
51149	return &js, true
51150}
51151
51152// AsImpalaSource is the BasicCopySource implementation for JiraSource.
51153func (js JiraSource) AsImpalaSource() (*ImpalaSource, bool) {
51154	return nil, false
51155}
51156
51157// AsHubspotSource is the BasicCopySource implementation for JiraSource.
51158func (js JiraSource) AsHubspotSource() (*HubspotSource, bool) {
51159	return nil, false
51160}
51161
51162// AsHiveSource is the BasicCopySource implementation for JiraSource.
51163func (js JiraSource) AsHiveSource() (*HiveSource, bool) {
51164	return nil, false
51165}
51166
51167// AsHBaseSource is the BasicCopySource implementation for JiraSource.
51168func (js JiraSource) AsHBaseSource() (*HBaseSource, bool) {
51169	return nil, false
51170}
51171
51172// AsGreenplumSource is the BasicCopySource implementation for JiraSource.
51173func (js JiraSource) AsGreenplumSource() (*GreenplumSource, bool) {
51174	return nil, false
51175}
51176
51177// AsGoogleBigQuerySource is the BasicCopySource implementation for JiraSource.
51178func (js JiraSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
51179	return nil, false
51180}
51181
51182// AsEloquaSource is the BasicCopySource implementation for JiraSource.
51183func (js JiraSource) AsEloquaSource() (*EloquaSource, bool) {
51184	return nil, false
51185}
51186
51187// AsDrillSource is the BasicCopySource implementation for JiraSource.
51188func (js JiraSource) AsDrillSource() (*DrillSource, bool) {
51189	return nil, false
51190}
51191
51192// AsCouchbaseSource is the BasicCopySource implementation for JiraSource.
51193func (js JiraSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
51194	return nil, false
51195}
51196
51197// AsConcurSource is the BasicCopySource implementation for JiraSource.
51198func (js JiraSource) AsConcurSource() (*ConcurSource, bool) {
51199	return nil, false
51200}
51201
51202// AsAzurePostgreSQLSource is the BasicCopySource implementation for JiraSource.
51203func (js JiraSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
51204	return nil, false
51205}
51206
51207// AsAmazonMWSSource is the BasicCopySource implementation for JiraSource.
51208func (js JiraSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
51209	return nil, false
51210}
51211
51212// AsHTTPSource is the BasicCopySource implementation for JiraSource.
51213func (js JiraSource) AsHTTPSource() (*HTTPSource, bool) {
51214	return nil, false
51215}
51216
51217// AsAzureDataLakeStoreSource is the BasicCopySource implementation for JiraSource.
51218func (js JiraSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
51219	return nil, false
51220}
51221
51222// AsMongoDbSource is the BasicCopySource implementation for JiraSource.
51223func (js JiraSource) AsMongoDbSource() (*MongoDbSource, bool) {
51224	return nil, false
51225}
51226
51227// AsCassandraSource is the BasicCopySource implementation for JiraSource.
51228func (js JiraSource) AsCassandraSource() (*CassandraSource, bool) {
51229	return nil, false
51230}
51231
51232// AsWebSource is the BasicCopySource implementation for JiraSource.
51233func (js JiraSource) AsWebSource() (*WebSource, bool) {
51234	return nil, false
51235}
51236
51237// AsOracleSource is the BasicCopySource implementation for JiraSource.
51238func (js JiraSource) AsOracleSource() (*OracleSource, bool) {
51239	return nil, false
51240}
51241
51242// AsAzureMySQLSource is the BasicCopySource implementation for JiraSource.
51243func (js JiraSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
51244	return nil, false
51245}
51246
51247// AsHdfsSource is the BasicCopySource implementation for JiraSource.
51248func (js JiraSource) AsHdfsSource() (*HdfsSource, bool) {
51249	return nil, false
51250}
51251
51252// AsFileSystemSource is the BasicCopySource implementation for JiraSource.
51253func (js JiraSource) AsFileSystemSource() (*FileSystemSource, bool) {
51254	return nil, false
51255}
51256
51257// AsSQLDWSource is the BasicCopySource implementation for JiraSource.
51258func (js JiraSource) AsSQLDWSource() (*SQLDWSource, bool) {
51259	return nil, false
51260}
51261
51262// AsSQLSource is the BasicCopySource implementation for JiraSource.
51263func (js JiraSource) AsSQLSource() (*SQLSource, bool) {
51264	return nil, false
51265}
51266
51267// AsSapEccSource is the BasicCopySource implementation for JiraSource.
51268func (js JiraSource) AsSapEccSource() (*SapEccSource, bool) {
51269	return nil, false
51270}
51271
51272// AsSapCloudForCustomerSource is the BasicCopySource implementation for JiraSource.
51273func (js JiraSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
51274	return nil, false
51275}
51276
51277// AsSalesforceSource is the BasicCopySource implementation for JiraSource.
51278func (js JiraSource) AsSalesforceSource() (*SalesforceSource, bool) {
51279	return nil, false
51280}
51281
51282// AsRelationalSource is the BasicCopySource implementation for JiraSource.
51283func (js JiraSource) AsRelationalSource() (*RelationalSource, bool) {
51284	return nil, false
51285}
51286
51287// AsDynamicsSource is the BasicCopySource implementation for JiraSource.
51288func (js JiraSource) AsDynamicsSource() (*DynamicsSource, bool) {
51289	return nil, false
51290}
51291
51292// AsDocumentDbCollectionSource is the BasicCopySource implementation for JiraSource.
51293func (js JiraSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
51294	return nil, false
51295}
51296
51297// AsBlobSource is the BasicCopySource implementation for JiraSource.
51298func (js JiraSource) AsBlobSource() (*BlobSource, bool) {
51299	return nil, false
51300}
51301
51302// AsAzureTableSource is the BasicCopySource implementation for JiraSource.
51303func (js JiraSource) AsAzureTableSource() (*AzureTableSource, bool) {
51304	return nil, false
51305}
51306
51307// AsCopySource is the BasicCopySource implementation for JiraSource.
51308func (js JiraSource) AsCopySource() (*CopySource, bool) {
51309	return nil, false
51310}
51311
51312// AsBasicCopySource is the BasicCopySource implementation for JiraSource.
51313func (js JiraSource) AsBasicCopySource() (BasicCopySource, bool) {
51314	return &js, true
51315}
51316
51317// JSONFormat the data stored in JSON format.
51318type JSONFormat struct {
51319	// FilePattern - File pattern of JSON. To be more specific, the way of separating a collection of JSON objects. The default value is 'setOfObjects'. It is case-sensitive. Possible values include: 'SetOfObjects', 'ArrayOfObjects'
51320	FilePattern JSONFormatFilePattern `json:"filePattern,omitempty"`
51321	// NestingSeparator - The character used to separate nesting levels. Default value is '.' (dot). Type: string (or Expression with resultType string).
51322	NestingSeparator interface{} `json:"nestingSeparator,omitempty"`
51323	// EncodingName - The code page name of the preferred encoding. If not provided, the default value is 'utf-8', unless the byte order mark (BOM) denotes another Unicode encoding. The full list of supported values can be found in the 'Name' column of the table of encodings in the following reference: https://go.microsoft.com/fwlink/?linkid=861078. Type: string (or Expression with resultType string).
51324	EncodingName interface{} `json:"encodingName,omitempty"`
51325	// JSONNodeReference - The JSONPath of the JSON array element to be flattened. Example: "$.ArrayPath". Type: string (or Expression with resultType string).
51326	JSONNodeReference interface{} `json:"jsonNodeReference,omitempty"`
51327	// JSONPathDefinition - The JSONPath definition for each column mapping with a customized column name to extract data from JSON file. For fields under root object, start with "$"; for fields inside the array chosen by jsonNodeReference property, start from the array element. Example: {"Column1": "$.Column1Path", "Column2": "Column2PathInArray"}. Type: object (or Expression with resultType object).
51328	JSONPathDefinition interface{} `json:"jsonPathDefinition,omitempty"`
51329	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
51330	AdditionalProperties map[string]interface{} `json:""`
51331	// Serializer - Serializer. Type: string (or Expression with resultType string).
51332	Serializer interface{} `json:"serializer,omitempty"`
51333	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
51334	Deserializer interface{} `json:"deserializer,omitempty"`
51335	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
51336	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
51337}
51338
51339// MarshalJSON is the custom marshaler for JSONFormat.
51340func (jf JSONFormat) MarshalJSON() ([]byte, error) {
51341	jf.Type = TypeJSONFormat
51342	objectMap := make(map[string]interface{})
51343	if jf.FilePattern != "" {
51344		objectMap["filePattern"] = jf.FilePattern
51345	}
51346	objectMap["nestingSeparator"] = jf.NestingSeparator
51347	objectMap["encodingName"] = jf.EncodingName
51348	objectMap["jsonNodeReference"] = jf.JSONNodeReference
51349	objectMap["jsonPathDefinition"] = jf.JSONPathDefinition
51350	objectMap["serializer"] = jf.Serializer
51351	objectMap["deserializer"] = jf.Deserializer
51352	if jf.Type != "" {
51353		objectMap["type"] = jf.Type
51354	}
51355	for k, v := range jf.AdditionalProperties {
51356		objectMap[k] = v
51357	}
51358	return json.Marshal(objectMap)
51359}
51360
51361// AsParquetFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51362func (jf JSONFormat) AsParquetFormat() (*ParquetFormat, bool) {
51363	return nil, false
51364}
51365
51366// AsOrcFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51367func (jf JSONFormat) AsOrcFormat() (*OrcFormat, bool) {
51368	return nil, false
51369}
51370
51371// AsAvroFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51372func (jf JSONFormat) AsAvroFormat() (*AvroFormat, bool) {
51373	return nil, false
51374}
51375
51376// AsJSONFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51377func (jf JSONFormat) AsJSONFormat() (*JSONFormat, bool) {
51378	return &jf, true
51379}
51380
51381// AsTextFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51382func (jf JSONFormat) AsTextFormat() (*TextFormat, bool) {
51383	return nil, false
51384}
51385
51386// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51387func (jf JSONFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
51388	return nil, false
51389}
51390
51391// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for JSONFormat.
51392func (jf JSONFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
51393	return &jf, true
51394}
51395
51396// LinkedIntegrationRuntime the linked integration runtime information.
51397type LinkedIntegrationRuntime struct {
51398	// Name - The name of the linked integration runtime.
51399	Name *string `json:"name,omitempty"`
51400	// SubscriptionID - The subscription ID for which the linked integration runtime belong to.
51401	SubscriptionID *string `json:"subscriptionId,omitempty"`
51402	// DataFactoryName - The name of the data factory for which the linked integration runtime belong to.
51403	DataFactoryName *string `json:"dataFactoryName,omitempty"`
51404	// DataFactoryLocation - The location of the data factory for which the linked integration runtime belong to.
51405	DataFactoryLocation *string `json:"dataFactoryLocation,omitempty"`
51406	// CreateTime - The creating time of the linked integration runtime.
51407	CreateTime *date.Time `json:"createTime,omitempty"`
51408}
51409
51410// LinkedIntegrationRuntimeKey the base definition of a secret type.
51411type LinkedIntegrationRuntimeKey struct {
51412	// Key - Type of the secret.
51413	Key *SecureString `json:"key,omitempty"`
51414	// AuthorizationType - Possible values include: 'AuthorizationTypeLinkedIntegrationRuntimeProperties', 'AuthorizationTypeRBAC', 'AuthorizationTypeKey'
51415	AuthorizationType AuthorizationType `json:"authorizationType,omitempty"`
51416}
51417
51418// MarshalJSON is the custom marshaler for LinkedIntegrationRuntimeKey.
51419func (lirk LinkedIntegrationRuntimeKey) MarshalJSON() ([]byte, error) {
51420	lirk.AuthorizationType = AuthorizationTypeKey
51421	objectMap := make(map[string]interface{})
51422	if lirk.Key != nil {
51423		objectMap["key"] = lirk.Key
51424	}
51425	if lirk.AuthorizationType != "" {
51426		objectMap["authorizationType"] = lirk.AuthorizationType
51427	}
51428	return json.Marshal(objectMap)
51429}
51430
51431// AsLinkedIntegrationRuntimeRbac is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeKey.
51432func (lirk LinkedIntegrationRuntimeKey) AsLinkedIntegrationRuntimeRbac() (*LinkedIntegrationRuntimeRbac, bool) {
51433	return nil, false
51434}
51435
51436// AsLinkedIntegrationRuntimeKey is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeKey.
51437func (lirk LinkedIntegrationRuntimeKey) AsLinkedIntegrationRuntimeKey() (*LinkedIntegrationRuntimeKey, bool) {
51438	return &lirk, true
51439}
51440
51441// AsLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeKey.
51442func (lirk LinkedIntegrationRuntimeKey) AsLinkedIntegrationRuntimeProperties() (*LinkedIntegrationRuntimeProperties, bool) {
51443	return nil, false
51444}
51445
51446// AsBasicLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeKey.
51447func (lirk LinkedIntegrationRuntimeKey) AsBasicLinkedIntegrationRuntimeProperties() (BasicLinkedIntegrationRuntimeProperties, bool) {
51448	return &lirk, true
51449}
51450
51451// BasicLinkedIntegrationRuntimeProperties the base definition of a secret type.
51452type BasicLinkedIntegrationRuntimeProperties interface {
51453	AsLinkedIntegrationRuntimeRbac() (*LinkedIntegrationRuntimeRbac, bool)
51454	AsLinkedIntegrationRuntimeKey() (*LinkedIntegrationRuntimeKey, bool)
51455	AsLinkedIntegrationRuntimeProperties() (*LinkedIntegrationRuntimeProperties, bool)
51456}
51457
51458// LinkedIntegrationRuntimeProperties the base definition of a secret type.
51459type LinkedIntegrationRuntimeProperties struct {
51460	// AuthorizationType - Possible values include: 'AuthorizationTypeLinkedIntegrationRuntimeProperties', 'AuthorizationTypeRBAC', 'AuthorizationTypeKey'
51461	AuthorizationType AuthorizationType `json:"authorizationType,omitempty"`
51462}
51463
51464func unmarshalBasicLinkedIntegrationRuntimeProperties(body []byte) (BasicLinkedIntegrationRuntimeProperties, error) {
51465	var m map[string]interface{}
51466	err := json.Unmarshal(body, &m)
51467	if err != nil {
51468		return nil, err
51469	}
51470
51471	switch m["authorizationType"] {
51472	case string(AuthorizationTypeRBAC):
51473		var lirr LinkedIntegrationRuntimeRbac
51474		err := json.Unmarshal(body, &lirr)
51475		return lirr, err
51476	case string(AuthorizationTypeKey):
51477		var lirk LinkedIntegrationRuntimeKey
51478		err := json.Unmarshal(body, &lirk)
51479		return lirk, err
51480	default:
51481		var lirp LinkedIntegrationRuntimeProperties
51482		err := json.Unmarshal(body, &lirp)
51483		return lirp, err
51484	}
51485}
51486func unmarshalBasicLinkedIntegrationRuntimePropertiesArray(body []byte) ([]BasicLinkedIntegrationRuntimeProperties, error) {
51487	var rawMessages []*json.RawMessage
51488	err := json.Unmarshal(body, &rawMessages)
51489	if err != nil {
51490		return nil, err
51491	}
51492
51493	lirpArray := make([]BasicLinkedIntegrationRuntimeProperties, len(rawMessages))
51494
51495	for index, rawMessage := range rawMessages {
51496		lirp, err := unmarshalBasicLinkedIntegrationRuntimeProperties(*rawMessage)
51497		if err != nil {
51498			return nil, err
51499		}
51500		lirpArray[index] = lirp
51501	}
51502	return lirpArray, nil
51503}
51504
51505// MarshalJSON is the custom marshaler for LinkedIntegrationRuntimeProperties.
51506func (lirp LinkedIntegrationRuntimeProperties) MarshalJSON() ([]byte, error) {
51507	lirp.AuthorizationType = AuthorizationTypeLinkedIntegrationRuntimeProperties
51508	objectMap := make(map[string]interface{})
51509	if lirp.AuthorizationType != "" {
51510		objectMap["authorizationType"] = lirp.AuthorizationType
51511	}
51512	return json.Marshal(objectMap)
51513}
51514
51515// AsLinkedIntegrationRuntimeRbac is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeProperties.
51516func (lirp LinkedIntegrationRuntimeProperties) AsLinkedIntegrationRuntimeRbac() (*LinkedIntegrationRuntimeRbac, bool) {
51517	return nil, false
51518}
51519
51520// AsLinkedIntegrationRuntimeKey is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeProperties.
51521func (lirp LinkedIntegrationRuntimeProperties) AsLinkedIntegrationRuntimeKey() (*LinkedIntegrationRuntimeKey, bool) {
51522	return nil, false
51523}
51524
51525// AsLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeProperties.
51526func (lirp LinkedIntegrationRuntimeProperties) AsLinkedIntegrationRuntimeProperties() (*LinkedIntegrationRuntimeProperties, bool) {
51527	return &lirp, true
51528}
51529
51530// AsBasicLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeProperties.
51531func (lirp LinkedIntegrationRuntimeProperties) AsBasicLinkedIntegrationRuntimeProperties() (BasicLinkedIntegrationRuntimeProperties, bool) {
51532	return &lirp, true
51533}
51534
51535// LinkedIntegrationRuntimeRbac the base definition of a secret type.
51536type LinkedIntegrationRuntimeRbac struct {
51537	// ResourceID - The resource ID of the integration runtime to be shared.
51538	ResourceID *string `json:"resourceId,omitempty"`
51539	// AuthorizationType - Possible values include: 'AuthorizationTypeLinkedIntegrationRuntimeProperties', 'AuthorizationTypeRBAC', 'AuthorizationTypeKey'
51540	AuthorizationType AuthorizationType `json:"authorizationType,omitempty"`
51541}
51542
51543// MarshalJSON is the custom marshaler for LinkedIntegrationRuntimeRbac.
51544func (lirr LinkedIntegrationRuntimeRbac) MarshalJSON() ([]byte, error) {
51545	lirr.AuthorizationType = AuthorizationTypeRBAC
51546	objectMap := make(map[string]interface{})
51547	if lirr.ResourceID != nil {
51548		objectMap["resourceId"] = lirr.ResourceID
51549	}
51550	if lirr.AuthorizationType != "" {
51551		objectMap["authorizationType"] = lirr.AuthorizationType
51552	}
51553	return json.Marshal(objectMap)
51554}
51555
51556// AsLinkedIntegrationRuntimeRbac is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeRbac.
51557func (lirr LinkedIntegrationRuntimeRbac) AsLinkedIntegrationRuntimeRbac() (*LinkedIntegrationRuntimeRbac, bool) {
51558	return &lirr, true
51559}
51560
51561// AsLinkedIntegrationRuntimeKey is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeRbac.
51562func (lirr LinkedIntegrationRuntimeRbac) AsLinkedIntegrationRuntimeKey() (*LinkedIntegrationRuntimeKey, bool) {
51563	return nil, false
51564}
51565
51566// AsLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeRbac.
51567func (lirr LinkedIntegrationRuntimeRbac) AsLinkedIntegrationRuntimeProperties() (*LinkedIntegrationRuntimeProperties, bool) {
51568	return nil, false
51569}
51570
51571// AsBasicLinkedIntegrationRuntimeProperties is the BasicLinkedIntegrationRuntimeProperties implementation for LinkedIntegrationRuntimeRbac.
51572func (lirr LinkedIntegrationRuntimeRbac) AsBasicLinkedIntegrationRuntimeProperties() (BasicLinkedIntegrationRuntimeProperties, bool) {
51573	return &lirr, true
51574}
51575
51576// LinkedIntegrationRuntimeTypeProperties the base definition of a secret type.
51577type LinkedIntegrationRuntimeTypeProperties struct {
51578	LinkedInfo BasicLinkedIntegrationRuntimeProperties `json:"linkedInfo,omitempty"`
51579}
51580
51581// UnmarshalJSON is the custom unmarshaler for LinkedIntegrationRuntimeTypeProperties struct.
51582func (lirtp *LinkedIntegrationRuntimeTypeProperties) UnmarshalJSON(body []byte) error {
51583	var m map[string]*json.RawMessage
51584	err := json.Unmarshal(body, &m)
51585	if err != nil {
51586		return err
51587	}
51588	for k, v := range m {
51589		switch k {
51590		case "linkedInfo":
51591			if v != nil {
51592				linkedInfo, err := unmarshalBasicLinkedIntegrationRuntimeProperties(*v)
51593				if err != nil {
51594					return err
51595				}
51596				lirtp.LinkedInfo = linkedInfo
51597			}
51598		}
51599	}
51600
51601	return nil
51602}
51603
51604// BasicLinkedService the Azure Data Factory nested object which contains the information and credential which can be
51605// used to connect with related store or compute resource.
51606type BasicLinkedService interface {
51607	AsResponsysLinkedService() (*ResponsysLinkedService, bool)
51608	AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool)
51609	AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool)
51610	AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool)
51611	AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool)
51612	AsNetezzaLinkedService() (*NetezzaLinkedService, bool)
51613	AsVerticaLinkedService() (*VerticaLinkedService, bool)
51614	AsZohoLinkedService() (*ZohoLinkedService, bool)
51615	AsXeroLinkedService() (*XeroLinkedService, bool)
51616	AsSquareLinkedService() (*SquareLinkedService, bool)
51617	AsSparkLinkedService() (*SparkLinkedService, bool)
51618	AsShopifyLinkedService() (*ShopifyLinkedService, bool)
51619	AsServiceNowLinkedService() (*ServiceNowLinkedService, bool)
51620	AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool)
51621	AsPrestoLinkedService() (*PrestoLinkedService, bool)
51622	AsPhoenixLinkedService() (*PhoenixLinkedService, bool)
51623	AsPaypalLinkedService() (*PaypalLinkedService, bool)
51624	AsMarketoLinkedService() (*MarketoLinkedService, bool)
51625	AsMariaDBLinkedService() (*MariaDBLinkedService, bool)
51626	AsMagentoLinkedService() (*MagentoLinkedService, bool)
51627	AsJiraLinkedService() (*JiraLinkedService, bool)
51628	AsImpalaLinkedService() (*ImpalaLinkedService, bool)
51629	AsHubspotLinkedService() (*HubspotLinkedService, bool)
51630	AsHiveLinkedService() (*HiveLinkedService, bool)
51631	AsHBaseLinkedService() (*HBaseLinkedService, bool)
51632	AsGreenplumLinkedService() (*GreenplumLinkedService, bool)
51633	AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool)
51634	AsEloquaLinkedService() (*EloquaLinkedService, bool)
51635	AsDrillLinkedService() (*DrillLinkedService, bool)
51636	AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool)
51637	AsConcurLinkedService() (*ConcurLinkedService, bool)
51638	AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool)
51639	AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool)
51640	AsSapHanaLinkedService() (*SapHanaLinkedService, bool)
51641	AsSapBWLinkedService() (*SapBWLinkedService, bool)
51642	AsSftpServerLinkedService() (*SftpServerLinkedService, bool)
51643	AsFtpServerLinkedService() (*FtpServerLinkedService, bool)
51644	AsHTTPLinkedService() (*HTTPLinkedService, bool)
51645	AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool)
51646	AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool)
51647	AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool)
51648	AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool)
51649	AsSapEccLinkedService() (*SapEccLinkedService, bool)
51650	AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool)
51651	AsSalesforceLinkedService() (*SalesforceLinkedService, bool)
51652	AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool)
51653	AsMongoDbLinkedService() (*MongoDbLinkedService, bool)
51654	AsCassandraLinkedService() (*CassandraLinkedService, bool)
51655	AsWebLinkedService() (*WebLinkedService, bool)
51656	AsODataLinkedService() (*ODataLinkedService, bool)
51657	AsHdfsLinkedService() (*HdfsLinkedService, bool)
51658	AsOdbcLinkedService() (*OdbcLinkedService, bool)
51659	AsAzureMLLinkedService() (*AzureMLLinkedService, bool)
51660	AsTeradataLinkedService() (*TeradataLinkedService, bool)
51661	AsDb2LinkedService() (*Db2LinkedService, bool)
51662	AsSybaseLinkedService() (*SybaseLinkedService, bool)
51663	AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool)
51664	AsMySQLLinkedService() (*MySQLLinkedService, bool)
51665	AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool)
51666	AsOracleLinkedService() (*OracleLinkedService, bool)
51667	AsFileServerLinkedService() (*FileServerLinkedService, bool)
51668	AsHDInsightLinkedService() (*HDInsightLinkedService, bool)
51669	AsDynamicsLinkedService() (*DynamicsLinkedService, bool)
51670	AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool)
51671	AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool)
51672	AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool)
51673	AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool)
51674	AsSQLServerLinkedService() (*SQLServerLinkedService, bool)
51675	AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool)
51676	AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool)
51677	AsLinkedService() (*LinkedService, bool)
51678}
51679
51680// LinkedService the Azure Data Factory nested object which contains the information and credential which can be
51681// used to connect with related store or compute resource.
51682type LinkedService struct {
51683	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
51684	AdditionalProperties map[string]interface{} `json:""`
51685	// ConnectVia - The integration runtime reference.
51686	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
51687	// Description - Linked service description.
51688	Description *string `json:"description,omitempty"`
51689	// Parameters - Parameters for linked service.
51690	Parameters map[string]*ParameterSpecification `json:"parameters"`
51691	// Annotations - List of tags that can be used for describing the Dataset.
51692	Annotations *[]interface{} `json:"annotations,omitempty"`
51693	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
51694	Type TypeBasicLinkedService `json:"type,omitempty"`
51695}
51696
51697func unmarshalBasicLinkedService(body []byte) (BasicLinkedService, error) {
51698	var m map[string]interface{}
51699	err := json.Unmarshal(body, &m)
51700	if err != nil {
51701		return nil, err
51702	}
51703
51704	switch m["type"] {
51705	case string(TypeResponsys):
51706		var rls ResponsysLinkedService
51707		err := json.Unmarshal(body, &rls)
51708		return rls, err
51709	case string(TypeAzureDatabricks):
51710		var adls AzureDatabricksLinkedService
51711		err := json.Unmarshal(body, &adls)
51712		return adls, err
51713	case string(TypeAzureDataLakeAnalytics):
51714		var adlals AzureDataLakeAnalyticsLinkedService
51715		err := json.Unmarshal(body, &adlals)
51716		return adlals, err
51717	case string(TypeHDInsightOnDemand):
51718		var hiodls HDInsightOnDemandLinkedService
51719		err := json.Unmarshal(body, &hiodls)
51720		return hiodls, err
51721	case string(TypeSalesforceMarketingCloud):
51722		var smcls SalesforceMarketingCloudLinkedService
51723		err := json.Unmarshal(body, &smcls)
51724		return smcls, err
51725	case string(TypeNetezza):
51726		var nls NetezzaLinkedService
51727		err := json.Unmarshal(body, &nls)
51728		return nls, err
51729	case string(TypeVertica):
51730		var vls VerticaLinkedService
51731		err := json.Unmarshal(body, &vls)
51732		return vls, err
51733	case string(TypeZoho):
51734		var zls ZohoLinkedService
51735		err := json.Unmarshal(body, &zls)
51736		return zls, err
51737	case string(TypeXero):
51738		var xls XeroLinkedService
51739		err := json.Unmarshal(body, &xls)
51740		return xls, err
51741	case string(TypeSquare):
51742		var sls SquareLinkedService
51743		err := json.Unmarshal(body, &sls)
51744		return sls, err
51745	case string(TypeSpark):
51746		var sls SparkLinkedService
51747		err := json.Unmarshal(body, &sls)
51748		return sls, err
51749	case string(TypeShopify):
51750		var sls ShopifyLinkedService
51751		err := json.Unmarshal(body, &sls)
51752		return sls, err
51753	case string(TypeServiceNow):
51754		var snls ServiceNowLinkedService
51755		err := json.Unmarshal(body, &snls)
51756		return snls, err
51757	case string(TypeQuickBooks):
51758		var qbls QuickBooksLinkedService
51759		err := json.Unmarshal(body, &qbls)
51760		return qbls, err
51761	case string(TypePresto):
51762		var pls PrestoLinkedService
51763		err := json.Unmarshal(body, &pls)
51764		return pls, err
51765	case string(TypePhoenix):
51766		var pls PhoenixLinkedService
51767		err := json.Unmarshal(body, &pls)
51768		return pls, err
51769	case string(TypePaypal):
51770		var pls PaypalLinkedService
51771		err := json.Unmarshal(body, &pls)
51772		return pls, err
51773	case string(TypeMarketo):
51774		var mls MarketoLinkedService
51775		err := json.Unmarshal(body, &mls)
51776		return mls, err
51777	case string(TypeMariaDB):
51778		var mdls MariaDBLinkedService
51779		err := json.Unmarshal(body, &mdls)
51780		return mdls, err
51781	case string(TypeMagento):
51782		var mls MagentoLinkedService
51783		err := json.Unmarshal(body, &mls)
51784		return mls, err
51785	case string(TypeJira):
51786		var jls JiraLinkedService
51787		err := json.Unmarshal(body, &jls)
51788		return jls, err
51789	case string(TypeImpala):
51790		var ils ImpalaLinkedService
51791		err := json.Unmarshal(body, &ils)
51792		return ils, err
51793	case string(TypeHubspot):
51794		var hls HubspotLinkedService
51795		err := json.Unmarshal(body, &hls)
51796		return hls, err
51797	case string(TypeHive):
51798		var hls HiveLinkedService
51799		err := json.Unmarshal(body, &hls)
51800		return hls, err
51801	case string(TypeHBase):
51802		var hbls HBaseLinkedService
51803		err := json.Unmarshal(body, &hbls)
51804		return hbls, err
51805	case string(TypeGreenplum):
51806		var gls GreenplumLinkedService
51807		err := json.Unmarshal(body, &gls)
51808		return gls, err
51809	case string(TypeGoogleBigQuery):
51810		var gbqls GoogleBigQueryLinkedService
51811		err := json.Unmarshal(body, &gbqls)
51812		return gbqls, err
51813	case string(TypeEloqua):
51814		var els EloquaLinkedService
51815		err := json.Unmarshal(body, &els)
51816		return els, err
51817	case string(TypeDrill):
51818		var dls DrillLinkedService
51819		err := json.Unmarshal(body, &dls)
51820		return dls, err
51821	case string(TypeCouchbase):
51822		var cls CouchbaseLinkedService
51823		err := json.Unmarshal(body, &cls)
51824		return cls, err
51825	case string(TypeConcur):
51826		var cls ConcurLinkedService
51827		err := json.Unmarshal(body, &cls)
51828		return cls, err
51829	case string(TypeAzurePostgreSQL):
51830		var apsls AzurePostgreSQLLinkedService
51831		err := json.Unmarshal(body, &apsls)
51832		return apsls, err
51833	case string(TypeAmazonMWS):
51834		var amls AmazonMWSLinkedService
51835		err := json.Unmarshal(body, &amls)
51836		return amls, err
51837	case string(TypeSapHana):
51838		var shls SapHanaLinkedService
51839		err := json.Unmarshal(body, &shls)
51840		return shls, err
51841	case string(TypeSapBW):
51842		var sbls SapBWLinkedService
51843		err := json.Unmarshal(body, &sbls)
51844		return sbls, err
51845	case string(TypeSftp):
51846		var ssls SftpServerLinkedService
51847		err := json.Unmarshal(body, &ssls)
51848		return ssls, err
51849	case string(TypeFtpServer):
51850		var fsls FtpServerLinkedService
51851		err := json.Unmarshal(body, &fsls)
51852		return fsls, err
51853	case string(TypeHTTPServer):
51854		var hls HTTPLinkedService
51855		err := json.Unmarshal(body, &hls)
51856		return hls, err
51857	case string(TypeAzureSearch):
51858		var asls AzureSearchLinkedService
51859		err := json.Unmarshal(body, &asls)
51860		return asls, err
51861	case string(TypeCustomDataSource):
51862		var cdsls CustomDataSourceLinkedService
51863		err := json.Unmarshal(body, &cdsls)
51864		return cdsls, err
51865	case string(TypeAmazonRedshift):
51866		var arls AmazonRedshiftLinkedService
51867		err := json.Unmarshal(body, &arls)
51868		return arls, err
51869	case string(TypeAmazonS3):
51870		var asls AmazonS3LinkedService
51871		err := json.Unmarshal(body, &asls)
51872		return asls, err
51873	case string(TypeSapEcc):
51874		var sels SapEccLinkedService
51875		err := json.Unmarshal(body, &sels)
51876		return sels, err
51877	case string(TypeSapCloudForCustomer):
51878		var scfcls SapCloudForCustomerLinkedService
51879		err := json.Unmarshal(body, &scfcls)
51880		return scfcls, err
51881	case string(TypeSalesforce):
51882		var sls SalesforceLinkedService
51883		err := json.Unmarshal(body, &sls)
51884		return sls, err
51885	case string(TypeAzureDataLakeStore):
51886		var adlsls AzureDataLakeStoreLinkedService
51887		err := json.Unmarshal(body, &adlsls)
51888		return adlsls, err
51889	case string(TypeMongoDb):
51890		var mdls MongoDbLinkedService
51891		err := json.Unmarshal(body, &mdls)
51892		return mdls, err
51893	case string(TypeCassandra):
51894		var cls CassandraLinkedService
51895		err := json.Unmarshal(body, &cls)
51896		return cls, err
51897	case string(TypeWeb):
51898		var wls WebLinkedService
51899		err := json.Unmarshal(body, &wls)
51900		return wls, err
51901	case string(TypeOData):
51902		var odls ODataLinkedService
51903		err := json.Unmarshal(body, &odls)
51904		return odls, err
51905	case string(TypeHdfs):
51906		var hls HdfsLinkedService
51907		err := json.Unmarshal(body, &hls)
51908		return hls, err
51909	case string(TypeOdbc):
51910		var ols OdbcLinkedService
51911		err := json.Unmarshal(body, &ols)
51912		return ols, err
51913	case string(TypeAzureML):
51914		var amls AzureMLLinkedService
51915		err := json.Unmarshal(body, &amls)
51916		return amls, err
51917	case string(TypeTeradata):
51918		var TLSVar TeradataLinkedService
51919		err := json.Unmarshal(body, &TLSVar)
51920		return TLSVar, err
51921	case string(TypeDb2):
51922		var d2ls Db2LinkedService
51923		err := json.Unmarshal(body, &d2ls)
51924		return d2ls, err
51925	case string(TypeSybase):
51926		var sls SybaseLinkedService
51927		err := json.Unmarshal(body, &sls)
51928		return sls, err
51929	case string(TypePostgreSQL):
51930		var psls PostgreSQLLinkedService
51931		err := json.Unmarshal(body, &psls)
51932		return psls, err
51933	case string(TypeMySQL):
51934		var msls MySQLLinkedService
51935		err := json.Unmarshal(body, &msls)
51936		return msls, err
51937	case string(TypeAzureMySQL):
51938		var amsls AzureMySQLLinkedService
51939		err := json.Unmarshal(body, &amsls)
51940		return amsls, err
51941	case string(TypeOracle):
51942		var ols OracleLinkedService
51943		err := json.Unmarshal(body, &ols)
51944		return ols, err
51945	case string(TypeFileServer):
51946		var fsls FileServerLinkedService
51947		err := json.Unmarshal(body, &fsls)
51948		return fsls, err
51949	case string(TypeHDInsight):
51950		var hils HDInsightLinkedService
51951		err := json.Unmarshal(body, &hils)
51952		return hils, err
51953	case string(TypeDynamics):
51954		var dls DynamicsLinkedService
51955		err := json.Unmarshal(body, &dls)
51956		return dls, err
51957	case string(TypeCosmosDb):
51958		var cdls CosmosDbLinkedService
51959		err := json.Unmarshal(body, &cdls)
51960		return cdls, err
51961	case string(TypeAzureKeyVault):
51962		var akvls AzureKeyVaultLinkedService
51963		err := json.Unmarshal(body, &akvls)
51964		return akvls, err
51965	case string(TypeAzureBatch):
51966		var abls AzureBatchLinkedService
51967		err := json.Unmarshal(body, &abls)
51968		return abls, err
51969	case string(TypeAzureSQLDatabase):
51970		var asdls AzureSQLDatabaseLinkedService
51971		err := json.Unmarshal(body, &asdls)
51972		return asdls, err
51973	case string(TypeSQLServer):
51974		var ssls SQLServerLinkedService
51975		err := json.Unmarshal(body, &ssls)
51976		return ssls, err
51977	case string(TypeAzureSQLDW):
51978		var asdls AzureSQLDWLinkedService
51979		err := json.Unmarshal(body, &asdls)
51980		return asdls, err
51981	case string(TypeAzureStorage):
51982		var asls AzureStorageLinkedService
51983		err := json.Unmarshal(body, &asls)
51984		return asls, err
51985	default:
51986		var ls LinkedService
51987		err := json.Unmarshal(body, &ls)
51988		return ls, err
51989	}
51990}
51991func unmarshalBasicLinkedServiceArray(body []byte) ([]BasicLinkedService, error) {
51992	var rawMessages []*json.RawMessage
51993	err := json.Unmarshal(body, &rawMessages)
51994	if err != nil {
51995		return nil, err
51996	}
51997
51998	lsArray := make([]BasicLinkedService, len(rawMessages))
51999
52000	for index, rawMessage := range rawMessages {
52001		ls, err := unmarshalBasicLinkedService(*rawMessage)
52002		if err != nil {
52003			return nil, err
52004		}
52005		lsArray[index] = ls
52006	}
52007	return lsArray, nil
52008}
52009
52010// MarshalJSON is the custom marshaler for LinkedService.
52011func (ls LinkedService) MarshalJSON() ([]byte, error) {
52012	ls.Type = TypeLinkedService
52013	objectMap := make(map[string]interface{})
52014	if ls.ConnectVia != nil {
52015		objectMap["connectVia"] = ls.ConnectVia
52016	}
52017	if ls.Description != nil {
52018		objectMap["description"] = ls.Description
52019	}
52020	if ls.Parameters != nil {
52021		objectMap["parameters"] = ls.Parameters
52022	}
52023	if ls.Annotations != nil {
52024		objectMap["annotations"] = ls.Annotations
52025	}
52026	if ls.Type != "" {
52027		objectMap["type"] = ls.Type
52028	}
52029	for k, v := range ls.AdditionalProperties {
52030		objectMap[k] = v
52031	}
52032	return json.Marshal(objectMap)
52033}
52034
52035// AsResponsysLinkedService is the BasicLinkedService implementation for LinkedService.
52036func (ls LinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
52037	return nil, false
52038}
52039
52040// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for LinkedService.
52041func (ls LinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
52042	return nil, false
52043}
52044
52045// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for LinkedService.
52046func (ls LinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
52047	return nil, false
52048}
52049
52050// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for LinkedService.
52051func (ls LinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
52052	return nil, false
52053}
52054
52055// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for LinkedService.
52056func (ls LinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
52057	return nil, false
52058}
52059
52060// AsNetezzaLinkedService is the BasicLinkedService implementation for LinkedService.
52061func (ls LinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
52062	return nil, false
52063}
52064
52065// AsVerticaLinkedService is the BasicLinkedService implementation for LinkedService.
52066func (ls LinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
52067	return nil, false
52068}
52069
52070// AsZohoLinkedService is the BasicLinkedService implementation for LinkedService.
52071func (ls LinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
52072	return nil, false
52073}
52074
52075// AsXeroLinkedService is the BasicLinkedService implementation for LinkedService.
52076func (ls LinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
52077	return nil, false
52078}
52079
52080// AsSquareLinkedService is the BasicLinkedService implementation for LinkedService.
52081func (ls LinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
52082	return nil, false
52083}
52084
52085// AsSparkLinkedService is the BasicLinkedService implementation for LinkedService.
52086func (ls LinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
52087	return nil, false
52088}
52089
52090// AsShopifyLinkedService is the BasicLinkedService implementation for LinkedService.
52091func (ls LinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
52092	return nil, false
52093}
52094
52095// AsServiceNowLinkedService is the BasicLinkedService implementation for LinkedService.
52096func (ls LinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
52097	return nil, false
52098}
52099
52100// AsQuickBooksLinkedService is the BasicLinkedService implementation for LinkedService.
52101func (ls LinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
52102	return nil, false
52103}
52104
52105// AsPrestoLinkedService is the BasicLinkedService implementation for LinkedService.
52106func (ls LinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
52107	return nil, false
52108}
52109
52110// AsPhoenixLinkedService is the BasicLinkedService implementation for LinkedService.
52111func (ls LinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
52112	return nil, false
52113}
52114
52115// AsPaypalLinkedService is the BasicLinkedService implementation for LinkedService.
52116func (ls LinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
52117	return nil, false
52118}
52119
52120// AsMarketoLinkedService is the BasicLinkedService implementation for LinkedService.
52121func (ls LinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
52122	return nil, false
52123}
52124
52125// AsMariaDBLinkedService is the BasicLinkedService implementation for LinkedService.
52126func (ls LinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
52127	return nil, false
52128}
52129
52130// AsMagentoLinkedService is the BasicLinkedService implementation for LinkedService.
52131func (ls LinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
52132	return nil, false
52133}
52134
52135// AsJiraLinkedService is the BasicLinkedService implementation for LinkedService.
52136func (ls LinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
52137	return nil, false
52138}
52139
52140// AsImpalaLinkedService is the BasicLinkedService implementation for LinkedService.
52141func (ls LinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
52142	return nil, false
52143}
52144
52145// AsHubspotLinkedService is the BasicLinkedService implementation for LinkedService.
52146func (ls LinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
52147	return nil, false
52148}
52149
52150// AsHiveLinkedService is the BasicLinkedService implementation for LinkedService.
52151func (ls LinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
52152	return nil, false
52153}
52154
52155// AsHBaseLinkedService is the BasicLinkedService implementation for LinkedService.
52156func (ls LinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
52157	return nil, false
52158}
52159
52160// AsGreenplumLinkedService is the BasicLinkedService implementation for LinkedService.
52161func (ls LinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
52162	return nil, false
52163}
52164
52165// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for LinkedService.
52166func (ls LinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
52167	return nil, false
52168}
52169
52170// AsEloquaLinkedService is the BasicLinkedService implementation for LinkedService.
52171func (ls LinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
52172	return nil, false
52173}
52174
52175// AsDrillLinkedService is the BasicLinkedService implementation for LinkedService.
52176func (ls LinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
52177	return nil, false
52178}
52179
52180// AsCouchbaseLinkedService is the BasicLinkedService implementation for LinkedService.
52181func (ls LinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
52182	return nil, false
52183}
52184
52185// AsConcurLinkedService is the BasicLinkedService implementation for LinkedService.
52186func (ls LinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
52187	return nil, false
52188}
52189
52190// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for LinkedService.
52191func (ls LinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
52192	return nil, false
52193}
52194
52195// AsAmazonMWSLinkedService is the BasicLinkedService implementation for LinkedService.
52196func (ls LinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
52197	return nil, false
52198}
52199
52200// AsSapHanaLinkedService is the BasicLinkedService implementation for LinkedService.
52201func (ls LinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
52202	return nil, false
52203}
52204
52205// AsSapBWLinkedService is the BasicLinkedService implementation for LinkedService.
52206func (ls LinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
52207	return nil, false
52208}
52209
52210// AsSftpServerLinkedService is the BasicLinkedService implementation for LinkedService.
52211func (ls LinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
52212	return nil, false
52213}
52214
52215// AsFtpServerLinkedService is the BasicLinkedService implementation for LinkedService.
52216func (ls LinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
52217	return nil, false
52218}
52219
52220// AsHTTPLinkedService is the BasicLinkedService implementation for LinkedService.
52221func (ls LinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
52222	return nil, false
52223}
52224
52225// AsAzureSearchLinkedService is the BasicLinkedService implementation for LinkedService.
52226func (ls LinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
52227	return nil, false
52228}
52229
52230// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for LinkedService.
52231func (ls LinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
52232	return nil, false
52233}
52234
52235// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for LinkedService.
52236func (ls LinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
52237	return nil, false
52238}
52239
52240// AsAmazonS3LinkedService is the BasicLinkedService implementation for LinkedService.
52241func (ls LinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
52242	return nil, false
52243}
52244
52245// AsSapEccLinkedService is the BasicLinkedService implementation for LinkedService.
52246func (ls LinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
52247	return nil, false
52248}
52249
52250// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for LinkedService.
52251func (ls LinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
52252	return nil, false
52253}
52254
52255// AsSalesforceLinkedService is the BasicLinkedService implementation for LinkedService.
52256func (ls LinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
52257	return nil, false
52258}
52259
52260// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for LinkedService.
52261func (ls LinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
52262	return nil, false
52263}
52264
52265// AsMongoDbLinkedService is the BasicLinkedService implementation for LinkedService.
52266func (ls LinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
52267	return nil, false
52268}
52269
52270// AsCassandraLinkedService is the BasicLinkedService implementation for LinkedService.
52271func (ls LinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
52272	return nil, false
52273}
52274
52275// AsWebLinkedService is the BasicLinkedService implementation for LinkedService.
52276func (ls LinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
52277	return nil, false
52278}
52279
52280// AsODataLinkedService is the BasicLinkedService implementation for LinkedService.
52281func (ls LinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
52282	return nil, false
52283}
52284
52285// AsHdfsLinkedService is the BasicLinkedService implementation for LinkedService.
52286func (ls LinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
52287	return nil, false
52288}
52289
52290// AsOdbcLinkedService is the BasicLinkedService implementation for LinkedService.
52291func (ls LinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
52292	return nil, false
52293}
52294
52295// AsAzureMLLinkedService is the BasicLinkedService implementation for LinkedService.
52296func (ls LinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
52297	return nil, false
52298}
52299
52300// AsTeradataLinkedService is the BasicLinkedService implementation for LinkedService.
52301func (ls LinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
52302	return nil, false
52303}
52304
52305// AsDb2LinkedService is the BasicLinkedService implementation for LinkedService.
52306func (ls LinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
52307	return nil, false
52308}
52309
52310// AsSybaseLinkedService is the BasicLinkedService implementation for LinkedService.
52311func (ls LinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
52312	return nil, false
52313}
52314
52315// AsPostgreSQLLinkedService is the BasicLinkedService implementation for LinkedService.
52316func (ls LinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
52317	return nil, false
52318}
52319
52320// AsMySQLLinkedService is the BasicLinkedService implementation for LinkedService.
52321func (ls LinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
52322	return nil, false
52323}
52324
52325// AsAzureMySQLLinkedService is the BasicLinkedService implementation for LinkedService.
52326func (ls LinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
52327	return nil, false
52328}
52329
52330// AsOracleLinkedService is the BasicLinkedService implementation for LinkedService.
52331func (ls LinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
52332	return nil, false
52333}
52334
52335// AsFileServerLinkedService is the BasicLinkedService implementation for LinkedService.
52336func (ls LinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
52337	return nil, false
52338}
52339
52340// AsHDInsightLinkedService is the BasicLinkedService implementation for LinkedService.
52341func (ls LinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
52342	return nil, false
52343}
52344
52345// AsDynamicsLinkedService is the BasicLinkedService implementation for LinkedService.
52346func (ls LinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
52347	return nil, false
52348}
52349
52350// AsCosmosDbLinkedService is the BasicLinkedService implementation for LinkedService.
52351func (ls LinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
52352	return nil, false
52353}
52354
52355// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for LinkedService.
52356func (ls LinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
52357	return nil, false
52358}
52359
52360// AsAzureBatchLinkedService is the BasicLinkedService implementation for LinkedService.
52361func (ls LinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
52362	return nil, false
52363}
52364
52365// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for LinkedService.
52366func (ls LinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
52367	return nil, false
52368}
52369
52370// AsSQLServerLinkedService is the BasicLinkedService implementation for LinkedService.
52371func (ls LinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
52372	return nil, false
52373}
52374
52375// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for LinkedService.
52376func (ls LinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
52377	return nil, false
52378}
52379
52380// AsAzureStorageLinkedService is the BasicLinkedService implementation for LinkedService.
52381func (ls LinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
52382	return nil, false
52383}
52384
52385// AsLinkedService is the BasicLinkedService implementation for LinkedService.
52386func (ls LinkedService) AsLinkedService() (*LinkedService, bool) {
52387	return &ls, true
52388}
52389
52390// AsBasicLinkedService is the BasicLinkedService implementation for LinkedService.
52391func (ls LinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
52392	return &ls, true
52393}
52394
52395// LinkedServiceListResponse a list of linked service resources.
52396type LinkedServiceListResponse struct {
52397	autorest.Response `json:"-"`
52398	// Value - List of linked services.
52399	Value *[]LinkedServiceResource `json:"value,omitempty"`
52400	// NextLink - The link to the next page of results, if any remaining results exist.
52401	NextLink *string `json:"nextLink,omitempty"`
52402}
52403
52404// LinkedServiceListResponseIterator provides access to a complete listing of LinkedServiceResource values.
52405type LinkedServiceListResponseIterator struct {
52406	i    int
52407	page LinkedServiceListResponsePage
52408}
52409
52410// Next advances to the next value.  If there was an error making
52411// the request the iterator does not advance and the error is returned.
52412func (iter *LinkedServiceListResponseIterator) Next() error {
52413	iter.i++
52414	if iter.i < len(iter.page.Values()) {
52415		return nil
52416	}
52417	err := iter.page.Next()
52418	if err != nil {
52419		iter.i--
52420		return err
52421	}
52422	iter.i = 0
52423	return nil
52424}
52425
52426// NotDone returns true if the enumeration should be started or is not yet complete.
52427func (iter LinkedServiceListResponseIterator) NotDone() bool {
52428	return iter.page.NotDone() && iter.i < len(iter.page.Values())
52429}
52430
52431// Response returns the raw server response from the last page request.
52432func (iter LinkedServiceListResponseIterator) Response() LinkedServiceListResponse {
52433	return iter.page.Response()
52434}
52435
52436// Value returns the current value or a zero-initialized value if the
52437// iterator has advanced beyond the end of the collection.
52438func (iter LinkedServiceListResponseIterator) Value() LinkedServiceResource {
52439	if !iter.page.NotDone() {
52440		return LinkedServiceResource{}
52441	}
52442	return iter.page.Values()[iter.i]
52443}
52444
52445// IsEmpty returns true if the ListResult contains no values.
52446func (lslr LinkedServiceListResponse) IsEmpty() bool {
52447	return lslr.Value == nil || len(*lslr.Value) == 0
52448}
52449
52450// linkedServiceListResponsePreparer prepares a request to retrieve the next set of results.
52451// It returns nil if no more results exist.
52452func (lslr LinkedServiceListResponse) linkedServiceListResponsePreparer() (*http.Request, error) {
52453	if lslr.NextLink == nil || len(to.String(lslr.NextLink)) < 1 {
52454		return nil, nil
52455	}
52456	return autorest.Prepare(&http.Request{},
52457		autorest.AsJSON(),
52458		autorest.AsGet(),
52459		autorest.WithBaseURL(to.String(lslr.NextLink)))
52460}
52461
52462// LinkedServiceListResponsePage contains a page of LinkedServiceResource values.
52463type LinkedServiceListResponsePage struct {
52464	fn   func(LinkedServiceListResponse) (LinkedServiceListResponse, error)
52465	lslr LinkedServiceListResponse
52466}
52467
52468// Next advances to the next page of values.  If there was an error making
52469// the request the page does not advance and the error is returned.
52470func (page *LinkedServiceListResponsePage) Next() error {
52471	next, err := page.fn(page.lslr)
52472	if err != nil {
52473		return err
52474	}
52475	page.lslr = next
52476	return nil
52477}
52478
52479// NotDone returns true if the page enumeration should be started or is not yet complete.
52480func (page LinkedServiceListResponsePage) NotDone() bool {
52481	return !page.lslr.IsEmpty()
52482}
52483
52484// Response returns the raw server response from the last page request.
52485func (page LinkedServiceListResponsePage) Response() LinkedServiceListResponse {
52486	return page.lslr
52487}
52488
52489// Values returns the slice of values for the current page or nil if there are no values.
52490func (page LinkedServiceListResponsePage) Values() []LinkedServiceResource {
52491	if page.lslr.IsEmpty() {
52492		return nil
52493	}
52494	return *page.lslr.Value
52495}
52496
52497// LinkedServiceReference linked service reference type.
52498type LinkedServiceReference struct {
52499	// Type - Linked service reference type.
52500	Type *string `json:"type,omitempty"`
52501	// ReferenceName - Reference LinkedService name.
52502	ReferenceName *string `json:"referenceName,omitempty"`
52503	// Parameters - Arguments for LinkedService.
52504	Parameters map[string]interface{} `json:"parameters"`
52505}
52506
52507// MarshalJSON is the custom marshaler for LinkedServiceReference.
52508func (lsr LinkedServiceReference) MarshalJSON() ([]byte, error) {
52509	objectMap := make(map[string]interface{})
52510	if lsr.Type != nil {
52511		objectMap["type"] = lsr.Type
52512	}
52513	if lsr.ReferenceName != nil {
52514		objectMap["referenceName"] = lsr.ReferenceName
52515	}
52516	if lsr.Parameters != nil {
52517		objectMap["parameters"] = lsr.Parameters
52518	}
52519	return json.Marshal(objectMap)
52520}
52521
52522// LinkedServiceResource linked service resource type.
52523type LinkedServiceResource struct {
52524	autorest.Response `json:"-"`
52525	// Properties - Properties of linked service.
52526	Properties BasicLinkedService `json:"properties,omitempty"`
52527	// ID - The resource identifier.
52528	ID *string `json:"id,omitempty"`
52529	// Name - The resource name.
52530	Name *string `json:"name,omitempty"`
52531	// Type - The resource type.
52532	Type *string `json:"type,omitempty"`
52533	// Etag - Etag identifies change in the resource.
52534	Etag *string `json:"etag,omitempty"`
52535}
52536
52537// UnmarshalJSON is the custom unmarshaler for LinkedServiceResource struct.
52538func (lsr *LinkedServiceResource) UnmarshalJSON(body []byte) error {
52539	var m map[string]*json.RawMessage
52540	err := json.Unmarshal(body, &m)
52541	if err != nil {
52542		return err
52543	}
52544	for k, v := range m {
52545		switch k {
52546		case "properties":
52547			if v != nil {
52548				properties, err := unmarshalBasicLinkedService(*v)
52549				if err != nil {
52550					return err
52551				}
52552				lsr.Properties = properties
52553			}
52554		case "id":
52555			if v != nil {
52556				var ID string
52557				err = json.Unmarshal(*v, &ID)
52558				if err != nil {
52559					return err
52560				}
52561				lsr.ID = &ID
52562			}
52563		case "name":
52564			if v != nil {
52565				var name string
52566				err = json.Unmarshal(*v, &name)
52567				if err != nil {
52568					return err
52569				}
52570				lsr.Name = &name
52571			}
52572		case "type":
52573			if v != nil {
52574				var typeVar string
52575				err = json.Unmarshal(*v, &typeVar)
52576				if err != nil {
52577					return err
52578				}
52579				lsr.Type = &typeVar
52580			}
52581		case "etag":
52582			if v != nil {
52583				var etag string
52584				err = json.Unmarshal(*v, &etag)
52585				if err != nil {
52586					return err
52587				}
52588				lsr.Etag = &etag
52589			}
52590		}
52591	}
52592
52593	return nil
52594}
52595
52596// LookupActivity lookup activity.
52597type LookupActivity struct {
52598	// LookupActivityTypeProperties - Lookup activity properties.
52599	*LookupActivityTypeProperties `json:"typeProperties,omitempty"`
52600	// LinkedServiceName - Linked service reference.
52601	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
52602	// Policy - Activity policy.
52603	Policy *ActivityPolicy `json:"policy,omitempty"`
52604	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
52605	AdditionalProperties map[string]interface{} `json:""`
52606	// Name - Activity name.
52607	Name *string `json:"name,omitempty"`
52608	// Description - Activity description.
52609	Description *string `json:"description,omitempty"`
52610	// DependsOn - Activity depends on condition.
52611	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
52612	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
52613	Type TypeBasicActivity `json:"type,omitempty"`
52614}
52615
52616// MarshalJSON is the custom marshaler for LookupActivity.
52617func (la LookupActivity) MarshalJSON() ([]byte, error) {
52618	la.Type = TypeLookup
52619	objectMap := make(map[string]interface{})
52620	if la.LookupActivityTypeProperties != nil {
52621		objectMap["typeProperties"] = la.LookupActivityTypeProperties
52622	}
52623	if la.LinkedServiceName != nil {
52624		objectMap["linkedServiceName"] = la.LinkedServiceName
52625	}
52626	if la.Policy != nil {
52627		objectMap["policy"] = la.Policy
52628	}
52629	if la.Name != nil {
52630		objectMap["name"] = la.Name
52631	}
52632	if la.Description != nil {
52633		objectMap["description"] = la.Description
52634	}
52635	if la.DependsOn != nil {
52636		objectMap["dependsOn"] = la.DependsOn
52637	}
52638	if la.Type != "" {
52639		objectMap["type"] = la.Type
52640	}
52641	for k, v := range la.AdditionalProperties {
52642		objectMap[k] = v
52643	}
52644	return json.Marshal(objectMap)
52645}
52646
52647// AsDatabricksNotebookActivity is the BasicActivity implementation for LookupActivity.
52648func (la LookupActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
52649	return nil, false
52650}
52651
52652// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for LookupActivity.
52653func (la LookupActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
52654	return nil, false
52655}
52656
52657// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for LookupActivity.
52658func (la LookupActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
52659	return nil, false
52660}
52661
52662// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for LookupActivity.
52663func (la LookupActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
52664	return nil, false
52665}
52666
52667// AsGetMetadataActivity is the BasicActivity implementation for LookupActivity.
52668func (la LookupActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
52669	return nil, false
52670}
52671
52672// AsWebActivity is the BasicActivity implementation for LookupActivity.
52673func (la LookupActivity) AsWebActivity() (*WebActivity, bool) {
52674	return nil, false
52675}
52676
52677// AsLookupActivity is the BasicActivity implementation for LookupActivity.
52678func (la LookupActivity) AsLookupActivity() (*LookupActivity, bool) {
52679	return &la, true
52680}
52681
52682// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for LookupActivity.
52683func (la LookupActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
52684	return nil, false
52685}
52686
52687// AsCustomActivity is the BasicActivity implementation for LookupActivity.
52688func (la LookupActivity) AsCustomActivity() (*CustomActivity, bool) {
52689	return nil, false
52690}
52691
52692// AsExecuteSSISPackageActivity is the BasicActivity implementation for LookupActivity.
52693func (la LookupActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
52694	return nil, false
52695}
52696
52697// AsHDInsightSparkActivity is the BasicActivity implementation for LookupActivity.
52698func (la LookupActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
52699	return nil, false
52700}
52701
52702// AsHDInsightStreamingActivity is the BasicActivity implementation for LookupActivity.
52703func (la LookupActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
52704	return nil, false
52705}
52706
52707// AsHDInsightMapReduceActivity is the BasicActivity implementation for LookupActivity.
52708func (la LookupActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
52709	return nil, false
52710}
52711
52712// AsHDInsightPigActivity is the BasicActivity implementation for LookupActivity.
52713func (la LookupActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
52714	return nil, false
52715}
52716
52717// AsHDInsightHiveActivity is the BasicActivity implementation for LookupActivity.
52718func (la LookupActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
52719	return nil, false
52720}
52721
52722// AsCopyActivity is the BasicActivity implementation for LookupActivity.
52723func (la LookupActivity) AsCopyActivity() (*CopyActivity, bool) {
52724	return nil, false
52725}
52726
52727// AsExecutionActivity is the BasicActivity implementation for LookupActivity.
52728func (la LookupActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
52729	return nil, false
52730}
52731
52732// AsBasicExecutionActivity is the BasicActivity implementation for LookupActivity.
52733func (la LookupActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
52734	return &la, true
52735}
52736
52737// AsFilterActivity is the BasicActivity implementation for LookupActivity.
52738func (la LookupActivity) AsFilterActivity() (*FilterActivity, bool) {
52739	return nil, false
52740}
52741
52742// AsUntilActivity is the BasicActivity implementation for LookupActivity.
52743func (la LookupActivity) AsUntilActivity() (*UntilActivity, bool) {
52744	return nil, false
52745}
52746
52747// AsWaitActivity is the BasicActivity implementation for LookupActivity.
52748func (la LookupActivity) AsWaitActivity() (*WaitActivity, bool) {
52749	return nil, false
52750}
52751
52752// AsForEachActivity is the BasicActivity implementation for LookupActivity.
52753func (la LookupActivity) AsForEachActivity() (*ForEachActivity, bool) {
52754	return nil, false
52755}
52756
52757// AsIfConditionActivity is the BasicActivity implementation for LookupActivity.
52758func (la LookupActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
52759	return nil, false
52760}
52761
52762// AsExecutePipelineActivity is the BasicActivity implementation for LookupActivity.
52763func (la LookupActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
52764	return nil, false
52765}
52766
52767// AsControlActivity is the BasicActivity implementation for LookupActivity.
52768func (la LookupActivity) AsControlActivity() (*ControlActivity, bool) {
52769	return nil, false
52770}
52771
52772// AsBasicControlActivity is the BasicActivity implementation for LookupActivity.
52773func (la LookupActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
52774	return nil, false
52775}
52776
52777// AsActivity is the BasicActivity implementation for LookupActivity.
52778func (la LookupActivity) AsActivity() (*Activity, bool) {
52779	return nil, false
52780}
52781
52782// AsBasicActivity is the BasicActivity implementation for LookupActivity.
52783func (la LookupActivity) AsBasicActivity() (BasicActivity, bool) {
52784	return &la, true
52785}
52786
52787// UnmarshalJSON is the custom unmarshaler for LookupActivity struct.
52788func (la *LookupActivity) UnmarshalJSON(body []byte) error {
52789	var m map[string]*json.RawMessage
52790	err := json.Unmarshal(body, &m)
52791	if err != nil {
52792		return err
52793	}
52794	for k, v := range m {
52795		switch k {
52796		case "typeProperties":
52797			if v != nil {
52798				var lookupActivityTypeProperties LookupActivityTypeProperties
52799				err = json.Unmarshal(*v, &lookupActivityTypeProperties)
52800				if err != nil {
52801					return err
52802				}
52803				la.LookupActivityTypeProperties = &lookupActivityTypeProperties
52804			}
52805		case "linkedServiceName":
52806			if v != nil {
52807				var linkedServiceName LinkedServiceReference
52808				err = json.Unmarshal(*v, &linkedServiceName)
52809				if err != nil {
52810					return err
52811				}
52812				la.LinkedServiceName = &linkedServiceName
52813			}
52814		case "policy":
52815			if v != nil {
52816				var policy ActivityPolicy
52817				err = json.Unmarshal(*v, &policy)
52818				if err != nil {
52819					return err
52820				}
52821				la.Policy = &policy
52822			}
52823		default:
52824			if v != nil {
52825				var additionalProperties interface{}
52826				err = json.Unmarshal(*v, &additionalProperties)
52827				if err != nil {
52828					return err
52829				}
52830				if la.AdditionalProperties == nil {
52831					la.AdditionalProperties = make(map[string]interface{})
52832				}
52833				la.AdditionalProperties[k] = additionalProperties
52834			}
52835		case "name":
52836			if v != nil {
52837				var name string
52838				err = json.Unmarshal(*v, &name)
52839				if err != nil {
52840					return err
52841				}
52842				la.Name = &name
52843			}
52844		case "description":
52845			if v != nil {
52846				var description string
52847				err = json.Unmarshal(*v, &description)
52848				if err != nil {
52849					return err
52850				}
52851				la.Description = &description
52852			}
52853		case "dependsOn":
52854			if v != nil {
52855				var dependsOn []ActivityDependency
52856				err = json.Unmarshal(*v, &dependsOn)
52857				if err != nil {
52858					return err
52859				}
52860				la.DependsOn = &dependsOn
52861			}
52862		case "type":
52863			if v != nil {
52864				var typeVar TypeBasicActivity
52865				err = json.Unmarshal(*v, &typeVar)
52866				if err != nil {
52867					return err
52868				}
52869				la.Type = typeVar
52870			}
52871		}
52872	}
52873
52874	return nil
52875}
52876
52877// LookupActivityTypeProperties lookup activity properties.
52878type LookupActivityTypeProperties struct {
52879	// Source - Dataset-specific source properties, same as copy activity source.
52880	Source BasicCopySource `json:"source,omitempty"`
52881	// Dataset - Lookup activity dataset reference.
52882	Dataset *DatasetReference `json:"dataset,omitempty"`
52883	// FirstRowOnly - Whether to return first row or all rows. Default value is true. Type: boolean (or Expression with resultType boolean).
52884	FirstRowOnly interface{} `json:"firstRowOnly,omitempty"`
52885}
52886
52887// UnmarshalJSON is the custom unmarshaler for LookupActivityTypeProperties struct.
52888func (latp *LookupActivityTypeProperties) UnmarshalJSON(body []byte) error {
52889	var m map[string]*json.RawMessage
52890	err := json.Unmarshal(body, &m)
52891	if err != nil {
52892		return err
52893	}
52894	for k, v := range m {
52895		switch k {
52896		case "source":
52897			if v != nil {
52898				source, err := unmarshalBasicCopySource(*v)
52899				if err != nil {
52900					return err
52901				}
52902				latp.Source = source
52903			}
52904		case "dataset":
52905			if v != nil {
52906				var dataset DatasetReference
52907				err = json.Unmarshal(*v, &dataset)
52908				if err != nil {
52909					return err
52910				}
52911				latp.Dataset = &dataset
52912			}
52913		case "firstRowOnly":
52914			if v != nil {
52915				var firstRowOnly interface{}
52916				err = json.Unmarshal(*v, &firstRowOnly)
52917				if err != nil {
52918					return err
52919				}
52920				latp.FirstRowOnly = firstRowOnly
52921			}
52922		}
52923	}
52924
52925	return nil
52926}
52927
52928// MagentoLinkedService magento server linked service.
52929type MagentoLinkedService struct {
52930	// MagentoLinkedServiceTypeProperties - Magento server linked service properties.
52931	*MagentoLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
52932	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
52933	AdditionalProperties map[string]interface{} `json:""`
52934	// ConnectVia - The integration runtime reference.
52935	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
52936	// Description - Linked service description.
52937	Description *string `json:"description,omitempty"`
52938	// Parameters - Parameters for linked service.
52939	Parameters map[string]*ParameterSpecification `json:"parameters"`
52940	// Annotations - List of tags that can be used for describing the Dataset.
52941	Annotations *[]interface{} `json:"annotations,omitempty"`
52942	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
52943	Type TypeBasicLinkedService `json:"type,omitempty"`
52944}
52945
52946// MarshalJSON is the custom marshaler for MagentoLinkedService.
52947func (mls MagentoLinkedService) MarshalJSON() ([]byte, error) {
52948	mls.Type = TypeMagento
52949	objectMap := make(map[string]interface{})
52950	if mls.MagentoLinkedServiceTypeProperties != nil {
52951		objectMap["typeProperties"] = mls.MagentoLinkedServiceTypeProperties
52952	}
52953	if mls.ConnectVia != nil {
52954		objectMap["connectVia"] = mls.ConnectVia
52955	}
52956	if mls.Description != nil {
52957		objectMap["description"] = mls.Description
52958	}
52959	if mls.Parameters != nil {
52960		objectMap["parameters"] = mls.Parameters
52961	}
52962	if mls.Annotations != nil {
52963		objectMap["annotations"] = mls.Annotations
52964	}
52965	if mls.Type != "" {
52966		objectMap["type"] = mls.Type
52967	}
52968	for k, v := range mls.AdditionalProperties {
52969		objectMap[k] = v
52970	}
52971	return json.Marshal(objectMap)
52972}
52973
52974// AsResponsysLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
52975func (mls MagentoLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
52976	return nil, false
52977}
52978
52979// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
52980func (mls MagentoLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
52981	return nil, false
52982}
52983
52984// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
52985func (mls MagentoLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
52986	return nil, false
52987}
52988
52989// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
52990func (mls MagentoLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
52991	return nil, false
52992}
52993
52994// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
52995func (mls MagentoLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
52996	return nil, false
52997}
52998
52999// AsNetezzaLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53000func (mls MagentoLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
53001	return nil, false
53002}
53003
53004// AsVerticaLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53005func (mls MagentoLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
53006	return nil, false
53007}
53008
53009// AsZohoLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53010func (mls MagentoLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
53011	return nil, false
53012}
53013
53014// AsXeroLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53015func (mls MagentoLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
53016	return nil, false
53017}
53018
53019// AsSquareLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53020func (mls MagentoLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
53021	return nil, false
53022}
53023
53024// AsSparkLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53025func (mls MagentoLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
53026	return nil, false
53027}
53028
53029// AsShopifyLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53030func (mls MagentoLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
53031	return nil, false
53032}
53033
53034// AsServiceNowLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53035func (mls MagentoLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
53036	return nil, false
53037}
53038
53039// AsQuickBooksLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53040func (mls MagentoLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
53041	return nil, false
53042}
53043
53044// AsPrestoLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53045func (mls MagentoLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
53046	return nil, false
53047}
53048
53049// AsPhoenixLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53050func (mls MagentoLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
53051	return nil, false
53052}
53053
53054// AsPaypalLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53055func (mls MagentoLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
53056	return nil, false
53057}
53058
53059// AsMarketoLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53060func (mls MagentoLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
53061	return nil, false
53062}
53063
53064// AsMariaDBLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53065func (mls MagentoLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
53066	return nil, false
53067}
53068
53069// AsMagentoLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53070func (mls MagentoLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
53071	return &mls, true
53072}
53073
53074// AsJiraLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53075func (mls MagentoLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
53076	return nil, false
53077}
53078
53079// AsImpalaLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53080func (mls MagentoLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
53081	return nil, false
53082}
53083
53084// AsHubspotLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53085func (mls MagentoLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
53086	return nil, false
53087}
53088
53089// AsHiveLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53090func (mls MagentoLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
53091	return nil, false
53092}
53093
53094// AsHBaseLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53095func (mls MagentoLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
53096	return nil, false
53097}
53098
53099// AsGreenplumLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53100func (mls MagentoLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
53101	return nil, false
53102}
53103
53104// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53105func (mls MagentoLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
53106	return nil, false
53107}
53108
53109// AsEloquaLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53110func (mls MagentoLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
53111	return nil, false
53112}
53113
53114// AsDrillLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53115func (mls MagentoLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
53116	return nil, false
53117}
53118
53119// AsCouchbaseLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53120func (mls MagentoLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
53121	return nil, false
53122}
53123
53124// AsConcurLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53125func (mls MagentoLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
53126	return nil, false
53127}
53128
53129// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53130func (mls MagentoLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
53131	return nil, false
53132}
53133
53134// AsAmazonMWSLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53135func (mls MagentoLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
53136	return nil, false
53137}
53138
53139// AsSapHanaLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53140func (mls MagentoLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
53141	return nil, false
53142}
53143
53144// AsSapBWLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53145func (mls MagentoLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
53146	return nil, false
53147}
53148
53149// AsSftpServerLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53150func (mls MagentoLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
53151	return nil, false
53152}
53153
53154// AsFtpServerLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53155func (mls MagentoLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
53156	return nil, false
53157}
53158
53159// AsHTTPLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53160func (mls MagentoLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
53161	return nil, false
53162}
53163
53164// AsAzureSearchLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53165func (mls MagentoLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
53166	return nil, false
53167}
53168
53169// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53170func (mls MagentoLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
53171	return nil, false
53172}
53173
53174// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53175func (mls MagentoLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
53176	return nil, false
53177}
53178
53179// AsAmazonS3LinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53180func (mls MagentoLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
53181	return nil, false
53182}
53183
53184// AsSapEccLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53185func (mls MagentoLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
53186	return nil, false
53187}
53188
53189// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53190func (mls MagentoLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
53191	return nil, false
53192}
53193
53194// AsSalesforceLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53195func (mls MagentoLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
53196	return nil, false
53197}
53198
53199// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53200func (mls MagentoLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
53201	return nil, false
53202}
53203
53204// AsMongoDbLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53205func (mls MagentoLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
53206	return nil, false
53207}
53208
53209// AsCassandraLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53210func (mls MagentoLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
53211	return nil, false
53212}
53213
53214// AsWebLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53215func (mls MagentoLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
53216	return nil, false
53217}
53218
53219// AsODataLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53220func (mls MagentoLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
53221	return nil, false
53222}
53223
53224// AsHdfsLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53225func (mls MagentoLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
53226	return nil, false
53227}
53228
53229// AsOdbcLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53230func (mls MagentoLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
53231	return nil, false
53232}
53233
53234// AsAzureMLLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53235func (mls MagentoLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
53236	return nil, false
53237}
53238
53239// AsTeradataLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53240func (mls MagentoLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
53241	return nil, false
53242}
53243
53244// AsDb2LinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53245func (mls MagentoLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
53246	return nil, false
53247}
53248
53249// AsSybaseLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53250func (mls MagentoLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
53251	return nil, false
53252}
53253
53254// AsPostgreSQLLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53255func (mls MagentoLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
53256	return nil, false
53257}
53258
53259// AsMySQLLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53260func (mls MagentoLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
53261	return nil, false
53262}
53263
53264// AsAzureMySQLLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53265func (mls MagentoLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
53266	return nil, false
53267}
53268
53269// AsOracleLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53270func (mls MagentoLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
53271	return nil, false
53272}
53273
53274// AsFileServerLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53275func (mls MagentoLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
53276	return nil, false
53277}
53278
53279// AsHDInsightLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53280func (mls MagentoLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
53281	return nil, false
53282}
53283
53284// AsDynamicsLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53285func (mls MagentoLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
53286	return nil, false
53287}
53288
53289// AsCosmosDbLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53290func (mls MagentoLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
53291	return nil, false
53292}
53293
53294// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53295func (mls MagentoLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
53296	return nil, false
53297}
53298
53299// AsAzureBatchLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53300func (mls MagentoLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
53301	return nil, false
53302}
53303
53304// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53305func (mls MagentoLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
53306	return nil, false
53307}
53308
53309// AsSQLServerLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53310func (mls MagentoLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
53311	return nil, false
53312}
53313
53314// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53315func (mls MagentoLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
53316	return nil, false
53317}
53318
53319// AsAzureStorageLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53320func (mls MagentoLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
53321	return nil, false
53322}
53323
53324// AsLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53325func (mls MagentoLinkedService) AsLinkedService() (*LinkedService, bool) {
53326	return nil, false
53327}
53328
53329// AsBasicLinkedService is the BasicLinkedService implementation for MagentoLinkedService.
53330func (mls MagentoLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
53331	return &mls, true
53332}
53333
53334// UnmarshalJSON is the custom unmarshaler for MagentoLinkedService struct.
53335func (mls *MagentoLinkedService) UnmarshalJSON(body []byte) error {
53336	var m map[string]*json.RawMessage
53337	err := json.Unmarshal(body, &m)
53338	if err != nil {
53339		return err
53340	}
53341	for k, v := range m {
53342		switch k {
53343		case "typeProperties":
53344			if v != nil {
53345				var magentoLinkedServiceTypeProperties MagentoLinkedServiceTypeProperties
53346				err = json.Unmarshal(*v, &magentoLinkedServiceTypeProperties)
53347				if err != nil {
53348					return err
53349				}
53350				mls.MagentoLinkedServiceTypeProperties = &magentoLinkedServiceTypeProperties
53351			}
53352		default:
53353			if v != nil {
53354				var additionalProperties interface{}
53355				err = json.Unmarshal(*v, &additionalProperties)
53356				if err != nil {
53357					return err
53358				}
53359				if mls.AdditionalProperties == nil {
53360					mls.AdditionalProperties = make(map[string]interface{})
53361				}
53362				mls.AdditionalProperties[k] = additionalProperties
53363			}
53364		case "connectVia":
53365			if v != nil {
53366				var connectVia IntegrationRuntimeReference
53367				err = json.Unmarshal(*v, &connectVia)
53368				if err != nil {
53369					return err
53370				}
53371				mls.ConnectVia = &connectVia
53372			}
53373		case "description":
53374			if v != nil {
53375				var description string
53376				err = json.Unmarshal(*v, &description)
53377				if err != nil {
53378					return err
53379				}
53380				mls.Description = &description
53381			}
53382		case "parameters":
53383			if v != nil {
53384				var parameters map[string]*ParameterSpecification
53385				err = json.Unmarshal(*v, &parameters)
53386				if err != nil {
53387					return err
53388				}
53389				mls.Parameters = parameters
53390			}
53391		case "annotations":
53392			if v != nil {
53393				var annotations []interface{}
53394				err = json.Unmarshal(*v, &annotations)
53395				if err != nil {
53396					return err
53397				}
53398				mls.Annotations = &annotations
53399			}
53400		case "type":
53401			if v != nil {
53402				var typeVar TypeBasicLinkedService
53403				err = json.Unmarshal(*v, &typeVar)
53404				if err != nil {
53405					return err
53406				}
53407				mls.Type = typeVar
53408			}
53409		}
53410	}
53411
53412	return nil
53413}
53414
53415// MagentoLinkedServiceTypeProperties magento server linked service properties.
53416type MagentoLinkedServiceTypeProperties struct {
53417	// Host - The URL of the Magento instance. (i.e. 192.168.222.110/magento3)
53418	Host interface{} `json:"host,omitempty"`
53419	// AccessToken - The access token from Magento.
53420	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
53421	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
53422	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
53423	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
53424	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
53425	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
53426	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
53427	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
53428	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
53429}
53430
53431// UnmarshalJSON is the custom unmarshaler for MagentoLinkedServiceTypeProperties struct.
53432func (mlstp *MagentoLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
53433	var m map[string]*json.RawMessage
53434	err := json.Unmarshal(body, &m)
53435	if err != nil {
53436		return err
53437	}
53438	for k, v := range m {
53439		switch k {
53440		case "host":
53441			if v != nil {
53442				var host interface{}
53443				err = json.Unmarshal(*v, &host)
53444				if err != nil {
53445					return err
53446				}
53447				mlstp.Host = host
53448			}
53449		case "accessToken":
53450			if v != nil {
53451				accessToken, err := unmarshalBasicSecretBase(*v)
53452				if err != nil {
53453					return err
53454				}
53455				mlstp.AccessToken = accessToken
53456			}
53457		case "useEncryptedEndpoints":
53458			if v != nil {
53459				var useEncryptedEndpoints interface{}
53460				err = json.Unmarshal(*v, &useEncryptedEndpoints)
53461				if err != nil {
53462					return err
53463				}
53464				mlstp.UseEncryptedEndpoints = useEncryptedEndpoints
53465			}
53466		case "useHostVerification":
53467			if v != nil {
53468				var useHostVerification interface{}
53469				err = json.Unmarshal(*v, &useHostVerification)
53470				if err != nil {
53471					return err
53472				}
53473				mlstp.UseHostVerification = useHostVerification
53474			}
53475		case "usePeerVerification":
53476			if v != nil {
53477				var usePeerVerification interface{}
53478				err = json.Unmarshal(*v, &usePeerVerification)
53479				if err != nil {
53480					return err
53481				}
53482				mlstp.UsePeerVerification = usePeerVerification
53483			}
53484		case "encryptedCredential":
53485			if v != nil {
53486				var encryptedCredential interface{}
53487				err = json.Unmarshal(*v, &encryptedCredential)
53488				if err != nil {
53489					return err
53490				}
53491				mlstp.EncryptedCredential = encryptedCredential
53492			}
53493		}
53494	}
53495
53496	return nil
53497}
53498
53499// MagentoObjectDataset magento server dataset.
53500type MagentoObjectDataset struct {
53501	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
53502	AdditionalProperties map[string]interface{} `json:""`
53503	// Description - Dataset description.
53504	Description *string `json:"description,omitempty"`
53505	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
53506	Structure interface{} `json:"structure,omitempty"`
53507	// LinkedServiceName - Linked service reference.
53508	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
53509	// Parameters - Parameters for dataset.
53510	Parameters map[string]*ParameterSpecification `json:"parameters"`
53511	// Annotations - List of tags that can be used for describing the Dataset.
53512	Annotations *[]interface{} `json:"annotations,omitempty"`
53513	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
53514	Type TypeBasicDataset `json:"type,omitempty"`
53515}
53516
53517// MarshalJSON is the custom marshaler for MagentoObjectDataset.
53518func (mod MagentoObjectDataset) MarshalJSON() ([]byte, error) {
53519	mod.Type = TypeMagentoObject
53520	objectMap := make(map[string]interface{})
53521	if mod.Description != nil {
53522		objectMap["description"] = mod.Description
53523	}
53524	objectMap["structure"] = mod.Structure
53525	if mod.LinkedServiceName != nil {
53526		objectMap["linkedServiceName"] = mod.LinkedServiceName
53527	}
53528	if mod.Parameters != nil {
53529		objectMap["parameters"] = mod.Parameters
53530	}
53531	if mod.Annotations != nil {
53532		objectMap["annotations"] = mod.Annotations
53533	}
53534	if mod.Type != "" {
53535		objectMap["type"] = mod.Type
53536	}
53537	for k, v := range mod.AdditionalProperties {
53538		objectMap[k] = v
53539	}
53540	return json.Marshal(objectMap)
53541}
53542
53543// AsResponsysObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53544func (mod MagentoObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
53545	return nil, false
53546}
53547
53548// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53549func (mod MagentoObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
53550	return nil, false
53551}
53552
53553// AsVerticaTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53554func (mod MagentoObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
53555	return nil, false
53556}
53557
53558// AsNetezzaTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53559func (mod MagentoObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
53560	return nil, false
53561}
53562
53563// AsZohoObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53564func (mod MagentoObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
53565	return nil, false
53566}
53567
53568// AsXeroObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53569func (mod MagentoObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
53570	return nil, false
53571}
53572
53573// AsSquareObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53574func (mod MagentoObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
53575	return nil, false
53576}
53577
53578// AsSparkObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53579func (mod MagentoObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
53580	return nil, false
53581}
53582
53583// AsShopifyObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53584func (mod MagentoObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
53585	return nil, false
53586}
53587
53588// AsServiceNowObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53589func (mod MagentoObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
53590	return nil, false
53591}
53592
53593// AsQuickBooksObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53594func (mod MagentoObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
53595	return nil, false
53596}
53597
53598// AsPrestoObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53599func (mod MagentoObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
53600	return nil, false
53601}
53602
53603// AsPhoenixObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53604func (mod MagentoObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
53605	return nil, false
53606}
53607
53608// AsPaypalObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53609func (mod MagentoObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
53610	return nil, false
53611}
53612
53613// AsMarketoObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53614func (mod MagentoObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
53615	return nil, false
53616}
53617
53618// AsMariaDBTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53619func (mod MagentoObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
53620	return nil, false
53621}
53622
53623// AsMagentoObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53624func (mod MagentoObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
53625	return &mod, true
53626}
53627
53628// AsJiraObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53629func (mod MagentoObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
53630	return nil, false
53631}
53632
53633// AsImpalaObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53634func (mod MagentoObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
53635	return nil, false
53636}
53637
53638// AsHubspotObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53639func (mod MagentoObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
53640	return nil, false
53641}
53642
53643// AsHiveObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53644func (mod MagentoObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
53645	return nil, false
53646}
53647
53648// AsHBaseObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53649func (mod MagentoObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
53650	return nil, false
53651}
53652
53653// AsGreenplumTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53654func (mod MagentoObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
53655	return nil, false
53656}
53657
53658// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53659func (mod MagentoObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
53660	return nil, false
53661}
53662
53663// AsEloquaObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53664func (mod MagentoObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
53665	return nil, false
53666}
53667
53668// AsDrillTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53669func (mod MagentoObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
53670	return nil, false
53671}
53672
53673// AsCouchbaseTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53674func (mod MagentoObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
53675	return nil, false
53676}
53677
53678// AsConcurObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53679func (mod MagentoObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
53680	return nil, false
53681}
53682
53683// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53684func (mod MagentoObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
53685	return nil, false
53686}
53687
53688// AsAmazonMWSObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53689func (mod MagentoObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
53690	return nil, false
53691}
53692
53693// AsHTTPDataset is the BasicDataset implementation for MagentoObjectDataset.
53694func (mod MagentoObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
53695	return nil, false
53696}
53697
53698// AsAzureSearchIndexDataset is the BasicDataset implementation for MagentoObjectDataset.
53699func (mod MagentoObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
53700	return nil, false
53701}
53702
53703// AsWebTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53704func (mod MagentoObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
53705	return nil, false
53706}
53707
53708// AsSQLServerTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53709func (mod MagentoObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
53710	return nil, false
53711}
53712
53713// AsSapEccResourceDataset is the BasicDataset implementation for MagentoObjectDataset.
53714func (mod MagentoObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
53715	return nil, false
53716}
53717
53718// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for MagentoObjectDataset.
53719func (mod MagentoObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
53720	return nil, false
53721}
53722
53723// AsSalesforceObjectDataset is the BasicDataset implementation for MagentoObjectDataset.
53724func (mod MagentoObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
53725	return nil, false
53726}
53727
53728// AsRelationalTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53729func (mod MagentoObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
53730	return nil, false
53731}
53732
53733// AsAzureMySQLTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53734func (mod MagentoObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
53735	return nil, false
53736}
53737
53738// AsOracleTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53739func (mod MagentoObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
53740	return nil, false
53741}
53742
53743// AsODataResourceDataset is the BasicDataset implementation for MagentoObjectDataset.
53744func (mod MagentoObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
53745	return nil, false
53746}
53747
53748// AsMongoDbCollectionDataset is the BasicDataset implementation for MagentoObjectDataset.
53749func (mod MagentoObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
53750	return nil, false
53751}
53752
53753// AsFileShareDataset is the BasicDataset implementation for MagentoObjectDataset.
53754func (mod MagentoObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
53755	return nil, false
53756}
53757
53758// AsAzureDataLakeStoreDataset is the BasicDataset implementation for MagentoObjectDataset.
53759func (mod MagentoObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
53760	return nil, false
53761}
53762
53763// AsDynamicsEntityDataset is the BasicDataset implementation for MagentoObjectDataset.
53764func (mod MagentoObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
53765	return nil, false
53766}
53767
53768// AsDocumentDbCollectionDataset is the BasicDataset implementation for MagentoObjectDataset.
53769func (mod MagentoObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
53770	return nil, false
53771}
53772
53773// AsCustomDataset is the BasicDataset implementation for MagentoObjectDataset.
53774func (mod MagentoObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
53775	return nil, false
53776}
53777
53778// AsCassandraTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53779func (mod MagentoObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
53780	return nil, false
53781}
53782
53783// AsAzureSQLDWTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53784func (mod MagentoObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
53785	return nil, false
53786}
53787
53788// AsAzureSQLTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53789func (mod MagentoObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
53790	return nil, false
53791}
53792
53793// AsAzureTableDataset is the BasicDataset implementation for MagentoObjectDataset.
53794func (mod MagentoObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
53795	return nil, false
53796}
53797
53798// AsAzureBlobDataset is the BasicDataset implementation for MagentoObjectDataset.
53799func (mod MagentoObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
53800	return nil, false
53801}
53802
53803// AsAmazonS3Dataset is the BasicDataset implementation for MagentoObjectDataset.
53804func (mod MagentoObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
53805	return nil, false
53806}
53807
53808// AsDataset is the BasicDataset implementation for MagentoObjectDataset.
53809func (mod MagentoObjectDataset) AsDataset() (*Dataset, bool) {
53810	return nil, false
53811}
53812
53813// AsBasicDataset is the BasicDataset implementation for MagentoObjectDataset.
53814func (mod MagentoObjectDataset) AsBasicDataset() (BasicDataset, bool) {
53815	return &mod, true
53816}
53817
53818// MagentoSource a copy activity Magento server source.
53819type MagentoSource struct {
53820	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
53821	Query interface{} `json:"query,omitempty"`
53822	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
53823	AdditionalProperties map[string]interface{} `json:""`
53824	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
53825	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
53826	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
53827	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
53828	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
53829	Type TypeBasicCopySource `json:"type,omitempty"`
53830}
53831
53832// MarshalJSON is the custom marshaler for MagentoSource.
53833func (ms MagentoSource) MarshalJSON() ([]byte, error) {
53834	ms.Type = TypeMagentoSource
53835	objectMap := make(map[string]interface{})
53836	objectMap["query"] = ms.Query
53837	objectMap["sourceRetryCount"] = ms.SourceRetryCount
53838	objectMap["sourceRetryWait"] = ms.SourceRetryWait
53839	if ms.Type != "" {
53840		objectMap["type"] = ms.Type
53841	}
53842	for k, v := range ms.AdditionalProperties {
53843		objectMap[k] = v
53844	}
53845	return json.Marshal(objectMap)
53846}
53847
53848// AsAmazonRedshiftSource is the BasicCopySource implementation for MagentoSource.
53849func (ms MagentoSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
53850	return nil, false
53851}
53852
53853// AsResponsysSource is the BasicCopySource implementation for MagentoSource.
53854func (ms MagentoSource) AsResponsysSource() (*ResponsysSource, bool) {
53855	return nil, false
53856}
53857
53858// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for MagentoSource.
53859func (ms MagentoSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
53860	return nil, false
53861}
53862
53863// AsVerticaSource is the BasicCopySource implementation for MagentoSource.
53864func (ms MagentoSource) AsVerticaSource() (*VerticaSource, bool) {
53865	return nil, false
53866}
53867
53868// AsNetezzaSource is the BasicCopySource implementation for MagentoSource.
53869func (ms MagentoSource) AsNetezzaSource() (*NetezzaSource, bool) {
53870	return nil, false
53871}
53872
53873// AsZohoSource is the BasicCopySource implementation for MagentoSource.
53874func (ms MagentoSource) AsZohoSource() (*ZohoSource, bool) {
53875	return nil, false
53876}
53877
53878// AsXeroSource is the BasicCopySource implementation for MagentoSource.
53879func (ms MagentoSource) AsXeroSource() (*XeroSource, bool) {
53880	return nil, false
53881}
53882
53883// AsSquareSource is the BasicCopySource implementation for MagentoSource.
53884func (ms MagentoSource) AsSquareSource() (*SquareSource, bool) {
53885	return nil, false
53886}
53887
53888// AsSparkSource is the BasicCopySource implementation for MagentoSource.
53889func (ms MagentoSource) AsSparkSource() (*SparkSource, bool) {
53890	return nil, false
53891}
53892
53893// AsShopifySource is the BasicCopySource implementation for MagentoSource.
53894func (ms MagentoSource) AsShopifySource() (*ShopifySource, bool) {
53895	return nil, false
53896}
53897
53898// AsServiceNowSource is the BasicCopySource implementation for MagentoSource.
53899func (ms MagentoSource) AsServiceNowSource() (*ServiceNowSource, bool) {
53900	return nil, false
53901}
53902
53903// AsQuickBooksSource is the BasicCopySource implementation for MagentoSource.
53904func (ms MagentoSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
53905	return nil, false
53906}
53907
53908// AsPrestoSource is the BasicCopySource implementation for MagentoSource.
53909func (ms MagentoSource) AsPrestoSource() (*PrestoSource, bool) {
53910	return nil, false
53911}
53912
53913// AsPhoenixSource is the BasicCopySource implementation for MagentoSource.
53914func (ms MagentoSource) AsPhoenixSource() (*PhoenixSource, bool) {
53915	return nil, false
53916}
53917
53918// AsPaypalSource is the BasicCopySource implementation for MagentoSource.
53919func (ms MagentoSource) AsPaypalSource() (*PaypalSource, bool) {
53920	return nil, false
53921}
53922
53923// AsMarketoSource is the BasicCopySource implementation for MagentoSource.
53924func (ms MagentoSource) AsMarketoSource() (*MarketoSource, bool) {
53925	return nil, false
53926}
53927
53928// AsMariaDBSource is the BasicCopySource implementation for MagentoSource.
53929func (ms MagentoSource) AsMariaDBSource() (*MariaDBSource, bool) {
53930	return nil, false
53931}
53932
53933// AsMagentoSource is the BasicCopySource implementation for MagentoSource.
53934func (ms MagentoSource) AsMagentoSource() (*MagentoSource, bool) {
53935	return &ms, true
53936}
53937
53938// AsJiraSource is the BasicCopySource implementation for MagentoSource.
53939func (ms MagentoSource) AsJiraSource() (*JiraSource, bool) {
53940	return nil, false
53941}
53942
53943// AsImpalaSource is the BasicCopySource implementation for MagentoSource.
53944func (ms MagentoSource) AsImpalaSource() (*ImpalaSource, bool) {
53945	return nil, false
53946}
53947
53948// AsHubspotSource is the BasicCopySource implementation for MagentoSource.
53949func (ms MagentoSource) AsHubspotSource() (*HubspotSource, bool) {
53950	return nil, false
53951}
53952
53953// AsHiveSource is the BasicCopySource implementation for MagentoSource.
53954func (ms MagentoSource) AsHiveSource() (*HiveSource, bool) {
53955	return nil, false
53956}
53957
53958// AsHBaseSource is the BasicCopySource implementation for MagentoSource.
53959func (ms MagentoSource) AsHBaseSource() (*HBaseSource, bool) {
53960	return nil, false
53961}
53962
53963// AsGreenplumSource is the BasicCopySource implementation for MagentoSource.
53964func (ms MagentoSource) AsGreenplumSource() (*GreenplumSource, bool) {
53965	return nil, false
53966}
53967
53968// AsGoogleBigQuerySource is the BasicCopySource implementation for MagentoSource.
53969func (ms MagentoSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
53970	return nil, false
53971}
53972
53973// AsEloquaSource is the BasicCopySource implementation for MagentoSource.
53974func (ms MagentoSource) AsEloquaSource() (*EloquaSource, bool) {
53975	return nil, false
53976}
53977
53978// AsDrillSource is the BasicCopySource implementation for MagentoSource.
53979func (ms MagentoSource) AsDrillSource() (*DrillSource, bool) {
53980	return nil, false
53981}
53982
53983// AsCouchbaseSource is the BasicCopySource implementation for MagentoSource.
53984func (ms MagentoSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
53985	return nil, false
53986}
53987
53988// AsConcurSource is the BasicCopySource implementation for MagentoSource.
53989func (ms MagentoSource) AsConcurSource() (*ConcurSource, bool) {
53990	return nil, false
53991}
53992
53993// AsAzurePostgreSQLSource is the BasicCopySource implementation for MagentoSource.
53994func (ms MagentoSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
53995	return nil, false
53996}
53997
53998// AsAmazonMWSSource is the BasicCopySource implementation for MagentoSource.
53999func (ms MagentoSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
54000	return nil, false
54001}
54002
54003// AsHTTPSource is the BasicCopySource implementation for MagentoSource.
54004func (ms MagentoSource) AsHTTPSource() (*HTTPSource, bool) {
54005	return nil, false
54006}
54007
54008// AsAzureDataLakeStoreSource is the BasicCopySource implementation for MagentoSource.
54009func (ms MagentoSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
54010	return nil, false
54011}
54012
54013// AsMongoDbSource is the BasicCopySource implementation for MagentoSource.
54014func (ms MagentoSource) AsMongoDbSource() (*MongoDbSource, bool) {
54015	return nil, false
54016}
54017
54018// AsCassandraSource is the BasicCopySource implementation for MagentoSource.
54019func (ms MagentoSource) AsCassandraSource() (*CassandraSource, bool) {
54020	return nil, false
54021}
54022
54023// AsWebSource is the BasicCopySource implementation for MagentoSource.
54024func (ms MagentoSource) AsWebSource() (*WebSource, bool) {
54025	return nil, false
54026}
54027
54028// AsOracleSource is the BasicCopySource implementation for MagentoSource.
54029func (ms MagentoSource) AsOracleSource() (*OracleSource, bool) {
54030	return nil, false
54031}
54032
54033// AsAzureMySQLSource is the BasicCopySource implementation for MagentoSource.
54034func (ms MagentoSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
54035	return nil, false
54036}
54037
54038// AsHdfsSource is the BasicCopySource implementation for MagentoSource.
54039func (ms MagentoSource) AsHdfsSource() (*HdfsSource, bool) {
54040	return nil, false
54041}
54042
54043// AsFileSystemSource is the BasicCopySource implementation for MagentoSource.
54044func (ms MagentoSource) AsFileSystemSource() (*FileSystemSource, bool) {
54045	return nil, false
54046}
54047
54048// AsSQLDWSource is the BasicCopySource implementation for MagentoSource.
54049func (ms MagentoSource) AsSQLDWSource() (*SQLDWSource, bool) {
54050	return nil, false
54051}
54052
54053// AsSQLSource is the BasicCopySource implementation for MagentoSource.
54054func (ms MagentoSource) AsSQLSource() (*SQLSource, bool) {
54055	return nil, false
54056}
54057
54058// AsSapEccSource is the BasicCopySource implementation for MagentoSource.
54059func (ms MagentoSource) AsSapEccSource() (*SapEccSource, bool) {
54060	return nil, false
54061}
54062
54063// AsSapCloudForCustomerSource is the BasicCopySource implementation for MagentoSource.
54064func (ms MagentoSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
54065	return nil, false
54066}
54067
54068// AsSalesforceSource is the BasicCopySource implementation for MagentoSource.
54069func (ms MagentoSource) AsSalesforceSource() (*SalesforceSource, bool) {
54070	return nil, false
54071}
54072
54073// AsRelationalSource is the BasicCopySource implementation for MagentoSource.
54074func (ms MagentoSource) AsRelationalSource() (*RelationalSource, bool) {
54075	return nil, false
54076}
54077
54078// AsDynamicsSource is the BasicCopySource implementation for MagentoSource.
54079func (ms MagentoSource) AsDynamicsSource() (*DynamicsSource, bool) {
54080	return nil, false
54081}
54082
54083// AsDocumentDbCollectionSource is the BasicCopySource implementation for MagentoSource.
54084func (ms MagentoSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
54085	return nil, false
54086}
54087
54088// AsBlobSource is the BasicCopySource implementation for MagentoSource.
54089func (ms MagentoSource) AsBlobSource() (*BlobSource, bool) {
54090	return nil, false
54091}
54092
54093// AsAzureTableSource is the BasicCopySource implementation for MagentoSource.
54094func (ms MagentoSource) AsAzureTableSource() (*AzureTableSource, bool) {
54095	return nil, false
54096}
54097
54098// AsCopySource is the BasicCopySource implementation for MagentoSource.
54099func (ms MagentoSource) AsCopySource() (*CopySource, bool) {
54100	return nil, false
54101}
54102
54103// AsBasicCopySource is the BasicCopySource implementation for MagentoSource.
54104func (ms MagentoSource) AsBasicCopySource() (BasicCopySource, bool) {
54105	return &ms, true
54106}
54107
54108// ManagedIntegrationRuntime managed integration runtime, including managed elastic and managed dedicated
54109// integration runtimes.
54110type ManagedIntegrationRuntime struct {
54111	// State - Integration runtime state, only valid for managed dedicated integration runtime. Possible values include: 'Initial', 'Stopped', 'Started', 'Starting', 'Stopping', 'NeedRegistration', 'Online', 'Limited', 'Offline'
54112	State IntegrationRuntimeState `json:"state,omitempty"`
54113	// ManagedIntegrationRuntimeTypeProperties - Managed integration runtime properties.
54114	*ManagedIntegrationRuntimeTypeProperties `json:"typeProperties,omitempty"`
54115	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
54116	AdditionalProperties map[string]interface{} `json:""`
54117	// Description - Integration runtime description.
54118	Description *string `json:"description,omitempty"`
54119	// Type - Possible values include: 'TypeIntegrationRuntime', 'TypeSelfHosted', 'TypeManaged'
54120	Type TypeBasicIntegrationRuntime `json:"type,omitempty"`
54121}
54122
54123// MarshalJSON is the custom marshaler for ManagedIntegrationRuntime.
54124func (mir ManagedIntegrationRuntime) MarshalJSON() ([]byte, error) {
54125	mir.Type = TypeManaged
54126	objectMap := make(map[string]interface{})
54127	if mir.State != "" {
54128		objectMap["state"] = mir.State
54129	}
54130	if mir.ManagedIntegrationRuntimeTypeProperties != nil {
54131		objectMap["typeProperties"] = mir.ManagedIntegrationRuntimeTypeProperties
54132	}
54133	if mir.Description != nil {
54134		objectMap["description"] = mir.Description
54135	}
54136	if mir.Type != "" {
54137		objectMap["type"] = mir.Type
54138	}
54139	for k, v := range mir.AdditionalProperties {
54140		objectMap[k] = v
54141	}
54142	return json.Marshal(objectMap)
54143}
54144
54145// AsSelfHostedIntegrationRuntime is the BasicIntegrationRuntime implementation for ManagedIntegrationRuntime.
54146func (mir ManagedIntegrationRuntime) AsSelfHostedIntegrationRuntime() (*SelfHostedIntegrationRuntime, bool) {
54147	return nil, false
54148}
54149
54150// AsManagedIntegrationRuntime is the BasicIntegrationRuntime implementation for ManagedIntegrationRuntime.
54151func (mir ManagedIntegrationRuntime) AsManagedIntegrationRuntime() (*ManagedIntegrationRuntime, bool) {
54152	return &mir, true
54153}
54154
54155// AsIntegrationRuntime is the BasicIntegrationRuntime implementation for ManagedIntegrationRuntime.
54156func (mir ManagedIntegrationRuntime) AsIntegrationRuntime() (*IntegrationRuntime, bool) {
54157	return nil, false
54158}
54159
54160// AsBasicIntegrationRuntime is the BasicIntegrationRuntime implementation for ManagedIntegrationRuntime.
54161func (mir ManagedIntegrationRuntime) AsBasicIntegrationRuntime() (BasicIntegrationRuntime, bool) {
54162	return &mir, true
54163}
54164
54165// UnmarshalJSON is the custom unmarshaler for ManagedIntegrationRuntime struct.
54166func (mir *ManagedIntegrationRuntime) UnmarshalJSON(body []byte) error {
54167	var m map[string]*json.RawMessage
54168	err := json.Unmarshal(body, &m)
54169	if err != nil {
54170		return err
54171	}
54172	for k, v := range m {
54173		switch k {
54174		case "state":
54175			if v != nil {
54176				var state IntegrationRuntimeState
54177				err = json.Unmarshal(*v, &state)
54178				if err != nil {
54179					return err
54180				}
54181				mir.State = state
54182			}
54183		case "typeProperties":
54184			if v != nil {
54185				var managedIntegrationRuntimeTypeProperties ManagedIntegrationRuntimeTypeProperties
54186				err = json.Unmarshal(*v, &managedIntegrationRuntimeTypeProperties)
54187				if err != nil {
54188					return err
54189				}
54190				mir.ManagedIntegrationRuntimeTypeProperties = &managedIntegrationRuntimeTypeProperties
54191			}
54192		default:
54193			if v != nil {
54194				var additionalProperties interface{}
54195				err = json.Unmarshal(*v, &additionalProperties)
54196				if err != nil {
54197					return err
54198				}
54199				if mir.AdditionalProperties == nil {
54200					mir.AdditionalProperties = make(map[string]interface{})
54201				}
54202				mir.AdditionalProperties[k] = additionalProperties
54203			}
54204		case "description":
54205			if v != nil {
54206				var description string
54207				err = json.Unmarshal(*v, &description)
54208				if err != nil {
54209					return err
54210				}
54211				mir.Description = &description
54212			}
54213		case "type":
54214			if v != nil {
54215				var typeVar TypeBasicIntegrationRuntime
54216				err = json.Unmarshal(*v, &typeVar)
54217				if err != nil {
54218					return err
54219				}
54220				mir.Type = typeVar
54221			}
54222		}
54223	}
54224
54225	return nil
54226}
54227
54228// ManagedIntegrationRuntimeError error definition for managed integration runtime.
54229type ManagedIntegrationRuntimeError struct {
54230	// Time - The time when the error occurred.
54231	Time *date.Time `json:"time,omitempty"`
54232	// Code - Error code.
54233	Code *string `json:"code,omitempty"`
54234	// Parameters - Managed integration runtime error parameters.
54235	Parameters *[]string `json:"parameters,omitempty"`
54236	// Message - Error message.
54237	Message *string `json:"message,omitempty"`
54238}
54239
54240// ManagedIntegrationRuntimeNode properties of integration runtime node.
54241type ManagedIntegrationRuntimeNode struct {
54242	// NodeID - The managed integration runtime node id.
54243	NodeID *string `json:"nodeId,omitempty"`
54244	// Status - The managed integration runtime node status. Possible values include: 'ManagedIntegrationRuntimeNodeStatusStarting', 'ManagedIntegrationRuntimeNodeStatusAvailable', 'ManagedIntegrationRuntimeNodeStatusRecycling', 'ManagedIntegrationRuntimeNodeStatusUnavailable'
54245	Status ManagedIntegrationRuntimeNodeStatus `json:"status,omitempty"`
54246	// Errors - The errors that occurred on this integration runtime node.
54247	Errors *[]ManagedIntegrationRuntimeError `json:"errors,omitempty"`
54248}
54249
54250// ManagedIntegrationRuntimeOperationResult properties of managed integration runtime operation result.
54251type ManagedIntegrationRuntimeOperationResult struct {
54252	// Type - The operation type. Could be start or stop.
54253	Type *string `json:"type,omitempty"`
54254	// StartTime - The start time of the operation.
54255	StartTime *date.Time `json:"startTime,omitempty"`
54256	// Result - The operation result.
54257	Result *string `json:"result,omitempty"`
54258	// ErrorCode - The error code.
54259	ErrorCode *string `json:"errorCode,omitempty"`
54260	// Parameters - Managed integration runtime error parameters.
54261	Parameters *[]string `json:"parameters,omitempty"`
54262	// ActivityID - The activity id for the operation request.
54263	ActivityID *string `json:"activityId,omitempty"`
54264}
54265
54266// ManagedIntegrationRuntimeStatus managed integration runtime status.
54267type ManagedIntegrationRuntimeStatus struct {
54268	// ManagedIntegrationRuntimeStatusTypeProperties - Managed integration runtime status type properties.
54269	*ManagedIntegrationRuntimeStatusTypeProperties `json:"typeProperties,omitempty"`
54270	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
54271	AdditionalProperties map[string]interface{} `json:""`
54272	// DataFactoryName - The data factory name which the integration runtime belong to.
54273	DataFactoryName *string `json:"dataFactoryName,omitempty"`
54274	// State - The state of integration runtime. Possible values include: 'Initial', 'Stopped', 'Started', 'Starting', 'Stopping', 'NeedRegistration', 'Online', 'Limited', 'Offline'
54275	State IntegrationRuntimeState `json:"state,omitempty"`
54276	// Type - Possible values include: 'TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus', 'TypeBasicIntegrationRuntimeStatusTypeSelfHosted', 'TypeBasicIntegrationRuntimeStatusTypeManaged'
54277	Type TypeBasicIntegrationRuntimeStatus `json:"type,omitempty"`
54278}
54279
54280// MarshalJSON is the custom marshaler for ManagedIntegrationRuntimeStatus.
54281func (mirs ManagedIntegrationRuntimeStatus) MarshalJSON() ([]byte, error) {
54282	mirs.Type = TypeBasicIntegrationRuntimeStatusTypeManaged
54283	objectMap := make(map[string]interface{})
54284	if mirs.ManagedIntegrationRuntimeStatusTypeProperties != nil {
54285		objectMap["typeProperties"] = mirs.ManagedIntegrationRuntimeStatusTypeProperties
54286	}
54287	if mirs.DataFactoryName != nil {
54288		objectMap["dataFactoryName"] = mirs.DataFactoryName
54289	}
54290	if mirs.State != "" {
54291		objectMap["state"] = mirs.State
54292	}
54293	if mirs.Type != "" {
54294		objectMap["type"] = mirs.Type
54295	}
54296	for k, v := range mirs.AdditionalProperties {
54297		objectMap[k] = v
54298	}
54299	return json.Marshal(objectMap)
54300}
54301
54302// AsSelfHostedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for ManagedIntegrationRuntimeStatus.
54303func (mirs ManagedIntegrationRuntimeStatus) AsSelfHostedIntegrationRuntimeStatus() (*SelfHostedIntegrationRuntimeStatus, bool) {
54304	return nil, false
54305}
54306
54307// AsManagedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for ManagedIntegrationRuntimeStatus.
54308func (mirs ManagedIntegrationRuntimeStatus) AsManagedIntegrationRuntimeStatus() (*ManagedIntegrationRuntimeStatus, bool) {
54309	return &mirs, true
54310}
54311
54312// AsIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for ManagedIntegrationRuntimeStatus.
54313func (mirs ManagedIntegrationRuntimeStatus) AsIntegrationRuntimeStatus() (*IntegrationRuntimeStatus, bool) {
54314	return nil, false
54315}
54316
54317// AsBasicIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for ManagedIntegrationRuntimeStatus.
54318func (mirs ManagedIntegrationRuntimeStatus) AsBasicIntegrationRuntimeStatus() (BasicIntegrationRuntimeStatus, bool) {
54319	return &mirs, true
54320}
54321
54322// UnmarshalJSON is the custom unmarshaler for ManagedIntegrationRuntimeStatus struct.
54323func (mirs *ManagedIntegrationRuntimeStatus) UnmarshalJSON(body []byte) error {
54324	var m map[string]*json.RawMessage
54325	err := json.Unmarshal(body, &m)
54326	if err != nil {
54327		return err
54328	}
54329	for k, v := range m {
54330		switch k {
54331		case "typeProperties":
54332			if v != nil {
54333				var managedIntegrationRuntimeStatusTypeProperties ManagedIntegrationRuntimeStatusTypeProperties
54334				err = json.Unmarshal(*v, &managedIntegrationRuntimeStatusTypeProperties)
54335				if err != nil {
54336					return err
54337				}
54338				mirs.ManagedIntegrationRuntimeStatusTypeProperties = &managedIntegrationRuntimeStatusTypeProperties
54339			}
54340		default:
54341			if v != nil {
54342				var additionalProperties interface{}
54343				err = json.Unmarshal(*v, &additionalProperties)
54344				if err != nil {
54345					return err
54346				}
54347				if mirs.AdditionalProperties == nil {
54348					mirs.AdditionalProperties = make(map[string]interface{})
54349				}
54350				mirs.AdditionalProperties[k] = additionalProperties
54351			}
54352		case "dataFactoryName":
54353			if v != nil {
54354				var dataFactoryName string
54355				err = json.Unmarshal(*v, &dataFactoryName)
54356				if err != nil {
54357					return err
54358				}
54359				mirs.DataFactoryName = &dataFactoryName
54360			}
54361		case "state":
54362			if v != nil {
54363				var state IntegrationRuntimeState
54364				err = json.Unmarshal(*v, &state)
54365				if err != nil {
54366					return err
54367				}
54368				mirs.State = state
54369			}
54370		case "type":
54371			if v != nil {
54372				var typeVar TypeBasicIntegrationRuntimeStatus
54373				err = json.Unmarshal(*v, &typeVar)
54374				if err != nil {
54375					return err
54376				}
54377				mirs.Type = typeVar
54378			}
54379		}
54380	}
54381
54382	return nil
54383}
54384
54385// ManagedIntegrationRuntimeStatusTypeProperties managed integration runtime status type properties.
54386type ManagedIntegrationRuntimeStatusTypeProperties struct {
54387	// CreateTime - The time at which the integration runtime was created, in ISO8601 format.
54388	CreateTime *date.Time `json:"createTime,omitempty"`
54389	// Nodes - The list of nodes for managed integration runtime.
54390	Nodes *[]ManagedIntegrationRuntimeNode `json:"nodes,omitempty"`
54391	// OtherErrors - The errors that occurred on this integration runtime.
54392	OtherErrors *[]ManagedIntegrationRuntimeError `json:"otherErrors,omitempty"`
54393	// LastOperation - The last operation result that occurred on this integration runtime.
54394	LastOperation *ManagedIntegrationRuntimeOperationResult `json:"lastOperation,omitempty"`
54395}
54396
54397// ManagedIntegrationRuntimeTypeProperties managed integration runtime type properties.
54398type ManagedIntegrationRuntimeTypeProperties struct {
54399	// ComputeProperties - The compute resource for managed integration runtime.
54400	ComputeProperties *IntegrationRuntimeComputeProperties `json:"computeProperties,omitempty"`
54401	// SsisProperties - SSIS properties for managed integration runtime.
54402	SsisProperties *IntegrationRuntimeSsisProperties `json:"ssisProperties,omitempty"`
54403}
54404
54405// MariaDBLinkedService mariaDB server linked service.
54406type MariaDBLinkedService struct {
54407	// MariaDBLinkedServiceTypeProperties - MariaDB server linked service properties.
54408	*MariaDBLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
54409	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
54410	AdditionalProperties map[string]interface{} `json:""`
54411	// ConnectVia - The integration runtime reference.
54412	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
54413	// Description - Linked service description.
54414	Description *string `json:"description,omitempty"`
54415	// Parameters - Parameters for linked service.
54416	Parameters map[string]*ParameterSpecification `json:"parameters"`
54417	// Annotations - List of tags that can be used for describing the Dataset.
54418	Annotations *[]interface{} `json:"annotations,omitempty"`
54419	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
54420	Type TypeBasicLinkedService `json:"type,omitempty"`
54421}
54422
54423// MarshalJSON is the custom marshaler for MariaDBLinkedService.
54424func (mdls MariaDBLinkedService) MarshalJSON() ([]byte, error) {
54425	mdls.Type = TypeMariaDB
54426	objectMap := make(map[string]interface{})
54427	if mdls.MariaDBLinkedServiceTypeProperties != nil {
54428		objectMap["typeProperties"] = mdls.MariaDBLinkedServiceTypeProperties
54429	}
54430	if mdls.ConnectVia != nil {
54431		objectMap["connectVia"] = mdls.ConnectVia
54432	}
54433	if mdls.Description != nil {
54434		objectMap["description"] = mdls.Description
54435	}
54436	if mdls.Parameters != nil {
54437		objectMap["parameters"] = mdls.Parameters
54438	}
54439	if mdls.Annotations != nil {
54440		objectMap["annotations"] = mdls.Annotations
54441	}
54442	if mdls.Type != "" {
54443		objectMap["type"] = mdls.Type
54444	}
54445	for k, v := range mdls.AdditionalProperties {
54446		objectMap[k] = v
54447	}
54448	return json.Marshal(objectMap)
54449}
54450
54451// AsResponsysLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54452func (mdls MariaDBLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
54453	return nil, false
54454}
54455
54456// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54457func (mdls MariaDBLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
54458	return nil, false
54459}
54460
54461// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54462func (mdls MariaDBLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
54463	return nil, false
54464}
54465
54466// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54467func (mdls MariaDBLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
54468	return nil, false
54469}
54470
54471// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54472func (mdls MariaDBLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
54473	return nil, false
54474}
54475
54476// AsNetezzaLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54477func (mdls MariaDBLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
54478	return nil, false
54479}
54480
54481// AsVerticaLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54482func (mdls MariaDBLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
54483	return nil, false
54484}
54485
54486// AsZohoLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54487func (mdls MariaDBLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
54488	return nil, false
54489}
54490
54491// AsXeroLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54492func (mdls MariaDBLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
54493	return nil, false
54494}
54495
54496// AsSquareLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54497func (mdls MariaDBLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
54498	return nil, false
54499}
54500
54501// AsSparkLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54502func (mdls MariaDBLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
54503	return nil, false
54504}
54505
54506// AsShopifyLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54507func (mdls MariaDBLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
54508	return nil, false
54509}
54510
54511// AsServiceNowLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54512func (mdls MariaDBLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
54513	return nil, false
54514}
54515
54516// AsQuickBooksLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54517func (mdls MariaDBLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
54518	return nil, false
54519}
54520
54521// AsPrestoLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54522func (mdls MariaDBLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
54523	return nil, false
54524}
54525
54526// AsPhoenixLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54527func (mdls MariaDBLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
54528	return nil, false
54529}
54530
54531// AsPaypalLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54532func (mdls MariaDBLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
54533	return nil, false
54534}
54535
54536// AsMarketoLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54537func (mdls MariaDBLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
54538	return nil, false
54539}
54540
54541// AsMariaDBLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54542func (mdls MariaDBLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
54543	return &mdls, true
54544}
54545
54546// AsMagentoLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54547func (mdls MariaDBLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
54548	return nil, false
54549}
54550
54551// AsJiraLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54552func (mdls MariaDBLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
54553	return nil, false
54554}
54555
54556// AsImpalaLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54557func (mdls MariaDBLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
54558	return nil, false
54559}
54560
54561// AsHubspotLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54562func (mdls MariaDBLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
54563	return nil, false
54564}
54565
54566// AsHiveLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54567func (mdls MariaDBLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
54568	return nil, false
54569}
54570
54571// AsHBaseLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54572func (mdls MariaDBLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
54573	return nil, false
54574}
54575
54576// AsGreenplumLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54577func (mdls MariaDBLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
54578	return nil, false
54579}
54580
54581// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54582func (mdls MariaDBLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
54583	return nil, false
54584}
54585
54586// AsEloquaLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54587func (mdls MariaDBLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
54588	return nil, false
54589}
54590
54591// AsDrillLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54592func (mdls MariaDBLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
54593	return nil, false
54594}
54595
54596// AsCouchbaseLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54597func (mdls MariaDBLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
54598	return nil, false
54599}
54600
54601// AsConcurLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54602func (mdls MariaDBLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
54603	return nil, false
54604}
54605
54606// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54607func (mdls MariaDBLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
54608	return nil, false
54609}
54610
54611// AsAmazonMWSLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54612func (mdls MariaDBLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
54613	return nil, false
54614}
54615
54616// AsSapHanaLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54617func (mdls MariaDBLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
54618	return nil, false
54619}
54620
54621// AsSapBWLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54622func (mdls MariaDBLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
54623	return nil, false
54624}
54625
54626// AsSftpServerLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54627func (mdls MariaDBLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
54628	return nil, false
54629}
54630
54631// AsFtpServerLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54632func (mdls MariaDBLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
54633	return nil, false
54634}
54635
54636// AsHTTPLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54637func (mdls MariaDBLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
54638	return nil, false
54639}
54640
54641// AsAzureSearchLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54642func (mdls MariaDBLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
54643	return nil, false
54644}
54645
54646// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54647func (mdls MariaDBLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
54648	return nil, false
54649}
54650
54651// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54652func (mdls MariaDBLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
54653	return nil, false
54654}
54655
54656// AsAmazonS3LinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54657func (mdls MariaDBLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
54658	return nil, false
54659}
54660
54661// AsSapEccLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54662func (mdls MariaDBLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
54663	return nil, false
54664}
54665
54666// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54667func (mdls MariaDBLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
54668	return nil, false
54669}
54670
54671// AsSalesforceLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54672func (mdls MariaDBLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
54673	return nil, false
54674}
54675
54676// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54677func (mdls MariaDBLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
54678	return nil, false
54679}
54680
54681// AsMongoDbLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54682func (mdls MariaDBLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
54683	return nil, false
54684}
54685
54686// AsCassandraLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54687func (mdls MariaDBLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
54688	return nil, false
54689}
54690
54691// AsWebLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54692func (mdls MariaDBLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
54693	return nil, false
54694}
54695
54696// AsODataLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54697func (mdls MariaDBLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
54698	return nil, false
54699}
54700
54701// AsHdfsLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54702func (mdls MariaDBLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
54703	return nil, false
54704}
54705
54706// AsOdbcLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54707func (mdls MariaDBLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
54708	return nil, false
54709}
54710
54711// AsAzureMLLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54712func (mdls MariaDBLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
54713	return nil, false
54714}
54715
54716// AsTeradataLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54717func (mdls MariaDBLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
54718	return nil, false
54719}
54720
54721// AsDb2LinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54722func (mdls MariaDBLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
54723	return nil, false
54724}
54725
54726// AsSybaseLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54727func (mdls MariaDBLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
54728	return nil, false
54729}
54730
54731// AsPostgreSQLLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54732func (mdls MariaDBLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
54733	return nil, false
54734}
54735
54736// AsMySQLLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54737func (mdls MariaDBLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
54738	return nil, false
54739}
54740
54741// AsAzureMySQLLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54742func (mdls MariaDBLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
54743	return nil, false
54744}
54745
54746// AsOracleLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54747func (mdls MariaDBLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
54748	return nil, false
54749}
54750
54751// AsFileServerLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54752func (mdls MariaDBLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
54753	return nil, false
54754}
54755
54756// AsHDInsightLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54757func (mdls MariaDBLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
54758	return nil, false
54759}
54760
54761// AsDynamicsLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54762func (mdls MariaDBLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
54763	return nil, false
54764}
54765
54766// AsCosmosDbLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54767func (mdls MariaDBLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
54768	return nil, false
54769}
54770
54771// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54772func (mdls MariaDBLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
54773	return nil, false
54774}
54775
54776// AsAzureBatchLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54777func (mdls MariaDBLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
54778	return nil, false
54779}
54780
54781// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54782func (mdls MariaDBLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
54783	return nil, false
54784}
54785
54786// AsSQLServerLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54787func (mdls MariaDBLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
54788	return nil, false
54789}
54790
54791// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54792func (mdls MariaDBLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
54793	return nil, false
54794}
54795
54796// AsAzureStorageLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54797func (mdls MariaDBLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
54798	return nil, false
54799}
54800
54801// AsLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54802func (mdls MariaDBLinkedService) AsLinkedService() (*LinkedService, bool) {
54803	return nil, false
54804}
54805
54806// AsBasicLinkedService is the BasicLinkedService implementation for MariaDBLinkedService.
54807func (mdls MariaDBLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
54808	return &mdls, true
54809}
54810
54811// UnmarshalJSON is the custom unmarshaler for MariaDBLinkedService struct.
54812func (mdls *MariaDBLinkedService) UnmarshalJSON(body []byte) error {
54813	var m map[string]*json.RawMessage
54814	err := json.Unmarshal(body, &m)
54815	if err != nil {
54816		return err
54817	}
54818	for k, v := range m {
54819		switch k {
54820		case "typeProperties":
54821			if v != nil {
54822				var mariaDBLinkedServiceTypeProperties MariaDBLinkedServiceTypeProperties
54823				err = json.Unmarshal(*v, &mariaDBLinkedServiceTypeProperties)
54824				if err != nil {
54825					return err
54826				}
54827				mdls.MariaDBLinkedServiceTypeProperties = &mariaDBLinkedServiceTypeProperties
54828			}
54829		default:
54830			if v != nil {
54831				var additionalProperties interface{}
54832				err = json.Unmarshal(*v, &additionalProperties)
54833				if err != nil {
54834					return err
54835				}
54836				if mdls.AdditionalProperties == nil {
54837					mdls.AdditionalProperties = make(map[string]interface{})
54838				}
54839				mdls.AdditionalProperties[k] = additionalProperties
54840			}
54841		case "connectVia":
54842			if v != nil {
54843				var connectVia IntegrationRuntimeReference
54844				err = json.Unmarshal(*v, &connectVia)
54845				if err != nil {
54846					return err
54847				}
54848				mdls.ConnectVia = &connectVia
54849			}
54850		case "description":
54851			if v != nil {
54852				var description string
54853				err = json.Unmarshal(*v, &description)
54854				if err != nil {
54855					return err
54856				}
54857				mdls.Description = &description
54858			}
54859		case "parameters":
54860			if v != nil {
54861				var parameters map[string]*ParameterSpecification
54862				err = json.Unmarshal(*v, &parameters)
54863				if err != nil {
54864					return err
54865				}
54866				mdls.Parameters = parameters
54867			}
54868		case "annotations":
54869			if v != nil {
54870				var annotations []interface{}
54871				err = json.Unmarshal(*v, &annotations)
54872				if err != nil {
54873					return err
54874				}
54875				mdls.Annotations = &annotations
54876			}
54877		case "type":
54878			if v != nil {
54879				var typeVar TypeBasicLinkedService
54880				err = json.Unmarshal(*v, &typeVar)
54881				if err != nil {
54882					return err
54883				}
54884				mdls.Type = typeVar
54885			}
54886		}
54887	}
54888
54889	return nil
54890}
54891
54892// MariaDBLinkedServiceTypeProperties mariaDB server linked service properties.
54893type MariaDBLinkedServiceTypeProperties struct {
54894	// ConnectionString - An ODBC connection string.
54895	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
54896	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
54897	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
54898}
54899
54900// UnmarshalJSON is the custom unmarshaler for MariaDBLinkedServiceTypeProperties struct.
54901func (mdlstp *MariaDBLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
54902	var m map[string]*json.RawMessage
54903	err := json.Unmarshal(body, &m)
54904	if err != nil {
54905		return err
54906	}
54907	for k, v := range m {
54908		switch k {
54909		case "connectionString":
54910			if v != nil {
54911				connectionString, err := unmarshalBasicSecretBase(*v)
54912				if err != nil {
54913					return err
54914				}
54915				mdlstp.ConnectionString = connectionString
54916			}
54917		case "encryptedCredential":
54918			if v != nil {
54919				var encryptedCredential interface{}
54920				err = json.Unmarshal(*v, &encryptedCredential)
54921				if err != nil {
54922					return err
54923				}
54924				mdlstp.EncryptedCredential = encryptedCredential
54925			}
54926		}
54927	}
54928
54929	return nil
54930}
54931
54932// MariaDBSource a copy activity MariaDB server source.
54933type MariaDBSource struct {
54934	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
54935	Query interface{} `json:"query,omitempty"`
54936	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
54937	AdditionalProperties map[string]interface{} `json:""`
54938	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
54939	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
54940	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
54941	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
54942	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
54943	Type TypeBasicCopySource `json:"type,omitempty"`
54944}
54945
54946// MarshalJSON is the custom marshaler for MariaDBSource.
54947func (mds MariaDBSource) MarshalJSON() ([]byte, error) {
54948	mds.Type = TypeMariaDBSource
54949	objectMap := make(map[string]interface{})
54950	objectMap["query"] = mds.Query
54951	objectMap["sourceRetryCount"] = mds.SourceRetryCount
54952	objectMap["sourceRetryWait"] = mds.SourceRetryWait
54953	if mds.Type != "" {
54954		objectMap["type"] = mds.Type
54955	}
54956	for k, v := range mds.AdditionalProperties {
54957		objectMap[k] = v
54958	}
54959	return json.Marshal(objectMap)
54960}
54961
54962// AsAmazonRedshiftSource is the BasicCopySource implementation for MariaDBSource.
54963func (mds MariaDBSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
54964	return nil, false
54965}
54966
54967// AsResponsysSource is the BasicCopySource implementation for MariaDBSource.
54968func (mds MariaDBSource) AsResponsysSource() (*ResponsysSource, bool) {
54969	return nil, false
54970}
54971
54972// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for MariaDBSource.
54973func (mds MariaDBSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
54974	return nil, false
54975}
54976
54977// AsVerticaSource is the BasicCopySource implementation for MariaDBSource.
54978func (mds MariaDBSource) AsVerticaSource() (*VerticaSource, bool) {
54979	return nil, false
54980}
54981
54982// AsNetezzaSource is the BasicCopySource implementation for MariaDBSource.
54983func (mds MariaDBSource) AsNetezzaSource() (*NetezzaSource, bool) {
54984	return nil, false
54985}
54986
54987// AsZohoSource is the BasicCopySource implementation for MariaDBSource.
54988func (mds MariaDBSource) AsZohoSource() (*ZohoSource, bool) {
54989	return nil, false
54990}
54991
54992// AsXeroSource is the BasicCopySource implementation for MariaDBSource.
54993func (mds MariaDBSource) AsXeroSource() (*XeroSource, bool) {
54994	return nil, false
54995}
54996
54997// AsSquareSource is the BasicCopySource implementation for MariaDBSource.
54998func (mds MariaDBSource) AsSquareSource() (*SquareSource, bool) {
54999	return nil, false
55000}
55001
55002// AsSparkSource is the BasicCopySource implementation for MariaDBSource.
55003func (mds MariaDBSource) AsSparkSource() (*SparkSource, bool) {
55004	return nil, false
55005}
55006
55007// AsShopifySource is the BasicCopySource implementation for MariaDBSource.
55008func (mds MariaDBSource) AsShopifySource() (*ShopifySource, bool) {
55009	return nil, false
55010}
55011
55012// AsServiceNowSource is the BasicCopySource implementation for MariaDBSource.
55013func (mds MariaDBSource) AsServiceNowSource() (*ServiceNowSource, bool) {
55014	return nil, false
55015}
55016
55017// AsQuickBooksSource is the BasicCopySource implementation for MariaDBSource.
55018func (mds MariaDBSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
55019	return nil, false
55020}
55021
55022// AsPrestoSource is the BasicCopySource implementation for MariaDBSource.
55023func (mds MariaDBSource) AsPrestoSource() (*PrestoSource, bool) {
55024	return nil, false
55025}
55026
55027// AsPhoenixSource is the BasicCopySource implementation for MariaDBSource.
55028func (mds MariaDBSource) AsPhoenixSource() (*PhoenixSource, bool) {
55029	return nil, false
55030}
55031
55032// AsPaypalSource is the BasicCopySource implementation for MariaDBSource.
55033func (mds MariaDBSource) AsPaypalSource() (*PaypalSource, bool) {
55034	return nil, false
55035}
55036
55037// AsMarketoSource is the BasicCopySource implementation for MariaDBSource.
55038func (mds MariaDBSource) AsMarketoSource() (*MarketoSource, bool) {
55039	return nil, false
55040}
55041
55042// AsMariaDBSource is the BasicCopySource implementation for MariaDBSource.
55043func (mds MariaDBSource) AsMariaDBSource() (*MariaDBSource, bool) {
55044	return &mds, true
55045}
55046
55047// AsMagentoSource is the BasicCopySource implementation for MariaDBSource.
55048func (mds MariaDBSource) AsMagentoSource() (*MagentoSource, bool) {
55049	return nil, false
55050}
55051
55052// AsJiraSource is the BasicCopySource implementation for MariaDBSource.
55053func (mds MariaDBSource) AsJiraSource() (*JiraSource, bool) {
55054	return nil, false
55055}
55056
55057// AsImpalaSource is the BasicCopySource implementation for MariaDBSource.
55058func (mds MariaDBSource) AsImpalaSource() (*ImpalaSource, bool) {
55059	return nil, false
55060}
55061
55062// AsHubspotSource is the BasicCopySource implementation for MariaDBSource.
55063func (mds MariaDBSource) AsHubspotSource() (*HubspotSource, bool) {
55064	return nil, false
55065}
55066
55067// AsHiveSource is the BasicCopySource implementation for MariaDBSource.
55068func (mds MariaDBSource) AsHiveSource() (*HiveSource, bool) {
55069	return nil, false
55070}
55071
55072// AsHBaseSource is the BasicCopySource implementation for MariaDBSource.
55073func (mds MariaDBSource) AsHBaseSource() (*HBaseSource, bool) {
55074	return nil, false
55075}
55076
55077// AsGreenplumSource is the BasicCopySource implementation for MariaDBSource.
55078func (mds MariaDBSource) AsGreenplumSource() (*GreenplumSource, bool) {
55079	return nil, false
55080}
55081
55082// AsGoogleBigQuerySource is the BasicCopySource implementation for MariaDBSource.
55083func (mds MariaDBSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
55084	return nil, false
55085}
55086
55087// AsEloquaSource is the BasicCopySource implementation for MariaDBSource.
55088func (mds MariaDBSource) AsEloquaSource() (*EloquaSource, bool) {
55089	return nil, false
55090}
55091
55092// AsDrillSource is the BasicCopySource implementation for MariaDBSource.
55093func (mds MariaDBSource) AsDrillSource() (*DrillSource, bool) {
55094	return nil, false
55095}
55096
55097// AsCouchbaseSource is the BasicCopySource implementation for MariaDBSource.
55098func (mds MariaDBSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
55099	return nil, false
55100}
55101
55102// AsConcurSource is the BasicCopySource implementation for MariaDBSource.
55103func (mds MariaDBSource) AsConcurSource() (*ConcurSource, bool) {
55104	return nil, false
55105}
55106
55107// AsAzurePostgreSQLSource is the BasicCopySource implementation for MariaDBSource.
55108func (mds MariaDBSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
55109	return nil, false
55110}
55111
55112// AsAmazonMWSSource is the BasicCopySource implementation for MariaDBSource.
55113func (mds MariaDBSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
55114	return nil, false
55115}
55116
55117// AsHTTPSource is the BasicCopySource implementation for MariaDBSource.
55118func (mds MariaDBSource) AsHTTPSource() (*HTTPSource, bool) {
55119	return nil, false
55120}
55121
55122// AsAzureDataLakeStoreSource is the BasicCopySource implementation for MariaDBSource.
55123func (mds MariaDBSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
55124	return nil, false
55125}
55126
55127// AsMongoDbSource is the BasicCopySource implementation for MariaDBSource.
55128func (mds MariaDBSource) AsMongoDbSource() (*MongoDbSource, bool) {
55129	return nil, false
55130}
55131
55132// AsCassandraSource is the BasicCopySource implementation for MariaDBSource.
55133func (mds MariaDBSource) AsCassandraSource() (*CassandraSource, bool) {
55134	return nil, false
55135}
55136
55137// AsWebSource is the BasicCopySource implementation for MariaDBSource.
55138func (mds MariaDBSource) AsWebSource() (*WebSource, bool) {
55139	return nil, false
55140}
55141
55142// AsOracleSource is the BasicCopySource implementation for MariaDBSource.
55143func (mds MariaDBSource) AsOracleSource() (*OracleSource, bool) {
55144	return nil, false
55145}
55146
55147// AsAzureMySQLSource is the BasicCopySource implementation for MariaDBSource.
55148func (mds MariaDBSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
55149	return nil, false
55150}
55151
55152// AsHdfsSource is the BasicCopySource implementation for MariaDBSource.
55153func (mds MariaDBSource) AsHdfsSource() (*HdfsSource, bool) {
55154	return nil, false
55155}
55156
55157// AsFileSystemSource is the BasicCopySource implementation for MariaDBSource.
55158func (mds MariaDBSource) AsFileSystemSource() (*FileSystemSource, bool) {
55159	return nil, false
55160}
55161
55162// AsSQLDWSource is the BasicCopySource implementation for MariaDBSource.
55163func (mds MariaDBSource) AsSQLDWSource() (*SQLDWSource, bool) {
55164	return nil, false
55165}
55166
55167// AsSQLSource is the BasicCopySource implementation for MariaDBSource.
55168func (mds MariaDBSource) AsSQLSource() (*SQLSource, bool) {
55169	return nil, false
55170}
55171
55172// AsSapEccSource is the BasicCopySource implementation for MariaDBSource.
55173func (mds MariaDBSource) AsSapEccSource() (*SapEccSource, bool) {
55174	return nil, false
55175}
55176
55177// AsSapCloudForCustomerSource is the BasicCopySource implementation for MariaDBSource.
55178func (mds MariaDBSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
55179	return nil, false
55180}
55181
55182// AsSalesforceSource is the BasicCopySource implementation for MariaDBSource.
55183func (mds MariaDBSource) AsSalesforceSource() (*SalesforceSource, bool) {
55184	return nil, false
55185}
55186
55187// AsRelationalSource is the BasicCopySource implementation for MariaDBSource.
55188func (mds MariaDBSource) AsRelationalSource() (*RelationalSource, bool) {
55189	return nil, false
55190}
55191
55192// AsDynamicsSource is the BasicCopySource implementation for MariaDBSource.
55193func (mds MariaDBSource) AsDynamicsSource() (*DynamicsSource, bool) {
55194	return nil, false
55195}
55196
55197// AsDocumentDbCollectionSource is the BasicCopySource implementation for MariaDBSource.
55198func (mds MariaDBSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
55199	return nil, false
55200}
55201
55202// AsBlobSource is the BasicCopySource implementation for MariaDBSource.
55203func (mds MariaDBSource) AsBlobSource() (*BlobSource, bool) {
55204	return nil, false
55205}
55206
55207// AsAzureTableSource is the BasicCopySource implementation for MariaDBSource.
55208func (mds MariaDBSource) AsAzureTableSource() (*AzureTableSource, bool) {
55209	return nil, false
55210}
55211
55212// AsCopySource is the BasicCopySource implementation for MariaDBSource.
55213func (mds MariaDBSource) AsCopySource() (*CopySource, bool) {
55214	return nil, false
55215}
55216
55217// AsBasicCopySource is the BasicCopySource implementation for MariaDBSource.
55218func (mds MariaDBSource) AsBasicCopySource() (BasicCopySource, bool) {
55219	return &mds, true
55220}
55221
55222// MariaDBTableDataset mariaDB server dataset.
55223type MariaDBTableDataset struct {
55224	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
55225	AdditionalProperties map[string]interface{} `json:""`
55226	// Description - Dataset description.
55227	Description *string `json:"description,omitempty"`
55228	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
55229	Structure interface{} `json:"structure,omitempty"`
55230	// LinkedServiceName - Linked service reference.
55231	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
55232	// Parameters - Parameters for dataset.
55233	Parameters map[string]*ParameterSpecification `json:"parameters"`
55234	// Annotations - List of tags that can be used for describing the Dataset.
55235	Annotations *[]interface{} `json:"annotations,omitempty"`
55236	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
55237	Type TypeBasicDataset `json:"type,omitempty"`
55238}
55239
55240// MarshalJSON is the custom marshaler for MariaDBTableDataset.
55241func (mdtd MariaDBTableDataset) MarshalJSON() ([]byte, error) {
55242	mdtd.Type = TypeMariaDBTable
55243	objectMap := make(map[string]interface{})
55244	if mdtd.Description != nil {
55245		objectMap["description"] = mdtd.Description
55246	}
55247	objectMap["structure"] = mdtd.Structure
55248	if mdtd.LinkedServiceName != nil {
55249		objectMap["linkedServiceName"] = mdtd.LinkedServiceName
55250	}
55251	if mdtd.Parameters != nil {
55252		objectMap["parameters"] = mdtd.Parameters
55253	}
55254	if mdtd.Annotations != nil {
55255		objectMap["annotations"] = mdtd.Annotations
55256	}
55257	if mdtd.Type != "" {
55258		objectMap["type"] = mdtd.Type
55259	}
55260	for k, v := range mdtd.AdditionalProperties {
55261		objectMap[k] = v
55262	}
55263	return json.Marshal(objectMap)
55264}
55265
55266// AsResponsysObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55267func (mdtd MariaDBTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
55268	return nil, false
55269}
55270
55271// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55272func (mdtd MariaDBTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
55273	return nil, false
55274}
55275
55276// AsVerticaTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55277func (mdtd MariaDBTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
55278	return nil, false
55279}
55280
55281// AsNetezzaTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55282func (mdtd MariaDBTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
55283	return nil, false
55284}
55285
55286// AsZohoObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55287func (mdtd MariaDBTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
55288	return nil, false
55289}
55290
55291// AsXeroObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55292func (mdtd MariaDBTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
55293	return nil, false
55294}
55295
55296// AsSquareObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55297func (mdtd MariaDBTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
55298	return nil, false
55299}
55300
55301// AsSparkObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55302func (mdtd MariaDBTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
55303	return nil, false
55304}
55305
55306// AsShopifyObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55307func (mdtd MariaDBTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
55308	return nil, false
55309}
55310
55311// AsServiceNowObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55312func (mdtd MariaDBTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
55313	return nil, false
55314}
55315
55316// AsQuickBooksObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55317func (mdtd MariaDBTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
55318	return nil, false
55319}
55320
55321// AsPrestoObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55322func (mdtd MariaDBTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
55323	return nil, false
55324}
55325
55326// AsPhoenixObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55327func (mdtd MariaDBTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
55328	return nil, false
55329}
55330
55331// AsPaypalObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55332func (mdtd MariaDBTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
55333	return nil, false
55334}
55335
55336// AsMarketoObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55337func (mdtd MariaDBTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
55338	return nil, false
55339}
55340
55341// AsMariaDBTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55342func (mdtd MariaDBTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
55343	return &mdtd, true
55344}
55345
55346// AsMagentoObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55347func (mdtd MariaDBTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
55348	return nil, false
55349}
55350
55351// AsJiraObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55352func (mdtd MariaDBTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
55353	return nil, false
55354}
55355
55356// AsImpalaObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55357func (mdtd MariaDBTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
55358	return nil, false
55359}
55360
55361// AsHubspotObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55362func (mdtd MariaDBTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
55363	return nil, false
55364}
55365
55366// AsHiveObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55367func (mdtd MariaDBTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
55368	return nil, false
55369}
55370
55371// AsHBaseObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55372func (mdtd MariaDBTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
55373	return nil, false
55374}
55375
55376// AsGreenplumTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55377func (mdtd MariaDBTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
55378	return nil, false
55379}
55380
55381// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55382func (mdtd MariaDBTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
55383	return nil, false
55384}
55385
55386// AsEloquaObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55387func (mdtd MariaDBTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
55388	return nil, false
55389}
55390
55391// AsDrillTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55392func (mdtd MariaDBTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
55393	return nil, false
55394}
55395
55396// AsCouchbaseTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55397func (mdtd MariaDBTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
55398	return nil, false
55399}
55400
55401// AsConcurObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55402func (mdtd MariaDBTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
55403	return nil, false
55404}
55405
55406// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55407func (mdtd MariaDBTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
55408	return nil, false
55409}
55410
55411// AsAmazonMWSObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55412func (mdtd MariaDBTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
55413	return nil, false
55414}
55415
55416// AsHTTPDataset is the BasicDataset implementation for MariaDBTableDataset.
55417func (mdtd MariaDBTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
55418	return nil, false
55419}
55420
55421// AsAzureSearchIndexDataset is the BasicDataset implementation for MariaDBTableDataset.
55422func (mdtd MariaDBTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
55423	return nil, false
55424}
55425
55426// AsWebTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55427func (mdtd MariaDBTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
55428	return nil, false
55429}
55430
55431// AsSQLServerTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55432func (mdtd MariaDBTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
55433	return nil, false
55434}
55435
55436// AsSapEccResourceDataset is the BasicDataset implementation for MariaDBTableDataset.
55437func (mdtd MariaDBTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
55438	return nil, false
55439}
55440
55441// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for MariaDBTableDataset.
55442func (mdtd MariaDBTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
55443	return nil, false
55444}
55445
55446// AsSalesforceObjectDataset is the BasicDataset implementation for MariaDBTableDataset.
55447func (mdtd MariaDBTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
55448	return nil, false
55449}
55450
55451// AsRelationalTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55452func (mdtd MariaDBTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
55453	return nil, false
55454}
55455
55456// AsAzureMySQLTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55457func (mdtd MariaDBTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
55458	return nil, false
55459}
55460
55461// AsOracleTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55462func (mdtd MariaDBTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
55463	return nil, false
55464}
55465
55466// AsODataResourceDataset is the BasicDataset implementation for MariaDBTableDataset.
55467func (mdtd MariaDBTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
55468	return nil, false
55469}
55470
55471// AsMongoDbCollectionDataset is the BasicDataset implementation for MariaDBTableDataset.
55472func (mdtd MariaDBTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
55473	return nil, false
55474}
55475
55476// AsFileShareDataset is the BasicDataset implementation for MariaDBTableDataset.
55477func (mdtd MariaDBTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
55478	return nil, false
55479}
55480
55481// AsAzureDataLakeStoreDataset is the BasicDataset implementation for MariaDBTableDataset.
55482func (mdtd MariaDBTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
55483	return nil, false
55484}
55485
55486// AsDynamicsEntityDataset is the BasicDataset implementation for MariaDBTableDataset.
55487func (mdtd MariaDBTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
55488	return nil, false
55489}
55490
55491// AsDocumentDbCollectionDataset is the BasicDataset implementation for MariaDBTableDataset.
55492func (mdtd MariaDBTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
55493	return nil, false
55494}
55495
55496// AsCustomDataset is the BasicDataset implementation for MariaDBTableDataset.
55497func (mdtd MariaDBTableDataset) AsCustomDataset() (*CustomDataset, bool) {
55498	return nil, false
55499}
55500
55501// AsCassandraTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55502func (mdtd MariaDBTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
55503	return nil, false
55504}
55505
55506// AsAzureSQLDWTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55507func (mdtd MariaDBTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
55508	return nil, false
55509}
55510
55511// AsAzureSQLTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55512func (mdtd MariaDBTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
55513	return nil, false
55514}
55515
55516// AsAzureTableDataset is the BasicDataset implementation for MariaDBTableDataset.
55517func (mdtd MariaDBTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
55518	return nil, false
55519}
55520
55521// AsAzureBlobDataset is the BasicDataset implementation for MariaDBTableDataset.
55522func (mdtd MariaDBTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
55523	return nil, false
55524}
55525
55526// AsAmazonS3Dataset is the BasicDataset implementation for MariaDBTableDataset.
55527func (mdtd MariaDBTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
55528	return nil, false
55529}
55530
55531// AsDataset is the BasicDataset implementation for MariaDBTableDataset.
55532func (mdtd MariaDBTableDataset) AsDataset() (*Dataset, bool) {
55533	return nil, false
55534}
55535
55536// AsBasicDataset is the BasicDataset implementation for MariaDBTableDataset.
55537func (mdtd MariaDBTableDataset) AsBasicDataset() (BasicDataset, bool) {
55538	return &mdtd, true
55539}
55540
55541// MarketoLinkedService marketo server linked service.
55542type MarketoLinkedService struct {
55543	// MarketoLinkedServiceTypeProperties - Marketo server linked service properties.
55544	*MarketoLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
55545	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
55546	AdditionalProperties map[string]interface{} `json:""`
55547	// ConnectVia - The integration runtime reference.
55548	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
55549	// Description - Linked service description.
55550	Description *string `json:"description,omitempty"`
55551	// Parameters - Parameters for linked service.
55552	Parameters map[string]*ParameterSpecification `json:"parameters"`
55553	// Annotations - List of tags that can be used for describing the Dataset.
55554	Annotations *[]interface{} `json:"annotations,omitempty"`
55555	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
55556	Type TypeBasicLinkedService `json:"type,omitempty"`
55557}
55558
55559// MarshalJSON is the custom marshaler for MarketoLinkedService.
55560func (mls MarketoLinkedService) MarshalJSON() ([]byte, error) {
55561	mls.Type = TypeMarketo
55562	objectMap := make(map[string]interface{})
55563	if mls.MarketoLinkedServiceTypeProperties != nil {
55564		objectMap["typeProperties"] = mls.MarketoLinkedServiceTypeProperties
55565	}
55566	if mls.ConnectVia != nil {
55567		objectMap["connectVia"] = mls.ConnectVia
55568	}
55569	if mls.Description != nil {
55570		objectMap["description"] = mls.Description
55571	}
55572	if mls.Parameters != nil {
55573		objectMap["parameters"] = mls.Parameters
55574	}
55575	if mls.Annotations != nil {
55576		objectMap["annotations"] = mls.Annotations
55577	}
55578	if mls.Type != "" {
55579		objectMap["type"] = mls.Type
55580	}
55581	for k, v := range mls.AdditionalProperties {
55582		objectMap[k] = v
55583	}
55584	return json.Marshal(objectMap)
55585}
55586
55587// AsResponsysLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55588func (mls MarketoLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
55589	return nil, false
55590}
55591
55592// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55593func (mls MarketoLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
55594	return nil, false
55595}
55596
55597// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55598func (mls MarketoLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
55599	return nil, false
55600}
55601
55602// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55603func (mls MarketoLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
55604	return nil, false
55605}
55606
55607// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55608func (mls MarketoLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
55609	return nil, false
55610}
55611
55612// AsNetezzaLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55613func (mls MarketoLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
55614	return nil, false
55615}
55616
55617// AsVerticaLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55618func (mls MarketoLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
55619	return nil, false
55620}
55621
55622// AsZohoLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55623func (mls MarketoLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
55624	return nil, false
55625}
55626
55627// AsXeroLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55628func (mls MarketoLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
55629	return nil, false
55630}
55631
55632// AsSquareLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55633func (mls MarketoLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
55634	return nil, false
55635}
55636
55637// AsSparkLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55638func (mls MarketoLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
55639	return nil, false
55640}
55641
55642// AsShopifyLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55643func (mls MarketoLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
55644	return nil, false
55645}
55646
55647// AsServiceNowLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55648func (mls MarketoLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
55649	return nil, false
55650}
55651
55652// AsQuickBooksLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55653func (mls MarketoLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
55654	return nil, false
55655}
55656
55657// AsPrestoLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55658func (mls MarketoLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
55659	return nil, false
55660}
55661
55662// AsPhoenixLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55663func (mls MarketoLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
55664	return nil, false
55665}
55666
55667// AsPaypalLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55668func (mls MarketoLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
55669	return nil, false
55670}
55671
55672// AsMarketoLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55673func (mls MarketoLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
55674	return &mls, true
55675}
55676
55677// AsMariaDBLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55678func (mls MarketoLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
55679	return nil, false
55680}
55681
55682// AsMagentoLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55683func (mls MarketoLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
55684	return nil, false
55685}
55686
55687// AsJiraLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55688func (mls MarketoLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
55689	return nil, false
55690}
55691
55692// AsImpalaLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55693func (mls MarketoLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
55694	return nil, false
55695}
55696
55697// AsHubspotLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55698func (mls MarketoLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
55699	return nil, false
55700}
55701
55702// AsHiveLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55703func (mls MarketoLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
55704	return nil, false
55705}
55706
55707// AsHBaseLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55708func (mls MarketoLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
55709	return nil, false
55710}
55711
55712// AsGreenplumLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55713func (mls MarketoLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
55714	return nil, false
55715}
55716
55717// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55718func (mls MarketoLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
55719	return nil, false
55720}
55721
55722// AsEloquaLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55723func (mls MarketoLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
55724	return nil, false
55725}
55726
55727// AsDrillLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55728func (mls MarketoLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
55729	return nil, false
55730}
55731
55732// AsCouchbaseLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55733func (mls MarketoLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
55734	return nil, false
55735}
55736
55737// AsConcurLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55738func (mls MarketoLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
55739	return nil, false
55740}
55741
55742// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55743func (mls MarketoLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
55744	return nil, false
55745}
55746
55747// AsAmazonMWSLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55748func (mls MarketoLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
55749	return nil, false
55750}
55751
55752// AsSapHanaLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55753func (mls MarketoLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
55754	return nil, false
55755}
55756
55757// AsSapBWLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55758func (mls MarketoLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
55759	return nil, false
55760}
55761
55762// AsSftpServerLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55763func (mls MarketoLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
55764	return nil, false
55765}
55766
55767// AsFtpServerLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55768func (mls MarketoLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
55769	return nil, false
55770}
55771
55772// AsHTTPLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55773func (mls MarketoLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
55774	return nil, false
55775}
55776
55777// AsAzureSearchLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55778func (mls MarketoLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
55779	return nil, false
55780}
55781
55782// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55783func (mls MarketoLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
55784	return nil, false
55785}
55786
55787// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55788func (mls MarketoLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
55789	return nil, false
55790}
55791
55792// AsAmazonS3LinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55793func (mls MarketoLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
55794	return nil, false
55795}
55796
55797// AsSapEccLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55798func (mls MarketoLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
55799	return nil, false
55800}
55801
55802// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55803func (mls MarketoLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
55804	return nil, false
55805}
55806
55807// AsSalesforceLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55808func (mls MarketoLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
55809	return nil, false
55810}
55811
55812// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55813func (mls MarketoLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
55814	return nil, false
55815}
55816
55817// AsMongoDbLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55818func (mls MarketoLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
55819	return nil, false
55820}
55821
55822// AsCassandraLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55823func (mls MarketoLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
55824	return nil, false
55825}
55826
55827// AsWebLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55828func (mls MarketoLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
55829	return nil, false
55830}
55831
55832// AsODataLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55833func (mls MarketoLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
55834	return nil, false
55835}
55836
55837// AsHdfsLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55838func (mls MarketoLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
55839	return nil, false
55840}
55841
55842// AsOdbcLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55843func (mls MarketoLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
55844	return nil, false
55845}
55846
55847// AsAzureMLLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55848func (mls MarketoLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
55849	return nil, false
55850}
55851
55852// AsTeradataLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55853func (mls MarketoLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
55854	return nil, false
55855}
55856
55857// AsDb2LinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55858func (mls MarketoLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
55859	return nil, false
55860}
55861
55862// AsSybaseLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55863func (mls MarketoLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
55864	return nil, false
55865}
55866
55867// AsPostgreSQLLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55868func (mls MarketoLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
55869	return nil, false
55870}
55871
55872// AsMySQLLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55873func (mls MarketoLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
55874	return nil, false
55875}
55876
55877// AsAzureMySQLLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55878func (mls MarketoLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
55879	return nil, false
55880}
55881
55882// AsOracleLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55883func (mls MarketoLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
55884	return nil, false
55885}
55886
55887// AsFileServerLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55888func (mls MarketoLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
55889	return nil, false
55890}
55891
55892// AsHDInsightLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55893func (mls MarketoLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
55894	return nil, false
55895}
55896
55897// AsDynamicsLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55898func (mls MarketoLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
55899	return nil, false
55900}
55901
55902// AsCosmosDbLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55903func (mls MarketoLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
55904	return nil, false
55905}
55906
55907// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55908func (mls MarketoLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
55909	return nil, false
55910}
55911
55912// AsAzureBatchLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55913func (mls MarketoLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
55914	return nil, false
55915}
55916
55917// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55918func (mls MarketoLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
55919	return nil, false
55920}
55921
55922// AsSQLServerLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55923func (mls MarketoLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
55924	return nil, false
55925}
55926
55927// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55928func (mls MarketoLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
55929	return nil, false
55930}
55931
55932// AsAzureStorageLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55933func (mls MarketoLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
55934	return nil, false
55935}
55936
55937// AsLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55938func (mls MarketoLinkedService) AsLinkedService() (*LinkedService, bool) {
55939	return nil, false
55940}
55941
55942// AsBasicLinkedService is the BasicLinkedService implementation for MarketoLinkedService.
55943func (mls MarketoLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
55944	return &mls, true
55945}
55946
55947// UnmarshalJSON is the custom unmarshaler for MarketoLinkedService struct.
55948func (mls *MarketoLinkedService) UnmarshalJSON(body []byte) error {
55949	var m map[string]*json.RawMessage
55950	err := json.Unmarshal(body, &m)
55951	if err != nil {
55952		return err
55953	}
55954	for k, v := range m {
55955		switch k {
55956		case "typeProperties":
55957			if v != nil {
55958				var marketoLinkedServiceTypeProperties MarketoLinkedServiceTypeProperties
55959				err = json.Unmarshal(*v, &marketoLinkedServiceTypeProperties)
55960				if err != nil {
55961					return err
55962				}
55963				mls.MarketoLinkedServiceTypeProperties = &marketoLinkedServiceTypeProperties
55964			}
55965		default:
55966			if v != nil {
55967				var additionalProperties interface{}
55968				err = json.Unmarshal(*v, &additionalProperties)
55969				if err != nil {
55970					return err
55971				}
55972				if mls.AdditionalProperties == nil {
55973					mls.AdditionalProperties = make(map[string]interface{})
55974				}
55975				mls.AdditionalProperties[k] = additionalProperties
55976			}
55977		case "connectVia":
55978			if v != nil {
55979				var connectVia IntegrationRuntimeReference
55980				err = json.Unmarshal(*v, &connectVia)
55981				if err != nil {
55982					return err
55983				}
55984				mls.ConnectVia = &connectVia
55985			}
55986		case "description":
55987			if v != nil {
55988				var description string
55989				err = json.Unmarshal(*v, &description)
55990				if err != nil {
55991					return err
55992				}
55993				mls.Description = &description
55994			}
55995		case "parameters":
55996			if v != nil {
55997				var parameters map[string]*ParameterSpecification
55998				err = json.Unmarshal(*v, &parameters)
55999				if err != nil {
56000					return err
56001				}
56002				mls.Parameters = parameters
56003			}
56004		case "annotations":
56005			if v != nil {
56006				var annotations []interface{}
56007				err = json.Unmarshal(*v, &annotations)
56008				if err != nil {
56009					return err
56010				}
56011				mls.Annotations = &annotations
56012			}
56013		case "type":
56014			if v != nil {
56015				var typeVar TypeBasicLinkedService
56016				err = json.Unmarshal(*v, &typeVar)
56017				if err != nil {
56018					return err
56019				}
56020				mls.Type = typeVar
56021			}
56022		}
56023	}
56024
56025	return nil
56026}
56027
56028// MarketoLinkedServiceTypeProperties marketo server linked service properties.
56029type MarketoLinkedServiceTypeProperties struct {
56030	// Endpoint - The endpoint of the Marketo server. (i.e. 123-ABC-321.mktorest.com)
56031	Endpoint interface{} `json:"endpoint,omitempty"`
56032	// ClientID - The client Id of your Marketo service.
56033	ClientID interface{} `json:"clientId,omitempty"`
56034	// ClientSecret - The client secret of your Marketo service.
56035	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
56036	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
56037	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
56038	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
56039	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
56040	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
56041	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
56042	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
56043	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
56044}
56045
56046// UnmarshalJSON is the custom unmarshaler for MarketoLinkedServiceTypeProperties struct.
56047func (mlstp *MarketoLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
56048	var m map[string]*json.RawMessage
56049	err := json.Unmarshal(body, &m)
56050	if err != nil {
56051		return err
56052	}
56053	for k, v := range m {
56054		switch k {
56055		case "endpoint":
56056			if v != nil {
56057				var endpoint interface{}
56058				err = json.Unmarshal(*v, &endpoint)
56059				if err != nil {
56060					return err
56061				}
56062				mlstp.Endpoint = endpoint
56063			}
56064		case "clientId":
56065			if v != nil {
56066				var clientID interface{}
56067				err = json.Unmarshal(*v, &clientID)
56068				if err != nil {
56069					return err
56070				}
56071				mlstp.ClientID = clientID
56072			}
56073		case "clientSecret":
56074			if v != nil {
56075				clientSecret, err := unmarshalBasicSecretBase(*v)
56076				if err != nil {
56077					return err
56078				}
56079				mlstp.ClientSecret = clientSecret
56080			}
56081		case "useEncryptedEndpoints":
56082			if v != nil {
56083				var useEncryptedEndpoints interface{}
56084				err = json.Unmarshal(*v, &useEncryptedEndpoints)
56085				if err != nil {
56086					return err
56087				}
56088				mlstp.UseEncryptedEndpoints = useEncryptedEndpoints
56089			}
56090		case "useHostVerification":
56091			if v != nil {
56092				var useHostVerification interface{}
56093				err = json.Unmarshal(*v, &useHostVerification)
56094				if err != nil {
56095					return err
56096				}
56097				mlstp.UseHostVerification = useHostVerification
56098			}
56099		case "usePeerVerification":
56100			if v != nil {
56101				var usePeerVerification interface{}
56102				err = json.Unmarshal(*v, &usePeerVerification)
56103				if err != nil {
56104					return err
56105				}
56106				mlstp.UsePeerVerification = usePeerVerification
56107			}
56108		case "encryptedCredential":
56109			if v != nil {
56110				var encryptedCredential interface{}
56111				err = json.Unmarshal(*v, &encryptedCredential)
56112				if err != nil {
56113					return err
56114				}
56115				mlstp.EncryptedCredential = encryptedCredential
56116			}
56117		}
56118	}
56119
56120	return nil
56121}
56122
56123// MarketoObjectDataset marketo server dataset.
56124type MarketoObjectDataset struct {
56125	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
56126	AdditionalProperties map[string]interface{} `json:""`
56127	// Description - Dataset description.
56128	Description *string `json:"description,omitempty"`
56129	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
56130	Structure interface{} `json:"structure,omitempty"`
56131	// LinkedServiceName - Linked service reference.
56132	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
56133	// Parameters - Parameters for dataset.
56134	Parameters map[string]*ParameterSpecification `json:"parameters"`
56135	// Annotations - List of tags that can be used for describing the Dataset.
56136	Annotations *[]interface{} `json:"annotations,omitempty"`
56137	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
56138	Type TypeBasicDataset `json:"type,omitempty"`
56139}
56140
56141// MarshalJSON is the custom marshaler for MarketoObjectDataset.
56142func (mod MarketoObjectDataset) MarshalJSON() ([]byte, error) {
56143	mod.Type = TypeMarketoObject
56144	objectMap := make(map[string]interface{})
56145	if mod.Description != nil {
56146		objectMap["description"] = mod.Description
56147	}
56148	objectMap["structure"] = mod.Structure
56149	if mod.LinkedServiceName != nil {
56150		objectMap["linkedServiceName"] = mod.LinkedServiceName
56151	}
56152	if mod.Parameters != nil {
56153		objectMap["parameters"] = mod.Parameters
56154	}
56155	if mod.Annotations != nil {
56156		objectMap["annotations"] = mod.Annotations
56157	}
56158	if mod.Type != "" {
56159		objectMap["type"] = mod.Type
56160	}
56161	for k, v := range mod.AdditionalProperties {
56162		objectMap[k] = v
56163	}
56164	return json.Marshal(objectMap)
56165}
56166
56167// AsResponsysObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56168func (mod MarketoObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
56169	return nil, false
56170}
56171
56172// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56173func (mod MarketoObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
56174	return nil, false
56175}
56176
56177// AsVerticaTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56178func (mod MarketoObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
56179	return nil, false
56180}
56181
56182// AsNetezzaTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56183func (mod MarketoObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
56184	return nil, false
56185}
56186
56187// AsZohoObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56188func (mod MarketoObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
56189	return nil, false
56190}
56191
56192// AsXeroObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56193func (mod MarketoObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
56194	return nil, false
56195}
56196
56197// AsSquareObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56198func (mod MarketoObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
56199	return nil, false
56200}
56201
56202// AsSparkObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56203func (mod MarketoObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
56204	return nil, false
56205}
56206
56207// AsShopifyObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56208func (mod MarketoObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
56209	return nil, false
56210}
56211
56212// AsServiceNowObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56213func (mod MarketoObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
56214	return nil, false
56215}
56216
56217// AsQuickBooksObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56218func (mod MarketoObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
56219	return nil, false
56220}
56221
56222// AsPrestoObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56223func (mod MarketoObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
56224	return nil, false
56225}
56226
56227// AsPhoenixObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56228func (mod MarketoObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
56229	return nil, false
56230}
56231
56232// AsPaypalObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56233func (mod MarketoObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
56234	return nil, false
56235}
56236
56237// AsMarketoObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56238func (mod MarketoObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
56239	return &mod, true
56240}
56241
56242// AsMariaDBTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56243func (mod MarketoObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
56244	return nil, false
56245}
56246
56247// AsMagentoObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56248func (mod MarketoObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
56249	return nil, false
56250}
56251
56252// AsJiraObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56253func (mod MarketoObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
56254	return nil, false
56255}
56256
56257// AsImpalaObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56258func (mod MarketoObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
56259	return nil, false
56260}
56261
56262// AsHubspotObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56263func (mod MarketoObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
56264	return nil, false
56265}
56266
56267// AsHiveObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56268func (mod MarketoObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
56269	return nil, false
56270}
56271
56272// AsHBaseObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56273func (mod MarketoObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
56274	return nil, false
56275}
56276
56277// AsGreenplumTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56278func (mod MarketoObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
56279	return nil, false
56280}
56281
56282// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56283func (mod MarketoObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
56284	return nil, false
56285}
56286
56287// AsEloquaObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56288func (mod MarketoObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
56289	return nil, false
56290}
56291
56292// AsDrillTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56293func (mod MarketoObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
56294	return nil, false
56295}
56296
56297// AsCouchbaseTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56298func (mod MarketoObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
56299	return nil, false
56300}
56301
56302// AsConcurObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56303func (mod MarketoObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
56304	return nil, false
56305}
56306
56307// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56308func (mod MarketoObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
56309	return nil, false
56310}
56311
56312// AsAmazonMWSObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56313func (mod MarketoObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
56314	return nil, false
56315}
56316
56317// AsHTTPDataset is the BasicDataset implementation for MarketoObjectDataset.
56318func (mod MarketoObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
56319	return nil, false
56320}
56321
56322// AsAzureSearchIndexDataset is the BasicDataset implementation for MarketoObjectDataset.
56323func (mod MarketoObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
56324	return nil, false
56325}
56326
56327// AsWebTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56328func (mod MarketoObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
56329	return nil, false
56330}
56331
56332// AsSQLServerTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56333func (mod MarketoObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
56334	return nil, false
56335}
56336
56337// AsSapEccResourceDataset is the BasicDataset implementation for MarketoObjectDataset.
56338func (mod MarketoObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
56339	return nil, false
56340}
56341
56342// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for MarketoObjectDataset.
56343func (mod MarketoObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
56344	return nil, false
56345}
56346
56347// AsSalesforceObjectDataset is the BasicDataset implementation for MarketoObjectDataset.
56348func (mod MarketoObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
56349	return nil, false
56350}
56351
56352// AsRelationalTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56353func (mod MarketoObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
56354	return nil, false
56355}
56356
56357// AsAzureMySQLTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56358func (mod MarketoObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
56359	return nil, false
56360}
56361
56362// AsOracleTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56363func (mod MarketoObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
56364	return nil, false
56365}
56366
56367// AsODataResourceDataset is the BasicDataset implementation for MarketoObjectDataset.
56368func (mod MarketoObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
56369	return nil, false
56370}
56371
56372// AsMongoDbCollectionDataset is the BasicDataset implementation for MarketoObjectDataset.
56373func (mod MarketoObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
56374	return nil, false
56375}
56376
56377// AsFileShareDataset is the BasicDataset implementation for MarketoObjectDataset.
56378func (mod MarketoObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
56379	return nil, false
56380}
56381
56382// AsAzureDataLakeStoreDataset is the BasicDataset implementation for MarketoObjectDataset.
56383func (mod MarketoObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
56384	return nil, false
56385}
56386
56387// AsDynamicsEntityDataset is the BasicDataset implementation for MarketoObjectDataset.
56388func (mod MarketoObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
56389	return nil, false
56390}
56391
56392// AsDocumentDbCollectionDataset is the BasicDataset implementation for MarketoObjectDataset.
56393func (mod MarketoObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
56394	return nil, false
56395}
56396
56397// AsCustomDataset is the BasicDataset implementation for MarketoObjectDataset.
56398func (mod MarketoObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
56399	return nil, false
56400}
56401
56402// AsCassandraTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56403func (mod MarketoObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
56404	return nil, false
56405}
56406
56407// AsAzureSQLDWTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56408func (mod MarketoObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
56409	return nil, false
56410}
56411
56412// AsAzureSQLTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56413func (mod MarketoObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
56414	return nil, false
56415}
56416
56417// AsAzureTableDataset is the BasicDataset implementation for MarketoObjectDataset.
56418func (mod MarketoObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
56419	return nil, false
56420}
56421
56422// AsAzureBlobDataset is the BasicDataset implementation for MarketoObjectDataset.
56423func (mod MarketoObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
56424	return nil, false
56425}
56426
56427// AsAmazonS3Dataset is the BasicDataset implementation for MarketoObjectDataset.
56428func (mod MarketoObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
56429	return nil, false
56430}
56431
56432// AsDataset is the BasicDataset implementation for MarketoObjectDataset.
56433func (mod MarketoObjectDataset) AsDataset() (*Dataset, bool) {
56434	return nil, false
56435}
56436
56437// AsBasicDataset is the BasicDataset implementation for MarketoObjectDataset.
56438func (mod MarketoObjectDataset) AsBasicDataset() (BasicDataset, bool) {
56439	return &mod, true
56440}
56441
56442// MarketoSource a copy activity Marketo server source.
56443type MarketoSource struct {
56444	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
56445	Query interface{} `json:"query,omitempty"`
56446	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
56447	AdditionalProperties map[string]interface{} `json:""`
56448	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
56449	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
56450	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
56451	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
56452	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
56453	Type TypeBasicCopySource `json:"type,omitempty"`
56454}
56455
56456// MarshalJSON is the custom marshaler for MarketoSource.
56457func (ms MarketoSource) MarshalJSON() ([]byte, error) {
56458	ms.Type = TypeMarketoSource
56459	objectMap := make(map[string]interface{})
56460	objectMap["query"] = ms.Query
56461	objectMap["sourceRetryCount"] = ms.SourceRetryCount
56462	objectMap["sourceRetryWait"] = ms.SourceRetryWait
56463	if ms.Type != "" {
56464		objectMap["type"] = ms.Type
56465	}
56466	for k, v := range ms.AdditionalProperties {
56467		objectMap[k] = v
56468	}
56469	return json.Marshal(objectMap)
56470}
56471
56472// AsAmazonRedshiftSource is the BasicCopySource implementation for MarketoSource.
56473func (ms MarketoSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
56474	return nil, false
56475}
56476
56477// AsResponsysSource is the BasicCopySource implementation for MarketoSource.
56478func (ms MarketoSource) AsResponsysSource() (*ResponsysSource, bool) {
56479	return nil, false
56480}
56481
56482// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for MarketoSource.
56483func (ms MarketoSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
56484	return nil, false
56485}
56486
56487// AsVerticaSource is the BasicCopySource implementation for MarketoSource.
56488func (ms MarketoSource) AsVerticaSource() (*VerticaSource, bool) {
56489	return nil, false
56490}
56491
56492// AsNetezzaSource is the BasicCopySource implementation for MarketoSource.
56493func (ms MarketoSource) AsNetezzaSource() (*NetezzaSource, bool) {
56494	return nil, false
56495}
56496
56497// AsZohoSource is the BasicCopySource implementation for MarketoSource.
56498func (ms MarketoSource) AsZohoSource() (*ZohoSource, bool) {
56499	return nil, false
56500}
56501
56502// AsXeroSource is the BasicCopySource implementation for MarketoSource.
56503func (ms MarketoSource) AsXeroSource() (*XeroSource, bool) {
56504	return nil, false
56505}
56506
56507// AsSquareSource is the BasicCopySource implementation for MarketoSource.
56508func (ms MarketoSource) AsSquareSource() (*SquareSource, bool) {
56509	return nil, false
56510}
56511
56512// AsSparkSource is the BasicCopySource implementation for MarketoSource.
56513func (ms MarketoSource) AsSparkSource() (*SparkSource, bool) {
56514	return nil, false
56515}
56516
56517// AsShopifySource is the BasicCopySource implementation for MarketoSource.
56518func (ms MarketoSource) AsShopifySource() (*ShopifySource, bool) {
56519	return nil, false
56520}
56521
56522// AsServiceNowSource is the BasicCopySource implementation for MarketoSource.
56523func (ms MarketoSource) AsServiceNowSource() (*ServiceNowSource, bool) {
56524	return nil, false
56525}
56526
56527// AsQuickBooksSource is the BasicCopySource implementation for MarketoSource.
56528func (ms MarketoSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
56529	return nil, false
56530}
56531
56532// AsPrestoSource is the BasicCopySource implementation for MarketoSource.
56533func (ms MarketoSource) AsPrestoSource() (*PrestoSource, bool) {
56534	return nil, false
56535}
56536
56537// AsPhoenixSource is the BasicCopySource implementation for MarketoSource.
56538func (ms MarketoSource) AsPhoenixSource() (*PhoenixSource, bool) {
56539	return nil, false
56540}
56541
56542// AsPaypalSource is the BasicCopySource implementation for MarketoSource.
56543func (ms MarketoSource) AsPaypalSource() (*PaypalSource, bool) {
56544	return nil, false
56545}
56546
56547// AsMarketoSource is the BasicCopySource implementation for MarketoSource.
56548func (ms MarketoSource) AsMarketoSource() (*MarketoSource, bool) {
56549	return &ms, true
56550}
56551
56552// AsMariaDBSource is the BasicCopySource implementation for MarketoSource.
56553func (ms MarketoSource) AsMariaDBSource() (*MariaDBSource, bool) {
56554	return nil, false
56555}
56556
56557// AsMagentoSource is the BasicCopySource implementation for MarketoSource.
56558func (ms MarketoSource) AsMagentoSource() (*MagentoSource, bool) {
56559	return nil, false
56560}
56561
56562// AsJiraSource is the BasicCopySource implementation for MarketoSource.
56563func (ms MarketoSource) AsJiraSource() (*JiraSource, bool) {
56564	return nil, false
56565}
56566
56567// AsImpalaSource is the BasicCopySource implementation for MarketoSource.
56568func (ms MarketoSource) AsImpalaSource() (*ImpalaSource, bool) {
56569	return nil, false
56570}
56571
56572// AsHubspotSource is the BasicCopySource implementation for MarketoSource.
56573func (ms MarketoSource) AsHubspotSource() (*HubspotSource, bool) {
56574	return nil, false
56575}
56576
56577// AsHiveSource is the BasicCopySource implementation for MarketoSource.
56578func (ms MarketoSource) AsHiveSource() (*HiveSource, bool) {
56579	return nil, false
56580}
56581
56582// AsHBaseSource is the BasicCopySource implementation for MarketoSource.
56583func (ms MarketoSource) AsHBaseSource() (*HBaseSource, bool) {
56584	return nil, false
56585}
56586
56587// AsGreenplumSource is the BasicCopySource implementation for MarketoSource.
56588func (ms MarketoSource) AsGreenplumSource() (*GreenplumSource, bool) {
56589	return nil, false
56590}
56591
56592// AsGoogleBigQuerySource is the BasicCopySource implementation for MarketoSource.
56593func (ms MarketoSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
56594	return nil, false
56595}
56596
56597// AsEloquaSource is the BasicCopySource implementation for MarketoSource.
56598func (ms MarketoSource) AsEloquaSource() (*EloquaSource, bool) {
56599	return nil, false
56600}
56601
56602// AsDrillSource is the BasicCopySource implementation for MarketoSource.
56603func (ms MarketoSource) AsDrillSource() (*DrillSource, bool) {
56604	return nil, false
56605}
56606
56607// AsCouchbaseSource is the BasicCopySource implementation for MarketoSource.
56608func (ms MarketoSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
56609	return nil, false
56610}
56611
56612// AsConcurSource is the BasicCopySource implementation for MarketoSource.
56613func (ms MarketoSource) AsConcurSource() (*ConcurSource, bool) {
56614	return nil, false
56615}
56616
56617// AsAzurePostgreSQLSource is the BasicCopySource implementation for MarketoSource.
56618func (ms MarketoSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
56619	return nil, false
56620}
56621
56622// AsAmazonMWSSource is the BasicCopySource implementation for MarketoSource.
56623func (ms MarketoSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
56624	return nil, false
56625}
56626
56627// AsHTTPSource is the BasicCopySource implementation for MarketoSource.
56628func (ms MarketoSource) AsHTTPSource() (*HTTPSource, bool) {
56629	return nil, false
56630}
56631
56632// AsAzureDataLakeStoreSource is the BasicCopySource implementation for MarketoSource.
56633func (ms MarketoSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
56634	return nil, false
56635}
56636
56637// AsMongoDbSource is the BasicCopySource implementation for MarketoSource.
56638func (ms MarketoSource) AsMongoDbSource() (*MongoDbSource, bool) {
56639	return nil, false
56640}
56641
56642// AsCassandraSource is the BasicCopySource implementation for MarketoSource.
56643func (ms MarketoSource) AsCassandraSource() (*CassandraSource, bool) {
56644	return nil, false
56645}
56646
56647// AsWebSource is the BasicCopySource implementation for MarketoSource.
56648func (ms MarketoSource) AsWebSource() (*WebSource, bool) {
56649	return nil, false
56650}
56651
56652// AsOracleSource is the BasicCopySource implementation for MarketoSource.
56653func (ms MarketoSource) AsOracleSource() (*OracleSource, bool) {
56654	return nil, false
56655}
56656
56657// AsAzureMySQLSource is the BasicCopySource implementation for MarketoSource.
56658func (ms MarketoSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
56659	return nil, false
56660}
56661
56662// AsHdfsSource is the BasicCopySource implementation for MarketoSource.
56663func (ms MarketoSource) AsHdfsSource() (*HdfsSource, bool) {
56664	return nil, false
56665}
56666
56667// AsFileSystemSource is the BasicCopySource implementation for MarketoSource.
56668func (ms MarketoSource) AsFileSystemSource() (*FileSystemSource, bool) {
56669	return nil, false
56670}
56671
56672// AsSQLDWSource is the BasicCopySource implementation for MarketoSource.
56673func (ms MarketoSource) AsSQLDWSource() (*SQLDWSource, bool) {
56674	return nil, false
56675}
56676
56677// AsSQLSource is the BasicCopySource implementation for MarketoSource.
56678func (ms MarketoSource) AsSQLSource() (*SQLSource, bool) {
56679	return nil, false
56680}
56681
56682// AsSapEccSource is the BasicCopySource implementation for MarketoSource.
56683func (ms MarketoSource) AsSapEccSource() (*SapEccSource, bool) {
56684	return nil, false
56685}
56686
56687// AsSapCloudForCustomerSource is the BasicCopySource implementation for MarketoSource.
56688func (ms MarketoSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
56689	return nil, false
56690}
56691
56692// AsSalesforceSource is the BasicCopySource implementation for MarketoSource.
56693func (ms MarketoSource) AsSalesforceSource() (*SalesforceSource, bool) {
56694	return nil, false
56695}
56696
56697// AsRelationalSource is the BasicCopySource implementation for MarketoSource.
56698func (ms MarketoSource) AsRelationalSource() (*RelationalSource, bool) {
56699	return nil, false
56700}
56701
56702// AsDynamicsSource is the BasicCopySource implementation for MarketoSource.
56703func (ms MarketoSource) AsDynamicsSource() (*DynamicsSource, bool) {
56704	return nil, false
56705}
56706
56707// AsDocumentDbCollectionSource is the BasicCopySource implementation for MarketoSource.
56708func (ms MarketoSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
56709	return nil, false
56710}
56711
56712// AsBlobSource is the BasicCopySource implementation for MarketoSource.
56713func (ms MarketoSource) AsBlobSource() (*BlobSource, bool) {
56714	return nil, false
56715}
56716
56717// AsAzureTableSource is the BasicCopySource implementation for MarketoSource.
56718func (ms MarketoSource) AsAzureTableSource() (*AzureTableSource, bool) {
56719	return nil, false
56720}
56721
56722// AsCopySource is the BasicCopySource implementation for MarketoSource.
56723func (ms MarketoSource) AsCopySource() (*CopySource, bool) {
56724	return nil, false
56725}
56726
56727// AsBasicCopySource is the BasicCopySource implementation for MarketoSource.
56728func (ms MarketoSource) AsBasicCopySource() (BasicCopySource, bool) {
56729	return &ms, true
56730}
56731
56732// MongoDbCollectionDataset the MongoDB database dataset.
56733type MongoDbCollectionDataset struct {
56734	// MongoDbCollectionDatasetTypeProperties - MongoDB database dataset properties.
56735	*MongoDbCollectionDatasetTypeProperties `json:"typeProperties,omitempty"`
56736	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
56737	AdditionalProperties map[string]interface{} `json:""`
56738	// Description - Dataset description.
56739	Description *string `json:"description,omitempty"`
56740	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
56741	Structure interface{} `json:"structure,omitempty"`
56742	// LinkedServiceName - Linked service reference.
56743	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
56744	// Parameters - Parameters for dataset.
56745	Parameters map[string]*ParameterSpecification `json:"parameters"`
56746	// Annotations - List of tags that can be used for describing the Dataset.
56747	Annotations *[]interface{} `json:"annotations,omitempty"`
56748	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
56749	Type TypeBasicDataset `json:"type,omitempty"`
56750}
56751
56752// MarshalJSON is the custom marshaler for MongoDbCollectionDataset.
56753func (mdcd MongoDbCollectionDataset) MarshalJSON() ([]byte, error) {
56754	mdcd.Type = TypeMongoDbCollection
56755	objectMap := make(map[string]interface{})
56756	if mdcd.MongoDbCollectionDatasetTypeProperties != nil {
56757		objectMap["typeProperties"] = mdcd.MongoDbCollectionDatasetTypeProperties
56758	}
56759	if mdcd.Description != nil {
56760		objectMap["description"] = mdcd.Description
56761	}
56762	objectMap["structure"] = mdcd.Structure
56763	if mdcd.LinkedServiceName != nil {
56764		objectMap["linkedServiceName"] = mdcd.LinkedServiceName
56765	}
56766	if mdcd.Parameters != nil {
56767		objectMap["parameters"] = mdcd.Parameters
56768	}
56769	if mdcd.Annotations != nil {
56770		objectMap["annotations"] = mdcd.Annotations
56771	}
56772	if mdcd.Type != "" {
56773		objectMap["type"] = mdcd.Type
56774	}
56775	for k, v := range mdcd.AdditionalProperties {
56776		objectMap[k] = v
56777	}
56778	return json.Marshal(objectMap)
56779}
56780
56781// AsResponsysObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56782func (mdcd MongoDbCollectionDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
56783	return nil, false
56784}
56785
56786// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56787func (mdcd MongoDbCollectionDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
56788	return nil, false
56789}
56790
56791// AsVerticaTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56792func (mdcd MongoDbCollectionDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
56793	return nil, false
56794}
56795
56796// AsNetezzaTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56797func (mdcd MongoDbCollectionDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
56798	return nil, false
56799}
56800
56801// AsZohoObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56802func (mdcd MongoDbCollectionDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
56803	return nil, false
56804}
56805
56806// AsXeroObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56807func (mdcd MongoDbCollectionDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
56808	return nil, false
56809}
56810
56811// AsSquareObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56812func (mdcd MongoDbCollectionDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
56813	return nil, false
56814}
56815
56816// AsSparkObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56817func (mdcd MongoDbCollectionDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
56818	return nil, false
56819}
56820
56821// AsShopifyObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56822func (mdcd MongoDbCollectionDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
56823	return nil, false
56824}
56825
56826// AsServiceNowObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56827func (mdcd MongoDbCollectionDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
56828	return nil, false
56829}
56830
56831// AsQuickBooksObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56832func (mdcd MongoDbCollectionDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
56833	return nil, false
56834}
56835
56836// AsPrestoObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56837func (mdcd MongoDbCollectionDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
56838	return nil, false
56839}
56840
56841// AsPhoenixObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56842func (mdcd MongoDbCollectionDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
56843	return nil, false
56844}
56845
56846// AsPaypalObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56847func (mdcd MongoDbCollectionDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
56848	return nil, false
56849}
56850
56851// AsMarketoObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56852func (mdcd MongoDbCollectionDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
56853	return nil, false
56854}
56855
56856// AsMariaDBTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56857func (mdcd MongoDbCollectionDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
56858	return nil, false
56859}
56860
56861// AsMagentoObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56862func (mdcd MongoDbCollectionDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
56863	return nil, false
56864}
56865
56866// AsJiraObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56867func (mdcd MongoDbCollectionDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
56868	return nil, false
56869}
56870
56871// AsImpalaObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56872func (mdcd MongoDbCollectionDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
56873	return nil, false
56874}
56875
56876// AsHubspotObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56877func (mdcd MongoDbCollectionDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
56878	return nil, false
56879}
56880
56881// AsHiveObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56882func (mdcd MongoDbCollectionDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
56883	return nil, false
56884}
56885
56886// AsHBaseObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56887func (mdcd MongoDbCollectionDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
56888	return nil, false
56889}
56890
56891// AsGreenplumTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56892func (mdcd MongoDbCollectionDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
56893	return nil, false
56894}
56895
56896// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56897func (mdcd MongoDbCollectionDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
56898	return nil, false
56899}
56900
56901// AsEloquaObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56902func (mdcd MongoDbCollectionDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
56903	return nil, false
56904}
56905
56906// AsDrillTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56907func (mdcd MongoDbCollectionDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
56908	return nil, false
56909}
56910
56911// AsCouchbaseTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56912func (mdcd MongoDbCollectionDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
56913	return nil, false
56914}
56915
56916// AsConcurObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56917func (mdcd MongoDbCollectionDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
56918	return nil, false
56919}
56920
56921// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56922func (mdcd MongoDbCollectionDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
56923	return nil, false
56924}
56925
56926// AsAmazonMWSObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56927func (mdcd MongoDbCollectionDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
56928	return nil, false
56929}
56930
56931// AsHTTPDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56932func (mdcd MongoDbCollectionDataset) AsHTTPDataset() (*HTTPDataset, bool) {
56933	return nil, false
56934}
56935
56936// AsAzureSearchIndexDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56937func (mdcd MongoDbCollectionDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
56938	return nil, false
56939}
56940
56941// AsWebTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56942func (mdcd MongoDbCollectionDataset) AsWebTableDataset() (*WebTableDataset, bool) {
56943	return nil, false
56944}
56945
56946// AsSQLServerTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56947func (mdcd MongoDbCollectionDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
56948	return nil, false
56949}
56950
56951// AsSapEccResourceDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56952func (mdcd MongoDbCollectionDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
56953	return nil, false
56954}
56955
56956// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56957func (mdcd MongoDbCollectionDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
56958	return nil, false
56959}
56960
56961// AsSalesforceObjectDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56962func (mdcd MongoDbCollectionDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
56963	return nil, false
56964}
56965
56966// AsRelationalTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56967func (mdcd MongoDbCollectionDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
56968	return nil, false
56969}
56970
56971// AsAzureMySQLTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56972func (mdcd MongoDbCollectionDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
56973	return nil, false
56974}
56975
56976// AsOracleTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56977func (mdcd MongoDbCollectionDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
56978	return nil, false
56979}
56980
56981// AsODataResourceDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56982func (mdcd MongoDbCollectionDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
56983	return nil, false
56984}
56985
56986// AsMongoDbCollectionDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56987func (mdcd MongoDbCollectionDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
56988	return &mdcd, true
56989}
56990
56991// AsFileShareDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56992func (mdcd MongoDbCollectionDataset) AsFileShareDataset() (*FileShareDataset, bool) {
56993	return nil, false
56994}
56995
56996// AsAzureDataLakeStoreDataset is the BasicDataset implementation for MongoDbCollectionDataset.
56997func (mdcd MongoDbCollectionDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
56998	return nil, false
56999}
57000
57001// AsDynamicsEntityDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57002func (mdcd MongoDbCollectionDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
57003	return nil, false
57004}
57005
57006// AsDocumentDbCollectionDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57007func (mdcd MongoDbCollectionDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
57008	return nil, false
57009}
57010
57011// AsCustomDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57012func (mdcd MongoDbCollectionDataset) AsCustomDataset() (*CustomDataset, bool) {
57013	return nil, false
57014}
57015
57016// AsCassandraTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57017func (mdcd MongoDbCollectionDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
57018	return nil, false
57019}
57020
57021// AsAzureSQLDWTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57022func (mdcd MongoDbCollectionDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
57023	return nil, false
57024}
57025
57026// AsAzureSQLTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57027func (mdcd MongoDbCollectionDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
57028	return nil, false
57029}
57030
57031// AsAzureTableDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57032func (mdcd MongoDbCollectionDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
57033	return nil, false
57034}
57035
57036// AsAzureBlobDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57037func (mdcd MongoDbCollectionDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
57038	return nil, false
57039}
57040
57041// AsAmazonS3Dataset is the BasicDataset implementation for MongoDbCollectionDataset.
57042func (mdcd MongoDbCollectionDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
57043	return nil, false
57044}
57045
57046// AsDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57047func (mdcd MongoDbCollectionDataset) AsDataset() (*Dataset, bool) {
57048	return nil, false
57049}
57050
57051// AsBasicDataset is the BasicDataset implementation for MongoDbCollectionDataset.
57052func (mdcd MongoDbCollectionDataset) AsBasicDataset() (BasicDataset, bool) {
57053	return &mdcd, true
57054}
57055
57056// UnmarshalJSON is the custom unmarshaler for MongoDbCollectionDataset struct.
57057func (mdcd *MongoDbCollectionDataset) UnmarshalJSON(body []byte) error {
57058	var m map[string]*json.RawMessage
57059	err := json.Unmarshal(body, &m)
57060	if err != nil {
57061		return err
57062	}
57063	for k, v := range m {
57064		switch k {
57065		case "typeProperties":
57066			if v != nil {
57067				var mongoDbCollectionDatasetTypeProperties MongoDbCollectionDatasetTypeProperties
57068				err = json.Unmarshal(*v, &mongoDbCollectionDatasetTypeProperties)
57069				if err != nil {
57070					return err
57071				}
57072				mdcd.MongoDbCollectionDatasetTypeProperties = &mongoDbCollectionDatasetTypeProperties
57073			}
57074		default:
57075			if v != nil {
57076				var additionalProperties interface{}
57077				err = json.Unmarshal(*v, &additionalProperties)
57078				if err != nil {
57079					return err
57080				}
57081				if mdcd.AdditionalProperties == nil {
57082					mdcd.AdditionalProperties = make(map[string]interface{})
57083				}
57084				mdcd.AdditionalProperties[k] = additionalProperties
57085			}
57086		case "description":
57087			if v != nil {
57088				var description string
57089				err = json.Unmarshal(*v, &description)
57090				if err != nil {
57091					return err
57092				}
57093				mdcd.Description = &description
57094			}
57095		case "structure":
57096			if v != nil {
57097				var structure interface{}
57098				err = json.Unmarshal(*v, &structure)
57099				if err != nil {
57100					return err
57101				}
57102				mdcd.Structure = structure
57103			}
57104		case "linkedServiceName":
57105			if v != nil {
57106				var linkedServiceName LinkedServiceReference
57107				err = json.Unmarshal(*v, &linkedServiceName)
57108				if err != nil {
57109					return err
57110				}
57111				mdcd.LinkedServiceName = &linkedServiceName
57112			}
57113		case "parameters":
57114			if v != nil {
57115				var parameters map[string]*ParameterSpecification
57116				err = json.Unmarshal(*v, &parameters)
57117				if err != nil {
57118					return err
57119				}
57120				mdcd.Parameters = parameters
57121			}
57122		case "annotations":
57123			if v != nil {
57124				var annotations []interface{}
57125				err = json.Unmarshal(*v, &annotations)
57126				if err != nil {
57127					return err
57128				}
57129				mdcd.Annotations = &annotations
57130			}
57131		case "type":
57132			if v != nil {
57133				var typeVar TypeBasicDataset
57134				err = json.Unmarshal(*v, &typeVar)
57135				if err != nil {
57136					return err
57137				}
57138				mdcd.Type = typeVar
57139			}
57140		}
57141	}
57142
57143	return nil
57144}
57145
57146// MongoDbCollectionDatasetTypeProperties mongoDB database dataset properties.
57147type MongoDbCollectionDatasetTypeProperties struct {
57148	// CollectionName - The table name of the MongoDB database. Type: string (or Expression with resultType string).
57149	CollectionName interface{} `json:"collectionName,omitempty"`
57150}
57151
57152// MongoDbLinkedService linked service for MongoDb data source.
57153type MongoDbLinkedService struct {
57154	// MongoDbLinkedServiceTypeProperties - MongoDB linked service properties.
57155	*MongoDbLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
57156	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
57157	AdditionalProperties map[string]interface{} `json:""`
57158	// ConnectVia - The integration runtime reference.
57159	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
57160	// Description - Linked service description.
57161	Description *string `json:"description,omitempty"`
57162	// Parameters - Parameters for linked service.
57163	Parameters map[string]*ParameterSpecification `json:"parameters"`
57164	// Annotations - List of tags that can be used for describing the Dataset.
57165	Annotations *[]interface{} `json:"annotations,omitempty"`
57166	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
57167	Type TypeBasicLinkedService `json:"type,omitempty"`
57168}
57169
57170// MarshalJSON is the custom marshaler for MongoDbLinkedService.
57171func (mdls MongoDbLinkedService) MarshalJSON() ([]byte, error) {
57172	mdls.Type = TypeMongoDb
57173	objectMap := make(map[string]interface{})
57174	if mdls.MongoDbLinkedServiceTypeProperties != nil {
57175		objectMap["typeProperties"] = mdls.MongoDbLinkedServiceTypeProperties
57176	}
57177	if mdls.ConnectVia != nil {
57178		objectMap["connectVia"] = mdls.ConnectVia
57179	}
57180	if mdls.Description != nil {
57181		objectMap["description"] = mdls.Description
57182	}
57183	if mdls.Parameters != nil {
57184		objectMap["parameters"] = mdls.Parameters
57185	}
57186	if mdls.Annotations != nil {
57187		objectMap["annotations"] = mdls.Annotations
57188	}
57189	if mdls.Type != "" {
57190		objectMap["type"] = mdls.Type
57191	}
57192	for k, v := range mdls.AdditionalProperties {
57193		objectMap[k] = v
57194	}
57195	return json.Marshal(objectMap)
57196}
57197
57198// AsResponsysLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57199func (mdls MongoDbLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
57200	return nil, false
57201}
57202
57203// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57204func (mdls MongoDbLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
57205	return nil, false
57206}
57207
57208// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57209func (mdls MongoDbLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
57210	return nil, false
57211}
57212
57213// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57214func (mdls MongoDbLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
57215	return nil, false
57216}
57217
57218// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57219func (mdls MongoDbLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
57220	return nil, false
57221}
57222
57223// AsNetezzaLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57224func (mdls MongoDbLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
57225	return nil, false
57226}
57227
57228// AsVerticaLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57229func (mdls MongoDbLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
57230	return nil, false
57231}
57232
57233// AsZohoLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57234func (mdls MongoDbLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
57235	return nil, false
57236}
57237
57238// AsXeroLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57239func (mdls MongoDbLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
57240	return nil, false
57241}
57242
57243// AsSquareLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57244func (mdls MongoDbLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
57245	return nil, false
57246}
57247
57248// AsSparkLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57249func (mdls MongoDbLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
57250	return nil, false
57251}
57252
57253// AsShopifyLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57254func (mdls MongoDbLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
57255	return nil, false
57256}
57257
57258// AsServiceNowLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57259func (mdls MongoDbLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
57260	return nil, false
57261}
57262
57263// AsQuickBooksLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57264func (mdls MongoDbLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
57265	return nil, false
57266}
57267
57268// AsPrestoLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57269func (mdls MongoDbLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
57270	return nil, false
57271}
57272
57273// AsPhoenixLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57274func (mdls MongoDbLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
57275	return nil, false
57276}
57277
57278// AsPaypalLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57279func (mdls MongoDbLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
57280	return nil, false
57281}
57282
57283// AsMarketoLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57284func (mdls MongoDbLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
57285	return nil, false
57286}
57287
57288// AsMariaDBLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57289func (mdls MongoDbLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
57290	return nil, false
57291}
57292
57293// AsMagentoLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57294func (mdls MongoDbLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
57295	return nil, false
57296}
57297
57298// AsJiraLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57299func (mdls MongoDbLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
57300	return nil, false
57301}
57302
57303// AsImpalaLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57304func (mdls MongoDbLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
57305	return nil, false
57306}
57307
57308// AsHubspotLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57309func (mdls MongoDbLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
57310	return nil, false
57311}
57312
57313// AsHiveLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57314func (mdls MongoDbLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
57315	return nil, false
57316}
57317
57318// AsHBaseLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57319func (mdls MongoDbLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
57320	return nil, false
57321}
57322
57323// AsGreenplumLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57324func (mdls MongoDbLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
57325	return nil, false
57326}
57327
57328// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57329func (mdls MongoDbLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
57330	return nil, false
57331}
57332
57333// AsEloquaLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57334func (mdls MongoDbLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
57335	return nil, false
57336}
57337
57338// AsDrillLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57339func (mdls MongoDbLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
57340	return nil, false
57341}
57342
57343// AsCouchbaseLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57344func (mdls MongoDbLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
57345	return nil, false
57346}
57347
57348// AsConcurLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57349func (mdls MongoDbLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
57350	return nil, false
57351}
57352
57353// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57354func (mdls MongoDbLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
57355	return nil, false
57356}
57357
57358// AsAmazonMWSLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57359func (mdls MongoDbLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
57360	return nil, false
57361}
57362
57363// AsSapHanaLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57364func (mdls MongoDbLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
57365	return nil, false
57366}
57367
57368// AsSapBWLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57369func (mdls MongoDbLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
57370	return nil, false
57371}
57372
57373// AsSftpServerLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57374func (mdls MongoDbLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
57375	return nil, false
57376}
57377
57378// AsFtpServerLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57379func (mdls MongoDbLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
57380	return nil, false
57381}
57382
57383// AsHTTPLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57384func (mdls MongoDbLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
57385	return nil, false
57386}
57387
57388// AsAzureSearchLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57389func (mdls MongoDbLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
57390	return nil, false
57391}
57392
57393// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57394func (mdls MongoDbLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
57395	return nil, false
57396}
57397
57398// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57399func (mdls MongoDbLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
57400	return nil, false
57401}
57402
57403// AsAmazonS3LinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57404func (mdls MongoDbLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
57405	return nil, false
57406}
57407
57408// AsSapEccLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57409func (mdls MongoDbLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
57410	return nil, false
57411}
57412
57413// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57414func (mdls MongoDbLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
57415	return nil, false
57416}
57417
57418// AsSalesforceLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57419func (mdls MongoDbLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
57420	return nil, false
57421}
57422
57423// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57424func (mdls MongoDbLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
57425	return nil, false
57426}
57427
57428// AsMongoDbLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57429func (mdls MongoDbLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
57430	return &mdls, true
57431}
57432
57433// AsCassandraLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57434func (mdls MongoDbLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
57435	return nil, false
57436}
57437
57438// AsWebLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57439func (mdls MongoDbLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
57440	return nil, false
57441}
57442
57443// AsODataLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57444func (mdls MongoDbLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
57445	return nil, false
57446}
57447
57448// AsHdfsLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57449func (mdls MongoDbLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
57450	return nil, false
57451}
57452
57453// AsOdbcLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57454func (mdls MongoDbLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
57455	return nil, false
57456}
57457
57458// AsAzureMLLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57459func (mdls MongoDbLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
57460	return nil, false
57461}
57462
57463// AsTeradataLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57464func (mdls MongoDbLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
57465	return nil, false
57466}
57467
57468// AsDb2LinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57469func (mdls MongoDbLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
57470	return nil, false
57471}
57472
57473// AsSybaseLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57474func (mdls MongoDbLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
57475	return nil, false
57476}
57477
57478// AsPostgreSQLLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57479func (mdls MongoDbLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
57480	return nil, false
57481}
57482
57483// AsMySQLLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57484func (mdls MongoDbLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
57485	return nil, false
57486}
57487
57488// AsAzureMySQLLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57489func (mdls MongoDbLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
57490	return nil, false
57491}
57492
57493// AsOracleLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57494func (mdls MongoDbLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
57495	return nil, false
57496}
57497
57498// AsFileServerLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57499func (mdls MongoDbLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
57500	return nil, false
57501}
57502
57503// AsHDInsightLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57504func (mdls MongoDbLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
57505	return nil, false
57506}
57507
57508// AsDynamicsLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57509func (mdls MongoDbLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
57510	return nil, false
57511}
57512
57513// AsCosmosDbLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57514func (mdls MongoDbLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
57515	return nil, false
57516}
57517
57518// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57519func (mdls MongoDbLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
57520	return nil, false
57521}
57522
57523// AsAzureBatchLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57524func (mdls MongoDbLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
57525	return nil, false
57526}
57527
57528// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57529func (mdls MongoDbLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
57530	return nil, false
57531}
57532
57533// AsSQLServerLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57534func (mdls MongoDbLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
57535	return nil, false
57536}
57537
57538// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57539func (mdls MongoDbLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
57540	return nil, false
57541}
57542
57543// AsAzureStorageLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57544func (mdls MongoDbLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
57545	return nil, false
57546}
57547
57548// AsLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57549func (mdls MongoDbLinkedService) AsLinkedService() (*LinkedService, bool) {
57550	return nil, false
57551}
57552
57553// AsBasicLinkedService is the BasicLinkedService implementation for MongoDbLinkedService.
57554func (mdls MongoDbLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
57555	return &mdls, true
57556}
57557
57558// UnmarshalJSON is the custom unmarshaler for MongoDbLinkedService struct.
57559func (mdls *MongoDbLinkedService) UnmarshalJSON(body []byte) error {
57560	var m map[string]*json.RawMessage
57561	err := json.Unmarshal(body, &m)
57562	if err != nil {
57563		return err
57564	}
57565	for k, v := range m {
57566		switch k {
57567		case "typeProperties":
57568			if v != nil {
57569				var mongoDbLinkedServiceTypeProperties MongoDbLinkedServiceTypeProperties
57570				err = json.Unmarshal(*v, &mongoDbLinkedServiceTypeProperties)
57571				if err != nil {
57572					return err
57573				}
57574				mdls.MongoDbLinkedServiceTypeProperties = &mongoDbLinkedServiceTypeProperties
57575			}
57576		default:
57577			if v != nil {
57578				var additionalProperties interface{}
57579				err = json.Unmarshal(*v, &additionalProperties)
57580				if err != nil {
57581					return err
57582				}
57583				if mdls.AdditionalProperties == nil {
57584					mdls.AdditionalProperties = make(map[string]interface{})
57585				}
57586				mdls.AdditionalProperties[k] = additionalProperties
57587			}
57588		case "connectVia":
57589			if v != nil {
57590				var connectVia IntegrationRuntimeReference
57591				err = json.Unmarshal(*v, &connectVia)
57592				if err != nil {
57593					return err
57594				}
57595				mdls.ConnectVia = &connectVia
57596			}
57597		case "description":
57598			if v != nil {
57599				var description string
57600				err = json.Unmarshal(*v, &description)
57601				if err != nil {
57602					return err
57603				}
57604				mdls.Description = &description
57605			}
57606		case "parameters":
57607			if v != nil {
57608				var parameters map[string]*ParameterSpecification
57609				err = json.Unmarshal(*v, &parameters)
57610				if err != nil {
57611					return err
57612				}
57613				mdls.Parameters = parameters
57614			}
57615		case "annotations":
57616			if v != nil {
57617				var annotations []interface{}
57618				err = json.Unmarshal(*v, &annotations)
57619				if err != nil {
57620					return err
57621				}
57622				mdls.Annotations = &annotations
57623			}
57624		case "type":
57625			if v != nil {
57626				var typeVar TypeBasicLinkedService
57627				err = json.Unmarshal(*v, &typeVar)
57628				if err != nil {
57629					return err
57630				}
57631				mdls.Type = typeVar
57632			}
57633		}
57634	}
57635
57636	return nil
57637}
57638
57639// MongoDbLinkedServiceTypeProperties mongoDB linked service properties.
57640type MongoDbLinkedServiceTypeProperties struct {
57641	// Server - The IP address or server name of the MongoDB server. Type: string (or Expression with resultType string).
57642	Server interface{} `json:"server,omitempty"`
57643	// AuthenticationType - The authentication type to be used to connect to the MongoDB database. Possible values include: 'MongoDbAuthenticationTypeBasic', 'MongoDbAuthenticationTypeAnonymous'
57644	AuthenticationType MongoDbAuthenticationType `json:"authenticationType,omitempty"`
57645	// DatabaseName - The name of the MongoDB database that you want to access. Type: string (or Expression with resultType string).
57646	DatabaseName interface{} `json:"databaseName,omitempty"`
57647	// Username - Username for authentication. Type: string (or Expression with resultType string).
57648	Username interface{} `json:"username,omitempty"`
57649	// Password - Password for authentication.
57650	Password BasicSecretBase `json:"password,omitempty"`
57651	// AuthSource - Database to verify the username and password. Type: string (or Expression with resultType string).
57652	AuthSource interface{} `json:"authSource,omitempty"`
57653	// Port - The TCP port number that the MongoDB server uses to listen for client connections. The default value is 27017. Type: integer (or Expression with resultType integer), minimum: 0.
57654	Port interface{} `json:"port,omitempty"`
57655	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false. Type: boolean (or Expression with resultType boolean).
57656	EnableSsl interface{} `json:"enableSsl,omitempty"`
57657	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false. Type: boolean (or Expression with resultType boolean).
57658	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
57659	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
57660	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
57661}
57662
57663// UnmarshalJSON is the custom unmarshaler for MongoDbLinkedServiceTypeProperties struct.
57664func (mdlstp *MongoDbLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
57665	var m map[string]*json.RawMessage
57666	err := json.Unmarshal(body, &m)
57667	if err != nil {
57668		return err
57669	}
57670	for k, v := range m {
57671		switch k {
57672		case "server":
57673			if v != nil {
57674				var server interface{}
57675				err = json.Unmarshal(*v, &server)
57676				if err != nil {
57677					return err
57678				}
57679				mdlstp.Server = server
57680			}
57681		case "authenticationType":
57682			if v != nil {
57683				var authenticationType MongoDbAuthenticationType
57684				err = json.Unmarshal(*v, &authenticationType)
57685				if err != nil {
57686					return err
57687				}
57688				mdlstp.AuthenticationType = authenticationType
57689			}
57690		case "databaseName":
57691			if v != nil {
57692				var databaseName interface{}
57693				err = json.Unmarshal(*v, &databaseName)
57694				if err != nil {
57695					return err
57696				}
57697				mdlstp.DatabaseName = databaseName
57698			}
57699		case "username":
57700			if v != nil {
57701				var username interface{}
57702				err = json.Unmarshal(*v, &username)
57703				if err != nil {
57704					return err
57705				}
57706				mdlstp.Username = username
57707			}
57708		case "password":
57709			if v != nil {
57710				password, err := unmarshalBasicSecretBase(*v)
57711				if err != nil {
57712					return err
57713				}
57714				mdlstp.Password = password
57715			}
57716		case "authSource":
57717			if v != nil {
57718				var authSource interface{}
57719				err = json.Unmarshal(*v, &authSource)
57720				if err != nil {
57721					return err
57722				}
57723				mdlstp.AuthSource = authSource
57724			}
57725		case "port":
57726			if v != nil {
57727				var port interface{}
57728				err = json.Unmarshal(*v, &port)
57729				if err != nil {
57730					return err
57731				}
57732				mdlstp.Port = port
57733			}
57734		case "enableSsl":
57735			if v != nil {
57736				var enableSsl interface{}
57737				err = json.Unmarshal(*v, &enableSsl)
57738				if err != nil {
57739					return err
57740				}
57741				mdlstp.EnableSsl = enableSsl
57742			}
57743		case "allowSelfSignedServerCert":
57744			if v != nil {
57745				var allowSelfSignedServerCert interface{}
57746				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
57747				if err != nil {
57748					return err
57749				}
57750				mdlstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
57751			}
57752		case "encryptedCredential":
57753			if v != nil {
57754				var encryptedCredential interface{}
57755				err = json.Unmarshal(*v, &encryptedCredential)
57756				if err != nil {
57757					return err
57758				}
57759				mdlstp.EncryptedCredential = encryptedCredential
57760			}
57761		}
57762	}
57763
57764	return nil
57765}
57766
57767// MongoDbSource a copy activity source for a MongoDB database.
57768type MongoDbSource struct {
57769	// Query - Database query. Should be a SQL-92 query expression. Type: string (or Expression with resultType string).
57770	Query interface{} `json:"query,omitempty"`
57771	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
57772	AdditionalProperties map[string]interface{} `json:""`
57773	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
57774	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
57775	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
57776	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
57777	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
57778	Type TypeBasicCopySource `json:"type,omitempty"`
57779}
57780
57781// MarshalJSON is the custom marshaler for MongoDbSource.
57782func (mds MongoDbSource) MarshalJSON() ([]byte, error) {
57783	mds.Type = TypeMongoDbSource
57784	objectMap := make(map[string]interface{})
57785	objectMap["query"] = mds.Query
57786	objectMap["sourceRetryCount"] = mds.SourceRetryCount
57787	objectMap["sourceRetryWait"] = mds.SourceRetryWait
57788	if mds.Type != "" {
57789		objectMap["type"] = mds.Type
57790	}
57791	for k, v := range mds.AdditionalProperties {
57792		objectMap[k] = v
57793	}
57794	return json.Marshal(objectMap)
57795}
57796
57797// AsAmazonRedshiftSource is the BasicCopySource implementation for MongoDbSource.
57798func (mds MongoDbSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
57799	return nil, false
57800}
57801
57802// AsResponsysSource is the BasicCopySource implementation for MongoDbSource.
57803func (mds MongoDbSource) AsResponsysSource() (*ResponsysSource, bool) {
57804	return nil, false
57805}
57806
57807// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for MongoDbSource.
57808func (mds MongoDbSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
57809	return nil, false
57810}
57811
57812// AsVerticaSource is the BasicCopySource implementation for MongoDbSource.
57813func (mds MongoDbSource) AsVerticaSource() (*VerticaSource, bool) {
57814	return nil, false
57815}
57816
57817// AsNetezzaSource is the BasicCopySource implementation for MongoDbSource.
57818func (mds MongoDbSource) AsNetezzaSource() (*NetezzaSource, bool) {
57819	return nil, false
57820}
57821
57822// AsZohoSource is the BasicCopySource implementation for MongoDbSource.
57823func (mds MongoDbSource) AsZohoSource() (*ZohoSource, bool) {
57824	return nil, false
57825}
57826
57827// AsXeroSource is the BasicCopySource implementation for MongoDbSource.
57828func (mds MongoDbSource) AsXeroSource() (*XeroSource, bool) {
57829	return nil, false
57830}
57831
57832// AsSquareSource is the BasicCopySource implementation for MongoDbSource.
57833func (mds MongoDbSource) AsSquareSource() (*SquareSource, bool) {
57834	return nil, false
57835}
57836
57837// AsSparkSource is the BasicCopySource implementation for MongoDbSource.
57838func (mds MongoDbSource) AsSparkSource() (*SparkSource, bool) {
57839	return nil, false
57840}
57841
57842// AsShopifySource is the BasicCopySource implementation for MongoDbSource.
57843func (mds MongoDbSource) AsShopifySource() (*ShopifySource, bool) {
57844	return nil, false
57845}
57846
57847// AsServiceNowSource is the BasicCopySource implementation for MongoDbSource.
57848func (mds MongoDbSource) AsServiceNowSource() (*ServiceNowSource, bool) {
57849	return nil, false
57850}
57851
57852// AsQuickBooksSource is the BasicCopySource implementation for MongoDbSource.
57853func (mds MongoDbSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
57854	return nil, false
57855}
57856
57857// AsPrestoSource is the BasicCopySource implementation for MongoDbSource.
57858func (mds MongoDbSource) AsPrestoSource() (*PrestoSource, bool) {
57859	return nil, false
57860}
57861
57862// AsPhoenixSource is the BasicCopySource implementation for MongoDbSource.
57863func (mds MongoDbSource) AsPhoenixSource() (*PhoenixSource, bool) {
57864	return nil, false
57865}
57866
57867// AsPaypalSource is the BasicCopySource implementation for MongoDbSource.
57868func (mds MongoDbSource) AsPaypalSource() (*PaypalSource, bool) {
57869	return nil, false
57870}
57871
57872// AsMarketoSource is the BasicCopySource implementation for MongoDbSource.
57873func (mds MongoDbSource) AsMarketoSource() (*MarketoSource, bool) {
57874	return nil, false
57875}
57876
57877// AsMariaDBSource is the BasicCopySource implementation for MongoDbSource.
57878func (mds MongoDbSource) AsMariaDBSource() (*MariaDBSource, bool) {
57879	return nil, false
57880}
57881
57882// AsMagentoSource is the BasicCopySource implementation for MongoDbSource.
57883func (mds MongoDbSource) AsMagentoSource() (*MagentoSource, bool) {
57884	return nil, false
57885}
57886
57887// AsJiraSource is the BasicCopySource implementation for MongoDbSource.
57888func (mds MongoDbSource) AsJiraSource() (*JiraSource, bool) {
57889	return nil, false
57890}
57891
57892// AsImpalaSource is the BasicCopySource implementation for MongoDbSource.
57893func (mds MongoDbSource) AsImpalaSource() (*ImpalaSource, bool) {
57894	return nil, false
57895}
57896
57897// AsHubspotSource is the BasicCopySource implementation for MongoDbSource.
57898func (mds MongoDbSource) AsHubspotSource() (*HubspotSource, bool) {
57899	return nil, false
57900}
57901
57902// AsHiveSource is the BasicCopySource implementation for MongoDbSource.
57903func (mds MongoDbSource) AsHiveSource() (*HiveSource, bool) {
57904	return nil, false
57905}
57906
57907// AsHBaseSource is the BasicCopySource implementation for MongoDbSource.
57908func (mds MongoDbSource) AsHBaseSource() (*HBaseSource, bool) {
57909	return nil, false
57910}
57911
57912// AsGreenplumSource is the BasicCopySource implementation for MongoDbSource.
57913func (mds MongoDbSource) AsGreenplumSource() (*GreenplumSource, bool) {
57914	return nil, false
57915}
57916
57917// AsGoogleBigQuerySource is the BasicCopySource implementation for MongoDbSource.
57918func (mds MongoDbSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
57919	return nil, false
57920}
57921
57922// AsEloquaSource is the BasicCopySource implementation for MongoDbSource.
57923func (mds MongoDbSource) AsEloquaSource() (*EloquaSource, bool) {
57924	return nil, false
57925}
57926
57927// AsDrillSource is the BasicCopySource implementation for MongoDbSource.
57928func (mds MongoDbSource) AsDrillSource() (*DrillSource, bool) {
57929	return nil, false
57930}
57931
57932// AsCouchbaseSource is the BasicCopySource implementation for MongoDbSource.
57933func (mds MongoDbSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
57934	return nil, false
57935}
57936
57937// AsConcurSource is the BasicCopySource implementation for MongoDbSource.
57938func (mds MongoDbSource) AsConcurSource() (*ConcurSource, bool) {
57939	return nil, false
57940}
57941
57942// AsAzurePostgreSQLSource is the BasicCopySource implementation for MongoDbSource.
57943func (mds MongoDbSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
57944	return nil, false
57945}
57946
57947// AsAmazonMWSSource is the BasicCopySource implementation for MongoDbSource.
57948func (mds MongoDbSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
57949	return nil, false
57950}
57951
57952// AsHTTPSource is the BasicCopySource implementation for MongoDbSource.
57953func (mds MongoDbSource) AsHTTPSource() (*HTTPSource, bool) {
57954	return nil, false
57955}
57956
57957// AsAzureDataLakeStoreSource is the BasicCopySource implementation for MongoDbSource.
57958func (mds MongoDbSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
57959	return nil, false
57960}
57961
57962// AsMongoDbSource is the BasicCopySource implementation for MongoDbSource.
57963func (mds MongoDbSource) AsMongoDbSource() (*MongoDbSource, bool) {
57964	return &mds, true
57965}
57966
57967// AsCassandraSource is the BasicCopySource implementation for MongoDbSource.
57968func (mds MongoDbSource) AsCassandraSource() (*CassandraSource, bool) {
57969	return nil, false
57970}
57971
57972// AsWebSource is the BasicCopySource implementation for MongoDbSource.
57973func (mds MongoDbSource) AsWebSource() (*WebSource, bool) {
57974	return nil, false
57975}
57976
57977// AsOracleSource is the BasicCopySource implementation for MongoDbSource.
57978func (mds MongoDbSource) AsOracleSource() (*OracleSource, bool) {
57979	return nil, false
57980}
57981
57982// AsAzureMySQLSource is the BasicCopySource implementation for MongoDbSource.
57983func (mds MongoDbSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
57984	return nil, false
57985}
57986
57987// AsHdfsSource is the BasicCopySource implementation for MongoDbSource.
57988func (mds MongoDbSource) AsHdfsSource() (*HdfsSource, bool) {
57989	return nil, false
57990}
57991
57992// AsFileSystemSource is the BasicCopySource implementation for MongoDbSource.
57993func (mds MongoDbSource) AsFileSystemSource() (*FileSystemSource, bool) {
57994	return nil, false
57995}
57996
57997// AsSQLDWSource is the BasicCopySource implementation for MongoDbSource.
57998func (mds MongoDbSource) AsSQLDWSource() (*SQLDWSource, bool) {
57999	return nil, false
58000}
58001
58002// AsSQLSource is the BasicCopySource implementation for MongoDbSource.
58003func (mds MongoDbSource) AsSQLSource() (*SQLSource, bool) {
58004	return nil, false
58005}
58006
58007// AsSapEccSource is the BasicCopySource implementation for MongoDbSource.
58008func (mds MongoDbSource) AsSapEccSource() (*SapEccSource, bool) {
58009	return nil, false
58010}
58011
58012// AsSapCloudForCustomerSource is the BasicCopySource implementation for MongoDbSource.
58013func (mds MongoDbSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
58014	return nil, false
58015}
58016
58017// AsSalesforceSource is the BasicCopySource implementation for MongoDbSource.
58018func (mds MongoDbSource) AsSalesforceSource() (*SalesforceSource, bool) {
58019	return nil, false
58020}
58021
58022// AsRelationalSource is the BasicCopySource implementation for MongoDbSource.
58023func (mds MongoDbSource) AsRelationalSource() (*RelationalSource, bool) {
58024	return nil, false
58025}
58026
58027// AsDynamicsSource is the BasicCopySource implementation for MongoDbSource.
58028func (mds MongoDbSource) AsDynamicsSource() (*DynamicsSource, bool) {
58029	return nil, false
58030}
58031
58032// AsDocumentDbCollectionSource is the BasicCopySource implementation for MongoDbSource.
58033func (mds MongoDbSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
58034	return nil, false
58035}
58036
58037// AsBlobSource is the BasicCopySource implementation for MongoDbSource.
58038func (mds MongoDbSource) AsBlobSource() (*BlobSource, bool) {
58039	return nil, false
58040}
58041
58042// AsAzureTableSource is the BasicCopySource implementation for MongoDbSource.
58043func (mds MongoDbSource) AsAzureTableSource() (*AzureTableSource, bool) {
58044	return nil, false
58045}
58046
58047// AsCopySource is the BasicCopySource implementation for MongoDbSource.
58048func (mds MongoDbSource) AsCopySource() (*CopySource, bool) {
58049	return nil, false
58050}
58051
58052// AsBasicCopySource is the BasicCopySource implementation for MongoDbSource.
58053func (mds MongoDbSource) AsBasicCopySource() (BasicCopySource, bool) {
58054	return &mds, true
58055}
58056
58057// BasicMultiplePipelineTrigger base class for all triggers that support one to many model for trigger to pipeline.
58058type BasicMultiplePipelineTrigger interface {
58059	AsBlobTrigger() (*BlobTrigger, bool)
58060	AsScheduleTrigger() (*ScheduleTrigger, bool)
58061	AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool)
58062}
58063
58064// MultiplePipelineTrigger base class for all triggers that support one to many model for trigger to pipeline.
58065type MultiplePipelineTrigger struct {
58066	// Pipelines - Pipelines that need to be started.
58067	Pipelines *[]TriggerPipelineReference `json:"pipelines,omitempty"`
58068	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
58069	AdditionalProperties map[string]interface{} `json:""`
58070	// Description - Trigger description.
58071	Description *string `json:"description,omitempty"`
58072	// RuntimeState - Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger. Possible values include: 'TriggerRuntimeStateStarted', 'TriggerRuntimeStateStopped', 'TriggerRuntimeStateDisabled'
58073	RuntimeState TriggerRuntimeState `json:"runtimeState,omitempty"`
58074	// Type - Possible values include: 'TypeTrigger', 'TypeTumblingWindowTrigger', 'TypeBlobTrigger', 'TypeScheduleTrigger', 'TypeMultiplePipelineTrigger'
58075	Type TypeBasicTrigger `json:"type,omitempty"`
58076}
58077
58078func unmarshalBasicMultiplePipelineTrigger(body []byte) (BasicMultiplePipelineTrigger, error) {
58079	var m map[string]interface{}
58080	err := json.Unmarshal(body, &m)
58081	if err != nil {
58082		return nil, err
58083	}
58084
58085	switch m["type"] {
58086	case string(TypeBlobTrigger):
58087		var bt BlobTrigger
58088		err := json.Unmarshal(body, &bt)
58089		return bt, err
58090	case string(TypeScheduleTrigger):
58091		var st ScheduleTrigger
58092		err := json.Unmarshal(body, &st)
58093		return st, err
58094	default:
58095		var mpt MultiplePipelineTrigger
58096		err := json.Unmarshal(body, &mpt)
58097		return mpt, err
58098	}
58099}
58100func unmarshalBasicMultiplePipelineTriggerArray(body []byte) ([]BasicMultiplePipelineTrigger, error) {
58101	var rawMessages []*json.RawMessage
58102	err := json.Unmarshal(body, &rawMessages)
58103	if err != nil {
58104		return nil, err
58105	}
58106
58107	mptArray := make([]BasicMultiplePipelineTrigger, len(rawMessages))
58108
58109	for index, rawMessage := range rawMessages {
58110		mpt, err := unmarshalBasicMultiplePipelineTrigger(*rawMessage)
58111		if err != nil {
58112			return nil, err
58113		}
58114		mptArray[index] = mpt
58115	}
58116	return mptArray, nil
58117}
58118
58119// MarshalJSON is the custom marshaler for MultiplePipelineTrigger.
58120func (mpt MultiplePipelineTrigger) MarshalJSON() ([]byte, error) {
58121	mpt.Type = TypeMultiplePipelineTrigger
58122	objectMap := make(map[string]interface{})
58123	if mpt.Pipelines != nil {
58124		objectMap["pipelines"] = mpt.Pipelines
58125	}
58126	if mpt.Description != nil {
58127		objectMap["description"] = mpt.Description
58128	}
58129	if mpt.RuntimeState != "" {
58130		objectMap["runtimeState"] = mpt.RuntimeState
58131	}
58132	if mpt.Type != "" {
58133		objectMap["type"] = mpt.Type
58134	}
58135	for k, v := range mpt.AdditionalProperties {
58136		objectMap[k] = v
58137	}
58138	return json.Marshal(objectMap)
58139}
58140
58141// AsTumblingWindowTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58142func (mpt MultiplePipelineTrigger) AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool) {
58143	return nil, false
58144}
58145
58146// AsBlobTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58147func (mpt MultiplePipelineTrigger) AsBlobTrigger() (*BlobTrigger, bool) {
58148	return nil, false
58149}
58150
58151// AsScheduleTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58152func (mpt MultiplePipelineTrigger) AsScheduleTrigger() (*ScheduleTrigger, bool) {
58153	return nil, false
58154}
58155
58156// AsMultiplePipelineTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58157func (mpt MultiplePipelineTrigger) AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool) {
58158	return &mpt, true
58159}
58160
58161// AsBasicMultiplePipelineTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58162func (mpt MultiplePipelineTrigger) AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool) {
58163	return &mpt, true
58164}
58165
58166// AsTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58167func (mpt MultiplePipelineTrigger) AsTrigger() (*Trigger, bool) {
58168	return nil, false
58169}
58170
58171// AsBasicTrigger is the BasicTrigger implementation for MultiplePipelineTrigger.
58172func (mpt MultiplePipelineTrigger) AsBasicTrigger() (BasicTrigger, bool) {
58173	return &mpt, true
58174}
58175
58176// MySQLLinkedService linked service for MySQL data source.
58177type MySQLLinkedService struct {
58178	// MySQLLinkedServiceTypeProperties - MySQL linked service properties.
58179	*MySQLLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
58180	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
58181	AdditionalProperties map[string]interface{} `json:""`
58182	// ConnectVia - The integration runtime reference.
58183	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
58184	// Description - Linked service description.
58185	Description *string `json:"description,omitempty"`
58186	// Parameters - Parameters for linked service.
58187	Parameters map[string]*ParameterSpecification `json:"parameters"`
58188	// Annotations - List of tags that can be used for describing the Dataset.
58189	Annotations *[]interface{} `json:"annotations,omitempty"`
58190	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
58191	Type TypeBasicLinkedService `json:"type,omitempty"`
58192}
58193
58194// MarshalJSON is the custom marshaler for MySQLLinkedService.
58195func (msls MySQLLinkedService) MarshalJSON() ([]byte, error) {
58196	msls.Type = TypeMySQL
58197	objectMap := make(map[string]interface{})
58198	if msls.MySQLLinkedServiceTypeProperties != nil {
58199		objectMap["typeProperties"] = msls.MySQLLinkedServiceTypeProperties
58200	}
58201	if msls.ConnectVia != nil {
58202		objectMap["connectVia"] = msls.ConnectVia
58203	}
58204	if msls.Description != nil {
58205		objectMap["description"] = msls.Description
58206	}
58207	if msls.Parameters != nil {
58208		objectMap["parameters"] = msls.Parameters
58209	}
58210	if msls.Annotations != nil {
58211		objectMap["annotations"] = msls.Annotations
58212	}
58213	if msls.Type != "" {
58214		objectMap["type"] = msls.Type
58215	}
58216	for k, v := range msls.AdditionalProperties {
58217		objectMap[k] = v
58218	}
58219	return json.Marshal(objectMap)
58220}
58221
58222// AsResponsysLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58223func (msls MySQLLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
58224	return nil, false
58225}
58226
58227// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58228func (msls MySQLLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
58229	return nil, false
58230}
58231
58232// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58233func (msls MySQLLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
58234	return nil, false
58235}
58236
58237// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58238func (msls MySQLLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
58239	return nil, false
58240}
58241
58242// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58243func (msls MySQLLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
58244	return nil, false
58245}
58246
58247// AsNetezzaLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58248func (msls MySQLLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
58249	return nil, false
58250}
58251
58252// AsVerticaLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58253func (msls MySQLLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
58254	return nil, false
58255}
58256
58257// AsZohoLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58258func (msls MySQLLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
58259	return nil, false
58260}
58261
58262// AsXeroLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58263func (msls MySQLLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
58264	return nil, false
58265}
58266
58267// AsSquareLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58268func (msls MySQLLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
58269	return nil, false
58270}
58271
58272// AsSparkLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58273func (msls MySQLLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
58274	return nil, false
58275}
58276
58277// AsShopifyLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58278func (msls MySQLLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
58279	return nil, false
58280}
58281
58282// AsServiceNowLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58283func (msls MySQLLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
58284	return nil, false
58285}
58286
58287// AsQuickBooksLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58288func (msls MySQLLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
58289	return nil, false
58290}
58291
58292// AsPrestoLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58293func (msls MySQLLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
58294	return nil, false
58295}
58296
58297// AsPhoenixLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58298func (msls MySQLLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
58299	return nil, false
58300}
58301
58302// AsPaypalLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58303func (msls MySQLLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
58304	return nil, false
58305}
58306
58307// AsMarketoLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58308func (msls MySQLLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
58309	return nil, false
58310}
58311
58312// AsMariaDBLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58313func (msls MySQLLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
58314	return nil, false
58315}
58316
58317// AsMagentoLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58318func (msls MySQLLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
58319	return nil, false
58320}
58321
58322// AsJiraLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58323func (msls MySQLLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
58324	return nil, false
58325}
58326
58327// AsImpalaLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58328func (msls MySQLLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
58329	return nil, false
58330}
58331
58332// AsHubspotLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58333func (msls MySQLLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
58334	return nil, false
58335}
58336
58337// AsHiveLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58338func (msls MySQLLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
58339	return nil, false
58340}
58341
58342// AsHBaseLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58343func (msls MySQLLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
58344	return nil, false
58345}
58346
58347// AsGreenplumLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58348func (msls MySQLLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
58349	return nil, false
58350}
58351
58352// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58353func (msls MySQLLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
58354	return nil, false
58355}
58356
58357// AsEloquaLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58358func (msls MySQLLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
58359	return nil, false
58360}
58361
58362// AsDrillLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58363func (msls MySQLLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
58364	return nil, false
58365}
58366
58367// AsCouchbaseLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58368func (msls MySQLLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
58369	return nil, false
58370}
58371
58372// AsConcurLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58373func (msls MySQLLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
58374	return nil, false
58375}
58376
58377// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58378func (msls MySQLLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
58379	return nil, false
58380}
58381
58382// AsAmazonMWSLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58383func (msls MySQLLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
58384	return nil, false
58385}
58386
58387// AsSapHanaLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58388func (msls MySQLLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
58389	return nil, false
58390}
58391
58392// AsSapBWLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58393func (msls MySQLLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
58394	return nil, false
58395}
58396
58397// AsSftpServerLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58398func (msls MySQLLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
58399	return nil, false
58400}
58401
58402// AsFtpServerLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58403func (msls MySQLLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
58404	return nil, false
58405}
58406
58407// AsHTTPLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58408func (msls MySQLLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
58409	return nil, false
58410}
58411
58412// AsAzureSearchLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58413func (msls MySQLLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
58414	return nil, false
58415}
58416
58417// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58418func (msls MySQLLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
58419	return nil, false
58420}
58421
58422// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58423func (msls MySQLLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
58424	return nil, false
58425}
58426
58427// AsAmazonS3LinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58428func (msls MySQLLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
58429	return nil, false
58430}
58431
58432// AsSapEccLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58433func (msls MySQLLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
58434	return nil, false
58435}
58436
58437// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58438func (msls MySQLLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
58439	return nil, false
58440}
58441
58442// AsSalesforceLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58443func (msls MySQLLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
58444	return nil, false
58445}
58446
58447// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58448func (msls MySQLLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
58449	return nil, false
58450}
58451
58452// AsMongoDbLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58453func (msls MySQLLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
58454	return nil, false
58455}
58456
58457// AsCassandraLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58458func (msls MySQLLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
58459	return nil, false
58460}
58461
58462// AsWebLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58463func (msls MySQLLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
58464	return nil, false
58465}
58466
58467// AsODataLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58468func (msls MySQLLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
58469	return nil, false
58470}
58471
58472// AsHdfsLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58473func (msls MySQLLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
58474	return nil, false
58475}
58476
58477// AsOdbcLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58478func (msls MySQLLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
58479	return nil, false
58480}
58481
58482// AsAzureMLLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58483func (msls MySQLLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
58484	return nil, false
58485}
58486
58487// AsTeradataLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58488func (msls MySQLLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
58489	return nil, false
58490}
58491
58492// AsDb2LinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58493func (msls MySQLLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
58494	return nil, false
58495}
58496
58497// AsSybaseLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58498func (msls MySQLLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
58499	return nil, false
58500}
58501
58502// AsPostgreSQLLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58503func (msls MySQLLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
58504	return nil, false
58505}
58506
58507// AsMySQLLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58508func (msls MySQLLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
58509	return &msls, true
58510}
58511
58512// AsAzureMySQLLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58513func (msls MySQLLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
58514	return nil, false
58515}
58516
58517// AsOracleLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58518func (msls MySQLLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
58519	return nil, false
58520}
58521
58522// AsFileServerLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58523func (msls MySQLLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
58524	return nil, false
58525}
58526
58527// AsHDInsightLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58528func (msls MySQLLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
58529	return nil, false
58530}
58531
58532// AsDynamicsLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58533func (msls MySQLLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
58534	return nil, false
58535}
58536
58537// AsCosmosDbLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58538func (msls MySQLLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
58539	return nil, false
58540}
58541
58542// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58543func (msls MySQLLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
58544	return nil, false
58545}
58546
58547// AsAzureBatchLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58548func (msls MySQLLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
58549	return nil, false
58550}
58551
58552// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58553func (msls MySQLLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
58554	return nil, false
58555}
58556
58557// AsSQLServerLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58558func (msls MySQLLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
58559	return nil, false
58560}
58561
58562// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58563func (msls MySQLLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
58564	return nil, false
58565}
58566
58567// AsAzureStorageLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58568func (msls MySQLLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
58569	return nil, false
58570}
58571
58572// AsLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58573func (msls MySQLLinkedService) AsLinkedService() (*LinkedService, bool) {
58574	return nil, false
58575}
58576
58577// AsBasicLinkedService is the BasicLinkedService implementation for MySQLLinkedService.
58578func (msls MySQLLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
58579	return &msls, true
58580}
58581
58582// UnmarshalJSON is the custom unmarshaler for MySQLLinkedService struct.
58583func (msls *MySQLLinkedService) UnmarshalJSON(body []byte) error {
58584	var m map[string]*json.RawMessage
58585	err := json.Unmarshal(body, &m)
58586	if err != nil {
58587		return err
58588	}
58589	for k, v := range m {
58590		switch k {
58591		case "typeProperties":
58592			if v != nil {
58593				var mySQLLinkedServiceTypeProperties MySQLLinkedServiceTypeProperties
58594				err = json.Unmarshal(*v, &mySQLLinkedServiceTypeProperties)
58595				if err != nil {
58596					return err
58597				}
58598				msls.MySQLLinkedServiceTypeProperties = &mySQLLinkedServiceTypeProperties
58599			}
58600		default:
58601			if v != nil {
58602				var additionalProperties interface{}
58603				err = json.Unmarshal(*v, &additionalProperties)
58604				if err != nil {
58605					return err
58606				}
58607				if msls.AdditionalProperties == nil {
58608					msls.AdditionalProperties = make(map[string]interface{})
58609				}
58610				msls.AdditionalProperties[k] = additionalProperties
58611			}
58612		case "connectVia":
58613			if v != nil {
58614				var connectVia IntegrationRuntimeReference
58615				err = json.Unmarshal(*v, &connectVia)
58616				if err != nil {
58617					return err
58618				}
58619				msls.ConnectVia = &connectVia
58620			}
58621		case "description":
58622			if v != nil {
58623				var description string
58624				err = json.Unmarshal(*v, &description)
58625				if err != nil {
58626					return err
58627				}
58628				msls.Description = &description
58629			}
58630		case "parameters":
58631			if v != nil {
58632				var parameters map[string]*ParameterSpecification
58633				err = json.Unmarshal(*v, &parameters)
58634				if err != nil {
58635					return err
58636				}
58637				msls.Parameters = parameters
58638			}
58639		case "annotations":
58640			if v != nil {
58641				var annotations []interface{}
58642				err = json.Unmarshal(*v, &annotations)
58643				if err != nil {
58644					return err
58645				}
58646				msls.Annotations = &annotations
58647			}
58648		case "type":
58649			if v != nil {
58650				var typeVar TypeBasicLinkedService
58651				err = json.Unmarshal(*v, &typeVar)
58652				if err != nil {
58653					return err
58654				}
58655				msls.Type = typeVar
58656			}
58657		}
58658	}
58659
58660	return nil
58661}
58662
58663// MySQLLinkedServiceTypeProperties mySQL linked service properties.
58664type MySQLLinkedServiceTypeProperties struct {
58665	// Server - Server name for connection. Type: string (or Expression with resultType string).
58666	Server interface{} `json:"server,omitempty"`
58667	// Database - Database name for connection. Type: string (or Expression with resultType string).
58668	Database interface{} `json:"database,omitempty"`
58669	// Schema - Schema name for connection. Type: string (or Expression with resultType string).
58670	Schema interface{} `json:"schema,omitempty"`
58671	// Username - Username for authentication. Type: string (or Expression with resultType string).
58672	Username interface{} `json:"username,omitempty"`
58673	// Password - Password for authentication.
58674	Password BasicSecretBase `json:"password,omitempty"`
58675	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
58676	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
58677}
58678
58679// UnmarshalJSON is the custom unmarshaler for MySQLLinkedServiceTypeProperties struct.
58680func (mslstp *MySQLLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
58681	var m map[string]*json.RawMessage
58682	err := json.Unmarshal(body, &m)
58683	if err != nil {
58684		return err
58685	}
58686	for k, v := range m {
58687		switch k {
58688		case "server":
58689			if v != nil {
58690				var server interface{}
58691				err = json.Unmarshal(*v, &server)
58692				if err != nil {
58693					return err
58694				}
58695				mslstp.Server = server
58696			}
58697		case "database":
58698			if v != nil {
58699				var databaseVar interface{}
58700				err = json.Unmarshal(*v, &databaseVar)
58701				if err != nil {
58702					return err
58703				}
58704				mslstp.Database = databaseVar
58705			}
58706		case "schema":
58707			if v != nil {
58708				var schema interface{}
58709				err = json.Unmarshal(*v, &schema)
58710				if err != nil {
58711					return err
58712				}
58713				mslstp.Schema = schema
58714			}
58715		case "username":
58716			if v != nil {
58717				var username interface{}
58718				err = json.Unmarshal(*v, &username)
58719				if err != nil {
58720					return err
58721				}
58722				mslstp.Username = username
58723			}
58724		case "password":
58725			if v != nil {
58726				password, err := unmarshalBasicSecretBase(*v)
58727				if err != nil {
58728					return err
58729				}
58730				mslstp.Password = password
58731			}
58732		case "encryptedCredential":
58733			if v != nil {
58734				var encryptedCredential interface{}
58735				err = json.Unmarshal(*v, &encryptedCredential)
58736				if err != nil {
58737					return err
58738				}
58739				mslstp.EncryptedCredential = encryptedCredential
58740			}
58741		}
58742	}
58743
58744	return nil
58745}
58746
58747// NetezzaLinkedService netezza linked service.
58748type NetezzaLinkedService struct {
58749	// NetezzaLinkedServiceTypeProperties - Netezza linked service properties.
58750	*NetezzaLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
58751	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
58752	AdditionalProperties map[string]interface{} `json:""`
58753	// ConnectVia - The integration runtime reference.
58754	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
58755	// Description - Linked service description.
58756	Description *string `json:"description,omitempty"`
58757	// Parameters - Parameters for linked service.
58758	Parameters map[string]*ParameterSpecification `json:"parameters"`
58759	// Annotations - List of tags that can be used for describing the Dataset.
58760	Annotations *[]interface{} `json:"annotations,omitempty"`
58761	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
58762	Type TypeBasicLinkedService `json:"type,omitempty"`
58763}
58764
58765// MarshalJSON is the custom marshaler for NetezzaLinkedService.
58766func (nls NetezzaLinkedService) MarshalJSON() ([]byte, error) {
58767	nls.Type = TypeNetezza
58768	objectMap := make(map[string]interface{})
58769	if nls.NetezzaLinkedServiceTypeProperties != nil {
58770		objectMap["typeProperties"] = nls.NetezzaLinkedServiceTypeProperties
58771	}
58772	if nls.ConnectVia != nil {
58773		objectMap["connectVia"] = nls.ConnectVia
58774	}
58775	if nls.Description != nil {
58776		objectMap["description"] = nls.Description
58777	}
58778	if nls.Parameters != nil {
58779		objectMap["parameters"] = nls.Parameters
58780	}
58781	if nls.Annotations != nil {
58782		objectMap["annotations"] = nls.Annotations
58783	}
58784	if nls.Type != "" {
58785		objectMap["type"] = nls.Type
58786	}
58787	for k, v := range nls.AdditionalProperties {
58788		objectMap[k] = v
58789	}
58790	return json.Marshal(objectMap)
58791}
58792
58793// AsResponsysLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58794func (nls NetezzaLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
58795	return nil, false
58796}
58797
58798// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58799func (nls NetezzaLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
58800	return nil, false
58801}
58802
58803// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58804func (nls NetezzaLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
58805	return nil, false
58806}
58807
58808// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58809func (nls NetezzaLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
58810	return nil, false
58811}
58812
58813// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58814func (nls NetezzaLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
58815	return nil, false
58816}
58817
58818// AsNetezzaLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58819func (nls NetezzaLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
58820	return &nls, true
58821}
58822
58823// AsVerticaLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58824func (nls NetezzaLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
58825	return nil, false
58826}
58827
58828// AsZohoLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58829func (nls NetezzaLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
58830	return nil, false
58831}
58832
58833// AsXeroLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58834func (nls NetezzaLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
58835	return nil, false
58836}
58837
58838// AsSquareLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58839func (nls NetezzaLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
58840	return nil, false
58841}
58842
58843// AsSparkLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58844func (nls NetezzaLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
58845	return nil, false
58846}
58847
58848// AsShopifyLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58849func (nls NetezzaLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
58850	return nil, false
58851}
58852
58853// AsServiceNowLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58854func (nls NetezzaLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
58855	return nil, false
58856}
58857
58858// AsQuickBooksLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58859func (nls NetezzaLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
58860	return nil, false
58861}
58862
58863// AsPrestoLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58864func (nls NetezzaLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
58865	return nil, false
58866}
58867
58868// AsPhoenixLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58869func (nls NetezzaLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
58870	return nil, false
58871}
58872
58873// AsPaypalLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58874func (nls NetezzaLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
58875	return nil, false
58876}
58877
58878// AsMarketoLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58879func (nls NetezzaLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
58880	return nil, false
58881}
58882
58883// AsMariaDBLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58884func (nls NetezzaLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
58885	return nil, false
58886}
58887
58888// AsMagentoLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58889func (nls NetezzaLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
58890	return nil, false
58891}
58892
58893// AsJiraLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58894func (nls NetezzaLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
58895	return nil, false
58896}
58897
58898// AsImpalaLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58899func (nls NetezzaLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
58900	return nil, false
58901}
58902
58903// AsHubspotLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58904func (nls NetezzaLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
58905	return nil, false
58906}
58907
58908// AsHiveLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58909func (nls NetezzaLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
58910	return nil, false
58911}
58912
58913// AsHBaseLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58914func (nls NetezzaLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
58915	return nil, false
58916}
58917
58918// AsGreenplumLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58919func (nls NetezzaLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
58920	return nil, false
58921}
58922
58923// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58924func (nls NetezzaLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
58925	return nil, false
58926}
58927
58928// AsEloquaLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58929func (nls NetezzaLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
58930	return nil, false
58931}
58932
58933// AsDrillLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58934func (nls NetezzaLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
58935	return nil, false
58936}
58937
58938// AsCouchbaseLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58939func (nls NetezzaLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
58940	return nil, false
58941}
58942
58943// AsConcurLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58944func (nls NetezzaLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
58945	return nil, false
58946}
58947
58948// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58949func (nls NetezzaLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
58950	return nil, false
58951}
58952
58953// AsAmazonMWSLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58954func (nls NetezzaLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
58955	return nil, false
58956}
58957
58958// AsSapHanaLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58959func (nls NetezzaLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
58960	return nil, false
58961}
58962
58963// AsSapBWLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58964func (nls NetezzaLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
58965	return nil, false
58966}
58967
58968// AsSftpServerLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58969func (nls NetezzaLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
58970	return nil, false
58971}
58972
58973// AsFtpServerLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58974func (nls NetezzaLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
58975	return nil, false
58976}
58977
58978// AsHTTPLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58979func (nls NetezzaLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
58980	return nil, false
58981}
58982
58983// AsAzureSearchLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58984func (nls NetezzaLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
58985	return nil, false
58986}
58987
58988// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58989func (nls NetezzaLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
58990	return nil, false
58991}
58992
58993// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58994func (nls NetezzaLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
58995	return nil, false
58996}
58997
58998// AsAmazonS3LinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
58999func (nls NetezzaLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
59000	return nil, false
59001}
59002
59003// AsSapEccLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59004func (nls NetezzaLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
59005	return nil, false
59006}
59007
59008// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59009func (nls NetezzaLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
59010	return nil, false
59011}
59012
59013// AsSalesforceLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59014func (nls NetezzaLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
59015	return nil, false
59016}
59017
59018// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59019func (nls NetezzaLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
59020	return nil, false
59021}
59022
59023// AsMongoDbLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59024func (nls NetezzaLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
59025	return nil, false
59026}
59027
59028// AsCassandraLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59029func (nls NetezzaLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
59030	return nil, false
59031}
59032
59033// AsWebLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59034func (nls NetezzaLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
59035	return nil, false
59036}
59037
59038// AsODataLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59039func (nls NetezzaLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
59040	return nil, false
59041}
59042
59043// AsHdfsLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59044func (nls NetezzaLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
59045	return nil, false
59046}
59047
59048// AsOdbcLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59049func (nls NetezzaLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
59050	return nil, false
59051}
59052
59053// AsAzureMLLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59054func (nls NetezzaLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
59055	return nil, false
59056}
59057
59058// AsTeradataLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59059func (nls NetezzaLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
59060	return nil, false
59061}
59062
59063// AsDb2LinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59064func (nls NetezzaLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
59065	return nil, false
59066}
59067
59068// AsSybaseLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59069func (nls NetezzaLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
59070	return nil, false
59071}
59072
59073// AsPostgreSQLLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59074func (nls NetezzaLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
59075	return nil, false
59076}
59077
59078// AsMySQLLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59079func (nls NetezzaLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
59080	return nil, false
59081}
59082
59083// AsAzureMySQLLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59084func (nls NetezzaLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
59085	return nil, false
59086}
59087
59088// AsOracleLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59089func (nls NetezzaLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
59090	return nil, false
59091}
59092
59093// AsFileServerLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59094func (nls NetezzaLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
59095	return nil, false
59096}
59097
59098// AsHDInsightLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59099func (nls NetezzaLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
59100	return nil, false
59101}
59102
59103// AsDynamicsLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59104func (nls NetezzaLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
59105	return nil, false
59106}
59107
59108// AsCosmosDbLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59109func (nls NetezzaLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
59110	return nil, false
59111}
59112
59113// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59114func (nls NetezzaLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
59115	return nil, false
59116}
59117
59118// AsAzureBatchLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59119func (nls NetezzaLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
59120	return nil, false
59121}
59122
59123// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59124func (nls NetezzaLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
59125	return nil, false
59126}
59127
59128// AsSQLServerLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59129func (nls NetezzaLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
59130	return nil, false
59131}
59132
59133// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59134func (nls NetezzaLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
59135	return nil, false
59136}
59137
59138// AsAzureStorageLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59139func (nls NetezzaLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
59140	return nil, false
59141}
59142
59143// AsLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59144func (nls NetezzaLinkedService) AsLinkedService() (*LinkedService, bool) {
59145	return nil, false
59146}
59147
59148// AsBasicLinkedService is the BasicLinkedService implementation for NetezzaLinkedService.
59149func (nls NetezzaLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
59150	return &nls, true
59151}
59152
59153// UnmarshalJSON is the custom unmarshaler for NetezzaLinkedService struct.
59154func (nls *NetezzaLinkedService) UnmarshalJSON(body []byte) error {
59155	var m map[string]*json.RawMessage
59156	err := json.Unmarshal(body, &m)
59157	if err != nil {
59158		return err
59159	}
59160	for k, v := range m {
59161		switch k {
59162		case "typeProperties":
59163			if v != nil {
59164				var netezzaLinkedServiceTypeProperties NetezzaLinkedServiceTypeProperties
59165				err = json.Unmarshal(*v, &netezzaLinkedServiceTypeProperties)
59166				if err != nil {
59167					return err
59168				}
59169				nls.NetezzaLinkedServiceTypeProperties = &netezzaLinkedServiceTypeProperties
59170			}
59171		default:
59172			if v != nil {
59173				var additionalProperties interface{}
59174				err = json.Unmarshal(*v, &additionalProperties)
59175				if err != nil {
59176					return err
59177				}
59178				if nls.AdditionalProperties == nil {
59179					nls.AdditionalProperties = make(map[string]interface{})
59180				}
59181				nls.AdditionalProperties[k] = additionalProperties
59182			}
59183		case "connectVia":
59184			if v != nil {
59185				var connectVia IntegrationRuntimeReference
59186				err = json.Unmarshal(*v, &connectVia)
59187				if err != nil {
59188					return err
59189				}
59190				nls.ConnectVia = &connectVia
59191			}
59192		case "description":
59193			if v != nil {
59194				var description string
59195				err = json.Unmarshal(*v, &description)
59196				if err != nil {
59197					return err
59198				}
59199				nls.Description = &description
59200			}
59201		case "parameters":
59202			if v != nil {
59203				var parameters map[string]*ParameterSpecification
59204				err = json.Unmarshal(*v, &parameters)
59205				if err != nil {
59206					return err
59207				}
59208				nls.Parameters = parameters
59209			}
59210		case "annotations":
59211			if v != nil {
59212				var annotations []interface{}
59213				err = json.Unmarshal(*v, &annotations)
59214				if err != nil {
59215					return err
59216				}
59217				nls.Annotations = &annotations
59218			}
59219		case "type":
59220			if v != nil {
59221				var typeVar TypeBasicLinkedService
59222				err = json.Unmarshal(*v, &typeVar)
59223				if err != nil {
59224					return err
59225				}
59226				nls.Type = typeVar
59227			}
59228		}
59229	}
59230
59231	return nil
59232}
59233
59234// NetezzaLinkedServiceTypeProperties netezza linked service properties.
59235type NetezzaLinkedServiceTypeProperties struct {
59236	// ConnectionString - An ODBC connection string.
59237	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
59238	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
59239	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
59240}
59241
59242// UnmarshalJSON is the custom unmarshaler for NetezzaLinkedServiceTypeProperties struct.
59243func (nlstp *NetezzaLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
59244	var m map[string]*json.RawMessage
59245	err := json.Unmarshal(body, &m)
59246	if err != nil {
59247		return err
59248	}
59249	for k, v := range m {
59250		switch k {
59251		case "connectionString":
59252			if v != nil {
59253				connectionString, err := unmarshalBasicSecretBase(*v)
59254				if err != nil {
59255					return err
59256				}
59257				nlstp.ConnectionString = connectionString
59258			}
59259		case "encryptedCredential":
59260			if v != nil {
59261				var encryptedCredential interface{}
59262				err = json.Unmarshal(*v, &encryptedCredential)
59263				if err != nil {
59264					return err
59265				}
59266				nlstp.EncryptedCredential = encryptedCredential
59267			}
59268		}
59269	}
59270
59271	return nil
59272}
59273
59274// NetezzaSource a copy activity Netezza source.
59275type NetezzaSource struct {
59276	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
59277	Query interface{} `json:"query,omitempty"`
59278	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
59279	AdditionalProperties map[string]interface{} `json:""`
59280	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
59281	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
59282	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
59283	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
59284	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
59285	Type TypeBasicCopySource `json:"type,omitempty"`
59286}
59287
59288// MarshalJSON is the custom marshaler for NetezzaSource.
59289func (ns NetezzaSource) MarshalJSON() ([]byte, error) {
59290	ns.Type = TypeNetezzaSource
59291	objectMap := make(map[string]interface{})
59292	objectMap["query"] = ns.Query
59293	objectMap["sourceRetryCount"] = ns.SourceRetryCount
59294	objectMap["sourceRetryWait"] = ns.SourceRetryWait
59295	if ns.Type != "" {
59296		objectMap["type"] = ns.Type
59297	}
59298	for k, v := range ns.AdditionalProperties {
59299		objectMap[k] = v
59300	}
59301	return json.Marshal(objectMap)
59302}
59303
59304// AsAmazonRedshiftSource is the BasicCopySource implementation for NetezzaSource.
59305func (ns NetezzaSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
59306	return nil, false
59307}
59308
59309// AsResponsysSource is the BasicCopySource implementation for NetezzaSource.
59310func (ns NetezzaSource) AsResponsysSource() (*ResponsysSource, bool) {
59311	return nil, false
59312}
59313
59314// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for NetezzaSource.
59315func (ns NetezzaSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
59316	return nil, false
59317}
59318
59319// AsVerticaSource is the BasicCopySource implementation for NetezzaSource.
59320func (ns NetezzaSource) AsVerticaSource() (*VerticaSource, bool) {
59321	return nil, false
59322}
59323
59324// AsNetezzaSource is the BasicCopySource implementation for NetezzaSource.
59325func (ns NetezzaSource) AsNetezzaSource() (*NetezzaSource, bool) {
59326	return &ns, true
59327}
59328
59329// AsZohoSource is the BasicCopySource implementation for NetezzaSource.
59330func (ns NetezzaSource) AsZohoSource() (*ZohoSource, bool) {
59331	return nil, false
59332}
59333
59334// AsXeroSource is the BasicCopySource implementation for NetezzaSource.
59335func (ns NetezzaSource) AsXeroSource() (*XeroSource, bool) {
59336	return nil, false
59337}
59338
59339// AsSquareSource is the BasicCopySource implementation for NetezzaSource.
59340func (ns NetezzaSource) AsSquareSource() (*SquareSource, bool) {
59341	return nil, false
59342}
59343
59344// AsSparkSource is the BasicCopySource implementation for NetezzaSource.
59345func (ns NetezzaSource) AsSparkSource() (*SparkSource, bool) {
59346	return nil, false
59347}
59348
59349// AsShopifySource is the BasicCopySource implementation for NetezzaSource.
59350func (ns NetezzaSource) AsShopifySource() (*ShopifySource, bool) {
59351	return nil, false
59352}
59353
59354// AsServiceNowSource is the BasicCopySource implementation for NetezzaSource.
59355func (ns NetezzaSource) AsServiceNowSource() (*ServiceNowSource, bool) {
59356	return nil, false
59357}
59358
59359// AsQuickBooksSource is the BasicCopySource implementation for NetezzaSource.
59360func (ns NetezzaSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
59361	return nil, false
59362}
59363
59364// AsPrestoSource is the BasicCopySource implementation for NetezzaSource.
59365func (ns NetezzaSource) AsPrestoSource() (*PrestoSource, bool) {
59366	return nil, false
59367}
59368
59369// AsPhoenixSource is the BasicCopySource implementation for NetezzaSource.
59370func (ns NetezzaSource) AsPhoenixSource() (*PhoenixSource, bool) {
59371	return nil, false
59372}
59373
59374// AsPaypalSource is the BasicCopySource implementation for NetezzaSource.
59375func (ns NetezzaSource) AsPaypalSource() (*PaypalSource, bool) {
59376	return nil, false
59377}
59378
59379// AsMarketoSource is the BasicCopySource implementation for NetezzaSource.
59380func (ns NetezzaSource) AsMarketoSource() (*MarketoSource, bool) {
59381	return nil, false
59382}
59383
59384// AsMariaDBSource is the BasicCopySource implementation for NetezzaSource.
59385func (ns NetezzaSource) AsMariaDBSource() (*MariaDBSource, bool) {
59386	return nil, false
59387}
59388
59389// AsMagentoSource is the BasicCopySource implementation for NetezzaSource.
59390func (ns NetezzaSource) AsMagentoSource() (*MagentoSource, bool) {
59391	return nil, false
59392}
59393
59394// AsJiraSource is the BasicCopySource implementation for NetezzaSource.
59395func (ns NetezzaSource) AsJiraSource() (*JiraSource, bool) {
59396	return nil, false
59397}
59398
59399// AsImpalaSource is the BasicCopySource implementation for NetezzaSource.
59400func (ns NetezzaSource) AsImpalaSource() (*ImpalaSource, bool) {
59401	return nil, false
59402}
59403
59404// AsHubspotSource is the BasicCopySource implementation for NetezzaSource.
59405func (ns NetezzaSource) AsHubspotSource() (*HubspotSource, bool) {
59406	return nil, false
59407}
59408
59409// AsHiveSource is the BasicCopySource implementation for NetezzaSource.
59410func (ns NetezzaSource) AsHiveSource() (*HiveSource, bool) {
59411	return nil, false
59412}
59413
59414// AsHBaseSource is the BasicCopySource implementation for NetezzaSource.
59415func (ns NetezzaSource) AsHBaseSource() (*HBaseSource, bool) {
59416	return nil, false
59417}
59418
59419// AsGreenplumSource is the BasicCopySource implementation for NetezzaSource.
59420func (ns NetezzaSource) AsGreenplumSource() (*GreenplumSource, bool) {
59421	return nil, false
59422}
59423
59424// AsGoogleBigQuerySource is the BasicCopySource implementation for NetezzaSource.
59425func (ns NetezzaSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
59426	return nil, false
59427}
59428
59429// AsEloquaSource is the BasicCopySource implementation for NetezzaSource.
59430func (ns NetezzaSource) AsEloquaSource() (*EloquaSource, bool) {
59431	return nil, false
59432}
59433
59434// AsDrillSource is the BasicCopySource implementation for NetezzaSource.
59435func (ns NetezzaSource) AsDrillSource() (*DrillSource, bool) {
59436	return nil, false
59437}
59438
59439// AsCouchbaseSource is the BasicCopySource implementation for NetezzaSource.
59440func (ns NetezzaSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
59441	return nil, false
59442}
59443
59444// AsConcurSource is the BasicCopySource implementation for NetezzaSource.
59445func (ns NetezzaSource) AsConcurSource() (*ConcurSource, bool) {
59446	return nil, false
59447}
59448
59449// AsAzurePostgreSQLSource is the BasicCopySource implementation for NetezzaSource.
59450func (ns NetezzaSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
59451	return nil, false
59452}
59453
59454// AsAmazonMWSSource is the BasicCopySource implementation for NetezzaSource.
59455func (ns NetezzaSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
59456	return nil, false
59457}
59458
59459// AsHTTPSource is the BasicCopySource implementation for NetezzaSource.
59460func (ns NetezzaSource) AsHTTPSource() (*HTTPSource, bool) {
59461	return nil, false
59462}
59463
59464// AsAzureDataLakeStoreSource is the BasicCopySource implementation for NetezzaSource.
59465func (ns NetezzaSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
59466	return nil, false
59467}
59468
59469// AsMongoDbSource is the BasicCopySource implementation for NetezzaSource.
59470func (ns NetezzaSource) AsMongoDbSource() (*MongoDbSource, bool) {
59471	return nil, false
59472}
59473
59474// AsCassandraSource is the BasicCopySource implementation for NetezzaSource.
59475func (ns NetezzaSource) AsCassandraSource() (*CassandraSource, bool) {
59476	return nil, false
59477}
59478
59479// AsWebSource is the BasicCopySource implementation for NetezzaSource.
59480func (ns NetezzaSource) AsWebSource() (*WebSource, bool) {
59481	return nil, false
59482}
59483
59484// AsOracleSource is the BasicCopySource implementation for NetezzaSource.
59485func (ns NetezzaSource) AsOracleSource() (*OracleSource, bool) {
59486	return nil, false
59487}
59488
59489// AsAzureMySQLSource is the BasicCopySource implementation for NetezzaSource.
59490func (ns NetezzaSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
59491	return nil, false
59492}
59493
59494// AsHdfsSource is the BasicCopySource implementation for NetezzaSource.
59495func (ns NetezzaSource) AsHdfsSource() (*HdfsSource, bool) {
59496	return nil, false
59497}
59498
59499// AsFileSystemSource is the BasicCopySource implementation for NetezzaSource.
59500func (ns NetezzaSource) AsFileSystemSource() (*FileSystemSource, bool) {
59501	return nil, false
59502}
59503
59504// AsSQLDWSource is the BasicCopySource implementation for NetezzaSource.
59505func (ns NetezzaSource) AsSQLDWSource() (*SQLDWSource, bool) {
59506	return nil, false
59507}
59508
59509// AsSQLSource is the BasicCopySource implementation for NetezzaSource.
59510func (ns NetezzaSource) AsSQLSource() (*SQLSource, bool) {
59511	return nil, false
59512}
59513
59514// AsSapEccSource is the BasicCopySource implementation for NetezzaSource.
59515func (ns NetezzaSource) AsSapEccSource() (*SapEccSource, bool) {
59516	return nil, false
59517}
59518
59519// AsSapCloudForCustomerSource is the BasicCopySource implementation for NetezzaSource.
59520func (ns NetezzaSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
59521	return nil, false
59522}
59523
59524// AsSalesforceSource is the BasicCopySource implementation for NetezzaSource.
59525func (ns NetezzaSource) AsSalesforceSource() (*SalesforceSource, bool) {
59526	return nil, false
59527}
59528
59529// AsRelationalSource is the BasicCopySource implementation for NetezzaSource.
59530func (ns NetezzaSource) AsRelationalSource() (*RelationalSource, bool) {
59531	return nil, false
59532}
59533
59534// AsDynamicsSource is the BasicCopySource implementation for NetezzaSource.
59535func (ns NetezzaSource) AsDynamicsSource() (*DynamicsSource, bool) {
59536	return nil, false
59537}
59538
59539// AsDocumentDbCollectionSource is the BasicCopySource implementation for NetezzaSource.
59540func (ns NetezzaSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
59541	return nil, false
59542}
59543
59544// AsBlobSource is the BasicCopySource implementation for NetezzaSource.
59545func (ns NetezzaSource) AsBlobSource() (*BlobSource, bool) {
59546	return nil, false
59547}
59548
59549// AsAzureTableSource is the BasicCopySource implementation for NetezzaSource.
59550func (ns NetezzaSource) AsAzureTableSource() (*AzureTableSource, bool) {
59551	return nil, false
59552}
59553
59554// AsCopySource is the BasicCopySource implementation for NetezzaSource.
59555func (ns NetezzaSource) AsCopySource() (*CopySource, bool) {
59556	return nil, false
59557}
59558
59559// AsBasicCopySource is the BasicCopySource implementation for NetezzaSource.
59560func (ns NetezzaSource) AsBasicCopySource() (BasicCopySource, bool) {
59561	return &ns, true
59562}
59563
59564// NetezzaTableDataset netezza dataset.
59565type NetezzaTableDataset struct {
59566	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
59567	AdditionalProperties map[string]interface{} `json:""`
59568	// Description - Dataset description.
59569	Description *string `json:"description,omitempty"`
59570	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
59571	Structure interface{} `json:"structure,omitempty"`
59572	// LinkedServiceName - Linked service reference.
59573	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
59574	// Parameters - Parameters for dataset.
59575	Parameters map[string]*ParameterSpecification `json:"parameters"`
59576	// Annotations - List of tags that can be used for describing the Dataset.
59577	Annotations *[]interface{} `json:"annotations,omitempty"`
59578	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
59579	Type TypeBasicDataset `json:"type,omitempty"`
59580}
59581
59582// MarshalJSON is the custom marshaler for NetezzaTableDataset.
59583func (ntd NetezzaTableDataset) MarshalJSON() ([]byte, error) {
59584	ntd.Type = TypeNetezzaTable
59585	objectMap := make(map[string]interface{})
59586	if ntd.Description != nil {
59587		objectMap["description"] = ntd.Description
59588	}
59589	objectMap["structure"] = ntd.Structure
59590	if ntd.LinkedServiceName != nil {
59591		objectMap["linkedServiceName"] = ntd.LinkedServiceName
59592	}
59593	if ntd.Parameters != nil {
59594		objectMap["parameters"] = ntd.Parameters
59595	}
59596	if ntd.Annotations != nil {
59597		objectMap["annotations"] = ntd.Annotations
59598	}
59599	if ntd.Type != "" {
59600		objectMap["type"] = ntd.Type
59601	}
59602	for k, v := range ntd.AdditionalProperties {
59603		objectMap[k] = v
59604	}
59605	return json.Marshal(objectMap)
59606}
59607
59608// AsResponsysObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59609func (ntd NetezzaTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
59610	return nil, false
59611}
59612
59613// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59614func (ntd NetezzaTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
59615	return nil, false
59616}
59617
59618// AsVerticaTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59619func (ntd NetezzaTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
59620	return nil, false
59621}
59622
59623// AsNetezzaTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59624func (ntd NetezzaTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
59625	return &ntd, true
59626}
59627
59628// AsZohoObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59629func (ntd NetezzaTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
59630	return nil, false
59631}
59632
59633// AsXeroObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59634func (ntd NetezzaTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
59635	return nil, false
59636}
59637
59638// AsSquareObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59639func (ntd NetezzaTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
59640	return nil, false
59641}
59642
59643// AsSparkObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59644func (ntd NetezzaTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
59645	return nil, false
59646}
59647
59648// AsShopifyObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59649func (ntd NetezzaTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
59650	return nil, false
59651}
59652
59653// AsServiceNowObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59654func (ntd NetezzaTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
59655	return nil, false
59656}
59657
59658// AsQuickBooksObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59659func (ntd NetezzaTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
59660	return nil, false
59661}
59662
59663// AsPrestoObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59664func (ntd NetezzaTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
59665	return nil, false
59666}
59667
59668// AsPhoenixObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59669func (ntd NetezzaTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
59670	return nil, false
59671}
59672
59673// AsPaypalObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59674func (ntd NetezzaTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
59675	return nil, false
59676}
59677
59678// AsMarketoObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59679func (ntd NetezzaTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
59680	return nil, false
59681}
59682
59683// AsMariaDBTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59684func (ntd NetezzaTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
59685	return nil, false
59686}
59687
59688// AsMagentoObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59689func (ntd NetezzaTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
59690	return nil, false
59691}
59692
59693// AsJiraObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59694func (ntd NetezzaTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
59695	return nil, false
59696}
59697
59698// AsImpalaObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59699func (ntd NetezzaTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
59700	return nil, false
59701}
59702
59703// AsHubspotObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59704func (ntd NetezzaTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
59705	return nil, false
59706}
59707
59708// AsHiveObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59709func (ntd NetezzaTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
59710	return nil, false
59711}
59712
59713// AsHBaseObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59714func (ntd NetezzaTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
59715	return nil, false
59716}
59717
59718// AsGreenplumTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59719func (ntd NetezzaTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
59720	return nil, false
59721}
59722
59723// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59724func (ntd NetezzaTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
59725	return nil, false
59726}
59727
59728// AsEloquaObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59729func (ntd NetezzaTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
59730	return nil, false
59731}
59732
59733// AsDrillTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59734func (ntd NetezzaTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
59735	return nil, false
59736}
59737
59738// AsCouchbaseTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59739func (ntd NetezzaTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
59740	return nil, false
59741}
59742
59743// AsConcurObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59744func (ntd NetezzaTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
59745	return nil, false
59746}
59747
59748// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59749func (ntd NetezzaTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
59750	return nil, false
59751}
59752
59753// AsAmazonMWSObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59754func (ntd NetezzaTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
59755	return nil, false
59756}
59757
59758// AsHTTPDataset is the BasicDataset implementation for NetezzaTableDataset.
59759func (ntd NetezzaTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
59760	return nil, false
59761}
59762
59763// AsAzureSearchIndexDataset is the BasicDataset implementation for NetezzaTableDataset.
59764func (ntd NetezzaTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
59765	return nil, false
59766}
59767
59768// AsWebTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59769func (ntd NetezzaTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
59770	return nil, false
59771}
59772
59773// AsSQLServerTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59774func (ntd NetezzaTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
59775	return nil, false
59776}
59777
59778// AsSapEccResourceDataset is the BasicDataset implementation for NetezzaTableDataset.
59779func (ntd NetezzaTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
59780	return nil, false
59781}
59782
59783// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for NetezzaTableDataset.
59784func (ntd NetezzaTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
59785	return nil, false
59786}
59787
59788// AsSalesforceObjectDataset is the BasicDataset implementation for NetezzaTableDataset.
59789func (ntd NetezzaTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
59790	return nil, false
59791}
59792
59793// AsRelationalTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59794func (ntd NetezzaTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
59795	return nil, false
59796}
59797
59798// AsAzureMySQLTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59799func (ntd NetezzaTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
59800	return nil, false
59801}
59802
59803// AsOracleTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59804func (ntd NetezzaTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
59805	return nil, false
59806}
59807
59808// AsODataResourceDataset is the BasicDataset implementation for NetezzaTableDataset.
59809func (ntd NetezzaTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
59810	return nil, false
59811}
59812
59813// AsMongoDbCollectionDataset is the BasicDataset implementation for NetezzaTableDataset.
59814func (ntd NetezzaTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
59815	return nil, false
59816}
59817
59818// AsFileShareDataset is the BasicDataset implementation for NetezzaTableDataset.
59819func (ntd NetezzaTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
59820	return nil, false
59821}
59822
59823// AsAzureDataLakeStoreDataset is the BasicDataset implementation for NetezzaTableDataset.
59824func (ntd NetezzaTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
59825	return nil, false
59826}
59827
59828// AsDynamicsEntityDataset is the BasicDataset implementation for NetezzaTableDataset.
59829func (ntd NetezzaTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
59830	return nil, false
59831}
59832
59833// AsDocumentDbCollectionDataset is the BasicDataset implementation for NetezzaTableDataset.
59834func (ntd NetezzaTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
59835	return nil, false
59836}
59837
59838// AsCustomDataset is the BasicDataset implementation for NetezzaTableDataset.
59839func (ntd NetezzaTableDataset) AsCustomDataset() (*CustomDataset, bool) {
59840	return nil, false
59841}
59842
59843// AsCassandraTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59844func (ntd NetezzaTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
59845	return nil, false
59846}
59847
59848// AsAzureSQLDWTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59849func (ntd NetezzaTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
59850	return nil, false
59851}
59852
59853// AsAzureSQLTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59854func (ntd NetezzaTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
59855	return nil, false
59856}
59857
59858// AsAzureTableDataset is the BasicDataset implementation for NetezzaTableDataset.
59859func (ntd NetezzaTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
59860	return nil, false
59861}
59862
59863// AsAzureBlobDataset is the BasicDataset implementation for NetezzaTableDataset.
59864func (ntd NetezzaTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
59865	return nil, false
59866}
59867
59868// AsAmazonS3Dataset is the BasicDataset implementation for NetezzaTableDataset.
59869func (ntd NetezzaTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
59870	return nil, false
59871}
59872
59873// AsDataset is the BasicDataset implementation for NetezzaTableDataset.
59874func (ntd NetezzaTableDataset) AsDataset() (*Dataset, bool) {
59875	return nil, false
59876}
59877
59878// AsBasicDataset is the BasicDataset implementation for NetezzaTableDataset.
59879func (ntd NetezzaTableDataset) AsBasicDataset() (BasicDataset, bool) {
59880	return &ntd, true
59881}
59882
59883// ODataLinkedService open Data Protocol (OData) linked service.
59884type ODataLinkedService struct {
59885	// ODataLinkedServiceTypeProperties - OData linked service properties.
59886	*ODataLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
59887	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
59888	AdditionalProperties map[string]interface{} `json:""`
59889	// ConnectVia - The integration runtime reference.
59890	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
59891	// Description - Linked service description.
59892	Description *string `json:"description,omitempty"`
59893	// Parameters - Parameters for linked service.
59894	Parameters map[string]*ParameterSpecification `json:"parameters"`
59895	// Annotations - List of tags that can be used for describing the Dataset.
59896	Annotations *[]interface{} `json:"annotations,omitempty"`
59897	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
59898	Type TypeBasicLinkedService `json:"type,omitempty"`
59899}
59900
59901// MarshalJSON is the custom marshaler for ODataLinkedService.
59902func (odls ODataLinkedService) MarshalJSON() ([]byte, error) {
59903	odls.Type = TypeOData
59904	objectMap := make(map[string]interface{})
59905	if odls.ODataLinkedServiceTypeProperties != nil {
59906		objectMap["typeProperties"] = odls.ODataLinkedServiceTypeProperties
59907	}
59908	if odls.ConnectVia != nil {
59909		objectMap["connectVia"] = odls.ConnectVia
59910	}
59911	if odls.Description != nil {
59912		objectMap["description"] = odls.Description
59913	}
59914	if odls.Parameters != nil {
59915		objectMap["parameters"] = odls.Parameters
59916	}
59917	if odls.Annotations != nil {
59918		objectMap["annotations"] = odls.Annotations
59919	}
59920	if odls.Type != "" {
59921		objectMap["type"] = odls.Type
59922	}
59923	for k, v := range odls.AdditionalProperties {
59924		objectMap[k] = v
59925	}
59926	return json.Marshal(objectMap)
59927}
59928
59929// AsResponsysLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59930func (odls ODataLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
59931	return nil, false
59932}
59933
59934// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59935func (odls ODataLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
59936	return nil, false
59937}
59938
59939// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59940func (odls ODataLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
59941	return nil, false
59942}
59943
59944// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59945func (odls ODataLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
59946	return nil, false
59947}
59948
59949// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59950func (odls ODataLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
59951	return nil, false
59952}
59953
59954// AsNetezzaLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59955func (odls ODataLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
59956	return nil, false
59957}
59958
59959// AsVerticaLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59960func (odls ODataLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
59961	return nil, false
59962}
59963
59964// AsZohoLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59965func (odls ODataLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
59966	return nil, false
59967}
59968
59969// AsXeroLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59970func (odls ODataLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
59971	return nil, false
59972}
59973
59974// AsSquareLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59975func (odls ODataLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
59976	return nil, false
59977}
59978
59979// AsSparkLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59980func (odls ODataLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
59981	return nil, false
59982}
59983
59984// AsShopifyLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59985func (odls ODataLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
59986	return nil, false
59987}
59988
59989// AsServiceNowLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59990func (odls ODataLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
59991	return nil, false
59992}
59993
59994// AsQuickBooksLinkedService is the BasicLinkedService implementation for ODataLinkedService.
59995func (odls ODataLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
59996	return nil, false
59997}
59998
59999// AsPrestoLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60000func (odls ODataLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
60001	return nil, false
60002}
60003
60004// AsPhoenixLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60005func (odls ODataLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
60006	return nil, false
60007}
60008
60009// AsPaypalLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60010func (odls ODataLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
60011	return nil, false
60012}
60013
60014// AsMarketoLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60015func (odls ODataLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
60016	return nil, false
60017}
60018
60019// AsMariaDBLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60020func (odls ODataLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
60021	return nil, false
60022}
60023
60024// AsMagentoLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60025func (odls ODataLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
60026	return nil, false
60027}
60028
60029// AsJiraLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60030func (odls ODataLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
60031	return nil, false
60032}
60033
60034// AsImpalaLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60035func (odls ODataLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
60036	return nil, false
60037}
60038
60039// AsHubspotLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60040func (odls ODataLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
60041	return nil, false
60042}
60043
60044// AsHiveLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60045func (odls ODataLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
60046	return nil, false
60047}
60048
60049// AsHBaseLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60050func (odls ODataLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
60051	return nil, false
60052}
60053
60054// AsGreenplumLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60055func (odls ODataLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
60056	return nil, false
60057}
60058
60059// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60060func (odls ODataLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
60061	return nil, false
60062}
60063
60064// AsEloquaLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60065func (odls ODataLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
60066	return nil, false
60067}
60068
60069// AsDrillLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60070func (odls ODataLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
60071	return nil, false
60072}
60073
60074// AsCouchbaseLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60075func (odls ODataLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
60076	return nil, false
60077}
60078
60079// AsConcurLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60080func (odls ODataLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
60081	return nil, false
60082}
60083
60084// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60085func (odls ODataLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
60086	return nil, false
60087}
60088
60089// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60090func (odls ODataLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
60091	return nil, false
60092}
60093
60094// AsSapHanaLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60095func (odls ODataLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
60096	return nil, false
60097}
60098
60099// AsSapBWLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60100func (odls ODataLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
60101	return nil, false
60102}
60103
60104// AsSftpServerLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60105func (odls ODataLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
60106	return nil, false
60107}
60108
60109// AsFtpServerLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60110func (odls ODataLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
60111	return nil, false
60112}
60113
60114// AsHTTPLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60115func (odls ODataLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
60116	return nil, false
60117}
60118
60119// AsAzureSearchLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60120func (odls ODataLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
60121	return nil, false
60122}
60123
60124// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60125func (odls ODataLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
60126	return nil, false
60127}
60128
60129// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60130func (odls ODataLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
60131	return nil, false
60132}
60133
60134// AsAmazonS3LinkedService is the BasicLinkedService implementation for ODataLinkedService.
60135func (odls ODataLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
60136	return nil, false
60137}
60138
60139// AsSapEccLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60140func (odls ODataLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
60141	return nil, false
60142}
60143
60144// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60145func (odls ODataLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
60146	return nil, false
60147}
60148
60149// AsSalesforceLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60150func (odls ODataLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
60151	return nil, false
60152}
60153
60154// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60155func (odls ODataLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
60156	return nil, false
60157}
60158
60159// AsMongoDbLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60160func (odls ODataLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
60161	return nil, false
60162}
60163
60164// AsCassandraLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60165func (odls ODataLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
60166	return nil, false
60167}
60168
60169// AsWebLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60170func (odls ODataLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
60171	return nil, false
60172}
60173
60174// AsODataLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60175func (odls ODataLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
60176	return &odls, true
60177}
60178
60179// AsHdfsLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60180func (odls ODataLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
60181	return nil, false
60182}
60183
60184// AsOdbcLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60185func (odls ODataLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
60186	return nil, false
60187}
60188
60189// AsAzureMLLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60190func (odls ODataLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
60191	return nil, false
60192}
60193
60194// AsTeradataLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60195func (odls ODataLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
60196	return nil, false
60197}
60198
60199// AsDb2LinkedService is the BasicLinkedService implementation for ODataLinkedService.
60200func (odls ODataLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
60201	return nil, false
60202}
60203
60204// AsSybaseLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60205func (odls ODataLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
60206	return nil, false
60207}
60208
60209// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60210func (odls ODataLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
60211	return nil, false
60212}
60213
60214// AsMySQLLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60215func (odls ODataLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
60216	return nil, false
60217}
60218
60219// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60220func (odls ODataLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
60221	return nil, false
60222}
60223
60224// AsOracleLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60225func (odls ODataLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
60226	return nil, false
60227}
60228
60229// AsFileServerLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60230func (odls ODataLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
60231	return nil, false
60232}
60233
60234// AsHDInsightLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60235func (odls ODataLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
60236	return nil, false
60237}
60238
60239// AsDynamicsLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60240func (odls ODataLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
60241	return nil, false
60242}
60243
60244// AsCosmosDbLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60245func (odls ODataLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
60246	return nil, false
60247}
60248
60249// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60250func (odls ODataLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
60251	return nil, false
60252}
60253
60254// AsAzureBatchLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60255func (odls ODataLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
60256	return nil, false
60257}
60258
60259// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60260func (odls ODataLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
60261	return nil, false
60262}
60263
60264// AsSQLServerLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60265func (odls ODataLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
60266	return nil, false
60267}
60268
60269// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60270func (odls ODataLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
60271	return nil, false
60272}
60273
60274// AsAzureStorageLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60275func (odls ODataLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
60276	return nil, false
60277}
60278
60279// AsLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60280func (odls ODataLinkedService) AsLinkedService() (*LinkedService, bool) {
60281	return nil, false
60282}
60283
60284// AsBasicLinkedService is the BasicLinkedService implementation for ODataLinkedService.
60285func (odls ODataLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
60286	return &odls, true
60287}
60288
60289// UnmarshalJSON is the custom unmarshaler for ODataLinkedService struct.
60290func (odls *ODataLinkedService) UnmarshalJSON(body []byte) error {
60291	var m map[string]*json.RawMessage
60292	err := json.Unmarshal(body, &m)
60293	if err != nil {
60294		return err
60295	}
60296	for k, v := range m {
60297		switch k {
60298		case "typeProperties":
60299			if v != nil {
60300				var oDataLinkedServiceTypeProperties ODataLinkedServiceTypeProperties
60301				err = json.Unmarshal(*v, &oDataLinkedServiceTypeProperties)
60302				if err != nil {
60303					return err
60304				}
60305				odls.ODataLinkedServiceTypeProperties = &oDataLinkedServiceTypeProperties
60306			}
60307		default:
60308			if v != nil {
60309				var additionalProperties interface{}
60310				err = json.Unmarshal(*v, &additionalProperties)
60311				if err != nil {
60312					return err
60313				}
60314				if odls.AdditionalProperties == nil {
60315					odls.AdditionalProperties = make(map[string]interface{})
60316				}
60317				odls.AdditionalProperties[k] = additionalProperties
60318			}
60319		case "connectVia":
60320			if v != nil {
60321				var connectVia IntegrationRuntimeReference
60322				err = json.Unmarshal(*v, &connectVia)
60323				if err != nil {
60324					return err
60325				}
60326				odls.ConnectVia = &connectVia
60327			}
60328		case "description":
60329			if v != nil {
60330				var description string
60331				err = json.Unmarshal(*v, &description)
60332				if err != nil {
60333					return err
60334				}
60335				odls.Description = &description
60336			}
60337		case "parameters":
60338			if v != nil {
60339				var parameters map[string]*ParameterSpecification
60340				err = json.Unmarshal(*v, &parameters)
60341				if err != nil {
60342					return err
60343				}
60344				odls.Parameters = parameters
60345			}
60346		case "annotations":
60347			if v != nil {
60348				var annotations []interface{}
60349				err = json.Unmarshal(*v, &annotations)
60350				if err != nil {
60351					return err
60352				}
60353				odls.Annotations = &annotations
60354			}
60355		case "type":
60356			if v != nil {
60357				var typeVar TypeBasicLinkedService
60358				err = json.Unmarshal(*v, &typeVar)
60359				if err != nil {
60360					return err
60361				}
60362				odls.Type = typeVar
60363			}
60364		}
60365	}
60366
60367	return nil
60368}
60369
60370// ODataLinkedServiceTypeProperties oData linked service properties.
60371type ODataLinkedServiceTypeProperties struct {
60372	// URL - The URL of the OData service endpoint. Type: string (or Expression with resultType string).
60373	URL interface{} `json:"url,omitempty"`
60374	// AuthenticationType - Type of authentication used to connect to the OData service. Possible values include: 'ODataAuthenticationTypeBasic', 'ODataAuthenticationTypeAnonymous'
60375	AuthenticationType ODataAuthenticationType `json:"authenticationType,omitempty"`
60376	// UserName - User name of the OData service. Type: string (or Expression with resultType string).
60377	UserName interface{} `json:"userName,omitempty"`
60378	// Password - Password of the OData service.
60379	Password BasicSecretBase `json:"password,omitempty"`
60380	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
60381	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
60382}
60383
60384// UnmarshalJSON is the custom unmarshaler for ODataLinkedServiceTypeProperties struct.
60385func (odlstp *ODataLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
60386	var m map[string]*json.RawMessage
60387	err := json.Unmarshal(body, &m)
60388	if err != nil {
60389		return err
60390	}
60391	for k, v := range m {
60392		switch k {
60393		case "url":
60394			if v != nil {
60395				var URL interface{}
60396				err = json.Unmarshal(*v, &URL)
60397				if err != nil {
60398					return err
60399				}
60400				odlstp.URL = URL
60401			}
60402		case "authenticationType":
60403			if v != nil {
60404				var authenticationType ODataAuthenticationType
60405				err = json.Unmarshal(*v, &authenticationType)
60406				if err != nil {
60407					return err
60408				}
60409				odlstp.AuthenticationType = authenticationType
60410			}
60411		case "userName":
60412			if v != nil {
60413				var userName interface{}
60414				err = json.Unmarshal(*v, &userName)
60415				if err != nil {
60416					return err
60417				}
60418				odlstp.UserName = userName
60419			}
60420		case "password":
60421			if v != nil {
60422				password, err := unmarshalBasicSecretBase(*v)
60423				if err != nil {
60424					return err
60425				}
60426				odlstp.Password = password
60427			}
60428		case "encryptedCredential":
60429			if v != nil {
60430				var encryptedCredential interface{}
60431				err = json.Unmarshal(*v, &encryptedCredential)
60432				if err != nil {
60433					return err
60434				}
60435				odlstp.EncryptedCredential = encryptedCredential
60436			}
60437		}
60438	}
60439
60440	return nil
60441}
60442
60443// ODataResourceDataset the Open Data Protocol (OData) resource dataset.
60444type ODataResourceDataset struct {
60445	// ODataResourceDatasetTypeProperties - OData dataset properties.
60446	*ODataResourceDatasetTypeProperties `json:"typeProperties,omitempty"`
60447	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
60448	AdditionalProperties map[string]interface{} `json:""`
60449	// Description - Dataset description.
60450	Description *string `json:"description,omitempty"`
60451	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
60452	Structure interface{} `json:"structure,omitempty"`
60453	// LinkedServiceName - Linked service reference.
60454	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
60455	// Parameters - Parameters for dataset.
60456	Parameters map[string]*ParameterSpecification `json:"parameters"`
60457	// Annotations - List of tags that can be used for describing the Dataset.
60458	Annotations *[]interface{} `json:"annotations,omitempty"`
60459	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
60460	Type TypeBasicDataset `json:"type,omitempty"`
60461}
60462
60463// MarshalJSON is the custom marshaler for ODataResourceDataset.
60464func (odrd ODataResourceDataset) MarshalJSON() ([]byte, error) {
60465	odrd.Type = TypeODataResource
60466	objectMap := make(map[string]interface{})
60467	if odrd.ODataResourceDatasetTypeProperties != nil {
60468		objectMap["typeProperties"] = odrd.ODataResourceDatasetTypeProperties
60469	}
60470	if odrd.Description != nil {
60471		objectMap["description"] = odrd.Description
60472	}
60473	objectMap["structure"] = odrd.Structure
60474	if odrd.LinkedServiceName != nil {
60475		objectMap["linkedServiceName"] = odrd.LinkedServiceName
60476	}
60477	if odrd.Parameters != nil {
60478		objectMap["parameters"] = odrd.Parameters
60479	}
60480	if odrd.Annotations != nil {
60481		objectMap["annotations"] = odrd.Annotations
60482	}
60483	if odrd.Type != "" {
60484		objectMap["type"] = odrd.Type
60485	}
60486	for k, v := range odrd.AdditionalProperties {
60487		objectMap[k] = v
60488	}
60489	return json.Marshal(objectMap)
60490}
60491
60492// AsResponsysObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60493func (odrd ODataResourceDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
60494	return nil, false
60495}
60496
60497// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60498func (odrd ODataResourceDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
60499	return nil, false
60500}
60501
60502// AsVerticaTableDataset is the BasicDataset implementation for ODataResourceDataset.
60503func (odrd ODataResourceDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
60504	return nil, false
60505}
60506
60507// AsNetezzaTableDataset is the BasicDataset implementation for ODataResourceDataset.
60508func (odrd ODataResourceDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
60509	return nil, false
60510}
60511
60512// AsZohoObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60513func (odrd ODataResourceDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
60514	return nil, false
60515}
60516
60517// AsXeroObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60518func (odrd ODataResourceDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
60519	return nil, false
60520}
60521
60522// AsSquareObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60523func (odrd ODataResourceDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
60524	return nil, false
60525}
60526
60527// AsSparkObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60528func (odrd ODataResourceDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
60529	return nil, false
60530}
60531
60532// AsShopifyObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60533func (odrd ODataResourceDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
60534	return nil, false
60535}
60536
60537// AsServiceNowObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60538func (odrd ODataResourceDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
60539	return nil, false
60540}
60541
60542// AsQuickBooksObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60543func (odrd ODataResourceDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
60544	return nil, false
60545}
60546
60547// AsPrestoObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60548func (odrd ODataResourceDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
60549	return nil, false
60550}
60551
60552// AsPhoenixObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60553func (odrd ODataResourceDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
60554	return nil, false
60555}
60556
60557// AsPaypalObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60558func (odrd ODataResourceDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
60559	return nil, false
60560}
60561
60562// AsMarketoObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60563func (odrd ODataResourceDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
60564	return nil, false
60565}
60566
60567// AsMariaDBTableDataset is the BasicDataset implementation for ODataResourceDataset.
60568func (odrd ODataResourceDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
60569	return nil, false
60570}
60571
60572// AsMagentoObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60573func (odrd ODataResourceDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
60574	return nil, false
60575}
60576
60577// AsJiraObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60578func (odrd ODataResourceDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
60579	return nil, false
60580}
60581
60582// AsImpalaObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60583func (odrd ODataResourceDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
60584	return nil, false
60585}
60586
60587// AsHubspotObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60588func (odrd ODataResourceDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
60589	return nil, false
60590}
60591
60592// AsHiveObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60593func (odrd ODataResourceDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
60594	return nil, false
60595}
60596
60597// AsHBaseObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60598func (odrd ODataResourceDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
60599	return nil, false
60600}
60601
60602// AsGreenplumTableDataset is the BasicDataset implementation for ODataResourceDataset.
60603func (odrd ODataResourceDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
60604	return nil, false
60605}
60606
60607// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60608func (odrd ODataResourceDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
60609	return nil, false
60610}
60611
60612// AsEloquaObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60613func (odrd ODataResourceDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
60614	return nil, false
60615}
60616
60617// AsDrillTableDataset is the BasicDataset implementation for ODataResourceDataset.
60618func (odrd ODataResourceDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
60619	return nil, false
60620}
60621
60622// AsCouchbaseTableDataset is the BasicDataset implementation for ODataResourceDataset.
60623func (odrd ODataResourceDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
60624	return nil, false
60625}
60626
60627// AsConcurObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60628func (odrd ODataResourceDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
60629	return nil, false
60630}
60631
60632// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ODataResourceDataset.
60633func (odrd ODataResourceDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
60634	return nil, false
60635}
60636
60637// AsAmazonMWSObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60638func (odrd ODataResourceDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
60639	return nil, false
60640}
60641
60642// AsHTTPDataset is the BasicDataset implementation for ODataResourceDataset.
60643func (odrd ODataResourceDataset) AsHTTPDataset() (*HTTPDataset, bool) {
60644	return nil, false
60645}
60646
60647// AsAzureSearchIndexDataset is the BasicDataset implementation for ODataResourceDataset.
60648func (odrd ODataResourceDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
60649	return nil, false
60650}
60651
60652// AsWebTableDataset is the BasicDataset implementation for ODataResourceDataset.
60653func (odrd ODataResourceDataset) AsWebTableDataset() (*WebTableDataset, bool) {
60654	return nil, false
60655}
60656
60657// AsSQLServerTableDataset is the BasicDataset implementation for ODataResourceDataset.
60658func (odrd ODataResourceDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
60659	return nil, false
60660}
60661
60662// AsSapEccResourceDataset is the BasicDataset implementation for ODataResourceDataset.
60663func (odrd ODataResourceDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
60664	return nil, false
60665}
60666
60667// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ODataResourceDataset.
60668func (odrd ODataResourceDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
60669	return nil, false
60670}
60671
60672// AsSalesforceObjectDataset is the BasicDataset implementation for ODataResourceDataset.
60673func (odrd ODataResourceDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
60674	return nil, false
60675}
60676
60677// AsRelationalTableDataset is the BasicDataset implementation for ODataResourceDataset.
60678func (odrd ODataResourceDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
60679	return nil, false
60680}
60681
60682// AsAzureMySQLTableDataset is the BasicDataset implementation for ODataResourceDataset.
60683func (odrd ODataResourceDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
60684	return nil, false
60685}
60686
60687// AsOracleTableDataset is the BasicDataset implementation for ODataResourceDataset.
60688func (odrd ODataResourceDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
60689	return nil, false
60690}
60691
60692// AsODataResourceDataset is the BasicDataset implementation for ODataResourceDataset.
60693func (odrd ODataResourceDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
60694	return &odrd, true
60695}
60696
60697// AsMongoDbCollectionDataset is the BasicDataset implementation for ODataResourceDataset.
60698func (odrd ODataResourceDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
60699	return nil, false
60700}
60701
60702// AsFileShareDataset is the BasicDataset implementation for ODataResourceDataset.
60703func (odrd ODataResourceDataset) AsFileShareDataset() (*FileShareDataset, bool) {
60704	return nil, false
60705}
60706
60707// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ODataResourceDataset.
60708func (odrd ODataResourceDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
60709	return nil, false
60710}
60711
60712// AsDynamicsEntityDataset is the BasicDataset implementation for ODataResourceDataset.
60713func (odrd ODataResourceDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
60714	return nil, false
60715}
60716
60717// AsDocumentDbCollectionDataset is the BasicDataset implementation for ODataResourceDataset.
60718func (odrd ODataResourceDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
60719	return nil, false
60720}
60721
60722// AsCustomDataset is the BasicDataset implementation for ODataResourceDataset.
60723func (odrd ODataResourceDataset) AsCustomDataset() (*CustomDataset, bool) {
60724	return nil, false
60725}
60726
60727// AsCassandraTableDataset is the BasicDataset implementation for ODataResourceDataset.
60728func (odrd ODataResourceDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
60729	return nil, false
60730}
60731
60732// AsAzureSQLDWTableDataset is the BasicDataset implementation for ODataResourceDataset.
60733func (odrd ODataResourceDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
60734	return nil, false
60735}
60736
60737// AsAzureSQLTableDataset is the BasicDataset implementation for ODataResourceDataset.
60738func (odrd ODataResourceDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
60739	return nil, false
60740}
60741
60742// AsAzureTableDataset is the BasicDataset implementation for ODataResourceDataset.
60743func (odrd ODataResourceDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
60744	return nil, false
60745}
60746
60747// AsAzureBlobDataset is the BasicDataset implementation for ODataResourceDataset.
60748func (odrd ODataResourceDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
60749	return nil, false
60750}
60751
60752// AsAmazonS3Dataset is the BasicDataset implementation for ODataResourceDataset.
60753func (odrd ODataResourceDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
60754	return nil, false
60755}
60756
60757// AsDataset is the BasicDataset implementation for ODataResourceDataset.
60758func (odrd ODataResourceDataset) AsDataset() (*Dataset, bool) {
60759	return nil, false
60760}
60761
60762// AsBasicDataset is the BasicDataset implementation for ODataResourceDataset.
60763func (odrd ODataResourceDataset) AsBasicDataset() (BasicDataset, bool) {
60764	return &odrd, true
60765}
60766
60767// UnmarshalJSON is the custom unmarshaler for ODataResourceDataset struct.
60768func (odrd *ODataResourceDataset) UnmarshalJSON(body []byte) error {
60769	var m map[string]*json.RawMessage
60770	err := json.Unmarshal(body, &m)
60771	if err != nil {
60772		return err
60773	}
60774	for k, v := range m {
60775		switch k {
60776		case "typeProperties":
60777			if v != nil {
60778				var oDataResourceDatasetTypeProperties ODataResourceDatasetTypeProperties
60779				err = json.Unmarshal(*v, &oDataResourceDatasetTypeProperties)
60780				if err != nil {
60781					return err
60782				}
60783				odrd.ODataResourceDatasetTypeProperties = &oDataResourceDatasetTypeProperties
60784			}
60785		default:
60786			if v != nil {
60787				var additionalProperties interface{}
60788				err = json.Unmarshal(*v, &additionalProperties)
60789				if err != nil {
60790					return err
60791				}
60792				if odrd.AdditionalProperties == nil {
60793					odrd.AdditionalProperties = make(map[string]interface{})
60794				}
60795				odrd.AdditionalProperties[k] = additionalProperties
60796			}
60797		case "description":
60798			if v != nil {
60799				var description string
60800				err = json.Unmarshal(*v, &description)
60801				if err != nil {
60802					return err
60803				}
60804				odrd.Description = &description
60805			}
60806		case "structure":
60807			if v != nil {
60808				var structure interface{}
60809				err = json.Unmarshal(*v, &structure)
60810				if err != nil {
60811					return err
60812				}
60813				odrd.Structure = structure
60814			}
60815		case "linkedServiceName":
60816			if v != nil {
60817				var linkedServiceName LinkedServiceReference
60818				err = json.Unmarshal(*v, &linkedServiceName)
60819				if err != nil {
60820					return err
60821				}
60822				odrd.LinkedServiceName = &linkedServiceName
60823			}
60824		case "parameters":
60825			if v != nil {
60826				var parameters map[string]*ParameterSpecification
60827				err = json.Unmarshal(*v, &parameters)
60828				if err != nil {
60829					return err
60830				}
60831				odrd.Parameters = parameters
60832			}
60833		case "annotations":
60834			if v != nil {
60835				var annotations []interface{}
60836				err = json.Unmarshal(*v, &annotations)
60837				if err != nil {
60838					return err
60839				}
60840				odrd.Annotations = &annotations
60841			}
60842		case "type":
60843			if v != nil {
60844				var typeVar TypeBasicDataset
60845				err = json.Unmarshal(*v, &typeVar)
60846				if err != nil {
60847					return err
60848				}
60849				odrd.Type = typeVar
60850			}
60851		}
60852	}
60853
60854	return nil
60855}
60856
60857// ODataResourceDatasetTypeProperties oData dataset properties.
60858type ODataResourceDatasetTypeProperties struct {
60859	// Path - The OData resource path. Type: string (or Expression with resultType string).
60860	Path interface{} `json:"path,omitempty"`
60861}
60862
60863// OdbcLinkedService open Database Connectivity (ODBC) linked service.
60864type OdbcLinkedService struct {
60865	// OdbcLinkedServiceTypeProperties - ODBC linked service properties.
60866	*OdbcLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
60867	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
60868	AdditionalProperties map[string]interface{} `json:""`
60869	// ConnectVia - The integration runtime reference.
60870	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
60871	// Description - Linked service description.
60872	Description *string `json:"description,omitempty"`
60873	// Parameters - Parameters for linked service.
60874	Parameters map[string]*ParameterSpecification `json:"parameters"`
60875	// Annotations - List of tags that can be used for describing the Dataset.
60876	Annotations *[]interface{} `json:"annotations,omitempty"`
60877	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
60878	Type TypeBasicLinkedService `json:"type,omitempty"`
60879}
60880
60881// MarshalJSON is the custom marshaler for OdbcLinkedService.
60882func (ols OdbcLinkedService) MarshalJSON() ([]byte, error) {
60883	ols.Type = TypeOdbc
60884	objectMap := make(map[string]interface{})
60885	if ols.OdbcLinkedServiceTypeProperties != nil {
60886		objectMap["typeProperties"] = ols.OdbcLinkedServiceTypeProperties
60887	}
60888	if ols.ConnectVia != nil {
60889		objectMap["connectVia"] = ols.ConnectVia
60890	}
60891	if ols.Description != nil {
60892		objectMap["description"] = ols.Description
60893	}
60894	if ols.Parameters != nil {
60895		objectMap["parameters"] = ols.Parameters
60896	}
60897	if ols.Annotations != nil {
60898		objectMap["annotations"] = ols.Annotations
60899	}
60900	if ols.Type != "" {
60901		objectMap["type"] = ols.Type
60902	}
60903	for k, v := range ols.AdditionalProperties {
60904		objectMap[k] = v
60905	}
60906	return json.Marshal(objectMap)
60907}
60908
60909// AsResponsysLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60910func (ols OdbcLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
60911	return nil, false
60912}
60913
60914// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60915func (ols OdbcLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
60916	return nil, false
60917}
60918
60919// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60920func (ols OdbcLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
60921	return nil, false
60922}
60923
60924// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60925func (ols OdbcLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
60926	return nil, false
60927}
60928
60929// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60930func (ols OdbcLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
60931	return nil, false
60932}
60933
60934// AsNetezzaLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60935func (ols OdbcLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
60936	return nil, false
60937}
60938
60939// AsVerticaLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60940func (ols OdbcLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
60941	return nil, false
60942}
60943
60944// AsZohoLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60945func (ols OdbcLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
60946	return nil, false
60947}
60948
60949// AsXeroLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60950func (ols OdbcLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
60951	return nil, false
60952}
60953
60954// AsSquareLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60955func (ols OdbcLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
60956	return nil, false
60957}
60958
60959// AsSparkLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60960func (ols OdbcLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
60961	return nil, false
60962}
60963
60964// AsShopifyLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60965func (ols OdbcLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
60966	return nil, false
60967}
60968
60969// AsServiceNowLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60970func (ols OdbcLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
60971	return nil, false
60972}
60973
60974// AsQuickBooksLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60975func (ols OdbcLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
60976	return nil, false
60977}
60978
60979// AsPrestoLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60980func (ols OdbcLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
60981	return nil, false
60982}
60983
60984// AsPhoenixLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60985func (ols OdbcLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
60986	return nil, false
60987}
60988
60989// AsPaypalLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60990func (ols OdbcLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
60991	return nil, false
60992}
60993
60994// AsMarketoLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
60995func (ols OdbcLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
60996	return nil, false
60997}
60998
60999// AsMariaDBLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61000func (ols OdbcLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
61001	return nil, false
61002}
61003
61004// AsMagentoLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61005func (ols OdbcLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
61006	return nil, false
61007}
61008
61009// AsJiraLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61010func (ols OdbcLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
61011	return nil, false
61012}
61013
61014// AsImpalaLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61015func (ols OdbcLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
61016	return nil, false
61017}
61018
61019// AsHubspotLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61020func (ols OdbcLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
61021	return nil, false
61022}
61023
61024// AsHiveLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61025func (ols OdbcLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
61026	return nil, false
61027}
61028
61029// AsHBaseLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61030func (ols OdbcLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
61031	return nil, false
61032}
61033
61034// AsGreenplumLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61035func (ols OdbcLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
61036	return nil, false
61037}
61038
61039// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61040func (ols OdbcLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
61041	return nil, false
61042}
61043
61044// AsEloquaLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61045func (ols OdbcLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
61046	return nil, false
61047}
61048
61049// AsDrillLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61050func (ols OdbcLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
61051	return nil, false
61052}
61053
61054// AsCouchbaseLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61055func (ols OdbcLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
61056	return nil, false
61057}
61058
61059// AsConcurLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61060func (ols OdbcLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
61061	return nil, false
61062}
61063
61064// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61065func (ols OdbcLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
61066	return nil, false
61067}
61068
61069// AsAmazonMWSLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61070func (ols OdbcLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
61071	return nil, false
61072}
61073
61074// AsSapHanaLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61075func (ols OdbcLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
61076	return nil, false
61077}
61078
61079// AsSapBWLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61080func (ols OdbcLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
61081	return nil, false
61082}
61083
61084// AsSftpServerLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61085func (ols OdbcLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
61086	return nil, false
61087}
61088
61089// AsFtpServerLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61090func (ols OdbcLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
61091	return nil, false
61092}
61093
61094// AsHTTPLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61095func (ols OdbcLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
61096	return nil, false
61097}
61098
61099// AsAzureSearchLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61100func (ols OdbcLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
61101	return nil, false
61102}
61103
61104// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61105func (ols OdbcLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
61106	return nil, false
61107}
61108
61109// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61110func (ols OdbcLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
61111	return nil, false
61112}
61113
61114// AsAmazonS3LinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61115func (ols OdbcLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
61116	return nil, false
61117}
61118
61119// AsSapEccLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61120func (ols OdbcLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
61121	return nil, false
61122}
61123
61124// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61125func (ols OdbcLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
61126	return nil, false
61127}
61128
61129// AsSalesforceLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61130func (ols OdbcLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
61131	return nil, false
61132}
61133
61134// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61135func (ols OdbcLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
61136	return nil, false
61137}
61138
61139// AsMongoDbLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61140func (ols OdbcLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
61141	return nil, false
61142}
61143
61144// AsCassandraLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61145func (ols OdbcLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
61146	return nil, false
61147}
61148
61149// AsWebLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61150func (ols OdbcLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
61151	return nil, false
61152}
61153
61154// AsODataLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61155func (ols OdbcLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
61156	return nil, false
61157}
61158
61159// AsHdfsLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61160func (ols OdbcLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
61161	return nil, false
61162}
61163
61164// AsOdbcLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61165func (ols OdbcLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
61166	return &ols, true
61167}
61168
61169// AsAzureMLLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61170func (ols OdbcLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
61171	return nil, false
61172}
61173
61174// AsTeradataLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61175func (ols OdbcLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
61176	return nil, false
61177}
61178
61179// AsDb2LinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61180func (ols OdbcLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
61181	return nil, false
61182}
61183
61184// AsSybaseLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61185func (ols OdbcLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
61186	return nil, false
61187}
61188
61189// AsPostgreSQLLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61190func (ols OdbcLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
61191	return nil, false
61192}
61193
61194// AsMySQLLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61195func (ols OdbcLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
61196	return nil, false
61197}
61198
61199// AsAzureMySQLLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61200func (ols OdbcLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
61201	return nil, false
61202}
61203
61204// AsOracleLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61205func (ols OdbcLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
61206	return nil, false
61207}
61208
61209// AsFileServerLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61210func (ols OdbcLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
61211	return nil, false
61212}
61213
61214// AsHDInsightLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61215func (ols OdbcLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
61216	return nil, false
61217}
61218
61219// AsDynamicsLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61220func (ols OdbcLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
61221	return nil, false
61222}
61223
61224// AsCosmosDbLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61225func (ols OdbcLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
61226	return nil, false
61227}
61228
61229// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61230func (ols OdbcLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
61231	return nil, false
61232}
61233
61234// AsAzureBatchLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61235func (ols OdbcLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
61236	return nil, false
61237}
61238
61239// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61240func (ols OdbcLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
61241	return nil, false
61242}
61243
61244// AsSQLServerLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61245func (ols OdbcLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
61246	return nil, false
61247}
61248
61249// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61250func (ols OdbcLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
61251	return nil, false
61252}
61253
61254// AsAzureStorageLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61255func (ols OdbcLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
61256	return nil, false
61257}
61258
61259// AsLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61260func (ols OdbcLinkedService) AsLinkedService() (*LinkedService, bool) {
61261	return nil, false
61262}
61263
61264// AsBasicLinkedService is the BasicLinkedService implementation for OdbcLinkedService.
61265func (ols OdbcLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
61266	return &ols, true
61267}
61268
61269// UnmarshalJSON is the custom unmarshaler for OdbcLinkedService struct.
61270func (ols *OdbcLinkedService) UnmarshalJSON(body []byte) error {
61271	var m map[string]*json.RawMessage
61272	err := json.Unmarshal(body, &m)
61273	if err != nil {
61274		return err
61275	}
61276	for k, v := range m {
61277		switch k {
61278		case "typeProperties":
61279			if v != nil {
61280				var odbcLinkedServiceTypeProperties OdbcLinkedServiceTypeProperties
61281				err = json.Unmarshal(*v, &odbcLinkedServiceTypeProperties)
61282				if err != nil {
61283					return err
61284				}
61285				ols.OdbcLinkedServiceTypeProperties = &odbcLinkedServiceTypeProperties
61286			}
61287		default:
61288			if v != nil {
61289				var additionalProperties interface{}
61290				err = json.Unmarshal(*v, &additionalProperties)
61291				if err != nil {
61292					return err
61293				}
61294				if ols.AdditionalProperties == nil {
61295					ols.AdditionalProperties = make(map[string]interface{})
61296				}
61297				ols.AdditionalProperties[k] = additionalProperties
61298			}
61299		case "connectVia":
61300			if v != nil {
61301				var connectVia IntegrationRuntimeReference
61302				err = json.Unmarshal(*v, &connectVia)
61303				if err != nil {
61304					return err
61305				}
61306				ols.ConnectVia = &connectVia
61307			}
61308		case "description":
61309			if v != nil {
61310				var description string
61311				err = json.Unmarshal(*v, &description)
61312				if err != nil {
61313					return err
61314				}
61315				ols.Description = &description
61316			}
61317		case "parameters":
61318			if v != nil {
61319				var parameters map[string]*ParameterSpecification
61320				err = json.Unmarshal(*v, &parameters)
61321				if err != nil {
61322					return err
61323				}
61324				ols.Parameters = parameters
61325			}
61326		case "annotations":
61327			if v != nil {
61328				var annotations []interface{}
61329				err = json.Unmarshal(*v, &annotations)
61330				if err != nil {
61331					return err
61332				}
61333				ols.Annotations = &annotations
61334			}
61335		case "type":
61336			if v != nil {
61337				var typeVar TypeBasicLinkedService
61338				err = json.Unmarshal(*v, &typeVar)
61339				if err != nil {
61340					return err
61341				}
61342				ols.Type = typeVar
61343			}
61344		}
61345	}
61346
61347	return nil
61348}
61349
61350// OdbcLinkedServiceTypeProperties ODBC linked service properties.
61351type OdbcLinkedServiceTypeProperties struct {
61352	// ConnectionString - The non-access credential portion of the connection string as well as an optional encrypted credential.
61353	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
61354	// AuthenticationType - Type of authentication used to connect to the ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string).
61355	AuthenticationType interface{} `json:"authenticationType,omitempty"`
61356	// Credential - The access credential portion of the connection string specified in driver-specific property-value format.
61357	Credential BasicSecretBase `json:"credential,omitempty"`
61358	// UserName - User name for Basic authentication. Type: string (or Expression with resultType string).
61359	UserName interface{} `json:"userName,omitempty"`
61360	// Password - Password for Basic authentication.
61361	Password BasicSecretBase `json:"password,omitempty"`
61362	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
61363	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
61364}
61365
61366// UnmarshalJSON is the custom unmarshaler for OdbcLinkedServiceTypeProperties struct.
61367func (olstp *OdbcLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
61368	var m map[string]*json.RawMessage
61369	err := json.Unmarshal(body, &m)
61370	if err != nil {
61371		return err
61372	}
61373	for k, v := range m {
61374		switch k {
61375		case "connectionString":
61376			if v != nil {
61377				connectionString, err := unmarshalBasicSecretBase(*v)
61378				if err != nil {
61379					return err
61380				}
61381				olstp.ConnectionString = connectionString
61382			}
61383		case "authenticationType":
61384			if v != nil {
61385				var authenticationType interface{}
61386				err = json.Unmarshal(*v, &authenticationType)
61387				if err != nil {
61388					return err
61389				}
61390				olstp.AuthenticationType = authenticationType
61391			}
61392		case "credential":
61393			if v != nil {
61394				credential, err := unmarshalBasicSecretBase(*v)
61395				if err != nil {
61396					return err
61397				}
61398				olstp.Credential = credential
61399			}
61400		case "userName":
61401			if v != nil {
61402				var userName interface{}
61403				err = json.Unmarshal(*v, &userName)
61404				if err != nil {
61405					return err
61406				}
61407				olstp.UserName = userName
61408			}
61409		case "password":
61410			if v != nil {
61411				password, err := unmarshalBasicSecretBase(*v)
61412				if err != nil {
61413					return err
61414				}
61415				olstp.Password = password
61416			}
61417		case "encryptedCredential":
61418			if v != nil {
61419				var encryptedCredential interface{}
61420				err = json.Unmarshal(*v, &encryptedCredential)
61421				if err != nil {
61422					return err
61423				}
61424				olstp.EncryptedCredential = encryptedCredential
61425			}
61426		}
61427	}
61428
61429	return nil
61430}
61431
61432// OdbcSink a copy activity ODBC sink.
61433type OdbcSink struct {
61434	// PreCopyScript - A query to execute before starting the copy. Type: string (or Expression with resultType string).
61435	PreCopyScript interface{} `json:"preCopyScript,omitempty"`
61436	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
61437	AdditionalProperties map[string]interface{} `json:""`
61438	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
61439	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
61440	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
61441	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
61442	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
61443	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
61444	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
61445	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
61446	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
61447	Type TypeBasicCopySink `json:"type,omitempty"`
61448}
61449
61450// MarshalJSON is the custom marshaler for OdbcSink.
61451func (osVar OdbcSink) MarshalJSON() ([]byte, error) {
61452	osVar.Type = TypeOdbcSink
61453	objectMap := make(map[string]interface{})
61454	objectMap["preCopyScript"] = osVar.PreCopyScript
61455	objectMap["writeBatchSize"] = osVar.WriteBatchSize
61456	objectMap["writeBatchTimeout"] = osVar.WriteBatchTimeout
61457	objectMap["sinkRetryCount"] = osVar.SinkRetryCount
61458	objectMap["sinkRetryWait"] = osVar.SinkRetryWait
61459	if osVar.Type != "" {
61460		objectMap["type"] = osVar.Type
61461	}
61462	for k, v := range osVar.AdditionalProperties {
61463		objectMap[k] = v
61464	}
61465	return json.Marshal(objectMap)
61466}
61467
61468// AsSalesforceSink is the BasicCopySink implementation for OdbcSink.
61469func (osVar OdbcSink) AsSalesforceSink() (*SalesforceSink, bool) {
61470	return nil, false
61471}
61472
61473// AsDynamicsSink is the BasicCopySink implementation for OdbcSink.
61474func (osVar OdbcSink) AsDynamicsSink() (*DynamicsSink, bool) {
61475	return nil, false
61476}
61477
61478// AsOdbcSink is the BasicCopySink implementation for OdbcSink.
61479func (osVar OdbcSink) AsOdbcSink() (*OdbcSink, bool) {
61480	return &osVar, true
61481}
61482
61483// AsAzureSearchIndexSink is the BasicCopySink implementation for OdbcSink.
61484func (osVar OdbcSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
61485	return nil, false
61486}
61487
61488// AsAzureDataLakeStoreSink is the BasicCopySink implementation for OdbcSink.
61489func (osVar OdbcSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
61490	return nil, false
61491}
61492
61493// AsOracleSink is the BasicCopySink implementation for OdbcSink.
61494func (osVar OdbcSink) AsOracleSink() (*OracleSink, bool) {
61495	return nil, false
61496}
61497
61498// AsSQLDWSink is the BasicCopySink implementation for OdbcSink.
61499func (osVar OdbcSink) AsSQLDWSink() (*SQLDWSink, bool) {
61500	return nil, false
61501}
61502
61503// AsSQLSink is the BasicCopySink implementation for OdbcSink.
61504func (osVar OdbcSink) AsSQLSink() (*SQLSink, bool) {
61505	return nil, false
61506}
61507
61508// AsDocumentDbCollectionSink is the BasicCopySink implementation for OdbcSink.
61509func (osVar OdbcSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
61510	return nil, false
61511}
61512
61513// AsFileSystemSink is the BasicCopySink implementation for OdbcSink.
61514func (osVar OdbcSink) AsFileSystemSink() (*FileSystemSink, bool) {
61515	return nil, false
61516}
61517
61518// AsBlobSink is the BasicCopySink implementation for OdbcSink.
61519func (osVar OdbcSink) AsBlobSink() (*BlobSink, bool) {
61520	return nil, false
61521}
61522
61523// AsAzureTableSink is the BasicCopySink implementation for OdbcSink.
61524func (osVar OdbcSink) AsAzureTableSink() (*AzureTableSink, bool) {
61525	return nil, false
61526}
61527
61528// AsAzureQueueSink is the BasicCopySink implementation for OdbcSink.
61529func (osVar OdbcSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
61530	return nil, false
61531}
61532
61533// AsSapCloudForCustomerSink is the BasicCopySink implementation for OdbcSink.
61534func (osVar OdbcSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
61535	return nil, false
61536}
61537
61538// AsCopySink is the BasicCopySink implementation for OdbcSink.
61539func (osVar OdbcSink) AsCopySink() (*CopySink, bool) {
61540	return nil, false
61541}
61542
61543// AsBasicCopySink is the BasicCopySink implementation for OdbcSink.
61544func (osVar OdbcSink) AsBasicCopySink() (BasicCopySink, bool) {
61545	return &osVar, true
61546}
61547
61548// Operation azure Data Factory API operation definition.
61549type Operation struct {
61550	// Name - Operation name: {provider}/{resource}/{operation}
61551	Name *string `json:"name,omitempty"`
61552	// Origin - The intended executor of the operation.
61553	Origin *string `json:"origin,omitempty"`
61554	// Display - Metadata associated with the operation.
61555	Display *OperationDisplay `json:"display,omitempty"`
61556	// OperationProperties - Additional details about the operation.
61557	*OperationProperties `json:"properties,omitempty"`
61558}
61559
61560// MarshalJSON is the custom marshaler for Operation.
61561func (o Operation) MarshalJSON() ([]byte, error) {
61562	objectMap := make(map[string]interface{})
61563	if o.Name != nil {
61564		objectMap["name"] = o.Name
61565	}
61566	if o.Origin != nil {
61567		objectMap["origin"] = o.Origin
61568	}
61569	if o.Display != nil {
61570		objectMap["display"] = o.Display
61571	}
61572	if o.OperationProperties != nil {
61573		objectMap["properties"] = o.OperationProperties
61574	}
61575	return json.Marshal(objectMap)
61576}
61577
61578// UnmarshalJSON is the custom unmarshaler for Operation struct.
61579func (o *Operation) UnmarshalJSON(body []byte) error {
61580	var m map[string]*json.RawMessage
61581	err := json.Unmarshal(body, &m)
61582	if err != nil {
61583		return err
61584	}
61585	for k, v := range m {
61586		switch k {
61587		case "name":
61588			if v != nil {
61589				var name string
61590				err = json.Unmarshal(*v, &name)
61591				if err != nil {
61592					return err
61593				}
61594				o.Name = &name
61595			}
61596		case "origin":
61597			if v != nil {
61598				var origin string
61599				err = json.Unmarshal(*v, &origin)
61600				if err != nil {
61601					return err
61602				}
61603				o.Origin = &origin
61604			}
61605		case "display":
61606			if v != nil {
61607				var display OperationDisplay
61608				err = json.Unmarshal(*v, &display)
61609				if err != nil {
61610					return err
61611				}
61612				o.Display = &display
61613			}
61614		case "properties":
61615			if v != nil {
61616				var operationProperties OperationProperties
61617				err = json.Unmarshal(*v, &operationProperties)
61618				if err != nil {
61619					return err
61620				}
61621				o.OperationProperties = &operationProperties
61622			}
61623		}
61624	}
61625
61626	return nil
61627}
61628
61629// OperationDisplay metadata associated with the operation.
61630type OperationDisplay struct {
61631	// Description - The description of the operation.
61632	Description *string `json:"description,omitempty"`
61633	// Provider - The name of the provider.
61634	Provider *string `json:"provider,omitempty"`
61635	// Resource - The name of the resource type on which the operation is performed.
61636	Resource *string `json:"resource,omitempty"`
61637	// Operation - The type of operation: get, read, delete, etc.
61638	Operation *string `json:"operation,omitempty"`
61639}
61640
61641// OperationListResponse a list of operations that can be performed by the Data Factory service.
61642type OperationListResponse struct {
61643	autorest.Response `json:"-"`
61644	// Value - List of Data Factory operations supported by the Data Factory resource provider.
61645	Value *[]Operation `json:"value,omitempty"`
61646	// NextLink - The link to the next page of results, if any remaining results exist.
61647	NextLink *string `json:"nextLink,omitempty"`
61648}
61649
61650// OperationLogSpecification details about an operation related to logs.
61651type OperationLogSpecification struct {
61652	// Name - The name of the log category.
61653	Name *string `json:"name,omitempty"`
61654	// DisplayName - Localized display name.
61655	DisplayName *string `json:"displayName,omitempty"`
61656	// BlobDuration - Blobs created in the customer storage account, per hour.
61657	BlobDuration *string `json:"blobDuration,omitempty"`
61658}
61659
61660// OperationMetricAvailability defines how often data for a metric becomes available.
61661type OperationMetricAvailability struct {
61662	// TimeGrain - The granularity for the metric.
61663	TimeGrain *string `json:"timeGrain,omitempty"`
61664	// BlobDuration - Blob created in the customer storage account, per hour.
61665	BlobDuration *string `json:"blobDuration,omitempty"`
61666}
61667
61668// OperationMetricSpecification details about an operation related to metrics.
61669type OperationMetricSpecification struct {
61670	// Name - The name of the metric.
61671	Name *string `json:"name,omitempty"`
61672	// DisplayName - Localized display name of the metric.
61673	DisplayName *string `json:"displayName,omitempty"`
61674	// DisplayDescription - The description of the metric.
61675	DisplayDescription *string `json:"displayDescription,omitempty"`
61676	// Unit - The unit that the metric is measured in.
61677	Unit *string `json:"unit,omitempty"`
61678	// AggregationType - The type of metric aggregation.
61679	AggregationType *string `json:"aggregationType,omitempty"`
61680	// EnableRegionalMdmAccount - Whether or not the service is using regional MDM accounts.
61681	EnableRegionalMdmAccount *string `json:"enableRegionalMdmAccount,omitempty"`
61682	// SourceMdmAccount - The name of the MDM account.
61683	SourceMdmAccount *string `json:"sourceMdmAccount,omitempty"`
61684	// SourceMdmNamespace - The name of the MDM namespace.
61685	SourceMdmNamespace *string `json:"sourceMdmNamespace,omitempty"`
61686	// Availabilities - Defines how often data for metrics becomes available.
61687	Availabilities *[]OperationMetricAvailability `json:"availabilities,omitempty"`
61688}
61689
61690// OperationProperties additional details about an operation.
61691type OperationProperties struct {
61692	// ServiceSpecification - Details about a service operation.
61693	ServiceSpecification *OperationServiceSpecification `json:"serviceSpecification,omitempty"`
61694}
61695
61696// OperationServiceSpecification details about a service operation.
61697type OperationServiceSpecification struct {
61698	// LogSpecifications - Details about operations related to logs.
61699	LogSpecifications *[]OperationLogSpecification `json:"logSpecifications,omitempty"`
61700	// MetricSpecifications - Details about operations related to metrics.
61701	MetricSpecifications *[]OperationMetricSpecification `json:"metricSpecifications,omitempty"`
61702}
61703
61704// OracleLinkedService oracle database.
61705type OracleLinkedService struct {
61706	// OracleLinkedServiceTypeProperties - Oracle database linked service properties.
61707	*OracleLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
61708	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
61709	AdditionalProperties map[string]interface{} `json:""`
61710	// ConnectVia - The integration runtime reference.
61711	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
61712	// Description - Linked service description.
61713	Description *string `json:"description,omitempty"`
61714	// Parameters - Parameters for linked service.
61715	Parameters map[string]*ParameterSpecification `json:"parameters"`
61716	// Annotations - List of tags that can be used for describing the Dataset.
61717	Annotations *[]interface{} `json:"annotations,omitempty"`
61718	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
61719	Type TypeBasicLinkedService `json:"type,omitempty"`
61720}
61721
61722// MarshalJSON is the custom marshaler for OracleLinkedService.
61723func (ols OracleLinkedService) MarshalJSON() ([]byte, error) {
61724	ols.Type = TypeOracle
61725	objectMap := make(map[string]interface{})
61726	if ols.OracleLinkedServiceTypeProperties != nil {
61727		objectMap["typeProperties"] = ols.OracleLinkedServiceTypeProperties
61728	}
61729	if ols.ConnectVia != nil {
61730		objectMap["connectVia"] = ols.ConnectVia
61731	}
61732	if ols.Description != nil {
61733		objectMap["description"] = ols.Description
61734	}
61735	if ols.Parameters != nil {
61736		objectMap["parameters"] = ols.Parameters
61737	}
61738	if ols.Annotations != nil {
61739		objectMap["annotations"] = ols.Annotations
61740	}
61741	if ols.Type != "" {
61742		objectMap["type"] = ols.Type
61743	}
61744	for k, v := range ols.AdditionalProperties {
61745		objectMap[k] = v
61746	}
61747	return json.Marshal(objectMap)
61748}
61749
61750// AsResponsysLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61751func (ols OracleLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
61752	return nil, false
61753}
61754
61755// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61756func (ols OracleLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
61757	return nil, false
61758}
61759
61760// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61761func (ols OracleLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
61762	return nil, false
61763}
61764
61765// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61766func (ols OracleLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
61767	return nil, false
61768}
61769
61770// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61771func (ols OracleLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
61772	return nil, false
61773}
61774
61775// AsNetezzaLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61776func (ols OracleLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
61777	return nil, false
61778}
61779
61780// AsVerticaLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61781func (ols OracleLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
61782	return nil, false
61783}
61784
61785// AsZohoLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61786func (ols OracleLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
61787	return nil, false
61788}
61789
61790// AsXeroLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61791func (ols OracleLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
61792	return nil, false
61793}
61794
61795// AsSquareLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61796func (ols OracleLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
61797	return nil, false
61798}
61799
61800// AsSparkLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61801func (ols OracleLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
61802	return nil, false
61803}
61804
61805// AsShopifyLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61806func (ols OracleLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
61807	return nil, false
61808}
61809
61810// AsServiceNowLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61811func (ols OracleLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
61812	return nil, false
61813}
61814
61815// AsQuickBooksLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61816func (ols OracleLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
61817	return nil, false
61818}
61819
61820// AsPrestoLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61821func (ols OracleLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
61822	return nil, false
61823}
61824
61825// AsPhoenixLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61826func (ols OracleLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
61827	return nil, false
61828}
61829
61830// AsPaypalLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61831func (ols OracleLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
61832	return nil, false
61833}
61834
61835// AsMarketoLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61836func (ols OracleLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
61837	return nil, false
61838}
61839
61840// AsMariaDBLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61841func (ols OracleLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
61842	return nil, false
61843}
61844
61845// AsMagentoLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61846func (ols OracleLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
61847	return nil, false
61848}
61849
61850// AsJiraLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61851func (ols OracleLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
61852	return nil, false
61853}
61854
61855// AsImpalaLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61856func (ols OracleLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
61857	return nil, false
61858}
61859
61860// AsHubspotLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61861func (ols OracleLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
61862	return nil, false
61863}
61864
61865// AsHiveLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61866func (ols OracleLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
61867	return nil, false
61868}
61869
61870// AsHBaseLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61871func (ols OracleLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
61872	return nil, false
61873}
61874
61875// AsGreenplumLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61876func (ols OracleLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
61877	return nil, false
61878}
61879
61880// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61881func (ols OracleLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
61882	return nil, false
61883}
61884
61885// AsEloquaLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61886func (ols OracleLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
61887	return nil, false
61888}
61889
61890// AsDrillLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61891func (ols OracleLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
61892	return nil, false
61893}
61894
61895// AsCouchbaseLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61896func (ols OracleLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
61897	return nil, false
61898}
61899
61900// AsConcurLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61901func (ols OracleLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
61902	return nil, false
61903}
61904
61905// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61906func (ols OracleLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
61907	return nil, false
61908}
61909
61910// AsAmazonMWSLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61911func (ols OracleLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
61912	return nil, false
61913}
61914
61915// AsSapHanaLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61916func (ols OracleLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
61917	return nil, false
61918}
61919
61920// AsSapBWLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61921func (ols OracleLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
61922	return nil, false
61923}
61924
61925// AsSftpServerLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61926func (ols OracleLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
61927	return nil, false
61928}
61929
61930// AsFtpServerLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61931func (ols OracleLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
61932	return nil, false
61933}
61934
61935// AsHTTPLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61936func (ols OracleLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
61937	return nil, false
61938}
61939
61940// AsAzureSearchLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61941func (ols OracleLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
61942	return nil, false
61943}
61944
61945// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61946func (ols OracleLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
61947	return nil, false
61948}
61949
61950// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61951func (ols OracleLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
61952	return nil, false
61953}
61954
61955// AsAmazonS3LinkedService is the BasicLinkedService implementation for OracleLinkedService.
61956func (ols OracleLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
61957	return nil, false
61958}
61959
61960// AsSapEccLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61961func (ols OracleLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
61962	return nil, false
61963}
61964
61965// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61966func (ols OracleLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
61967	return nil, false
61968}
61969
61970// AsSalesforceLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61971func (ols OracleLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
61972	return nil, false
61973}
61974
61975// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61976func (ols OracleLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
61977	return nil, false
61978}
61979
61980// AsMongoDbLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61981func (ols OracleLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
61982	return nil, false
61983}
61984
61985// AsCassandraLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61986func (ols OracleLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
61987	return nil, false
61988}
61989
61990// AsWebLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61991func (ols OracleLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
61992	return nil, false
61993}
61994
61995// AsODataLinkedService is the BasicLinkedService implementation for OracleLinkedService.
61996func (ols OracleLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
61997	return nil, false
61998}
61999
62000// AsHdfsLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62001func (ols OracleLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
62002	return nil, false
62003}
62004
62005// AsOdbcLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62006func (ols OracleLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
62007	return nil, false
62008}
62009
62010// AsAzureMLLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62011func (ols OracleLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
62012	return nil, false
62013}
62014
62015// AsTeradataLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62016func (ols OracleLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
62017	return nil, false
62018}
62019
62020// AsDb2LinkedService is the BasicLinkedService implementation for OracleLinkedService.
62021func (ols OracleLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
62022	return nil, false
62023}
62024
62025// AsSybaseLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62026func (ols OracleLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
62027	return nil, false
62028}
62029
62030// AsPostgreSQLLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62031func (ols OracleLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
62032	return nil, false
62033}
62034
62035// AsMySQLLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62036func (ols OracleLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
62037	return nil, false
62038}
62039
62040// AsAzureMySQLLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62041func (ols OracleLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
62042	return nil, false
62043}
62044
62045// AsOracleLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62046func (ols OracleLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
62047	return &ols, true
62048}
62049
62050// AsFileServerLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62051func (ols OracleLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
62052	return nil, false
62053}
62054
62055// AsHDInsightLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62056func (ols OracleLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
62057	return nil, false
62058}
62059
62060// AsDynamicsLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62061func (ols OracleLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
62062	return nil, false
62063}
62064
62065// AsCosmosDbLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62066func (ols OracleLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
62067	return nil, false
62068}
62069
62070// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62071func (ols OracleLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
62072	return nil, false
62073}
62074
62075// AsAzureBatchLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62076func (ols OracleLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
62077	return nil, false
62078}
62079
62080// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62081func (ols OracleLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
62082	return nil, false
62083}
62084
62085// AsSQLServerLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62086func (ols OracleLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
62087	return nil, false
62088}
62089
62090// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62091func (ols OracleLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
62092	return nil, false
62093}
62094
62095// AsAzureStorageLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62096func (ols OracleLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
62097	return nil, false
62098}
62099
62100// AsLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62101func (ols OracleLinkedService) AsLinkedService() (*LinkedService, bool) {
62102	return nil, false
62103}
62104
62105// AsBasicLinkedService is the BasicLinkedService implementation for OracleLinkedService.
62106func (ols OracleLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
62107	return &ols, true
62108}
62109
62110// UnmarshalJSON is the custom unmarshaler for OracleLinkedService struct.
62111func (ols *OracleLinkedService) UnmarshalJSON(body []byte) error {
62112	var m map[string]*json.RawMessage
62113	err := json.Unmarshal(body, &m)
62114	if err != nil {
62115		return err
62116	}
62117	for k, v := range m {
62118		switch k {
62119		case "typeProperties":
62120			if v != nil {
62121				var oracleLinkedServiceTypeProperties OracleLinkedServiceTypeProperties
62122				err = json.Unmarshal(*v, &oracleLinkedServiceTypeProperties)
62123				if err != nil {
62124					return err
62125				}
62126				ols.OracleLinkedServiceTypeProperties = &oracleLinkedServiceTypeProperties
62127			}
62128		default:
62129			if v != nil {
62130				var additionalProperties interface{}
62131				err = json.Unmarshal(*v, &additionalProperties)
62132				if err != nil {
62133					return err
62134				}
62135				if ols.AdditionalProperties == nil {
62136					ols.AdditionalProperties = make(map[string]interface{})
62137				}
62138				ols.AdditionalProperties[k] = additionalProperties
62139			}
62140		case "connectVia":
62141			if v != nil {
62142				var connectVia IntegrationRuntimeReference
62143				err = json.Unmarshal(*v, &connectVia)
62144				if err != nil {
62145					return err
62146				}
62147				ols.ConnectVia = &connectVia
62148			}
62149		case "description":
62150			if v != nil {
62151				var description string
62152				err = json.Unmarshal(*v, &description)
62153				if err != nil {
62154					return err
62155				}
62156				ols.Description = &description
62157			}
62158		case "parameters":
62159			if v != nil {
62160				var parameters map[string]*ParameterSpecification
62161				err = json.Unmarshal(*v, &parameters)
62162				if err != nil {
62163					return err
62164				}
62165				ols.Parameters = parameters
62166			}
62167		case "annotations":
62168			if v != nil {
62169				var annotations []interface{}
62170				err = json.Unmarshal(*v, &annotations)
62171				if err != nil {
62172					return err
62173				}
62174				ols.Annotations = &annotations
62175			}
62176		case "type":
62177			if v != nil {
62178				var typeVar TypeBasicLinkedService
62179				err = json.Unmarshal(*v, &typeVar)
62180				if err != nil {
62181					return err
62182				}
62183				ols.Type = typeVar
62184			}
62185		}
62186	}
62187
62188	return nil
62189}
62190
62191// OracleLinkedServiceTypeProperties oracle database linked service properties.
62192type OracleLinkedServiceTypeProperties struct {
62193	// ConnectionString - The connection string.
62194	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
62195	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
62196	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
62197}
62198
62199// UnmarshalJSON is the custom unmarshaler for OracleLinkedServiceTypeProperties struct.
62200func (olstp *OracleLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
62201	var m map[string]*json.RawMessage
62202	err := json.Unmarshal(body, &m)
62203	if err != nil {
62204		return err
62205	}
62206	for k, v := range m {
62207		switch k {
62208		case "connectionString":
62209			if v != nil {
62210				connectionString, err := unmarshalBasicSecretBase(*v)
62211				if err != nil {
62212					return err
62213				}
62214				olstp.ConnectionString = connectionString
62215			}
62216		case "encryptedCredential":
62217			if v != nil {
62218				var encryptedCredential interface{}
62219				err = json.Unmarshal(*v, &encryptedCredential)
62220				if err != nil {
62221					return err
62222				}
62223				olstp.EncryptedCredential = encryptedCredential
62224			}
62225		}
62226	}
62227
62228	return nil
62229}
62230
62231// OracleSink a copy activity Oracle sink.
62232type OracleSink struct {
62233	// PreCopyScript - SQL pre-copy script. Type: string (or Expression with resultType string).
62234	PreCopyScript interface{} `json:"preCopyScript,omitempty"`
62235	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
62236	AdditionalProperties map[string]interface{} `json:""`
62237	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
62238	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
62239	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
62240	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
62241	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
62242	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
62243	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
62244	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
62245	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
62246	Type TypeBasicCopySink `json:"type,omitempty"`
62247}
62248
62249// MarshalJSON is the custom marshaler for OracleSink.
62250func (osVar OracleSink) MarshalJSON() ([]byte, error) {
62251	osVar.Type = TypeOracleSink
62252	objectMap := make(map[string]interface{})
62253	objectMap["preCopyScript"] = osVar.PreCopyScript
62254	objectMap["writeBatchSize"] = osVar.WriteBatchSize
62255	objectMap["writeBatchTimeout"] = osVar.WriteBatchTimeout
62256	objectMap["sinkRetryCount"] = osVar.SinkRetryCount
62257	objectMap["sinkRetryWait"] = osVar.SinkRetryWait
62258	if osVar.Type != "" {
62259		objectMap["type"] = osVar.Type
62260	}
62261	for k, v := range osVar.AdditionalProperties {
62262		objectMap[k] = v
62263	}
62264	return json.Marshal(objectMap)
62265}
62266
62267// AsSalesforceSink is the BasicCopySink implementation for OracleSink.
62268func (osVar OracleSink) AsSalesforceSink() (*SalesforceSink, bool) {
62269	return nil, false
62270}
62271
62272// AsDynamicsSink is the BasicCopySink implementation for OracleSink.
62273func (osVar OracleSink) AsDynamicsSink() (*DynamicsSink, bool) {
62274	return nil, false
62275}
62276
62277// AsOdbcSink is the BasicCopySink implementation for OracleSink.
62278func (osVar OracleSink) AsOdbcSink() (*OdbcSink, bool) {
62279	return nil, false
62280}
62281
62282// AsAzureSearchIndexSink is the BasicCopySink implementation for OracleSink.
62283func (osVar OracleSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
62284	return nil, false
62285}
62286
62287// AsAzureDataLakeStoreSink is the BasicCopySink implementation for OracleSink.
62288func (osVar OracleSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
62289	return nil, false
62290}
62291
62292// AsOracleSink is the BasicCopySink implementation for OracleSink.
62293func (osVar OracleSink) AsOracleSink() (*OracleSink, bool) {
62294	return &osVar, true
62295}
62296
62297// AsSQLDWSink is the BasicCopySink implementation for OracleSink.
62298func (osVar OracleSink) AsSQLDWSink() (*SQLDWSink, bool) {
62299	return nil, false
62300}
62301
62302// AsSQLSink is the BasicCopySink implementation for OracleSink.
62303func (osVar OracleSink) AsSQLSink() (*SQLSink, bool) {
62304	return nil, false
62305}
62306
62307// AsDocumentDbCollectionSink is the BasicCopySink implementation for OracleSink.
62308func (osVar OracleSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
62309	return nil, false
62310}
62311
62312// AsFileSystemSink is the BasicCopySink implementation for OracleSink.
62313func (osVar OracleSink) AsFileSystemSink() (*FileSystemSink, bool) {
62314	return nil, false
62315}
62316
62317// AsBlobSink is the BasicCopySink implementation for OracleSink.
62318func (osVar OracleSink) AsBlobSink() (*BlobSink, bool) {
62319	return nil, false
62320}
62321
62322// AsAzureTableSink is the BasicCopySink implementation for OracleSink.
62323func (osVar OracleSink) AsAzureTableSink() (*AzureTableSink, bool) {
62324	return nil, false
62325}
62326
62327// AsAzureQueueSink is the BasicCopySink implementation for OracleSink.
62328func (osVar OracleSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
62329	return nil, false
62330}
62331
62332// AsSapCloudForCustomerSink is the BasicCopySink implementation for OracleSink.
62333func (osVar OracleSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
62334	return nil, false
62335}
62336
62337// AsCopySink is the BasicCopySink implementation for OracleSink.
62338func (osVar OracleSink) AsCopySink() (*CopySink, bool) {
62339	return nil, false
62340}
62341
62342// AsBasicCopySink is the BasicCopySink implementation for OracleSink.
62343func (osVar OracleSink) AsBasicCopySink() (BasicCopySink, bool) {
62344	return &osVar, true
62345}
62346
62347// OracleSource a copy activity Oracle source.
62348type OracleSource struct {
62349	// OracleReaderQuery - Oracle reader query. Type: string (or Expression with resultType string).
62350	OracleReaderQuery interface{} `json:"oracleReaderQuery,omitempty"`
62351	// QueryTimeout - Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
62352	QueryTimeout interface{} `json:"queryTimeout,omitempty"`
62353	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
62354	AdditionalProperties map[string]interface{} `json:""`
62355	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
62356	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
62357	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
62358	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
62359	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
62360	Type TypeBasicCopySource `json:"type,omitempty"`
62361}
62362
62363// MarshalJSON is the custom marshaler for OracleSource.
62364func (osVar OracleSource) MarshalJSON() ([]byte, error) {
62365	osVar.Type = TypeOracleSource
62366	objectMap := make(map[string]interface{})
62367	objectMap["oracleReaderQuery"] = osVar.OracleReaderQuery
62368	objectMap["queryTimeout"] = osVar.QueryTimeout
62369	objectMap["sourceRetryCount"] = osVar.SourceRetryCount
62370	objectMap["sourceRetryWait"] = osVar.SourceRetryWait
62371	if osVar.Type != "" {
62372		objectMap["type"] = osVar.Type
62373	}
62374	for k, v := range osVar.AdditionalProperties {
62375		objectMap[k] = v
62376	}
62377	return json.Marshal(objectMap)
62378}
62379
62380// AsAmazonRedshiftSource is the BasicCopySource implementation for OracleSource.
62381func (osVar OracleSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
62382	return nil, false
62383}
62384
62385// AsResponsysSource is the BasicCopySource implementation for OracleSource.
62386func (osVar OracleSource) AsResponsysSource() (*ResponsysSource, bool) {
62387	return nil, false
62388}
62389
62390// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for OracleSource.
62391func (osVar OracleSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
62392	return nil, false
62393}
62394
62395// AsVerticaSource is the BasicCopySource implementation for OracleSource.
62396func (osVar OracleSource) AsVerticaSource() (*VerticaSource, bool) {
62397	return nil, false
62398}
62399
62400// AsNetezzaSource is the BasicCopySource implementation for OracleSource.
62401func (osVar OracleSource) AsNetezzaSource() (*NetezzaSource, bool) {
62402	return nil, false
62403}
62404
62405// AsZohoSource is the BasicCopySource implementation for OracleSource.
62406func (osVar OracleSource) AsZohoSource() (*ZohoSource, bool) {
62407	return nil, false
62408}
62409
62410// AsXeroSource is the BasicCopySource implementation for OracleSource.
62411func (osVar OracleSource) AsXeroSource() (*XeroSource, bool) {
62412	return nil, false
62413}
62414
62415// AsSquareSource is the BasicCopySource implementation for OracleSource.
62416func (osVar OracleSource) AsSquareSource() (*SquareSource, bool) {
62417	return nil, false
62418}
62419
62420// AsSparkSource is the BasicCopySource implementation for OracleSource.
62421func (osVar OracleSource) AsSparkSource() (*SparkSource, bool) {
62422	return nil, false
62423}
62424
62425// AsShopifySource is the BasicCopySource implementation for OracleSource.
62426func (osVar OracleSource) AsShopifySource() (*ShopifySource, bool) {
62427	return nil, false
62428}
62429
62430// AsServiceNowSource is the BasicCopySource implementation for OracleSource.
62431func (osVar OracleSource) AsServiceNowSource() (*ServiceNowSource, bool) {
62432	return nil, false
62433}
62434
62435// AsQuickBooksSource is the BasicCopySource implementation for OracleSource.
62436func (osVar OracleSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
62437	return nil, false
62438}
62439
62440// AsPrestoSource is the BasicCopySource implementation for OracleSource.
62441func (osVar OracleSource) AsPrestoSource() (*PrestoSource, bool) {
62442	return nil, false
62443}
62444
62445// AsPhoenixSource is the BasicCopySource implementation for OracleSource.
62446func (osVar OracleSource) AsPhoenixSource() (*PhoenixSource, bool) {
62447	return nil, false
62448}
62449
62450// AsPaypalSource is the BasicCopySource implementation for OracleSource.
62451func (osVar OracleSource) AsPaypalSource() (*PaypalSource, bool) {
62452	return nil, false
62453}
62454
62455// AsMarketoSource is the BasicCopySource implementation for OracleSource.
62456func (osVar OracleSource) AsMarketoSource() (*MarketoSource, bool) {
62457	return nil, false
62458}
62459
62460// AsMariaDBSource is the BasicCopySource implementation for OracleSource.
62461func (osVar OracleSource) AsMariaDBSource() (*MariaDBSource, bool) {
62462	return nil, false
62463}
62464
62465// AsMagentoSource is the BasicCopySource implementation for OracleSource.
62466func (osVar OracleSource) AsMagentoSource() (*MagentoSource, bool) {
62467	return nil, false
62468}
62469
62470// AsJiraSource is the BasicCopySource implementation for OracleSource.
62471func (osVar OracleSource) AsJiraSource() (*JiraSource, bool) {
62472	return nil, false
62473}
62474
62475// AsImpalaSource is the BasicCopySource implementation for OracleSource.
62476func (osVar OracleSource) AsImpalaSource() (*ImpalaSource, bool) {
62477	return nil, false
62478}
62479
62480// AsHubspotSource is the BasicCopySource implementation for OracleSource.
62481func (osVar OracleSource) AsHubspotSource() (*HubspotSource, bool) {
62482	return nil, false
62483}
62484
62485// AsHiveSource is the BasicCopySource implementation for OracleSource.
62486func (osVar OracleSource) AsHiveSource() (*HiveSource, bool) {
62487	return nil, false
62488}
62489
62490// AsHBaseSource is the BasicCopySource implementation for OracleSource.
62491func (osVar OracleSource) AsHBaseSource() (*HBaseSource, bool) {
62492	return nil, false
62493}
62494
62495// AsGreenplumSource is the BasicCopySource implementation for OracleSource.
62496func (osVar OracleSource) AsGreenplumSource() (*GreenplumSource, bool) {
62497	return nil, false
62498}
62499
62500// AsGoogleBigQuerySource is the BasicCopySource implementation for OracleSource.
62501func (osVar OracleSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
62502	return nil, false
62503}
62504
62505// AsEloquaSource is the BasicCopySource implementation for OracleSource.
62506func (osVar OracleSource) AsEloquaSource() (*EloquaSource, bool) {
62507	return nil, false
62508}
62509
62510// AsDrillSource is the BasicCopySource implementation for OracleSource.
62511func (osVar OracleSource) AsDrillSource() (*DrillSource, bool) {
62512	return nil, false
62513}
62514
62515// AsCouchbaseSource is the BasicCopySource implementation for OracleSource.
62516func (osVar OracleSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
62517	return nil, false
62518}
62519
62520// AsConcurSource is the BasicCopySource implementation for OracleSource.
62521func (osVar OracleSource) AsConcurSource() (*ConcurSource, bool) {
62522	return nil, false
62523}
62524
62525// AsAzurePostgreSQLSource is the BasicCopySource implementation for OracleSource.
62526func (osVar OracleSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
62527	return nil, false
62528}
62529
62530// AsAmazonMWSSource is the BasicCopySource implementation for OracleSource.
62531func (osVar OracleSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
62532	return nil, false
62533}
62534
62535// AsHTTPSource is the BasicCopySource implementation for OracleSource.
62536func (osVar OracleSource) AsHTTPSource() (*HTTPSource, bool) {
62537	return nil, false
62538}
62539
62540// AsAzureDataLakeStoreSource is the BasicCopySource implementation for OracleSource.
62541func (osVar OracleSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
62542	return nil, false
62543}
62544
62545// AsMongoDbSource is the BasicCopySource implementation for OracleSource.
62546func (osVar OracleSource) AsMongoDbSource() (*MongoDbSource, bool) {
62547	return nil, false
62548}
62549
62550// AsCassandraSource is the BasicCopySource implementation for OracleSource.
62551func (osVar OracleSource) AsCassandraSource() (*CassandraSource, bool) {
62552	return nil, false
62553}
62554
62555// AsWebSource is the BasicCopySource implementation for OracleSource.
62556func (osVar OracleSource) AsWebSource() (*WebSource, bool) {
62557	return nil, false
62558}
62559
62560// AsOracleSource is the BasicCopySource implementation for OracleSource.
62561func (osVar OracleSource) AsOracleSource() (*OracleSource, bool) {
62562	return &osVar, true
62563}
62564
62565// AsAzureMySQLSource is the BasicCopySource implementation for OracleSource.
62566func (osVar OracleSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
62567	return nil, false
62568}
62569
62570// AsHdfsSource is the BasicCopySource implementation for OracleSource.
62571func (osVar OracleSource) AsHdfsSource() (*HdfsSource, bool) {
62572	return nil, false
62573}
62574
62575// AsFileSystemSource is the BasicCopySource implementation for OracleSource.
62576func (osVar OracleSource) AsFileSystemSource() (*FileSystemSource, bool) {
62577	return nil, false
62578}
62579
62580// AsSQLDWSource is the BasicCopySource implementation for OracleSource.
62581func (osVar OracleSource) AsSQLDWSource() (*SQLDWSource, bool) {
62582	return nil, false
62583}
62584
62585// AsSQLSource is the BasicCopySource implementation for OracleSource.
62586func (osVar OracleSource) AsSQLSource() (*SQLSource, bool) {
62587	return nil, false
62588}
62589
62590// AsSapEccSource is the BasicCopySource implementation for OracleSource.
62591func (osVar OracleSource) AsSapEccSource() (*SapEccSource, bool) {
62592	return nil, false
62593}
62594
62595// AsSapCloudForCustomerSource is the BasicCopySource implementation for OracleSource.
62596func (osVar OracleSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
62597	return nil, false
62598}
62599
62600// AsSalesforceSource is the BasicCopySource implementation for OracleSource.
62601func (osVar OracleSource) AsSalesforceSource() (*SalesforceSource, bool) {
62602	return nil, false
62603}
62604
62605// AsRelationalSource is the BasicCopySource implementation for OracleSource.
62606func (osVar OracleSource) AsRelationalSource() (*RelationalSource, bool) {
62607	return nil, false
62608}
62609
62610// AsDynamicsSource is the BasicCopySource implementation for OracleSource.
62611func (osVar OracleSource) AsDynamicsSource() (*DynamicsSource, bool) {
62612	return nil, false
62613}
62614
62615// AsDocumentDbCollectionSource is the BasicCopySource implementation for OracleSource.
62616func (osVar OracleSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
62617	return nil, false
62618}
62619
62620// AsBlobSource is the BasicCopySource implementation for OracleSource.
62621func (osVar OracleSource) AsBlobSource() (*BlobSource, bool) {
62622	return nil, false
62623}
62624
62625// AsAzureTableSource is the BasicCopySource implementation for OracleSource.
62626func (osVar OracleSource) AsAzureTableSource() (*AzureTableSource, bool) {
62627	return nil, false
62628}
62629
62630// AsCopySource is the BasicCopySource implementation for OracleSource.
62631func (osVar OracleSource) AsCopySource() (*CopySource, bool) {
62632	return nil, false
62633}
62634
62635// AsBasicCopySource is the BasicCopySource implementation for OracleSource.
62636func (osVar OracleSource) AsBasicCopySource() (BasicCopySource, bool) {
62637	return &osVar, true
62638}
62639
62640// OracleTableDataset the on-premises Oracle database dataset.
62641type OracleTableDataset struct {
62642	// OracleTableDatasetTypeProperties - On-premises Oracle dataset properties.
62643	*OracleTableDatasetTypeProperties `json:"typeProperties,omitempty"`
62644	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
62645	AdditionalProperties map[string]interface{} `json:""`
62646	// Description - Dataset description.
62647	Description *string `json:"description,omitempty"`
62648	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
62649	Structure interface{} `json:"structure,omitempty"`
62650	// LinkedServiceName - Linked service reference.
62651	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
62652	// Parameters - Parameters for dataset.
62653	Parameters map[string]*ParameterSpecification `json:"parameters"`
62654	// Annotations - List of tags that can be used for describing the Dataset.
62655	Annotations *[]interface{} `json:"annotations,omitempty"`
62656	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
62657	Type TypeBasicDataset `json:"type,omitempty"`
62658}
62659
62660// MarshalJSON is the custom marshaler for OracleTableDataset.
62661func (otd OracleTableDataset) MarshalJSON() ([]byte, error) {
62662	otd.Type = TypeOracleTable
62663	objectMap := make(map[string]interface{})
62664	if otd.OracleTableDatasetTypeProperties != nil {
62665		objectMap["typeProperties"] = otd.OracleTableDatasetTypeProperties
62666	}
62667	if otd.Description != nil {
62668		objectMap["description"] = otd.Description
62669	}
62670	objectMap["structure"] = otd.Structure
62671	if otd.LinkedServiceName != nil {
62672		objectMap["linkedServiceName"] = otd.LinkedServiceName
62673	}
62674	if otd.Parameters != nil {
62675		objectMap["parameters"] = otd.Parameters
62676	}
62677	if otd.Annotations != nil {
62678		objectMap["annotations"] = otd.Annotations
62679	}
62680	if otd.Type != "" {
62681		objectMap["type"] = otd.Type
62682	}
62683	for k, v := range otd.AdditionalProperties {
62684		objectMap[k] = v
62685	}
62686	return json.Marshal(objectMap)
62687}
62688
62689// AsResponsysObjectDataset is the BasicDataset implementation for OracleTableDataset.
62690func (otd OracleTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
62691	return nil, false
62692}
62693
62694// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for OracleTableDataset.
62695func (otd OracleTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
62696	return nil, false
62697}
62698
62699// AsVerticaTableDataset is the BasicDataset implementation for OracleTableDataset.
62700func (otd OracleTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
62701	return nil, false
62702}
62703
62704// AsNetezzaTableDataset is the BasicDataset implementation for OracleTableDataset.
62705func (otd OracleTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
62706	return nil, false
62707}
62708
62709// AsZohoObjectDataset is the BasicDataset implementation for OracleTableDataset.
62710func (otd OracleTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
62711	return nil, false
62712}
62713
62714// AsXeroObjectDataset is the BasicDataset implementation for OracleTableDataset.
62715func (otd OracleTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
62716	return nil, false
62717}
62718
62719// AsSquareObjectDataset is the BasicDataset implementation for OracleTableDataset.
62720func (otd OracleTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
62721	return nil, false
62722}
62723
62724// AsSparkObjectDataset is the BasicDataset implementation for OracleTableDataset.
62725func (otd OracleTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
62726	return nil, false
62727}
62728
62729// AsShopifyObjectDataset is the BasicDataset implementation for OracleTableDataset.
62730func (otd OracleTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
62731	return nil, false
62732}
62733
62734// AsServiceNowObjectDataset is the BasicDataset implementation for OracleTableDataset.
62735func (otd OracleTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
62736	return nil, false
62737}
62738
62739// AsQuickBooksObjectDataset is the BasicDataset implementation for OracleTableDataset.
62740func (otd OracleTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
62741	return nil, false
62742}
62743
62744// AsPrestoObjectDataset is the BasicDataset implementation for OracleTableDataset.
62745func (otd OracleTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
62746	return nil, false
62747}
62748
62749// AsPhoenixObjectDataset is the BasicDataset implementation for OracleTableDataset.
62750func (otd OracleTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
62751	return nil, false
62752}
62753
62754// AsPaypalObjectDataset is the BasicDataset implementation for OracleTableDataset.
62755func (otd OracleTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
62756	return nil, false
62757}
62758
62759// AsMarketoObjectDataset is the BasicDataset implementation for OracleTableDataset.
62760func (otd OracleTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
62761	return nil, false
62762}
62763
62764// AsMariaDBTableDataset is the BasicDataset implementation for OracleTableDataset.
62765func (otd OracleTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
62766	return nil, false
62767}
62768
62769// AsMagentoObjectDataset is the BasicDataset implementation for OracleTableDataset.
62770func (otd OracleTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
62771	return nil, false
62772}
62773
62774// AsJiraObjectDataset is the BasicDataset implementation for OracleTableDataset.
62775func (otd OracleTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
62776	return nil, false
62777}
62778
62779// AsImpalaObjectDataset is the BasicDataset implementation for OracleTableDataset.
62780func (otd OracleTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
62781	return nil, false
62782}
62783
62784// AsHubspotObjectDataset is the BasicDataset implementation for OracleTableDataset.
62785func (otd OracleTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
62786	return nil, false
62787}
62788
62789// AsHiveObjectDataset is the BasicDataset implementation for OracleTableDataset.
62790func (otd OracleTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
62791	return nil, false
62792}
62793
62794// AsHBaseObjectDataset is the BasicDataset implementation for OracleTableDataset.
62795func (otd OracleTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
62796	return nil, false
62797}
62798
62799// AsGreenplumTableDataset is the BasicDataset implementation for OracleTableDataset.
62800func (otd OracleTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
62801	return nil, false
62802}
62803
62804// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for OracleTableDataset.
62805func (otd OracleTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
62806	return nil, false
62807}
62808
62809// AsEloquaObjectDataset is the BasicDataset implementation for OracleTableDataset.
62810func (otd OracleTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
62811	return nil, false
62812}
62813
62814// AsDrillTableDataset is the BasicDataset implementation for OracleTableDataset.
62815func (otd OracleTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
62816	return nil, false
62817}
62818
62819// AsCouchbaseTableDataset is the BasicDataset implementation for OracleTableDataset.
62820func (otd OracleTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
62821	return nil, false
62822}
62823
62824// AsConcurObjectDataset is the BasicDataset implementation for OracleTableDataset.
62825func (otd OracleTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
62826	return nil, false
62827}
62828
62829// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for OracleTableDataset.
62830func (otd OracleTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
62831	return nil, false
62832}
62833
62834// AsAmazonMWSObjectDataset is the BasicDataset implementation for OracleTableDataset.
62835func (otd OracleTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
62836	return nil, false
62837}
62838
62839// AsHTTPDataset is the BasicDataset implementation for OracleTableDataset.
62840func (otd OracleTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
62841	return nil, false
62842}
62843
62844// AsAzureSearchIndexDataset is the BasicDataset implementation for OracleTableDataset.
62845func (otd OracleTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
62846	return nil, false
62847}
62848
62849// AsWebTableDataset is the BasicDataset implementation for OracleTableDataset.
62850func (otd OracleTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
62851	return nil, false
62852}
62853
62854// AsSQLServerTableDataset is the BasicDataset implementation for OracleTableDataset.
62855func (otd OracleTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
62856	return nil, false
62857}
62858
62859// AsSapEccResourceDataset is the BasicDataset implementation for OracleTableDataset.
62860func (otd OracleTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
62861	return nil, false
62862}
62863
62864// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for OracleTableDataset.
62865func (otd OracleTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
62866	return nil, false
62867}
62868
62869// AsSalesforceObjectDataset is the BasicDataset implementation for OracleTableDataset.
62870func (otd OracleTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
62871	return nil, false
62872}
62873
62874// AsRelationalTableDataset is the BasicDataset implementation for OracleTableDataset.
62875func (otd OracleTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
62876	return nil, false
62877}
62878
62879// AsAzureMySQLTableDataset is the BasicDataset implementation for OracleTableDataset.
62880func (otd OracleTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
62881	return nil, false
62882}
62883
62884// AsOracleTableDataset is the BasicDataset implementation for OracleTableDataset.
62885func (otd OracleTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
62886	return &otd, true
62887}
62888
62889// AsODataResourceDataset is the BasicDataset implementation for OracleTableDataset.
62890func (otd OracleTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
62891	return nil, false
62892}
62893
62894// AsMongoDbCollectionDataset is the BasicDataset implementation for OracleTableDataset.
62895func (otd OracleTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
62896	return nil, false
62897}
62898
62899// AsFileShareDataset is the BasicDataset implementation for OracleTableDataset.
62900func (otd OracleTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
62901	return nil, false
62902}
62903
62904// AsAzureDataLakeStoreDataset is the BasicDataset implementation for OracleTableDataset.
62905func (otd OracleTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
62906	return nil, false
62907}
62908
62909// AsDynamicsEntityDataset is the BasicDataset implementation for OracleTableDataset.
62910func (otd OracleTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
62911	return nil, false
62912}
62913
62914// AsDocumentDbCollectionDataset is the BasicDataset implementation for OracleTableDataset.
62915func (otd OracleTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
62916	return nil, false
62917}
62918
62919// AsCustomDataset is the BasicDataset implementation for OracleTableDataset.
62920func (otd OracleTableDataset) AsCustomDataset() (*CustomDataset, bool) {
62921	return nil, false
62922}
62923
62924// AsCassandraTableDataset is the BasicDataset implementation for OracleTableDataset.
62925func (otd OracleTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
62926	return nil, false
62927}
62928
62929// AsAzureSQLDWTableDataset is the BasicDataset implementation for OracleTableDataset.
62930func (otd OracleTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
62931	return nil, false
62932}
62933
62934// AsAzureSQLTableDataset is the BasicDataset implementation for OracleTableDataset.
62935func (otd OracleTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
62936	return nil, false
62937}
62938
62939// AsAzureTableDataset is the BasicDataset implementation for OracleTableDataset.
62940func (otd OracleTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
62941	return nil, false
62942}
62943
62944// AsAzureBlobDataset is the BasicDataset implementation for OracleTableDataset.
62945func (otd OracleTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
62946	return nil, false
62947}
62948
62949// AsAmazonS3Dataset is the BasicDataset implementation for OracleTableDataset.
62950func (otd OracleTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
62951	return nil, false
62952}
62953
62954// AsDataset is the BasicDataset implementation for OracleTableDataset.
62955func (otd OracleTableDataset) AsDataset() (*Dataset, bool) {
62956	return nil, false
62957}
62958
62959// AsBasicDataset is the BasicDataset implementation for OracleTableDataset.
62960func (otd OracleTableDataset) AsBasicDataset() (BasicDataset, bool) {
62961	return &otd, true
62962}
62963
62964// UnmarshalJSON is the custom unmarshaler for OracleTableDataset struct.
62965func (otd *OracleTableDataset) UnmarshalJSON(body []byte) error {
62966	var m map[string]*json.RawMessage
62967	err := json.Unmarshal(body, &m)
62968	if err != nil {
62969		return err
62970	}
62971	for k, v := range m {
62972		switch k {
62973		case "typeProperties":
62974			if v != nil {
62975				var oracleTableDatasetTypeProperties OracleTableDatasetTypeProperties
62976				err = json.Unmarshal(*v, &oracleTableDatasetTypeProperties)
62977				if err != nil {
62978					return err
62979				}
62980				otd.OracleTableDatasetTypeProperties = &oracleTableDatasetTypeProperties
62981			}
62982		default:
62983			if v != nil {
62984				var additionalProperties interface{}
62985				err = json.Unmarshal(*v, &additionalProperties)
62986				if err != nil {
62987					return err
62988				}
62989				if otd.AdditionalProperties == nil {
62990					otd.AdditionalProperties = make(map[string]interface{})
62991				}
62992				otd.AdditionalProperties[k] = additionalProperties
62993			}
62994		case "description":
62995			if v != nil {
62996				var description string
62997				err = json.Unmarshal(*v, &description)
62998				if err != nil {
62999					return err
63000				}
63001				otd.Description = &description
63002			}
63003		case "structure":
63004			if v != nil {
63005				var structure interface{}
63006				err = json.Unmarshal(*v, &structure)
63007				if err != nil {
63008					return err
63009				}
63010				otd.Structure = structure
63011			}
63012		case "linkedServiceName":
63013			if v != nil {
63014				var linkedServiceName LinkedServiceReference
63015				err = json.Unmarshal(*v, &linkedServiceName)
63016				if err != nil {
63017					return err
63018				}
63019				otd.LinkedServiceName = &linkedServiceName
63020			}
63021		case "parameters":
63022			if v != nil {
63023				var parameters map[string]*ParameterSpecification
63024				err = json.Unmarshal(*v, &parameters)
63025				if err != nil {
63026					return err
63027				}
63028				otd.Parameters = parameters
63029			}
63030		case "annotations":
63031			if v != nil {
63032				var annotations []interface{}
63033				err = json.Unmarshal(*v, &annotations)
63034				if err != nil {
63035					return err
63036				}
63037				otd.Annotations = &annotations
63038			}
63039		case "type":
63040			if v != nil {
63041				var typeVar TypeBasicDataset
63042				err = json.Unmarshal(*v, &typeVar)
63043				if err != nil {
63044					return err
63045				}
63046				otd.Type = typeVar
63047			}
63048		}
63049	}
63050
63051	return nil
63052}
63053
63054// OracleTableDatasetTypeProperties on-premises Oracle dataset properties.
63055type OracleTableDatasetTypeProperties struct {
63056	// TableName - The table name of the on-premises Oracle database. Type: string (or Expression with resultType string).
63057	TableName interface{} `json:"tableName,omitempty"`
63058}
63059
63060// OrcFormat the data stored in Optimized Row Columnar (ORC) format.
63061type OrcFormat struct {
63062	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
63063	AdditionalProperties map[string]interface{} `json:""`
63064	// Serializer - Serializer. Type: string (or Expression with resultType string).
63065	Serializer interface{} `json:"serializer,omitempty"`
63066	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
63067	Deserializer interface{} `json:"deserializer,omitempty"`
63068	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
63069	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
63070}
63071
63072// MarshalJSON is the custom marshaler for OrcFormat.
63073func (of OrcFormat) MarshalJSON() ([]byte, error) {
63074	of.Type = TypeOrcFormat
63075	objectMap := make(map[string]interface{})
63076	objectMap["serializer"] = of.Serializer
63077	objectMap["deserializer"] = of.Deserializer
63078	if of.Type != "" {
63079		objectMap["type"] = of.Type
63080	}
63081	for k, v := range of.AdditionalProperties {
63082		objectMap[k] = v
63083	}
63084	return json.Marshal(objectMap)
63085}
63086
63087// AsParquetFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63088func (of OrcFormat) AsParquetFormat() (*ParquetFormat, bool) {
63089	return nil, false
63090}
63091
63092// AsOrcFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63093func (of OrcFormat) AsOrcFormat() (*OrcFormat, bool) {
63094	return &of, true
63095}
63096
63097// AsAvroFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63098func (of OrcFormat) AsAvroFormat() (*AvroFormat, bool) {
63099	return nil, false
63100}
63101
63102// AsJSONFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63103func (of OrcFormat) AsJSONFormat() (*JSONFormat, bool) {
63104	return nil, false
63105}
63106
63107// AsTextFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63108func (of OrcFormat) AsTextFormat() (*TextFormat, bool) {
63109	return nil, false
63110}
63111
63112// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63113func (of OrcFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
63114	return nil, false
63115}
63116
63117// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for OrcFormat.
63118func (of OrcFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
63119	return &of, true
63120}
63121
63122// ParameterSpecification definition of a single parameter for an entity.
63123type ParameterSpecification struct {
63124	// Type - Parameter type. Possible values include: 'ParameterTypeObject', 'ParameterTypeString', 'ParameterTypeInt', 'ParameterTypeFloat', 'ParameterTypeBool', 'ParameterTypeArray', 'ParameterTypeSecureString'
63125	Type ParameterType `json:"type,omitempty"`
63126	// DefaultValue - Default value of parameter.
63127	DefaultValue interface{} `json:"defaultValue,omitempty"`
63128}
63129
63130// ParquetFormat the data stored in Parquet format.
63131type ParquetFormat struct {
63132	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
63133	AdditionalProperties map[string]interface{} `json:""`
63134	// Serializer - Serializer. Type: string (or Expression with resultType string).
63135	Serializer interface{} `json:"serializer,omitempty"`
63136	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
63137	Deserializer interface{} `json:"deserializer,omitempty"`
63138	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
63139	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
63140}
63141
63142// MarshalJSON is the custom marshaler for ParquetFormat.
63143func (pf ParquetFormat) MarshalJSON() ([]byte, error) {
63144	pf.Type = TypeParquetFormat
63145	objectMap := make(map[string]interface{})
63146	objectMap["serializer"] = pf.Serializer
63147	objectMap["deserializer"] = pf.Deserializer
63148	if pf.Type != "" {
63149		objectMap["type"] = pf.Type
63150	}
63151	for k, v := range pf.AdditionalProperties {
63152		objectMap[k] = v
63153	}
63154	return json.Marshal(objectMap)
63155}
63156
63157// AsParquetFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63158func (pf ParquetFormat) AsParquetFormat() (*ParquetFormat, bool) {
63159	return &pf, true
63160}
63161
63162// AsOrcFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63163func (pf ParquetFormat) AsOrcFormat() (*OrcFormat, bool) {
63164	return nil, false
63165}
63166
63167// AsAvroFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63168func (pf ParquetFormat) AsAvroFormat() (*AvroFormat, bool) {
63169	return nil, false
63170}
63171
63172// AsJSONFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63173func (pf ParquetFormat) AsJSONFormat() (*JSONFormat, bool) {
63174	return nil, false
63175}
63176
63177// AsTextFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63178func (pf ParquetFormat) AsTextFormat() (*TextFormat, bool) {
63179	return nil, false
63180}
63181
63182// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63183func (pf ParquetFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
63184	return nil, false
63185}
63186
63187// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for ParquetFormat.
63188func (pf ParquetFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
63189	return &pf, true
63190}
63191
63192// PaypalLinkedService paypal Serivce linked service.
63193type PaypalLinkedService struct {
63194	// PaypalLinkedServiceTypeProperties - Paypal Serivce linked service properties.
63195	*PaypalLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
63196	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
63197	AdditionalProperties map[string]interface{} `json:""`
63198	// ConnectVia - The integration runtime reference.
63199	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
63200	// Description - Linked service description.
63201	Description *string `json:"description,omitempty"`
63202	// Parameters - Parameters for linked service.
63203	Parameters map[string]*ParameterSpecification `json:"parameters"`
63204	// Annotations - List of tags that can be used for describing the Dataset.
63205	Annotations *[]interface{} `json:"annotations,omitempty"`
63206	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
63207	Type TypeBasicLinkedService `json:"type,omitempty"`
63208}
63209
63210// MarshalJSON is the custom marshaler for PaypalLinkedService.
63211func (pls PaypalLinkedService) MarshalJSON() ([]byte, error) {
63212	pls.Type = TypePaypal
63213	objectMap := make(map[string]interface{})
63214	if pls.PaypalLinkedServiceTypeProperties != nil {
63215		objectMap["typeProperties"] = pls.PaypalLinkedServiceTypeProperties
63216	}
63217	if pls.ConnectVia != nil {
63218		objectMap["connectVia"] = pls.ConnectVia
63219	}
63220	if pls.Description != nil {
63221		objectMap["description"] = pls.Description
63222	}
63223	if pls.Parameters != nil {
63224		objectMap["parameters"] = pls.Parameters
63225	}
63226	if pls.Annotations != nil {
63227		objectMap["annotations"] = pls.Annotations
63228	}
63229	if pls.Type != "" {
63230		objectMap["type"] = pls.Type
63231	}
63232	for k, v := range pls.AdditionalProperties {
63233		objectMap[k] = v
63234	}
63235	return json.Marshal(objectMap)
63236}
63237
63238// AsResponsysLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63239func (pls PaypalLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
63240	return nil, false
63241}
63242
63243// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63244func (pls PaypalLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
63245	return nil, false
63246}
63247
63248// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63249func (pls PaypalLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
63250	return nil, false
63251}
63252
63253// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63254func (pls PaypalLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
63255	return nil, false
63256}
63257
63258// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63259func (pls PaypalLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
63260	return nil, false
63261}
63262
63263// AsNetezzaLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63264func (pls PaypalLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
63265	return nil, false
63266}
63267
63268// AsVerticaLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63269func (pls PaypalLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
63270	return nil, false
63271}
63272
63273// AsZohoLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63274func (pls PaypalLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
63275	return nil, false
63276}
63277
63278// AsXeroLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63279func (pls PaypalLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
63280	return nil, false
63281}
63282
63283// AsSquareLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63284func (pls PaypalLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
63285	return nil, false
63286}
63287
63288// AsSparkLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63289func (pls PaypalLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
63290	return nil, false
63291}
63292
63293// AsShopifyLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63294func (pls PaypalLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
63295	return nil, false
63296}
63297
63298// AsServiceNowLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63299func (pls PaypalLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
63300	return nil, false
63301}
63302
63303// AsQuickBooksLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63304func (pls PaypalLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
63305	return nil, false
63306}
63307
63308// AsPrestoLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63309func (pls PaypalLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
63310	return nil, false
63311}
63312
63313// AsPhoenixLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63314func (pls PaypalLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
63315	return nil, false
63316}
63317
63318// AsPaypalLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63319func (pls PaypalLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
63320	return &pls, true
63321}
63322
63323// AsMarketoLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63324func (pls PaypalLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
63325	return nil, false
63326}
63327
63328// AsMariaDBLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63329func (pls PaypalLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
63330	return nil, false
63331}
63332
63333// AsMagentoLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63334func (pls PaypalLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
63335	return nil, false
63336}
63337
63338// AsJiraLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63339func (pls PaypalLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
63340	return nil, false
63341}
63342
63343// AsImpalaLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63344func (pls PaypalLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
63345	return nil, false
63346}
63347
63348// AsHubspotLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63349func (pls PaypalLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
63350	return nil, false
63351}
63352
63353// AsHiveLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63354func (pls PaypalLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
63355	return nil, false
63356}
63357
63358// AsHBaseLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63359func (pls PaypalLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
63360	return nil, false
63361}
63362
63363// AsGreenplumLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63364func (pls PaypalLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
63365	return nil, false
63366}
63367
63368// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63369func (pls PaypalLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
63370	return nil, false
63371}
63372
63373// AsEloquaLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63374func (pls PaypalLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
63375	return nil, false
63376}
63377
63378// AsDrillLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63379func (pls PaypalLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
63380	return nil, false
63381}
63382
63383// AsCouchbaseLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63384func (pls PaypalLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
63385	return nil, false
63386}
63387
63388// AsConcurLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63389func (pls PaypalLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
63390	return nil, false
63391}
63392
63393// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63394func (pls PaypalLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
63395	return nil, false
63396}
63397
63398// AsAmazonMWSLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63399func (pls PaypalLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
63400	return nil, false
63401}
63402
63403// AsSapHanaLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63404func (pls PaypalLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
63405	return nil, false
63406}
63407
63408// AsSapBWLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63409func (pls PaypalLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
63410	return nil, false
63411}
63412
63413// AsSftpServerLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63414func (pls PaypalLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
63415	return nil, false
63416}
63417
63418// AsFtpServerLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63419func (pls PaypalLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
63420	return nil, false
63421}
63422
63423// AsHTTPLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63424func (pls PaypalLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
63425	return nil, false
63426}
63427
63428// AsAzureSearchLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63429func (pls PaypalLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
63430	return nil, false
63431}
63432
63433// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63434func (pls PaypalLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
63435	return nil, false
63436}
63437
63438// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63439func (pls PaypalLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
63440	return nil, false
63441}
63442
63443// AsAmazonS3LinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63444func (pls PaypalLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
63445	return nil, false
63446}
63447
63448// AsSapEccLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63449func (pls PaypalLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
63450	return nil, false
63451}
63452
63453// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63454func (pls PaypalLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
63455	return nil, false
63456}
63457
63458// AsSalesforceLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63459func (pls PaypalLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
63460	return nil, false
63461}
63462
63463// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63464func (pls PaypalLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
63465	return nil, false
63466}
63467
63468// AsMongoDbLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63469func (pls PaypalLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
63470	return nil, false
63471}
63472
63473// AsCassandraLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63474func (pls PaypalLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
63475	return nil, false
63476}
63477
63478// AsWebLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63479func (pls PaypalLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
63480	return nil, false
63481}
63482
63483// AsODataLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63484func (pls PaypalLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
63485	return nil, false
63486}
63487
63488// AsHdfsLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63489func (pls PaypalLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
63490	return nil, false
63491}
63492
63493// AsOdbcLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63494func (pls PaypalLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
63495	return nil, false
63496}
63497
63498// AsAzureMLLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63499func (pls PaypalLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
63500	return nil, false
63501}
63502
63503// AsTeradataLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63504func (pls PaypalLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
63505	return nil, false
63506}
63507
63508// AsDb2LinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63509func (pls PaypalLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
63510	return nil, false
63511}
63512
63513// AsSybaseLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63514func (pls PaypalLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
63515	return nil, false
63516}
63517
63518// AsPostgreSQLLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63519func (pls PaypalLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
63520	return nil, false
63521}
63522
63523// AsMySQLLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63524func (pls PaypalLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
63525	return nil, false
63526}
63527
63528// AsAzureMySQLLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63529func (pls PaypalLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
63530	return nil, false
63531}
63532
63533// AsOracleLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63534func (pls PaypalLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
63535	return nil, false
63536}
63537
63538// AsFileServerLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63539func (pls PaypalLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
63540	return nil, false
63541}
63542
63543// AsHDInsightLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63544func (pls PaypalLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
63545	return nil, false
63546}
63547
63548// AsDynamicsLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63549func (pls PaypalLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
63550	return nil, false
63551}
63552
63553// AsCosmosDbLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63554func (pls PaypalLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
63555	return nil, false
63556}
63557
63558// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63559func (pls PaypalLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
63560	return nil, false
63561}
63562
63563// AsAzureBatchLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63564func (pls PaypalLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
63565	return nil, false
63566}
63567
63568// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63569func (pls PaypalLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
63570	return nil, false
63571}
63572
63573// AsSQLServerLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63574func (pls PaypalLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
63575	return nil, false
63576}
63577
63578// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63579func (pls PaypalLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
63580	return nil, false
63581}
63582
63583// AsAzureStorageLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63584func (pls PaypalLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
63585	return nil, false
63586}
63587
63588// AsLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63589func (pls PaypalLinkedService) AsLinkedService() (*LinkedService, bool) {
63590	return nil, false
63591}
63592
63593// AsBasicLinkedService is the BasicLinkedService implementation for PaypalLinkedService.
63594func (pls PaypalLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
63595	return &pls, true
63596}
63597
63598// UnmarshalJSON is the custom unmarshaler for PaypalLinkedService struct.
63599func (pls *PaypalLinkedService) UnmarshalJSON(body []byte) error {
63600	var m map[string]*json.RawMessage
63601	err := json.Unmarshal(body, &m)
63602	if err != nil {
63603		return err
63604	}
63605	for k, v := range m {
63606		switch k {
63607		case "typeProperties":
63608			if v != nil {
63609				var paypalLinkedServiceTypeProperties PaypalLinkedServiceTypeProperties
63610				err = json.Unmarshal(*v, &paypalLinkedServiceTypeProperties)
63611				if err != nil {
63612					return err
63613				}
63614				pls.PaypalLinkedServiceTypeProperties = &paypalLinkedServiceTypeProperties
63615			}
63616		default:
63617			if v != nil {
63618				var additionalProperties interface{}
63619				err = json.Unmarshal(*v, &additionalProperties)
63620				if err != nil {
63621					return err
63622				}
63623				if pls.AdditionalProperties == nil {
63624					pls.AdditionalProperties = make(map[string]interface{})
63625				}
63626				pls.AdditionalProperties[k] = additionalProperties
63627			}
63628		case "connectVia":
63629			if v != nil {
63630				var connectVia IntegrationRuntimeReference
63631				err = json.Unmarshal(*v, &connectVia)
63632				if err != nil {
63633					return err
63634				}
63635				pls.ConnectVia = &connectVia
63636			}
63637		case "description":
63638			if v != nil {
63639				var description string
63640				err = json.Unmarshal(*v, &description)
63641				if err != nil {
63642					return err
63643				}
63644				pls.Description = &description
63645			}
63646		case "parameters":
63647			if v != nil {
63648				var parameters map[string]*ParameterSpecification
63649				err = json.Unmarshal(*v, &parameters)
63650				if err != nil {
63651					return err
63652				}
63653				pls.Parameters = parameters
63654			}
63655		case "annotations":
63656			if v != nil {
63657				var annotations []interface{}
63658				err = json.Unmarshal(*v, &annotations)
63659				if err != nil {
63660					return err
63661				}
63662				pls.Annotations = &annotations
63663			}
63664		case "type":
63665			if v != nil {
63666				var typeVar TypeBasicLinkedService
63667				err = json.Unmarshal(*v, &typeVar)
63668				if err != nil {
63669					return err
63670				}
63671				pls.Type = typeVar
63672			}
63673		}
63674	}
63675
63676	return nil
63677}
63678
63679// PaypalLinkedServiceTypeProperties paypal Serivce linked service properties.
63680type PaypalLinkedServiceTypeProperties struct {
63681	// Host - The URL of the PayPal instance. (i.e. api.sandbox.paypal.com)
63682	Host interface{} `json:"host,omitempty"`
63683	// ClientID - The client ID associated with your PayPal application.
63684	ClientID interface{} `json:"clientId,omitempty"`
63685	// ClientSecret - The client secret associated with your PayPal application.
63686	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
63687	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
63688	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
63689	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
63690	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
63691	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
63692	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
63693	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
63694	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
63695}
63696
63697// UnmarshalJSON is the custom unmarshaler for PaypalLinkedServiceTypeProperties struct.
63698func (plstp *PaypalLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
63699	var m map[string]*json.RawMessage
63700	err := json.Unmarshal(body, &m)
63701	if err != nil {
63702		return err
63703	}
63704	for k, v := range m {
63705		switch k {
63706		case "host":
63707			if v != nil {
63708				var host interface{}
63709				err = json.Unmarshal(*v, &host)
63710				if err != nil {
63711					return err
63712				}
63713				plstp.Host = host
63714			}
63715		case "clientId":
63716			if v != nil {
63717				var clientID interface{}
63718				err = json.Unmarshal(*v, &clientID)
63719				if err != nil {
63720					return err
63721				}
63722				plstp.ClientID = clientID
63723			}
63724		case "clientSecret":
63725			if v != nil {
63726				clientSecret, err := unmarshalBasicSecretBase(*v)
63727				if err != nil {
63728					return err
63729				}
63730				plstp.ClientSecret = clientSecret
63731			}
63732		case "useEncryptedEndpoints":
63733			if v != nil {
63734				var useEncryptedEndpoints interface{}
63735				err = json.Unmarshal(*v, &useEncryptedEndpoints)
63736				if err != nil {
63737					return err
63738				}
63739				plstp.UseEncryptedEndpoints = useEncryptedEndpoints
63740			}
63741		case "useHostVerification":
63742			if v != nil {
63743				var useHostVerification interface{}
63744				err = json.Unmarshal(*v, &useHostVerification)
63745				if err != nil {
63746					return err
63747				}
63748				plstp.UseHostVerification = useHostVerification
63749			}
63750		case "usePeerVerification":
63751			if v != nil {
63752				var usePeerVerification interface{}
63753				err = json.Unmarshal(*v, &usePeerVerification)
63754				if err != nil {
63755					return err
63756				}
63757				plstp.UsePeerVerification = usePeerVerification
63758			}
63759		case "encryptedCredential":
63760			if v != nil {
63761				var encryptedCredential interface{}
63762				err = json.Unmarshal(*v, &encryptedCredential)
63763				if err != nil {
63764					return err
63765				}
63766				plstp.EncryptedCredential = encryptedCredential
63767			}
63768		}
63769	}
63770
63771	return nil
63772}
63773
63774// PaypalObjectDataset paypal Serivce dataset.
63775type PaypalObjectDataset struct {
63776	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
63777	AdditionalProperties map[string]interface{} `json:""`
63778	// Description - Dataset description.
63779	Description *string `json:"description,omitempty"`
63780	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
63781	Structure interface{} `json:"structure,omitempty"`
63782	// LinkedServiceName - Linked service reference.
63783	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
63784	// Parameters - Parameters for dataset.
63785	Parameters map[string]*ParameterSpecification `json:"parameters"`
63786	// Annotations - List of tags that can be used for describing the Dataset.
63787	Annotations *[]interface{} `json:"annotations,omitempty"`
63788	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
63789	Type TypeBasicDataset `json:"type,omitempty"`
63790}
63791
63792// MarshalJSON is the custom marshaler for PaypalObjectDataset.
63793func (pod PaypalObjectDataset) MarshalJSON() ([]byte, error) {
63794	pod.Type = TypePaypalObject
63795	objectMap := make(map[string]interface{})
63796	if pod.Description != nil {
63797		objectMap["description"] = pod.Description
63798	}
63799	objectMap["structure"] = pod.Structure
63800	if pod.LinkedServiceName != nil {
63801		objectMap["linkedServiceName"] = pod.LinkedServiceName
63802	}
63803	if pod.Parameters != nil {
63804		objectMap["parameters"] = pod.Parameters
63805	}
63806	if pod.Annotations != nil {
63807		objectMap["annotations"] = pod.Annotations
63808	}
63809	if pod.Type != "" {
63810		objectMap["type"] = pod.Type
63811	}
63812	for k, v := range pod.AdditionalProperties {
63813		objectMap[k] = v
63814	}
63815	return json.Marshal(objectMap)
63816}
63817
63818// AsResponsysObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63819func (pod PaypalObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
63820	return nil, false
63821}
63822
63823// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63824func (pod PaypalObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
63825	return nil, false
63826}
63827
63828// AsVerticaTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63829func (pod PaypalObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
63830	return nil, false
63831}
63832
63833// AsNetezzaTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63834func (pod PaypalObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
63835	return nil, false
63836}
63837
63838// AsZohoObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63839func (pod PaypalObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
63840	return nil, false
63841}
63842
63843// AsXeroObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63844func (pod PaypalObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
63845	return nil, false
63846}
63847
63848// AsSquareObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63849func (pod PaypalObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
63850	return nil, false
63851}
63852
63853// AsSparkObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63854func (pod PaypalObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
63855	return nil, false
63856}
63857
63858// AsShopifyObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63859func (pod PaypalObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
63860	return nil, false
63861}
63862
63863// AsServiceNowObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63864func (pod PaypalObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
63865	return nil, false
63866}
63867
63868// AsQuickBooksObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63869func (pod PaypalObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
63870	return nil, false
63871}
63872
63873// AsPrestoObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63874func (pod PaypalObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
63875	return nil, false
63876}
63877
63878// AsPhoenixObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63879func (pod PaypalObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
63880	return nil, false
63881}
63882
63883// AsPaypalObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63884func (pod PaypalObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
63885	return &pod, true
63886}
63887
63888// AsMarketoObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63889func (pod PaypalObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
63890	return nil, false
63891}
63892
63893// AsMariaDBTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63894func (pod PaypalObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
63895	return nil, false
63896}
63897
63898// AsMagentoObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63899func (pod PaypalObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
63900	return nil, false
63901}
63902
63903// AsJiraObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63904func (pod PaypalObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
63905	return nil, false
63906}
63907
63908// AsImpalaObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63909func (pod PaypalObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
63910	return nil, false
63911}
63912
63913// AsHubspotObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63914func (pod PaypalObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
63915	return nil, false
63916}
63917
63918// AsHiveObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63919func (pod PaypalObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
63920	return nil, false
63921}
63922
63923// AsHBaseObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63924func (pod PaypalObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
63925	return nil, false
63926}
63927
63928// AsGreenplumTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63929func (pod PaypalObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
63930	return nil, false
63931}
63932
63933// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63934func (pod PaypalObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
63935	return nil, false
63936}
63937
63938// AsEloquaObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63939func (pod PaypalObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
63940	return nil, false
63941}
63942
63943// AsDrillTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63944func (pod PaypalObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
63945	return nil, false
63946}
63947
63948// AsCouchbaseTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63949func (pod PaypalObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
63950	return nil, false
63951}
63952
63953// AsConcurObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63954func (pod PaypalObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
63955	return nil, false
63956}
63957
63958// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63959func (pod PaypalObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
63960	return nil, false
63961}
63962
63963// AsAmazonMWSObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63964func (pod PaypalObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
63965	return nil, false
63966}
63967
63968// AsHTTPDataset is the BasicDataset implementation for PaypalObjectDataset.
63969func (pod PaypalObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
63970	return nil, false
63971}
63972
63973// AsAzureSearchIndexDataset is the BasicDataset implementation for PaypalObjectDataset.
63974func (pod PaypalObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
63975	return nil, false
63976}
63977
63978// AsWebTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63979func (pod PaypalObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
63980	return nil, false
63981}
63982
63983// AsSQLServerTableDataset is the BasicDataset implementation for PaypalObjectDataset.
63984func (pod PaypalObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
63985	return nil, false
63986}
63987
63988// AsSapEccResourceDataset is the BasicDataset implementation for PaypalObjectDataset.
63989func (pod PaypalObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
63990	return nil, false
63991}
63992
63993// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for PaypalObjectDataset.
63994func (pod PaypalObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
63995	return nil, false
63996}
63997
63998// AsSalesforceObjectDataset is the BasicDataset implementation for PaypalObjectDataset.
63999func (pod PaypalObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
64000	return nil, false
64001}
64002
64003// AsRelationalTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64004func (pod PaypalObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
64005	return nil, false
64006}
64007
64008// AsAzureMySQLTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64009func (pod PaypalObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
64010	return nil, false
64011}
64012
64013// AsOracleTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64014func (pod PaypalObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
64015	return nil, false
64016}
64017
64018// AsODataResourceDataset is the BasicDataset implementation for PaypalObjectDataset.
64019func (pod PaypalObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
64020	return nil, false
64021}
64022
64023// AsMongoDbCollectionDataset is the BasicDataset implementation for PaypalObjectDataset.
64024func (pod PaypalObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
64025	return nil, false
64026}
64027
64028// AsFileShareDataset is the BasicDataset implementation for PaypalObjectDataset.
64029func (pod PaypalObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
64030	return nil, false
64031}
64032
64033// AsAzureDataLakeStoreDataset is the BasicDataset implementation for PaypalObjectDataset.
64034func (pod PaypalObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
64035	return nil, false
64036}
64037
64038// AsDynamicsEntityDataset is the BasicDataset implementation for PaypalObjectDataset.
64039func (pod PaypalObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
64040	return nil, false
64041}
64042
64043// AsDocumentDbCollectionDataset is the BasicDataset implementation for PaypalObjectDataset.
64044func (pod PaypalObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
64045	return nil, false
64046}
64047
64048// AsCustomDataset is the BasicDataset implementation for PaypalObjectDataset.
64049func (pod PaypalObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
64050	return nil, false
64051}
64052
64053// AsCassandraTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64054func (pod PaypalObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
64055	return nil, false
64056}
64057
64058// AsAzureSQLDWTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64059func (pod PaypalObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
64060	return nil, false
64061}
64062
64063// AsAzureSQLTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64064func (pod PaypalObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
64065	return nil, false
64066}
64067
64068// AsAzureTableDataset is the BasicDataset implementation for PaypalObjectDataset.
64069func (pod PaypalObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
64070	return nil, false
64071}
64072
64073// AsAzureBlobDataset is the BasicDataset implementation for PaypalObjectDataset.
64074func (pod PaypalObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
64075	return nil, false
64076}
64077
64078// AsAmazonS3Dataset is the BasicDataset implementation for PaypalObjectDataset.
64079func (pod PaypalObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
64080	return nil, false
64081}
64082
64083// AsDataset is the BasicDataset implementation for PaypalObjectDataset.
64084func (pod PaypalObjectDataset) AsDataset() (*Dataset, bool) {
64085	return nil, false
64086}
64087
64088// AsBasicDataset is the BasicDataset implementation for PaypalObjectDataset.
64089func (pod PaypalObjectDataset) AsBasicDataset() (BasicDataset, bool) {
64090	return &pod, true
64091}
64092
64093// PaypalSource a copy activity Paypal Serivce source.
64094type PaypalSource struct {
64095	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
64096	Query interface{} `json:"query,omitempty"`
64097	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
64098	AdditionalProperties map[string]interface{} `json:""`
64099	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
64100	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
64101	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
64102	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
64103	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
64104	Type TypeBasicCopySource `json:"type,omitempty"`
64105}
64106
64107// MarshalJSON is the custom marshaler for PaypalSource.
64108func (ps PaypalSource) MarshalJSON() ([]byte, error) {
64109	ps.Type = TypePaypalSource
64110	objectMap := make(map[string]interface{})
64111	objectMap["query"] = ps.Query
64112	objectMap["sourceRetryCount"] = ps.SourceRetryCount
64113	objectMap["sourceRetryWait"] = ps.SourceRetryWait
64114	if ps.Type != "" {
64115		objectMap["type"] = ps.Type
64116	}
64117	for k, v := range ps.AdditionalProperties {
64118		objectMap[k] = v
64119	}
64120	return json.Marshal(objectMap)
64121}
64122
64123// AsAmazonRedshiftSource is the BasicCopySource implementation for PaypalSource.
64124func (ps PaypalSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
64125	return nil, false
64126}
64127
64128// AsResponsysSource is the BasicCopySource implementation for PaypalSource.
64129func (ps PaypalSource) AsResponsysSource() (*ResponsysSource, bool) {
64130	return nil, false
64131}
64132
64133// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for PaypalSource.
64134func (ps PaypalSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
64135	return nil, false
64136}
64137
64138// AsVerticaSource is the BasicCopySource implementation for PaypalSource.
64139func (ps PaypalSource) AsVerticaSource() (*VerticaSource, bool) {
64140	return nil, false
64141}
64142
64143// AsNetezzaSource is the BasicCopySource implementation for PaypalSource.
64144func (ps PaypalSource) AsNetezzaSource() (*NetezzaSource, bool) {
64145	return nil, false
64146}
64147
64148// AsZohoSource is the BasicCopySource implementation for PaypalSource.
64149func (ps PaypalSource) AsZohoSource() (*ZohoSource, bool) {
64150	return nil, false
64151}
64152
64153// AsXeroSource is the BasicCopySource implementation for PaypalSource.
64154func (ps PaypalSource) AsXeroSource() (*XeroSource, bool) {
64155	return nil, false
64156}
64157
64158// AsSquareSource is the BasicCopySource implementation for PaypalSource.
64159func (ps PaypalSource) AsSquareSource() (*SquareSource, bool) {
64160	return nil, false
64161}
64162
64163// AsSparkSource is the BasicCopySource implementation for PaypalSource.
64164func (ps PaypalSource) AsSparkSource() (*SparkSource, bool) {
64165	return nil, false
64166}
64167
64168// AsShopifySource is the BasicCopySource implementation for PaypalSource.
64169func (ps PaypalSource) AsShopifySource() (*ShopifySource, bool) {
64170	return nil, false
64171}
64172
64173// AsServiceNowSource is the BasicCopySource implementation for PaypalSource.
64174func (ps PaypalSource) AsServiceNowSource() (*ServiceNowSource, bool) {
64175	return nil, false
64176}
64177
64178// AsQuickBooksSource is the BasicCopySource implementation for PaypalSource.
64179func (ps PaypalSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
64180	return nil, false
64181}
64182
64183// AsPrestoSource is the BasicCopySource implementation for PaypalSource.
64184func (ps PaypalSource) AsPrestoSource() (*PrestoSource, bool) {
64185	return nil, false
64186}
64187
64188// AsPhoenixSource is the BasicCopySource implementation for PaypalSource.
64189func (ps PaypalSource) AsPhoenixSource() (*PhoenixSource, bool) {
64190	return nil, false
64191}
64192
64193// AsPaypalSource is the BasicCopySource implementation for PaypalSource.
64194func (ps PaypalSource) AsPaypalSource() (*PaypalSource, bool) {
64195	return &ps, true
64196}
64197
64198// AsMarketoSource is the BasicCopySource implementation for PaypalSource.
64199func (ps PaypalSource) AsMarketoSource() (*MarketoSource, bool) {
64200	return nil, false
64201}
64202
64203// AsMariaDBSource is the BasicCopySource implementation for PaypalSource.
64204func (ps PaypalSource) AsMariaDBSource() (*MariaDBSource, bool) {
64205	return nil, false
64206}
64207
64208// AsMagentoSource is the BasicCopySource implementation for PaypalSource.
64209func (ps PaypalSource) AsMagentoSource() (*MagentoSource, bool) {
64210	return nil, false
64211}
64212
64213// AsJiraSource is the BasicCopySource implementation for PaypalSource.
64214func (ps PaypalSource) AsJiraSource() (*JiraSource, bool) {
64215	return nil, false
64216}
64217
64218// AsImpalaSource is the BasicCopySource implementation for PaypalSource.
64219func (ps PaypalSource) AsImpalaSource() (*ImpalaSource, bool) {
64220	return nil, false
64221}
64222
64223// AsHubspotSource is the BasicCopySource implementation for PaypalSource.
64224func (ps PaypalSource) AsHubspotSource() (*HubspotSource, bool) {
64225	return nil, false
64226}
64227
64228// AsHiveSource is the BasicCopySource implementation for PaypalSource.
64229func (ps PaypalSource) AsHiveSource() (*HiveSource, bool) {
64230	return nil, false
64231}
64232
64233// AsHBaseSource is the BasicCopySource implementation for PaypalSource.
64234func (ps PaypalSource) AsHBaseSource() (*HBaseSource, bool) {
64235	return nil, false
64236}
64237
64238// AsGreenplumSource is the BasicCopySource implementation for PaypalSource.
64239func (ps PaypalSource) AsGreenplumSource() (*GreenplumSource, bool) {
64240	return nil, false
64241}
64242
64243// AsGoogleBigQuerySource is the BasicCopySource implementation for PaypalSource.
64244func (ps PaypalSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
64245	return nil, false
64246}
64247
64248// AsEloquaSource is the BasicCopySource implementation for PaypalSource.
64249func (ps PaypalSource) AsEloquaSource() (*EloquaSource, bool) {
64250	return nil, false
64251}
64252
64253// AsDrillSource is the BasicCopySource implementation for PaypalSource.
64254func (ps PaypalSource) AsDrillSource() (*DrillSource, bool) {
64255	return nil, false
64256}
64257
64258// AsCouchbaseSource is the BasicCopySource implementation for PaypalSource.
64259func (ps PaypalSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
64260	return nil, false
64261}
64262
64263// AsConcurSource is the BasicCopySource implementation for PaypalSource.
64264func (ps PaypalSource) AsConcurSource() (*ConcurSource, bool) {
64265	return nil, false
64266}
64267
64268// AsAzurePostgreSQLSource is the BasicCopySource implementation for PaypalSource.
64269func (ps PaypalSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
64270	return nil, false
64271}
64272
64273// AsAmazonMWSSource is the BasicCopySource implementation for PaypalSource.
64274func (ps PaypalSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
64275	return nil, false
64276}
64277
64278// AsHTTPSource is the BasicCopySource implementation for PaypalSource.
64279func (ps PaypalSource) AsHTTPSource() (*HTTPSource, bool) {
64280	return nil, false
64281}
64282
64283// AsAzureDataLakeStoreSource is the BasicCopySource implementation for PaypalSource.
64284func (ps PaypalSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
64285	return nil, false
64286}
64287
64288// AsMongoDbSource is the BasicCopySource implementation for PaypalSource.
64289func (ps PaypalSource) AsMongoDbSource() (*MongoDbSource, bool) {
64290	return nil, false
64291}
64292
64293// AsCassandraSource is the BasicCopySource implementation for PaypalSource.
64294func (ps PaypalSource) AsCassandraSource() (*CassandraSource, bool) {
64295	return nil, false
64296}
64297
64298// AsWebSource is the BasicCopySource implementation for PaypalSource.
64299func (ps PaypalSource) AsWebSource() (*WebSource, bool) {
64300	return nil, false
64301}
64302
64303// AsOracleSource is the BasicCopySource implementation for PaypalSource.
64304func (ps PaypalSource) AsOracleSource() (*OracleSource, bool) {
64305	return nil, false
64306}
64307
64308// AsAzureMySQLSource is the BasicCopySource implementation for PaypalSource.
64309func (ps PaypalSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
64310	return nil, false
64311}
64312
64313// AsHdfsSource is the BasicCopySource implementation for PaypalSource.
64314func (ps PaypalSource) AsHdfsSource() (*HdfsSource, bool) {
64315	return nil, false
64316}
64317
64318// AsFileSystemSource is the BasicCopySource implementation for PaypalSource.
64319func (ps PaypalSource) AsFileSystemSource() (*FileSystemSource, bool) {
64320	return nil, false
64321}
64322
64323// AsSQLDWSource is the BasicCopySource implementation for PaypalSource.
64324func (ps PaypalSource) AsSQLDWSource() (*SQLDWSource, bool) {
64325	return nil, false
64326}
64327
64328// AsSQLSource is the BasicCopySource implementation for PaypalSource.
64329func (ps PaypalSource) AsSQLSource() (*SQLSource, bool) {
64330	return nil, false
64331}
64332
64333// AsSapEccSource is the BasicCopySource implementation for PaypalSource.
64334func (ps PaypalSource) AsSapEccSource() (*SapEccSource, bool) {
64335	return nil, false
64336}
64337
64338// AsSapCloudForCustomerSource is the BasicCopySource implementation for PaypalSource.
64339func (ps PaypalSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
64340	return nil, false
64341}
64342
64343// AsSalesforceSource is the BasicCopySource implementation for PaypalSource.
64344func (ps PaypalSource) AsSalesforceSource() (*SalesforceSource, bool) {
64345	return nil, false
64346}
64347
64348// AsRelationalSource is the BasicCopySource implementation for PaypalSource.
64349func (ps PaypalSource) AsRelationalSource() (*RelationalSource, bool) {
64350	return nil, false
64351}
64352
64353// AsDynamicsSource is the BasicCopySource implementation for PaypalSource.
64354func (ps PaypalSource) AsDynamicsSource() (*DynamicsSource, bool) {
64355	return nil, false
64356}
64357
64358// AsDocumentDbCollectionSource is the BasicCopySource implementation for PaypalSource.
64359func (ps PaypalSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
64360	return nil, false
64361}
64362
64363// AsBlobSource is the BasicCopySource implementation for PaypalSource.
64364func (ps PaypalSource) AsBlobSource() (*BlobSource, bool) {
64365	return nil, false
64366}
64367
64368// AsAzureTableSource is the BasicCopySource implementation for PaypalSource.
64369func (ps PaypalSource) AsAzureTableSource() (*AzureTableSource, bool) {
64370	return nil, false
64371}
64372
64373// AsCopySource is the BasicCopySource implementation for PaypalSource.
64374func (ps PaypalSource) AsCopySource() (*CopySource, bool) {
64375	return nil, false
64376}
64377
64378// AsBasicCopySource is the BasicCopySource implementation for PaypalSource.
64379func (ps PaypalSource) AsBasicCopySource() (BasicCopySource, bool) {
64380	return &ps, true
64381}
64382
64383// PhoenixLinkedService phoenix server linked service.
64384type PhoenixLinkedService struct {
64385	// PhoenixLinkedServiceTypeProperties - Phoenix server linked service properties.
64386	*PhoenixLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
64387	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
64388	AdditionalProperties map[string]interface{} `json:""`
64389	// ConnectVia - The integration runtime reference.
64390	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
64391	// Description - Linked service description.
64392	Description *string `json:"description,omitempty"`
64393	// Parameters - Parameters for linked service.
64394	Parameters map[string]*ParameterSpecification `json:"parameters"`
64395	// Annotations - List of tags that can be used for describing the Dataset.
64396	Annotations *[]interface{} `json:"annotations,omitempty"`
64397	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
64398	Type TypeBasicLinkedService `json:"type,omitempty"`
64399}
64400
64401// MarshalJSON is the custom marshaler for PhoenixLinkedService.
64402func (pls PhoenixLinkedService) MarshalJSON() ([]byte, error) {
64403	pls.Type = TypePhoenix
64404	objectMap := make(map[string]interface{})
64405	if pls.PhoenixLinkedServiceTypeProperties != nil {
64406		objectMap["typeProperties"] = pls.PhoenixLinkedServiceTypeProperties
64407	}
64408	if pls.ConnectVia != nil {
64409		objectMap["connectVia"] = pls.ConnectVia
64410	}
64411	if pls.Description != nil {
64412		objectMap["description"] = pls.Description
64413	}
64414	if pls.Parameters != nil {
64415		objectMap["parameters"] = pls.Parameters
64416	}
64417	if pls.Annotations != nil {
64418		objectMap["annotations"] = pls.Annotations
64419	}
64420	if pls.Type != "" {
64421		objectMap["type"] = pls.Type
64422	}
64423	for k, v := range pls.AdditionalProperties {
64424		objectMap[k] = v
64425	}
64426	return json.Marshal(objectMap)
64427}
64428
64429// AsResponsysLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64430func (pls PhoenixLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
64431	return nil, false
64432}
64433
64434// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64435func (pls PhoenixLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
64436	return nil, false
64437}
64438
64439// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64440func (pls PhoenixLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
64441	return nil, false
64442}
64443
64444// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64445func (pls PhoenixLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
64446	return nil, false
64447}
64448
64449// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64450func (pls PhoenixLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
64451	return nil, false
64452}
64453
64454// AsNetezzaLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64455func (pls PhoenixLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
64456	return nil, false
64457}
64458
64459// AsVerticaLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64460func (pls PhoenixLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
64461	return nil, false
64462}
64463
64464// AsZohoLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64465func (pls PhoenixLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
64466	return nil, false
64467}
64468
64469// AsXeroLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64470func (pls PhoenixLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
64471	return nil, false
64472}
64473
64474// AsSquareLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64475func (pls PhoenixLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
64476	return nil, false
64477}
64478
64479// AsSparkLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64480func (pls PhoenixLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
64481	return nil, false
64482}
64483
64484// AsShopifyLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64485func (pls PhoenixLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
64486	return nil, false
64487}
64488
64489// AsServiceNowLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64490func (pls PhoenixLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
64491	return nil, false
64492}
64493
64494// AsQuickBooksLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64495func (pls PhoenixLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
64496	return nil, false
64497}
64498
64499// AsPrestoLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64500func (pls PhoenixLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
64501	return nil, false
64502}
64503
64504// AsPhoenixLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64505func (pls PhoenixLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
64506	return &pls, true
64507}
64508
64509// AsPaypalLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64510func (pls PhoenixLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
64511	return nil, false
64512}
64513
64514// AsMarketoLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64515func (pls PhoenixLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
64516	return nil, false
64517}
64518
64519// AsMariaDBLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64520func (pls PhoenixLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
64521	return nil, false
64522}
64523
64524// AsMagentoLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64525func (pls PhoenixLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
64526	return nil, false
64527}
64528
64529// AsJiraLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64530func (pls PhoenixLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
64531	return nil, false
64532}
64533
64534// AsImpalaLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64535func (pls PhoenixLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
64536	return nil, false
64537}
64538
64539// AsHubspotLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64540func (pls PhoenixLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
64541	return nil, false
64542}
64543
64544// AsHiveLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64545func (pls PhoenixLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
64546	return nil, false
64547}
64548
64549// AsHBaseLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64550func (pls PhoenixLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
64551	return nil, false
64552}
64553
64554// AsGreenplumLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64555func (pls PhoenixLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
64556	return nil, false
64557}
64558
64559// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64560func (pls PhoenixLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
64561	return nil, false
64562}
64563
64564// AsEloquaLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64565func (pls PhoenixLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
64566	return nil, false
64567}
64568
64569// AsDrillLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64570func (pls PhoenixLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
64571	return nil, false
64572}
64573
64574// AsCouchbaseLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64575func (pls PhoenixLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
64576	return nil, false
64577}
64578
64579// AsConcurLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64580func (pls PhoenixLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
64581	return nil, false
64582}
64583
64584// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64585func (pls PhoenixLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
64586	return nil, false
64587}
64588
64589// AsAmazonMWSLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64590func (pls PhoenixLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
64591	return nil, false
64592}
64593
64594// AsSapHanaLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64595func (pls PhoenixLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
64596	return nil, false
64597}
64598
64599// AsSapBWLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64600func (pls PhoenixLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
64601	return nil, false
64602}
64603
64604// AsSftpServerLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64605func (pls PhoenixLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
64606	return nil, false
64607}
64608
64609// AsFtpServerLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64610func (pls PhoenixLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
64611	return nil, false
64612}
64613
64614// AsHTTPLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64615func (pls PhoenixLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
64616	return nil, false
64617}
64618
64619// AsAzureSearchLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64620func (pls PhoenixLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
64621	return nil, false
64622}
64623
64624// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64625func (pls PhoenixLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
64626	return nil, false
64627}
64628
64629// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64630func (pls PhoenixLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
64631	return nil, false
64632}
64633
64634// AsAmazonS3LinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64635func (pls PhoenixLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
64636	return nil, false
64637}
64638
64639// AsSapEccLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64640func (pls PhoenixLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
64641	return nil, false
64642}
64643
64644// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64645func (pls PhoenixLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
64646	return nil, false
64647}
64648
64649// AsSalesforceLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64650func (pls PhoenixLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
64651	return nil, false
64652}
64653
64654// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64655func (pls PhoenixLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
64656	return nil, false
64657}
64658
64659// AsMongoDbLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64660func (pls PhoenixLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
64661	return nil, false
64662}
64663
64664// AsCassandraLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64665func (pls PhoenixLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
64666	return nil, false
64667}
64668
64669// AsWebLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64670func (pls PhoenixLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
64671	return nil, false
64672}
64673
64674// AsODataLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64675func (pls PhoenixLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
64676	return nil, false
64677}
64678
64679// AsHdfsLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64680func (pls PhoenixLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
64681	return nil, false
64682}
64683
64684// AsOdbcLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64685func (pls PhoenixLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
64686	return nil, false
64687}
64688
64689// AsAzureMLLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64690func (pls PhoenixLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
64691	return nil, false
64692}
64693
64694// AsTeradataLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64695func (pls PhoenixLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
64696	return nil, false
64697}
64698
64699// AsDb2LinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64700func (pls PhoenixLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
64701	return nil, false
64702}
64703
64704// AsSybaseLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64705func (pls PhoenixLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
64706	return nil, false
64707}
64708
64709// AsPostgreSQLLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64710func (pls PhoenixLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
64711	return nil, false
64712}
64713
64714// AsMySQLLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64715func (pls PhoenixLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
64716	return nil, false
64717}
64718
64719// AsAzureMySQLLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64720func (pls PhoenixLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
64721	return nil, false
64722}
64723
64724// AsOracleLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64725func (pls PhoenixLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
64726	return nil, false
64727}
64728
64729// AsFileServerLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64730func (pls PhoenixLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
64731	return nil, false
64732}
64733
64734// AsHDInsightLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64735func (pls PhoenixLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
64736	return nil, false
64737}
64738
64739// AsDynamicsLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64740func (pls PhoenixLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
64741	return nil, false
64742}
64743
64744// AsCosmosDbLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64745func (pls PhoenixLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
64746	return nil, false
64747}
64748
64749// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64750func (pls PhoenixLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
64751	return nil, false
64752}
64753
64754// AsAzureBatchLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64755func (pls PhoenixLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
64756	return nil, false
64757}
64758
64759// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64760func (pls PhoenixLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
64761	return nil, false
64762}
64763
64764// AsSQLServerLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64765func (pls PhoenixLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
64766	return nil, false
64767}
64768
64769// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64770func (pls PhoenixLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
64771	return nil, false
64772}
64773
64774// AsAzureStorageLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64775func (pls PhoenixLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
64776	return nil, false
64777}
64778
64779// AsLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64780func (pls PhoenixLinkedService) AsLinkedService() (*LinkedService, bool) {
64781	return nil, false
64782}
64783
64784// AsBasicLinkedService is the BasicLinkedService implementation for PhoenixLinkedService.
64785func (pls PhoenixLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
64786	return &pls, true
64787}
64788
64789// UnmarshalJSON is the custom unmarshaler for PhoenixLinkedService struct.
64790func (pls *PhoenixLinkedService) UnmarshalJSON(body []byte) error {
64791	var m map[string]*json.RawMessage
64792	err := json.Unmarshal(body, &m)
64793	if err != nil {
64794		return err
64795	}
64796	for k, v := range m {
64797		switch k {
64798		case "typeProperties":
64799			if v != nil {
64800				var phoenixLinkedServiceTypeProperties PhoenixLinkedServiceTypeProperties
64801				err = json.Unmarshal(*v, &phoenixLinkedServiceTypeProperties)
64802				if err != nil {
64803					return err
64804				}
64805				pls.PhoenixLinkedServiceTypeProperties = &phoenixLinkedServiceTypeProperties
64806			}
64807		default:
64808			if v != nil {
64809				var additionalProperties interface{}
64810				err = json.Unmarshal(*v, &additionalProperties)
64811				if err != nil {
64812					return err
64813				}
64814				if pls.AdditionalProperties == nil {
64815					pls.AdditionalProperties = make(map[string]interface{})
64816				}
64817				pls.AdditionalProperties[k] = additionalProperties
64818			}
64819		case "connectVia":
64820			if v != nil {
64821				var connectVia IntegrationRuntimeReference
64822				err = json.Unmarshal(*v, &connectVia)
64823				if err != nil {
64824					return err
64825				}
64826				pls.ConnectVia = &connectVia
64827			}
64828		case "description":
64829			if v != nil {
64830				var description string
64831				err = json.Unmarshal(*v, &description)
64832				if err != nil {
64833					return err
64834				}
64835				pls.Description = &description
64836			}
64837		case "parameters":
64838			if v != nil {
64839				var parameters map[string]*ParameterSpecification
64840				err = json.Unmarshal(*v, &parameters)
64841				if err != nil {
64842					return err
64843				}
64844				pls.Parameters = parameters
64845			}
64846		case "annotations":
64847			if v != nil {
64848				var annotations []interface{}
64849				err = json.Unmarshal(*v, &annotations)
64850				if err != nil {
64851					return err
64852				}
64853				pls.Annotations = &annotations
64854			}
64855		case "type":
64856			if v != nil {
64857				var typeVar TypeBasicLinkedService
64858				err = json.Unmarshal(*v, &typeVar)
64859				if err != nil {
64860					return err
64861				}
64862				pls.Type = typeVar
64863			}
64864		}
64865	}
64866
64867	return nil
64868}
64869
64870// PhoenixLinkedServiceTypeProperties phoenix server linked service properties.
64871type PhoenixLinkedServiceTypeProperties struct {
64872	// Host - The IP address or host name of the Phoenix server. (i.e. 192.168.222.160)
64873	Host interface{} `json:"host,omitempty"`
64874	// Port - The TCP port that the Phoenix server uses to listen for client connections. The default value is 8765.
64875	Port interface{} `json:"port,omitempty"`
64876	// HTTPPath - The partial URL corresponding to the Phoenix server. (i.e. /gateway/sandbox/phoenix/version). The default value is hbasephoenix if using WindowsAzureHDInsightService.
64877	HTTPPath interface{} `json:"httpPath,omitempty"`
64878	// AuthenticationType - The authentication mechanism used to connect to the Phoenix server. Possible values include: 'PhoenixAuthenticationTypeAnonymous', 'PhoenixAuthenticationTypeUsernameAndPassword', 'PhoenixAuthenticationTypeWindowsAzureHDInsightService'
64879	AuthenticationType PhoenixAuthenticationType `json:"authenticationType,omitempty"`
64880	// Username - The user name used to connect to the Phoenix server.
64881	Username interface{} `json:"username,omitempty"`
64882	// Password - The password corresponding to the user name.
64883	Password BasicSecretBase `json:"password,omitempty"`
64884	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
64885	EnableSsl interface{} `json:"enableSsl,omitempty"`
64886	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
64887	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
64888	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
64889	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
64890	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
64891	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
64892	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
64893	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
64894	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
64895	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
64896}
64897
64898// UnmarshalJSON is the custom unmarshaler for PhoenixLinkedServiceTypeProperties struct.
64899func (plstp *PhoenixLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
64900	var m map[string]*json.RawMessage
64901	err := json.Unmarshal(body, &m)
64902	if err != nil {
64903		return err
64904	}
64905	for k, v := range m {
64906		switch k {
64907		case "host":
64908			if v != nil {
64909				var host interface{}
64910				err = json.Unmarshal(*v, &host)
64911				if err != nil {
64912					return err
64913				}
64914				plstp.Host = host
64915			}
64916		case "port":
64917			if v != nil {
64918				var port interface{}
64919				err = json.Unmarshal(*v, &port)
64920				if err != nil {
64921					return err
64922				}
64923				plstp.Port = port
64924			}
64925		case "httpPath":
64926			if v != nil {
64927				var HTTPPath interface{}
64928				err = json.Unmarshal(*v, &HTTPPath)
64929				if err != nil {
64930					return err
64931				}
64932				plstp.HTTPPath = HTTPPath
64933			}
64934		case "authenticationType":
64935			if v != nil {
64936				var authenticationType PhoenixAuthenticationType
64937				err = json.Unmarshal(*v, &authenticationType)
64938				if err != nil {
64939					return err
64940				}
64941				plstp.AuthenticationType = authenticationType
64942			}
64943		case "username":
64944			if v != nil {
64945				var username interface{}
64946				err = json.Unmarshal(*v, &username)
64947				if err != nil {
64948					return err
64949				}
64950				plstp.Username = username
64951			}
64952		case "password":
64953			if v != nil {
64954				password, err := unmarshalBasicSecretBase(*v)
64955				if err != nil {
64956					return err
64957				}
64958				plstp.Password = password
64959			}
64960		case "enableSsl":
64961			if v != nil {
64962				var enableSsl interface{}
64963				err = json.Unmarshal(*v, &enableSsl)
64964				if err != nil {
64965					return err
64966				}
64967				plstp.EnableSsl = enableSsl
64968			}
64969		case "trustedCertPath":
64970			if v != nil {
64971				var trustedCertPath interface{}
64972				err = json.Unmarshal(*v, &trustedCertPath)
64973				if err != nil {
64974					return err
64975				}
64976				plstp.TrustedCertPath = trustedCertPath
64977			}
64978		case "useSystemTrustStore":
64979			if v != nil {
64980				var useSystemTrustStore interface{}
64981				err = json.Unmarshal(*v, &useSystemTrustStore)
64982				if err != nil {
64983					return err
64984				}
64985				plstp.UseSystemTrustStore = useSystemTrustStore
64986			}
64987		case "allowHostNameCNMismatch":
64988			if v != nil {
64989				var allowHostNameCNMismatch interface{}
64990				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
64991				if err != nil {
64992					return err
64993				}
64994				plstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
64995			}
64996		case "allowSelfSignedServerCert":
64997			if v != nil {
64998				var allowSelfSignedServerCert interface{}
64999				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
65000				if err != nil {
65001					return err
65002				}
65003				plstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
65004			}
65005		case "encryptedCredential":
65006			if v != nil {
65007				var encryptedCredential interface{}
65008				err = json.Unmarshal(*v, &encryptedCredential)
65009				if err != nil {
65010					return err
65011				}
65012				plstp.EncryptedCredential = encryptedCredential
65013			}
65014		}
65015	}
65016
65017	return nil
65018}
65019
65020// PhoenixObjectDataset phoenix server dataset.
65021type PhoenixObjectDataset struct {
65022	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
65023	AdditionalProperties map[string]interface{} `json:""`
65024	// Description - Dataset description.
65025	Description *string `json:"description,omitempty"`
65026	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
65027	Structure interface{} `json:"structure,omitempty"`
65028	// LinkedServiceName - Linked service reference.
65029	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
65030	// Parameters - Parameters for dataset.
65031	Parameters map[string]*ParameterSpecification `json:"parameters"`
65032	// Annotations - List of tags that can be used for describing the Dataset.
65033	Annotations *[]interface{} `json:"annotations,omitempty"`
65034	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
65035	Type TypeBasicDataset `json:"type,omitempty"`
65036}
65037
65038// MarshalJSON is the custom marshaler for PhoenixObjectDataset.
65039func (pod PhoenixObjectDataset) MarshalJSON() ([]byte, error) {
65040	pod.Type = TypePhoenixObject
65041	objectMap := make(map[string]interface{})
65042	if pod.Description != nil {
65043		objectMap["description"] = pod.Description
65044	}
65045	objectMap["structure"] = pod.Structure
65046	if pod.LinkedServiceName != nil {
65047		objectMap["linkedServiceName"] = pod.LinkedServiceName
65048	}
65049	if pod.Parameters != nil {
65050		objectMap["parameters"] = pod.Parameters
65051	}
65052	if pod.Annotations != nil {
65053		objectMap["annotations"] = pod.Annotations
65054	}
65055	if pod.Type != "" {
65056		objectMap["type"] = pod.Type
65057	}
65058	for k, v := range pod.AdditionalProperties {
65059		objectMap[k] = v
65060	}
65061	return json.Marshal(objectMap)
65062}
65063
65064// AsResponsysObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65065func (pod PhoenixObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
65066	return nil, false
65067}
65068
65069// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65070func (pod PhoenixObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
65071	return nil, false
65072}
65073
65074// AsVerticaTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65075func (pod PhoenixObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
65076	return nil, false
65077}
65078
65079// AsNetezzaTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65080func (pod PhoenixObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
65081	return nil, false
65082}
65083
65084// AsZohoObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65085func (pod PhoenixObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
65086	return nil, false
65087}
65088
65089// AsXeroObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65090func (pod PhoenixObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
65091	return nil, false
65092}
65093
65094// AsSquareObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65095func (pod PhoenixObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
65096	return nil, false
65097}
65098
65099// AsSparkObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65100func (pod PhoenixObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
65101	return nil, false
65102}
65103
65104// AsShopifyObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65105func (pod PhoenixObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
65106	return nil, false
65107}
65108
65109// AsServiceNowObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65110func (pod PhoenixObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
65111	return nil, false
65112}
65113
65114// AsQuickBooksObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65115func (pod PhoenixObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
65116	return nil, false
65117}
65118
65119// AsPrestoObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65120func (pod PhoenixObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
65121	return nil, false
65122}
65123
65124// AsPhoenixObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65125func (pod PhoenixObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
65126	return &pod, true
65127}
65128
65129// AsPaypalObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65130func (pod PhoenixObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
65131	return nil, false
65132}
65133
65134// AsMarketoObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65135func (pod PhoenixObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
65136	return nil, false
65137}
65138
65139// AsMariaDBTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65140func (pod PhoenixObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
65141	return nil, false
65142}
65143
65144// AsMagentoObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65145func (pod PhoenixObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
65146	return nil, false
65147}
65148
65149// AsJiraObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65150func (pod PhoenixObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
65151	return nil, false
65152}
65153
65154// AsImpalaObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65155func (pod PhoenixObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
65156	return nil, false
65157}
65158
65159// AsHubspotObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65160func (pod PhoenixObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
65161	return nil, false
65162}
65163
65164// AsHiveObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65165func (pod PhoenixObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
65166	return nil, false
65167}
65168
65169// AsHBaseObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65170func (pod PhoenixObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
65171	return nil, false
65172}
65173
65174// AsGreenplumTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65175func (pod PhoenixObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
65176	return nil, false
65177}
65178
65179// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65180func (pod PhoenixObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
65181	return nil, false
65182}
65183
65184// AsEloquaObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65185func (pod PhoenixObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
65186	return nil, false
65187}
65188
65189// AsDrillTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65190func (pod PhoenixObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
65191	return nil, false
65192}
65193
65194// AsCouchbaseTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65195func (pod PhoenixObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
65196	return nil, false
65197}
65198
65199// AsConcurObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65200func (pod PhoenixObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
65201	return nil, false
65202}
65203
65204// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65205func (pod PhoenixObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
65206	return nil, false
65207}
65208
65209// AsAmazonMWSObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65210func (pod PhoenixObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
65211	return nil, false
65212}
65213
65214// AsHTTPDataset is the BasicDataset implementation for PhoenixObjectDataset.
65215func (pod PhoenixObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
65216	return nil, false
65217}
65218
65219// AsAzureSearchIndexDataset is the BasicDataset implementation for PhoenixObjectDataset.
65220func (pod PhoenixObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
65221	return nil, false
65222}
65223
65224// AsWebTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65225func (pod PhoenixObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
65226	return nil, false
65227}
65228
65229// AsSQLServerTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65230func (pod PhoenixObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
65231	return nil, false
65232}
65233
65234// AsSapEccResourceDataset is the BasicDataset implementation for PhoenixObjectDataset.
65235func (pod PhoenixObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
65236	return nil, false
65237}
65238
65239// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for PhoenixObjectDataset.
65240func (pod PhoenixObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
65241	return nil, false
65242}
65243
65244// AsSalesforceObjectDataset is the BasicDataset implementation for PhoenixObjectDataset.
65245func (pod PhoenixObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
65246	return nil, false
65247}
65248
65249// AsRelationalTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65250func (pod PhoenixObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
65251	return nil, false
65252}
65253
65254// AsAzureMySQLTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65255func (pod PhoenixObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
65256	return nil, false
65257}
65258
65259// AsOracleTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65260func (pod PhoenixObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
65261	return nil, false
65262}
65263
65264// AsODataResourceDataset is the BasicDataset implementation for PhoenixObjectDataset.
65265func (pod PhoenixObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
65266	return nil, false
65267}
65268
65269// AsMongoDbCollectionDataset is the BasicDataset implementation for PhoenixObjectDataset.
65270func (pod PhoenixObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
65271	return nil, false
65272}
65273
65274// AsFileShareDataset is the BasicDataset implementation for PhoenixObjectDataset.
65275func (pod PhoenixObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
65276	return nil, false
65277}
65278
65279// AsAzureDataLakeStoreDataset is the BasicDataset implementation for PhoenixObjectDataset.
65280func (pod PhoenixObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
65281	return nil, false
65282}
65283
65284// AsDynamicsEntityDataset is the BasicDataset implementation for PhoenixObjectDataset.
65285func (pod PhoenixObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
65286	return nil, false
65287}
65288
65289// AsDocumentDbCollectionDataset is the BasicDataset implementation for PhoenixObjectDataset.
65290func (pod PhoenixObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
65291	return nil, false
65292}
65293
65294// AsCustomDataset is the BasicDataset implementation for PhoenixObjectDataset.
65295func (pod PhoenixObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
65296	return nil, false
65297}
65298
65299// AsCassandraTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65300func (pod PhoenixObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
65301	return nil, false
65302}
65303
65304// AsAzureSQLDWTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65305func (pod PhoenixObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
65306	return nil, false
65307}
65308
65309// AsAzureSQLTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65310func (pod PhoenixObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
65311	return nil, false
65312}
65313
65314// AsAzureTableDataset is the BasicDataset implementation for PhoenixObjectDataset.
65315func (pod PhoenixObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
65316	return nil, false
65317}
65318
65319// AsAzureBlobDataset is the BasicDataset implementation for PhoenixObjectDataset.
65320func (pod PhoenixObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
65321	return nil, false
65322}
65323
65324// AsAmazonS3Dataset is the BasicDataset implementation for PhoenixObjectDataset.
65325func (pod PhoenixObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
65326	return nil, false
65327}
65328
65329// AsDataset is the BasicDataset implementation for PhoenixObjectDataset.
65330func (pod PhoenixObjectDataset) AsDataset() (*Dataset, bool) {
65331	return nil, false
65332}
65333
65334// AsBasicDataset is the BasicDataset implementation for PhoenixObjectDataset.
65335func (pod PhoenixObjectDataset) AsBasicDataset() (BasicDataset, bool) {
65336	return &pod, true
65337}
65338
65339// PhoenixSource a copy activity Phoenix server source.
65340type PhoenixSource struct {
65341	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
65342	Query interface{} `json:"query,omitempty"`
65343	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
65344	AdditionalProperties map[string]interface{} `json:""`
65345	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
65346	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
65347	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
65348	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
65349	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
65350	Type TypeBasicCopySource `json:"type,omitempty"`
65351}
65352
65353// MarshalJSON is the custom marshaler for PhoenixSource.
65354func (ps PhoenixSource) MarshalJSON() ([]byte, error) {
65355	ps.Type = TypePhoenixSource
65356	objectMap := make(map[string]interface{})
65357	objectMap["query"] = ps.Query
65358	objectMap["sourceRetryCount"] = ps.SourceRetryCount
65359	objectMap["sourceRetryWait"] = ps.SourceRetryWait
65360	if ps.Type != "" {
65361		objectMap["type"] = ps.Type
65362	}
65363	for k, v := range ps.AdditionalProperties {
65364		objectMap[k] = v
65365	}
65366	return json.Marshal(objectMap)
65367}
65368
65369// AsAmazonRedshiftSource is the BasicCopySource implementation for PhoenixSource.
65370func (ps PhoenixSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
65371	return nil, false
65372}
65373
65374// AsResponsysSource is the BasicCopySource implementation for PhoenixSource.
65375func (ps PhoenixSource) AsResponsysSource() (*ResponsysSource, bool) {
65376	return nil, false
65377}
65378
65379// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for PhoenixSource.
65380func (ps PhoenixSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
65381	return nil, false
65382}
65383
65384// AsVerticaSource is the BasicCopySource implementation for PhoenixSource.
65385func (ps PhoenixSource) AsVerticaSource() (*VerticaSource, bool) {
65386	return nil, false
65387}
65388
65389// AsNetezzaSource is the BasicCopySource implementation for PhoenixSource.
65390func (ps PhoenixSource) AsNetezzaSource() (*NetezzaSource, bool) {
65391	return nil, false
65392}
65393
65394// AsZohoSource is the BasicCopySource implementation for PhoenixSource.
65395func (ps PhoenixSource) AsZohoSource() (*ZohoSource, bool) {
65396	return nil, false
65397}
65398
65399// AsXeroSource is the BasicCopySource implementation for PhoenixSource.
65400func (ps PhoenixSource) AsXeroSource() (*XeroSource, bool) {
65401	return nil, false
65402}
65403
65404// AsSquareSource is the BasicCopySource implementation for PhoenixSource.
65405func (ps PhoenixSource) AsSquareSource() (*SquareSource, bool) {
65406	return nil, false
65407}
65408
65409// AsSparkSource is the BasicCopySource implementation for PhoenixSource.
65410func (ps PhoenixSource) AsSparkSource() (*SparkSource, bool) {
65411	return nil, false
65412}
65413
65414// AsShopifySource is the BasicCopySource implementation for PhoenixSource.
65415func (ps PhoenixSource) AsShopifySource() (*ShopifySource, bool) {
65416	return nil, false
65417}
65418
65419// AsServiceNowSource is the BasicCopySource implementation for PhoenixSource.
65420func (ps PhoenixSource) AsServiceNowSource() (*ServiceNowSource, bool) {
65421	return nil, false
65422}
65423
65424// AsQuickBooksSource is the BasicCopySource implementation for PhoenixSource.
65425func (ps PhoenixSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
65426	return nil, false
65427}
65428
65429// AsPrestoSource is the BasicCopySource implementation for PhoenixSource.
65430func (ps PhoenixSource) AsPrestoSource() (*PrestoSource, bool) {
65431	return nil, false
65432}
65433
65434// AsPhoenixSource is the BasicCopySource implementation for PhoenixSource.
65435func (ps PhoenixSource) AsPhoenixSource() (*PhoenixSource, bool) {
65436	return &ps, true
65437}
65438
65439// AsPaypalSource is the BasicCopySource implementation for PhoenixSource.
65440func (ps PhoenixSource) AsPaypalSource() (*PaypalSource, bool) {
65441	return nil, false
65442}
65443
65444// AsMarketoSource is the BasicCopySource implementation for PhoenixSource.
65445func (ps PhoenixSource) AsMarketoSource() (*MarketoSource, bool) {
65446	return nil, false
65447}
65448
65449// AsMariaDBSource is the BasicCopySource implementation for PhoenixSource.
65450func (ps PhoenixSource) AsMariaDBSource() (*MariaDBSource, bool) {
65451	return nil, false
65452}
65453
65454// AsMagentoSource is the BasicCopySource implementation for PhoenixSource.
65455func (ps PhoenixSource) AsMagentoSource() (*MagentoSource, bool) {
65456	return nil, false
65457}
65458
65459// AsJiraSource is the BasicCopySource implementation for PhoenixSource.
65460func (ps PhoenixSource) AsJiraSource() (*JiraSource, bool) {
65461	return nil, false
65462}
65463
65464// AsImpalaSource is the BasicCopySource implementation for PhoenixSource.
65465func (ps PhoenixSource) AsImpalaSource() (*ImpalaSource, bool) {
65466	return nil, false
65467}
65468
65469// AsHubspotSource is the BasicCopySource implementation for PhoenixSource.
65470func (ps PhoenixSource) AsHubspotSource() (*HubspotSource, bool) {
65471	return nil, false
65472}
65473
65474// AsHiveSource is the BasicCopySource implementation for PhoenixSource.
65475func (ps PhoenixSource) AsHiveSource() (*HiveSource, bool) {
65476	return nil, false
65477}
65478
65479// AsHBaseSource is the BasicCopySource implementation for PhoenixSource.
65480func (ps PhoenixSource) AsHBaseSource() (*HBaseSource, bool) {
65481	return nil, false
65482}
65483
65484// AsGreenplumSource is the BasicCopySource implementation for PhoenixSource.
65485func (ps PhoenixSource) AsGreenplumSource() (*GreenplumSource, bool) {
65486	return nil, false
65487}
65488
65489// AsGoogleBigQuerySource is the BasicCopySource implementation for PhoenixSource.
65490func (ps PhoenixSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
65491	return nil, false
65492}
65493
65494// AsEloquaSource is the BasicCopySource implementation for PhoenixSource.
65495func (ps PhoenixSource) AsEloquaSource() (*EloquaSource, bool) {
65496	return nil, false
65497}
65498
65499// AsDrillSource is the BasicCopySource implementation for PhoenixSource.
65500func (ps PhoenixSource) AsDrillSource() (*DrillSource, bool) {
65501	return nil, false
65502}
65503
65504// AsCouchbaseSource is the BasicCopySource implementation for PhoenixSource.
65505func (ps PhoenixSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
65506	return nil, false
65507}
65508
65509// AsConcurSource is the BasicCopySource implementation for PhoenixSource.
65510func (ps PhoenixSource) AsConcurSource() (*ConcurSource, bool) {
65511	return nil, false
65512}
65513
65514// AsAzurePostgreSQLSource is the BasicCopySource implementation for PhoenixSource.
65515func (ps PhoenixSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
65516	return nil, false
65517}
65518
65519// AsAmazonMWSSource is the BasicCopySource implementation for PhoenixSource.
65520func (ps PhoenixSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
65521	return nil, false
65522}
65523
65524// AsHTTPSource is the BasicCopySource implementation for PhoenixSource.
65525func (ps PhoenixSource) AsHTTPSource() (*HTTPSource, bool) {
65526	return nil, false
65527}
65528
65529// AsAzureDataLakeStoreSource is the BasicCopySource implementation for PhoenixSource.
65530func (ps PhoenixSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
65531	return nil, false
65532}
65533
65534// AsMongoDbSource is the BasicCopySource implementation for PhoenixSource.
65535func (ps PhoenixSource) AsMongoDbSource() (*MongoDbSource, bool) {
65536	return nil, false
65537}
65538
65539// AsCassandraSource is the BasicCopySource implementation for PhoenixSource.
65540func (ps PhoenixSource) AsCassandraSource() (*CassandraSource, bool) {
65541	return nil, false
65542}
65543
65544// AsWebSource is the BasicCopySource implementation for PhoenixSource.
65545func (ps PhoenixSource) AsWebSource() (*WebSource, bool) {
65546	return nil, false
65547}
65548
65549// AsOracleSource is the BasicCopySource implementation for PhoenixSource.
65550func (ps PhoenixSource) AsOracleSource() (*OracleSource, bool) {
65551	return nil, false
65552}
65553
65554// AsAzureMySQLSource is the BasicCopySource implementation for PhoenixSource.
65555func (ps PhoenixSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
65556	return nil, false
65557}
65558
65559// AsHdfsSource is the BasicCopySource implementation for PhoenixSource.
65560func (ps PhoenixSource) AsHdfsSource() (*HdfsSource, bool) {
65561	return nil, false
65562}
65563
65564// AsFileSystemSource is the BasicCopySource implementation for PhoenixSource.
65565func (ps PhoenixSource) AsFileSystemSource() (*FileSystemSource, bool) {
65566	return nil, false
65567}
65568
65569// AsSQLDWSource is the BasicCopySource implementation for PhoenixSource.
65570func (ps PhoenixSource) AsSQLDWSource() (*SQLDWSource, bool) {
65571	return nil, false
65572}
65573
65574// AsSQLSource is the BasicCopySource implementation for PhoenixSource.
65575func (ps PhoenixSource) AsSQLSource() (*SQLSource, bool) {
65576	return nil, false
65577}
65578
65579// AsSapEccSource is the BasicCopySource implementation for PhoenixSource.
65580func (ps PhoenixSource) AsSapEccSource() (*SapEccSource, bool) {
65581	return nil, false
65582}
65583
65584// AsSapCloudForCustomerSource is the BasicCopySource implementation for PhoenixSource.
65585func (ps PhoenixSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
65586	return nil, false
65587}
65588
65589// AsSalesforceSource is the BasicCopySource implementation for PhoenixSource.
65590func (ps PhoenixSource) AsSalesforceSource() (*SalesforceSource, bool) {
65591	return nil, false
65592}
65593
65594// AsRelationalSource is the BasicCopySource implementation for PhoenixSource.
65595func (ps PhoenixSource) AsRelationalSource() (*RelationalSource, bool) {
65596	return nil, false
65597}
65598
65599// AsDynamicsSource is the BasicCopySource implementation for PhoenixSource.
65600func (ps PhoenixSource) AsDynamicsSource() (*DynamicsSource, bool) {
65601	return nil, false
65602}
65603
65604// AsDocumentDbCollectionSource is the BasicCopySource implementation for PhoenixSource.
65605func (ps PhoenixSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
65606	return nil, false
65607}
65608
65609// AsBlobSource is the BasicCopySource implementation for PhoenixSource.
65610func (ps PhoenixSource) AsBlobSource() (*BlobSource, bool) {
65611	return nil, false
65612}
65613
65614// AsAzureTableSource is the BasicCopySource implementation for PhoenixSource.
65615func (ps PhoenixSource) AsAzureTableSource() (*AzureTableSource, bool) {
65616	return nil, false
65617}
65618
65619// AsCopySource is the BasicCopySource implementation for PhoenixSource.
65620func (ps PhoenixSource) AsCopySource() (*CopySource, bool) {
65621	return nil, false
65622}
65623
65624// AsBasicCopySource is the BasicCopySource implementation for PhoenixSource.
65625func (ps PhoenixSource) AsBasicCopySource() (BasicCopySource, bool) {
65626	return &ps, true
65627}
65628
65629// Pipeline a data factory pipeline.
65630type Pipeline struct {
65631	// Description - The description of the pipeline.
65632	Description *string `json:"description,omitempty"`
65633	// Activities - List of activities in pipeline.
65634	Activities *[]BasicActivity `json:"activities,omitempty"`
65635	// Parameters - List of parameters for pipeline.
65636	Parameters map[string]*ParameterSpecification `json:"parameters"`
65637	// Concurrency - The max number of concurrent runs for the pipeline.
65638	Concurrency *int32 `json:"concurrency,omitempty"`
65639	// Annotations - List of tags that can be used for describing the Pipeline.
65640	Annotations *[]interface{} `json:"annotations,omitempty"`
65641}
65642
65643// MarshalJSON is the custom marshaler for Pipeline.
65644func (p Pipeline) MarshalJSON() ([]byte, error) {
65645	objectMap := make(map[string]interface{})
65646	if p.Description != nil {
65647		objectMap["description"] = p.Description
65648	}
65649	if p.Activities != nil {
65650		objectMap["activities"] = p.Activities
65651	}
65652	if p.Parameters != nil {
65653		objectMap["parameters"] = p.Parameters
65654	}
65655	if p.Concurrency != nil {
65656		objectMap["concurrency"] = p.Concurrency
65657	}
65658	if p.Annotations != nil {
65659		objectMap["annotations"] = p.Annotations
65660	}
65661	return json.Marshal(objectMap)
65662}
65663
65664// UnmarshalJSON is the custom unmarshaler for Pipeline struct.
65665func (p *Pipeline) UnmarshalJSON(body []byte) error {
65666	var m map[string]*json.RawMessage
65667	err := json.Unmarshal(body, &m)
65668	if err != nil {
65669		return err
65670	}
65671	for k, v := range m {
65672		switch k {
65673		case "description":
65674			if v != nil {
65675				var description string
65676				err = json.Unmarshal(*v, &description)
65677				if err != nil {
65678					return err
65679				}
65680				p.Description = &description
65681			}
65682		case "activities":
65683			if v != nil {
65684				activities, err := unmarshalBasicActivityArray(*v)
65685				if err != nil {
65686					return err
65687				}
65688				p.Activities = &activities
65689			}
65690		case "parameters":
65691			if v != nil {
65692				var parameters map[string]*ParameterSpecification
65693				err = json.Unmarshal(*v, &parameters)
65694				if err != nil {
65695					return err
65696				}
65697				p.Parameters = parameters
65698			}
65699		case "concurrency":
65700			if v != nil {
65701				var concurrency int32
65702				err = json.Unmarshal(*v, &concurrency)
65703				if err != nil {
65704					return err
65705				}
65706				p.Concurrency = &concurrency
65707			}
65708		case "annotations":
65709			if v != nil {
65710				var annotations []interface{}
65711				err = json.Unmarshal(*v, &annotations)
65712				if err != nil {
65713					return err
65714				}
65715				p.Annotations = &annotations
65716			}
65717		}
65718	}
65719
65720	return nil
65721}
65722
65723// PipelineListResponse a list of pipeline resources.
65724type PipelineListResponse struct {
65725	autorest.Response `json:"-"`
65726	// Value - List of pipelines.
65727	Value *[]PipelineResource `json:"value,omitempty"`
65728	// NextLink - The link to the next page of results, if any remaining results exist.
65729	NextLink *string `json:"nextLink,omitempty"`
65730}
65731
65732// PipelineListResponseIterator provides access to a complete listing of PipelineResource values.
65733type PipelineListResponseIterator struct {
65734	i    int
65735	page PipelineListResponsePage
65736}
65737
65738// Next advances to the next value.  If there was an error making
65739// the request the iterator does not advance and the error is returned.
65740func (iter *PipelineListResponseIterator) Next() error {
65741	iter.i++
65742	if iter.i < len(iter.page.Values()) {
65743		return nil
65744	}
65745	err := iter.page.Next()
65746	if err != nil {
65747		iter.i--
65748		return err
65749	}
65750	iter.i = 0
65751	return nil
65752}
65753
65754// NotDone returns true if the enumeration should be started or is not yet complete.
65755func (iter PipelineListResponseIterator) NotDone() bool {
65756	return iter.page.NotDone() && iter.i < len(iter.page.Values())
65757}
65758
65759// Response returns the raw server response from the last page request.
65760func (iter PipelineListResponseIterator) Response() PipelineListResponse {
65761	return iter.page.Response()
65762}
65763
65764// Value returns the current value or a zero-initialized value if the
65765// iterator has advanced beyond the end of the collection.
65766func (iter PipelineListResponseIterator) Value() PipelineResource {
65767	if !iter.page.NotDone() {
65768		return PipelineResource{}
65769	}
65770	return iter.page.Values()[iter.i]
65771}
65772
65773// IsEmpty returns true if the ListResult contains no values.
65774func (plr PipelineListResponse) IsEmpty() bool {
65775	return plr.Value == nil || len(*plr.Value) == 0
65776}
65777
65778// pipelineListResponsePreparer prepares a request to retrieve the next set of results.
65779// It returns nil if no more results exist.
65780func (plr PipelineListResponse) pipelineListResponsePreparer() (*http.Request, error) {
65781	if plr.NextLink == nil || len(to.String(plr.NextLink)) < 1 {
65782		return nil, nil
65783	}
65784	return autorest.Prepare(&http.Request{},
65785		autorest.AsJSON(),
65786		autorest.AsGet(),
65787		autorest.WithBaseURL(to.String(plr.NextLink)))
65788}
65789
65790// PipelineListResponsePage contains a page of PipelineResource values.
65791type PipelineListResponsePage struct {
65792	fn  func(PipelineListResponse) (PipelineListResponse, error)
65793	plr PipelineListResponse
65794}
65795
65796// Next advances to the next page of values.  If there was an error making
65797// the request the page does not advance and the error is returned.
65798func (page *PipelineListResponsePage) Next() error {
65799	next, err := page.fn(page.plr)
65800	if err != nil {
65801		return err
65802	}
65803	page.plr = next
65804	return nil
65805}
65806
65807// NotDone returns true if the page enumeration should be started or is not yet complete.
65808func (page PipelineListResponsePage) NotDone() bool {
65809	return !page.plr.IsEmpty()
65810}
65811
65812// Response returns the raw server response from the last page request.
65813func (page PipelineListResponsePage) Response() PipelineListResponse {
65814	return page.plr
65815}
65816
65817// Values returns the slice of values for the current page or nil if there are no values.
65818func (page PipelineListResponsePage) Values() []PipelineResource {
65819	if page.plr.IsEmpty() {
65820		return nil
65821	}
65822	return *page.plr.Value
65823}
65824
65825// PipelineReference pipeline reference type.
65826type PipelineReference struct {
65827	// Type - Pipeline reference type.
65828	Type *string `json:"type,omitempty"`
65829	// ReferenceName - Reference pipeline name.
65830	ReferenceName *string `json:"referenceName,omitempty"`
65831	// Name - Reference name.
65832	Name *string `json:"name,omitempty"`
65833}
65834
65835// PipelineResource pipeline resource type.
65836type PipelineResource struct {
65837	autorest.Response `json:"-"`
65838	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
65839	AdditionalProperties map[string]interface{} `json:""`
65840	// Pipeline - Properties of the pipeline.
65841	*Pipeline `json:"properties,omitempty"`
65842	// ID - The resource identifier.
65843	ID *string `json:"id,omitempty"`
65844	// Name - The resource name.
65845	Name *string `json:"name,omitempty"`
65846	// Type - The resource type.
65847	Type *string `json:"type,omitempty"`
65848	// Etag - Etag identifies change in the resource.
65849	Etag *string `json:"etag,omitempty"`
65850}
65851
65852// MarshalJSON is the custom marshaler for PipelineResource.
65853func (pr PipelineResource) MarshalJSON() ([]byte, error) {
65854	objectMap := make(map[string]interface{})
65855	if pr.Pipeline != nil {
65856		objectMap["properties"] = pr.Pipeline
65857	}
65858	if pr.ID != nil {
65859		objectMap["id"] = pr.ID
65860	}
65861	if pr.Name != nil {
65862		objectMap["name"] = pr.Name
65863	}
65864	if pr.Type != nil {
65865		objectMap["type"] = pr.Type
65866	}
65867	if pr.Etag != nil {
65868		objectMap["etag"] = pr.Etag
65869	}
65870	for k, v := range pr.AdditionalProperties {
65871		objectMap[k] = v
65872	}
65873	return json.Marshal(objectMap)
65874}
65875
65876// UnmarshalJSON is the custom unmarshaler for PipelineResource struct.
65877func (pr *PipelineResource) UnmarshalJSON(body []byte) error {
65878	var m map[string]*json.RawMessage
65879	err := json.Unmarshal(body, &m)
65880	if err != nil {
65881		return err
65882	}
65883	for k, v := range m {
65884		switch k {
65885		default:
65886			if v != nil {
65887				var additionalProperties interface{}
65888				err = json.Unmarshal(*v, &additionalProperties)
65889				if err != nil {
65890					return err
65891				}
65892				if pr.AdditionalProperties == nil {
65893					pr.AdditionalProperties = make(map[string]interface{})
65894				}
65895				pr.AdditionalProperties[k] = additionalProperties
65896			}
65897		case "properties":
65898			if v != nil {
65899				var pipeline Pipeline
65900				err = json.Unmarshal(*v, &pipeline)
65901				if err != nil {
65902					return err
65903				}
65904				pr.Pipeline = &pipeline
65905			}
65906		case "id":
65907			if v != nil {
65908				var ID string
65909				err = json.Unmarshal(*v, &ID)
65910				if err != nil {
65911					return err
65912				}
65913				pr.ID = &ID
65914			}
65915		case "name":
65916			if v != nil {
65917				var name string
65918				err = json.Unmarshal(*v, &name)
65919				if err != nil {
65920					return err
65921				}
65922				pr.Name = &name
65923			}
65924		case "type":
65925			if v != nil {
65926				var typeVar string
65927				err = json.Unmarshal(*v, &typeVar)
65928				if err != nil {
65929					return err
65930				}
65931				pr.Type = &typeVar
65932			}
65933		case "etag":
65934			if v != nil {
65935				var etag string
65936				err = json.Unmarshal(*v, &etag)
65937				if err != nil {
65938					return err
65939				}
65940				pr.Etag = &etag
65941			}
65942		}
65943	}
65944
65945	return nil
65946}
65947
65948// PipelineRun information about a pipeline run.
65949type PipelineRun struct {
65950	autorest.Response `json:"-"`
65951	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
65952	AdditionalProperties map[string]interface{} `json:""`
65953	// RunID - Identifier of a run.
65954	RunID *string `json:"runId,omitempty"`
65955	// PipelineName - The pipeline name.
65956	PipelineName *string `json:"pipelineName,omitempty"`
65957	// Parameters - The full or partial list of parameter name, value pair used in the pipeline run.
65958	Parameters map[string]*string `json:"parameters"`
65959	// InvokedBy - Entity that started the pipeline run.
65960	InvokedBy *PipelineRunInvokedBy `json:"invokedBy,omitempty"`
65961	// LastUpdated - The last updated timestamp for the pipeline run event in ISO8601 format.
65962	LastUpdated *date.Time `json:"lastUpdated,omitempty"`
65963	// RunStart - The start time of a pipeline run in ISO8601 format.
65964	RunStart *date.Time `json:"runStart,omitempty"`
65965	// RunEnd - The end time of a pipeline run in ISO8601 format.
65966	RunEnd *date.Time `json:"runEnd,omitempty"`
65967	// DurationInMs - The duration of a pipeline run.
65968	DurationInMs *int32 `json:"durationInMs,omitempty"`
65969	// Status - The status of a pipeline run.
65970	Status *string `json:"status,omitempty"`
65971	// Message - The message from a pipeline run.
65972	Message *string `json:"message,omitempty"`
65973}
65974
65975// MarshalJSON is the custom marshaler for PipelineRun.
65976func (pr PipelineRun) MarshalJSON() ([]byte, error) {
65977	objectMap := make(map[string]interface{})
65978	if pr.RunID != nil {
65979		objectMap["runId"] = pr.RunID
65980	}
65981	if pr.PipelineName != nil {
65982		objectMap["pipelineName"] = pr.PipelineName
65983	}
65984	if pr.Parameters != nil {
65985		objectMap["parameters"] = pr.Parameters
65986	}
65987	if pr.InvokedBy != nil {
65988		objectMap["invokedBy"] = pr.InvokedBy
65989	}
65990	if pr.LastUpdated != nil {
65991		objectMap["lastUpdated"] = pr.LastUpdated
65992	}
65993	if pr.RunStart != nil {
65994		objectMap["runStart"] = pr.RunStart
65995	}
65996	if pr.RunEnd != nil {
65997		objectMap["runEnd"] = pr.RunEnd
65998	}
65999	if pr.DurationInMs != nil {
66000		objectMap["durationInMs"] = pr.DurationInMs
66001	}
66002	if pr.Status != nil {
66003		objectMap["status"] = pr.Status
66004	}
66005	if pr.Message != nil {
66006		objectMap["message"] = pr.Message
66007	}
66008	for k, v := range pr.AdditionalProperties {
66009		objectMap[k] = v
66010	}
66011	return json.Marshal(objectMap)
66012}
66013
66014// PipelineRunFilterParameters query parameters for listing pipeline runs.
66015type PipelineRunFilterParameters struct {
66016	// ContinuationToken - The continuation token for getting the next page of results. Null for first page.
66017	ContinuationToken *string `json:"continuationToken,omitempty"`
66018	// LastUpdatedAfter - The time at or after which the pipeline run event was updated in 'ISO 8601' format.
66019	LastUpdatedAfter *date.Time `json:"lastUpdatedAfter,omitempty"`
66020	// LastUpdatedBefore - The time at or before which the pipeline run event was updated in 'ISO 8601' format.
66021	LastUpdatedBefore *date.Time `json:"lastUpdatedBefore,omitempty"`
66022	// Filters - List of filters.
66023	Filters *[]PipelineRunQueryFilter `json:"filters,omitempty"`
66024	// OrderBy - List of OrderBy option.
66025	OrderBy *[]PipelineRunQueryOrderBy `json:"orderBy,omitempty"`
66026}
66027
66028// PipelineRunInvokedBy provides entity name and id that started the pipeline run.
66029type PipelineRunInvokedBy struct {
66030	// Name - Name of the entity that started the pipeline run.
66031	Name *string `json:"name,omitempty"`
66032	// ID - The ID of the entity that started the run.
66033	ID *string `json:"id,omitempty"`
66034}
66035
66036// PipelineRunQueryFilter query filter option for listing pipeline runs.
66037type PipelineRunQueryFilter struct {
66038	// Operand - Parameter name to be used for filter. Possible values include: 'PipelineName', 'Status', 'RunStart', 'RunEnd'
66039	Operand PipelineRunQueryFilterOperand `json:"operand,omitempty"`
66040	// Operator - Operator to be used for filter. Possible values include: 'Equals', 'NotEquals', 'In', 'NotIn'
66041	Operator PipelineRunQueryFilterOperator `json:"operator,omitempty"`
66042	// Values - List of filter values.
66043	Values *[]string `json:"values,omitempty"`
66044}
66045
66046// PipelineRunQueryOrderBy an object to provide order by options for listing pipeline runs.
66047type PipelineRunQueryOrderBy struct {
66048	// OrderBy - Parameter name to be used for order by. Possible values include: 'PipelineRunQueryOrderByFieldRunStart', 'PipelineRunQueryOrderByFieldRunEnd'
66049	OrderBy PipelineRunQueryOrderByField `json:"orderBy,omitempty"`
66050	// Order - Sorting order of the parameter. Possible values include: 'ASC', 'DESC'
66051	Order PipelineRunQueryOrder `json:"order,omitempty"`
66052}
66053
66054// PipelineRunQueryResponse a list pipeline runs.
66055type PipelineRunQueryResponse struct {
66056	autorest.Response `json:"-"`
66057	// Value - List of pipeline runs.
66058	Value *[]PipelineRun `json:"value,omitempty"`
66059	// ContinuationToken - The continuation token for getting the next page of results, if any remaining results exist, null otherwise.
66060	ContinuationToken *string `json:"continuationToken,omitempty"`
66061}
66062
66063// PolybaseSettings polyBase settings.
66064type PolybaseSettings struct {
66065	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
66066	AdditionalProperties map[string]interface{} `json:""`
66067	// RejectType - Reject type. Possible values include: 'Value', 'Percentage'
66068	RejectType PolybaseSettingsRejectType `json:"rejectType,omitempty"`
66069	// RejectValue - Specifies the value or the percentage of rows that can be rejected before the query fails. Type: number (or Expression with resultType number), minimum: 0.
66070	RejectValue interface{} `json:"rejectValue,omitempty"`
66071	// RejectSampleValue - Determines the number of rows to attempt to retrieve before the PolyBase recalculates the percentage of rejected rows. Type: integer (or Expression with resultType integer), minimum: 0.
66072	RejectSampleValue interface{} `json:"rejectSampleValue,omitempty"`
66073	// UseTypeDefault - Specifies how to handle missing values in delimited text files when PolyBase retrieves data from the text file. Type: boolean (or Expression with resultType boolean).
66074	UseTypeDefault interface{} `json:"useTypeDefault,omitempty"`
66075}
66076
66077// MarshalJSON is the custom marshaler for PolybaseSettings.
66078func (ps PolybaseSettings) MarshalJSON() ([]byte, error) {
66079	objectMap := make(map[string]interface{})
66080	if ps.RejectType != "" {
66081		objectMap["rejectType"] = ps.RejectType
66082	}
66083	objectMap["rejectValue"] = ps.RejectValue
66084	objectMap["rejectSampleValue"] = ps.RejectSampleValue
66085	objectMap["useTypeDefault"] = ps.UseTypeDefault
66086	for k, v := range ps.AdditionalProperties {
66087		objectMap[k] = v
66088	}
66089	return json.Marshal(objectMap)
66090}
66091
66092// PostgreSQLLinkedService linked service for PostgreSQL data source.
66093type PostgreSQLLinkedService struct {
66094	// PostgreSQLLinkedServiceTypeProperties - PostgreSQL linked service properties.
66095	*PostgreSQLLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
66096	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
66097	AdditionalProperties map[string]interface{} `json:""`
66098	// ConnectVia - The integration runtime reference.
66099	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
66100	// Description - Linked service description.
66101	Description *string `json:"description,omitempty"`
66102	// Parameters - Parameters for linked service.
66103	Parameters map[string]*ParameterSpecification `json:"parameters"`
66104	// Annotations - List of tags that can be used for describing the Dataset.
66105	Annotations *[]interface{} `json:"annotations,omitempty"`
66106	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
66107	Type TypeBasicLinkedService `json:"type,omitempty"`
66108}
66109
66110// MarshalJSON is the custom marshaler for PostgreSQLLinkedService.
66111func (psls PostgreSQLLinkedService) MarshalJSON() ([]byte, error) {
66112	psls.Type = TypePostgreSQL
66113	objectMap := make(map[string]interface{})
66114	if psls.PostgreSQLLinkedServiceTypeProperties != nil {
66115		objectMap["typeProperties"] = psls.PostgreSQLLinkedServiceTypeProperties
66116	}
66117	if psls.ConnectVia != nil {
66118		objectMap["connectVia"] = psls.ConnectVia
66119	}
66120	if psls.Description != nil {
66121		objectMap["description"] = psls.Description
66122	}
66123	if psls.Parameters != nil {
66124		objectMap["parameters"] = psls.Parameters
66125	}
66126	if psls.Annotations != nil {
66127		objectMap["annotations"] = psls.Annotations
66128	}
66129	if psls.Type != "" {
66130		objectMap["type"] = psls.Type
66131	}
66132	for k, v := range psls.AdditionalProperties {
66133		objectMap[k] = v
66134	}
66135	return json.Marshal(objectMap)
66136}
66137
66138// AsResponsysLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66139func (psls PostgreSQLLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
66140	return nil, false
66141}
66142
66143// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66144func (psls PostgreSQLLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
66145	return nil, false
66146}
66147
66148// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66149func (psls PostgreSQLLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
66150	return nil, false
66151}
66152
66153// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66154func (psls PostgreSQLLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
66155	return nil, false
66156}
66157
66158// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66159func (psls PostgreSQLLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
66160	return nil, false
66161}
66162
66163// AsNetezzaLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66164func (psls PostgreSQLLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
66165	return nil, false
66166}
66167
66168// AsVerticaLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66169func (psls PostgreSQLLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
66170	return nil, false
66171}
66172
66173// AsZohoLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66174func (psls PostgreSQLLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
66175	return nil, false
66176}
66177
66178// AsXeroLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66179func (psls PostgreSQLLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
66180	return nil, false
66181}
66182
66183// AsSquareLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66184func (psls PostgreSQLLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
66185	return nil, false
66186}
66187
66188// AsSparkLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66189func (psls PostgreSQLLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
66190	return nil, false
66191}
66192
66193// AsShopifyLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66194func (psls PostgreSQLLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
66195	return nil, false
66196}
66197
66198// AsServiceNowLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66199func (psls PostgreSQLLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
66200	return nil, false
66201}
66202
66203// AsQuickBooksLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66204func (psls PostgreSQLLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
66205	return nil, false
66206}
66207
66208// AsPrestoLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66209func (psls PostgreSQLLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
66210	return nil, false
66211}
66212
66213// AsPhoenixLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66214func (psls PostgreSQLLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
66215	return nil, false
66216}
66217
66218// AsPaypalLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66219func (psls PostgreSQLLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
66220	return nil, false
66221}
66222
66223// AsMarketoLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66224func (psls PostgreSQLLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
66225	return nil, false
66226}
66227
66228// AsMariaDBLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66229func (psls PostgreSQLLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
66230	return nil, false
66231}
66232
66233// AsMagentoLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66234func (psls PostgreSQLLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
66235	return nil, false
66236}
66237
66238// AsJiraLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66239func (psls PostgreSQLLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
66240	return nil, false
66241}
66242
66243// AsImpalaLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66244func (psls PostgreSQLLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
66245	return nil, false
66246}
66247
66248// AsHubspotLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66249func (psls PostgreSQLLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
66250	return nil, false
66251}
66252
66253// AsHiveLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66254func (psls PostgreSQLLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
66255	return nil, false
66256}
66257
66258// AsHBaseLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66259func (psls PostgreSQLLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
66260	return nil, false
66261}
66262
66263// AsGreenplumLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66264func (psls PostgreSQLLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
66265	return nil, false
66266}
66267
66268// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66269func (psls PostgreSQLLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
66270	return nil, false
66271}
66272
66273// AsEloquaLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66274func (psls PostgreSQLLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
66275	return nil, false
66276}
66277
66278// AsDrillLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66279func (psls PostgreSQLLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
66280	return nil, false
66281}
66282
66283// AsCouchbaseLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66284func (psls PostgreSQLLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
66285	return nil, false
66286}
66287
66288// AsConcurLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66289func (psls PostgreSQLLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
66290	return nil, false
66291}
66292
66293// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66294func (psls PostgreSQLLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
66295	return nil, false
66296}
66297
66298// AsAmazonMWSLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66299func (psls PostgreSQLLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
66300	return nil, false
66301}
66302
66303// AsSapHanaLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66304func (psls PostgreSQLLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
66305	return nil, false
66306}
66307
66308// AsSapBWLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66309func (psls PostgreSQLLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
66310	return nil, false
66311}
66312
66313// AsSftpServerLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66314func (psls PostgreSQLLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
66315	return nil, false
66316}
66317
66318// AsFtpServerLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66319func (psls PostgreSQLLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
66320	return nil, false
66321}
66322
66323// AsHTTPLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66324func (psls PostgreSQLLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
66325	return nil, false
66326}
66327
66328// AsAzureSearchLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66329func (psls PostgreSQLLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
66330	return nil, false
66331}
66332
66333// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66334func (psls PostgreSQLLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
66335	return nil, false
66336}
66337
66338// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66339func (psls PostgreSQLLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
66340	return nil, false
66341}
66342
66343// AsAmazonS3LinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66344func (psls PostgreSQLLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
66345	return nil, false
66346}
66347
66348// AsSapEccLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66349func (psls PostgreSQLLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
66350	return nil, false
66351}
66352
66353// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66354func (psls PostgreSQLLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
66355	return nil, false
66356}
66357
66358// AsSalesforceLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66359func (psls PostgreSQLLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
66360	return nil, false
66361}
66362
66363// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66364func (psls PostgreSQLLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
66365	return nil, false
66366}
66367
66368// AsMongoDbLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66369func (psls PostgreSQLLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
66370	return nil, false
66371}
66372
66373// AsCassandraLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66374func (psls PostgreSQLLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
66375	return nil, false
66376}
66377
66378// AsWebLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66379func (psls PostgreSQLLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
66380	return nil, false
66381}
66382
66383// AsODataLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66384func (psls PostgreSQLLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
66385	return nil, false
66386}
66387
66388// AsHdfsLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66389func (psls PostgreSQLLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
66390	return nil, false
66391}
66392
66393// AsOdbcLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66394func (psls PostgreSQLLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
66395	return nil, false
66396}
66397
66398// AsAzureMLLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66399func (psls PostgreSQLLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
66400	return nil, false
66401}
66402
66403// AsTeradataLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66404func (psls PostgreSQLLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
66405	return nil, false
66406}
66407
66408// AsDb2LinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66409func (psls PostgreSQLLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
66410	return nil, false
66411}
66412
66413// AsSybaseLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66414func (psls PostgreSQLLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
66415	return nil, false
66416}
66417
66418// AsPostgreSQLLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66419func (psls PostgreSQLLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
66420	return &psls, true
66421}
66422
66423// AsMySQLLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66424func (psls PostgreSQLLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
66425	return nil, false
66426}
66427
66428// AsAzureMySQLLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66429func (psls PostgreSQLLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
66430	return nil, false
66431}
66432
66433// AsOracleLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66434func (psls PostgreSQLLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
66435	return nil, false
66436}
66437
66438// AsFileServerLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66439func (psls PostgreSQLLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
66440	return nil, false
66441}
66442
66443// AsHDInsightLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66444func (psls PostgreSQLLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
66445	return nil, false
66446}
66447
66448// AsDynamicsLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66449func (psls PostgreSQLLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
66450	return nil, false
66451}
66452
66453// AsCosmosDbLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66454func (psls PostgreSQLLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
66455	return nil, false
66456}
66457
66458// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66459func (psls PostgreSQLLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
66460	return nil, false
66461}
66462
66463// AsAzureBatchLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66464func (psls PostgreSQLLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
66465	return nil, false
66466}
66467
66468// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66469func (psls PostgreSQLLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
66470	return nil, false
66471}
66472
66473// AsSQLServerLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66474func (psls PostgreSQLLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
66475	return nil, false
66476}
66477
66478// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66479func (psls PostgreSQLLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
66480	return nil, false
66481}
66482
66483// AsAzureStorageLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66484func (psls PostgreSQLLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
66485	return nil, false
66486}
66487
66488// AsLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66489func (psls PostgreSQLLinkedService) AsLinkedService() (*LinkedService, bool) {
66490	return nil, false
66491}
66492
66493// AsBasicLinkedService is the BasicLinkedService implementation for PostgreSQLLinkedService.
66494func (psls PostgreSQLLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
66495	return &psls, true
66496}
66497
66498// UnmarshalJSON is the custom unmarshaler for PostgreSQLLinkedService struct.
66499func (psls *PostgreSQLLinkedService) UnmarshalJSON(body []byte) error {
66500	var m map[string]*json.RawMessage
66501	err := json.Unmarshal(body, &m)
66502	if err != nil {
66503		return err
66504	}
66505	for k, v := range m {
66506		switch k {
66507		case "typeProperties":
66508			if v != nil {
66509				var postgreSQLLinkedServiceTypeProperties PostgreSQLLinkedServiceTypeProperties
66510				err = json.Unmarshal(*v, &postgreSQLLinkedServiceTypeProperties)
66511				if err != nil {
66512					return err
66513				}
66514				psls.PostgreSQLLinkedServiceTypeProperties = &postgreSQLLinkedServiceTypeProperties
66515			}
66516		default:
66517			if v != nil {
66518				var additionalProperties interface{}
66519				err = json.Unmarshal(*v, &additionalProperties)
66520				if err != nil {
66521					return err
66522				}
66523				if psls.AdditionalProperties == nil {
66524					psls.AdditionalProperties = make(map[string]interface{})
66525				}
66526				psls.AdditionalProperties[k] = additionalProperties
66527			}
66528		case "connectVia":
66529			if v != nil {
66530				var connectVia IntegrationRuntimeReference
66531				err = json.Unmarshal(*v, &connectVia)
66532				if err != nil {
66533					return err
66534				}
66535				psls.ConnectVia = &connectVia
66536			}
66537		case "description":
66538			if v != nil {
66539				var description string
66540				err = json.Unmarshal(*v, &description)
66541				if err != nil {
66542					return err
66543				}
66544				psls.Description = &description
66545			}
66546		case "parameters":
66547			if v != nil {
66548				var parameters map[string]*ParameterSpecification
66549				err = json.Unmarshal(*v, &parameters)
66550				if err != nil {
66551					return err
66552				}
66553				psls.Parameters = parameters
66554			}
66555		case "annotations":
66556			if v != nil {
66557				var annotations []interface{}
66558				err = json.Unmarshal(*v, &annotations)
66559				if err != nil {
66560					return err
66561				}
66562				psls.Annotations = &annotations
66563			}
66564		case "type":
66565			if v != nil {
66566				var typeVar TypeBasicLinkedService
66567				err = json.Unmarshal(*v, &typeVar)
66568				if err != nil {
66569					return err
66570				}
66571				psls.Type = typeVar
66572			}
66573		}
66574	}
66575
66576	return nil
66577}
66578
66579// PostgreSQLLinkedServiceTypeProperties postgreSQL linked service properties.
66580type PostgreSQLLinkedServiceTypeProperties struct {
66581	// Server - Server name for connection. Type: string (or Expression with resultType string).
66582	Server interface{} `json:"server,omitempty"`
66583	// Database - Database name for connection. Type: string (or Expression with resultType string).
66584	Database interface{} `json:"database,omitempty"`
66585	// Schema - Schema name for connection. Type: string (or Expression with resultType string).
66586	Schema interface{} `json:"schema,omitempty"`
66587	// Username - Username for authentication. Type: string (or Expression with resultType string).
66588	Username interface{} `json:"username,omitempty"`
66589	// Password - Password for authentication.
66590	Password BasicSecretBase `json:"password,omitempty"`
66591	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
66592	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
66593}
66594
66595// UnmarshalJSON is the custom unmarshaler for PostgreSQLLinkedServiceTypeProperties struct.
66596func (pslstp *PostgreSQLLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
66597	var m map[string]*json.RawMessage
66598	err := json.Unmarshal(body, &m)
66599	if err != nil {
66600		return err
66601	}
66602	for k, v := range m {
66603		switch k {
66604		case "server":
66605			if v != nil {
66606				var server interface{}
66607				err = json.Unmarshal(*v, &server)
66608				if err != nil {
66609					return err
66610				}
66611				pslstp.Server = server
66612			}
66613		case "database":
66614			if v != nil {
66615				var databaseVar interface{}
66616				err = json.Unmarshal(*v, &databaseVar)
66617				if err != nil {
66618					return err
66619				}
66620				pslstp.Database = databaseVar
66621			}
66622		case "schema":
66623			if v != nil {
66624				var schema interface{}
66625				err = json.Unmarshal(*v, &schema)
66626				if err != nil {
66627					return err
66628				}
66629				pslstp.Schema = schema
66630			}
66631		case "username":
66632			if v != nil {
66633				var username interface{}
66634				err = json.Unmarshal(*v, &username)
66635				if err != nil {
66636					return err
66637				}
66638				pslstp.Username = username
66639			}
66640		case "password":
66641			if v != nil {
66642				password, err := unmarshalBasicSecretBase(*v)
66643				if err != nil {
66644					return err
66645				}
66646				pslstp.Password = password
66647			}
66648		case "encryptedCredential":
66649			if v != nil {
66650				var encryptedCredential interface{}
66651				err = json.Unmarshal(*v, &encryptedCredential)
66652				if err != nil {
66653					return err
66654				}
66655				pslstp.EncryptedCredential = encryptedCredential
66656			}
66657		}
66658	}
66659
66660	return nil
66661}
66662
66663// PrestoLinkedService presto server linked service.
66664type PrestoLinkedService struct {
66665	// PrestoLinkedServiceTypeProperties - Presto server linked service properties.
66666	*PrestoLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
66667	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
66668	AdditionalProperties map[string]interface{} `json:""`
66669	// ConnectVia - The integration runtime reference.
66670	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
66671	// Description - Linked service description.
66672	Description *string `json:"description,omitempty"`
66673	// Parameters - Parameters for linked service.
66674	Parameters map[string]*ParameterSpecification `json:"parameters"`
66675	// Annotations - List of tags that can be used for describing the Dataset.
66676	Annotations *[]interface{} `json:"annotations,omitempty"`
66677	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
66678	Type TypeBasicLinkedService `json:"type,omitempty"`
66679}
66680
66681// MarshalJSON is the custom marshaler for PrestoLinkedService.
66682func (pls PrestoLinkedService) MarshalJSON() ([]byte, error) {
66683	pls.Type = TypePresto
66684	objectMap := make(map[string]interface{})
66685	if pls.PrestoLinkedServiceTypeProperties != nil {
66686		objectMap["typeProperties"] = pls.PrestoLinkedServiceTypeProperties
66687	}
66688	if pls.ConnectVia != nil {
66689		objectMap["connectVia"] = pls.ConnectVia
66690	}
66691	if pls.Description != nil {
66692		objectMap["description"] = pls.Description
66693	}
66694	if pls.Parameters != nil {
66695		objectMap["parameters"] = pls.Parameters
66696	}
66697	if pls.Annotations != nil {
66698		objectMap["annotations"] = pls.Annotations
66699	}
66700	if pls.Type != "" {
66701		objectMap["type"] = pls.Type
66702	}
66703	for k, v := range pls.AdditionalProperties {
66704		objectMap[k] = v
66705	}
66706	return json.Marshal(objectMap)
66707}
66708
66709// AsResponsysLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66710func (pls PrestoLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
66711	return nil, false
66712}
66713
66714// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66715func (pls PrestoLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
66716	return nil, false
66717}
66718
66719// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66720func (pls PrestoLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
66721	return nil, false
66722}
66723
66724// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66725func (pls PrestoLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
66726	return nil, false
66727}
66728
66729// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66730func (pls PrestoLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
66731	return nil, false
66732}
66733
66734// AsNetezzaLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66735func (pls PrestoLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
66736	return nil, false
66737}
66738
66739// AsVerticaLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66740func (pls PrestoLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
66741	return nil, false
66742}
66743
66744// AsZohoLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66745func (pls PrestoLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
66746	return nil, false
66747}
66748
66749// AsXeroLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66750func (pls PrestoLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
66751	return nil, false
66752}
66753
66754// AsSquareLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66755func (pls PrestoLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
66756	return nil, false
66757}
66758
66759// AsSparkLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66760func (pls PrestoLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
66761	return nil, false
66762}
66763
66764// AsShopifyLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66765func (pls PrestoLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
66766	return nil, false
66767}
66768
66769// AsServiceNowLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66770func (pls PrestoLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
66771	return nil, false
66772}
66773
66774// AsQuickBooksLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66775func (pls PrestoLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
66776	return nil, false
66777}
66778
66779// AsPrestoLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66780func (pls PrestoLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
66781	return &pls, true
66782}
66783
66784// AsPhoenixLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66785func (pls PrestoLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
66786	return nil, false
66787}
66788
66789// AsPaypalLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66790func (pls PrestoLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
66791	return nil, false
66792}
66793
66794// AsMarketoLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66795func (pls PrestoLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
66796	return nil, false
66797}
66798
66799// AsMariaDBLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66800func (pls PrestoLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
66801	return nil, false
66802}
66803
66804// AsMagentoLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66805func (pls PrestoLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
66806	return nil, false
66807}
66808
66809// AsJiraLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66810func (pls PrestoLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
66811	return nil, false
66812}
66813
66814// AsImpalaLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66815func (pls PrestoLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
66816	return nil, false
66817}
66818
66819// AsHubspotLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66820func (pls PrestoLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
66821	return nil, false
66822}
66823
66824// AsHiveLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66825func (pls PrestoLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
66826	return nil, false
66827}
66828
66829// AsHBaseLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66830func (pls PrestoLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
66831	return nil, false
66832}
66833
66834// AsGreenplumLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66835func (pls PrestoLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
66836	return nil, false
66837}
66838
66839// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66840func (pls PrestoLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
66841	return nil, false
66842}
66843
66844// AsEloquaLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66845func (pls PrestoLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
66846	return nil, false
66847}
66848
66849// AsDrillLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66850func (pls PrestoLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
66851	return nil, false
66852}
66853
66854// AsCouchbaseLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66855func (pls PrestoLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
66856	return nil, false
66857}
66858
66859// AsConcurLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66860func (pls PrestoLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
66861	return nil, false
66862}
66863
66864// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66865func (pls PrestoLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
66866	return nil, false
66867}
66868
66869// AsAmazonMWSLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66870func (pls PrestoLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
66871	return nil, false
66872}
66873
66874// AsSapHanaLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66875func (pls PrestoLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
66876	return nil, false
66877}
66878
66879// AsSapBWLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66880func (pls PrestoLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
66881	return nil, false
66882}
66883
66884// AsSftpServerLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66885func (pls PrestoLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
66886	return nil, false
66887}
66888
66889// AsFtpServerLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66890func (pls PrestoLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
66891	return nil, false
66892}
66893
66894// AsHTTPLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66895func (pls PrestoLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
66896	return nil, false
66897}
66898
66899// AsAzureSearchLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66900func (pls PrestoLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
66901	return nil, false
66902}
66903
66904// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66905func (pls PrestoLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
66906	return nil, false
66907}
66908
66909// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66910func (pls PrestoLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
66911	return nil, false
66912}
66913
66914// AsAmazonS3LinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66915func (pls PrestoLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
66916	return nil, false
66917}
66918
66919// AsSapEccLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66920func (pls PrestoLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
66921	return nil, false
66922}
66923
66924// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66925func (pls PrestoLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
66926	return nil, false
66927}
66928
66929// AsSalesforceLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66930func (pls PrestoLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
66931	return nil, false
66932}
66933
66934// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66935func (pls PrestoLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
66936	return nil, false
66937}
66938
66939// AsMongoDbLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66940func (pls PrestoLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
66941	return nil, false
66942}
66943
66944// AsCassandraLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66945func (pls PrestoLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
66946	return nil, false
66947}
66948
66949// AsWebLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66950func (pls PrestoLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
66951	return nil, false
66952}
66953
66954// AsODataLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66955func (pls PrestoLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
66956	return nil, false
66957}
66958
66959// AsHdfsLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66960func (pls PrestoLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
66961	return nil, false
66962}
66963
66964// AsOdbcLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66965func (pls PrestoLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
66966	return nil, false
66967}
66968
66969// AsAzureMLLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66970func (pls PrestoLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
66971	return nil, false
66972}
66973
66974// AsTeradataLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66975func (pls PrestoLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
66976	return nil, false
66977}
66978
66979// AsDb2LinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66980func (pls PrestoLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
66981	return nil, false
66982}
66983
66984// AsSybaseLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66985func (pls PrestoLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
66986	return nil, false
66987}
66988
66989// AsPostgreSQLLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66990func (pls PrestoLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
66991	return nil, false
66992}
66993
66994// AsMySQLLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
66995func (pls PrestoLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
66996	return nil, false
66997}
66998
66999// AsAzureMySQLLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67000func (pls PrestoLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
67001	return nil, false
67002}
67003
67004// AsOracleLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67005func (pls PrestoLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
67006	return nil, false
67007}
67008
67009// AsFileServerLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67010func (pls PrestoLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
67011	return nil, false
67012}
67013
67014// AsHDInsightLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67015func (pls PrestoLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
67016	return nil, false
67017}
67018
67019// AsDynamicsLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67020func (pls PrestoLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
67021	return nil, false
67022}
67023
67024// AsCosmosDbLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67025func (pls PrestoLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
67026	return nil, false
67027}
67028
67029// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67030func (pls PrestoLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
67031	return nil, false
67032}
67033
67034// AsAzureBatchLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67035func (pls PrestoLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
67036	return nil, false
67037}
67038
67039// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67040func (pls PrestoLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
67041	return nil, false
67042}
67043
67044// AsSQLServerLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67045func (pls PrestoLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
67046	return nil, false
67047}
67048
67049// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67050func (pls PrestoLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
67051	return nil, false
67052}
67053
67054// AsAzureStorageLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67055func (pls PrestoLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
67056	return nil, false
67057}
67058
67059// AsLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67060func (pls PrestoLinkedService) AsLinkedService() (*LinkedService, bool) {
67061	return nil, false
67062}
67063
67064// AsBasicLinkedService is the BasicLinkedService implementation for PrestoLinkedService.
67065func (pls PrestoLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
67066	return &pls, true
67067}
67068
67069// UnmarshalJSON is the custom unmarshaler for PrestoLinkedService struct.
67070func (pls *PrestoLinkedService) UnmarshalJSON(body []byte) error {
67071	var m map[string]*json.RawMessage
67072	err := json.Unmarshal(body, &m)
67073	if err != nil {
67074		return err
67075	}
67076	for k, v := range m {
67077		switch k {
67078		case "typeProperties":
67079			if v != nil {
67080				var prestoLinkedServiceTypeProperties PrestoLinkedServiceTypeProperties
67081				err = json.Unmarshal(*v, &prestoLinkedServiceTypeProperties)
67082				if err != nil {
67083					return err
67084				}
67085				pls.PrestoLinkedServiceTypeProperties = &prestoLinkedServiceTypeProperties
67086			}
67087		default:
67088			if v != nil {
67089				var additionalProperties interface{}
67090				err = json.Unmarshal(*v, &additionalProperties)
67091				if err != nil {
67092					return err
67093				}
67094				if pls.AdditionalProperties == nil {
67095					pls.AdditionalProperties = make(map[string]interface{})
67096				}
67097				pls.AdditionalProperties[k] = additionalProperties
67098			}
67099		case "connectVia":
67100			if v != nil {
67101				var connectVia IntegrationRuntimeReference
67102				err = json.Unmarshal(*v, &connectVia)
67103				if err != nil {
67104					return err
67105				}
67106				pls.ConnectVia = &connectVia
67107			}
67108		case "description":
67109			if v != nil {
67110				var description string
67111				err = json.Unmarshal(*v, &description)
67112				if err != nil {
67113					return err
67114				}
67115				pls.Description = &description
67116			}
67117		case "parameters":
67118			if v != nil {
67119				var parameters map[string]*ParameterSpecification
67120				err = json.Unmarshal(*v, &parameters)
67121				if err != nil {
67122					return err
67123				}
67124				pls.Parameters = parameters
67125			}
67126		case "annotations":
67127			if v != nil {
67128				var annotations []interface{}
67129				err = json.Unmarshal(*v, &annotations)
67130				if err != nil {
67131					return err
67132				}
67133				pls.Annotations = &annotations
67134			}
67135		case "type":
67136			if v != nil {
67137				var typeVar TypeBasicLinkedService
67138				err = json.Unmarshal(*v, &typeVar)
67139				if err != nil {
67140					return err
67141				}
67142				pls.Type = typeVar
67143			}
67144		}
67145	}
67146
67147	return nil
67148}
67149
67150// PrestoLinkedServiceTypeProperties presto server linked service properties.
67151type PrestoLinkedServiceTypeProperties struct {
67152	// Host - The IP address or host name of the Presto server. (i.e. 192.168.222.160)
67153	Host interface{} `json:"host,omitempty"`
67154	// ServerVersion - The version of the Presto server. (i.e. 0.148-t)
67155	ServerVersion interface{} `json:"serverVersion,omitempty"`
67156	// Catalog - The catalog context for all request against the server.
67157	Catalog interface{} `json:"catalog,omitempty"`
67158	// Port - The TCP port that the Presto server uses to listen for client connections. The default value is 8080.
67159	Port interface{} `json:"port,omitempty"`
67160	// AuthenticationType - The authentication mechanism used to connect to the Presto server. Possible values include: 'PrestoAuthenticationTypeAnonymous', 'PrestoAuthenticationTypeLDAP'
67161	AuthenticationType PrestoAuthenticationType `json:"authenticationType,omitempty"`
67162	// Username - The user name used to connect to the Presto server.
67163	Username interface{} `json:"username,omitempty"`
67164	// Password - The password corresponding to the user name.
67165	Password BasicSecretBase `json:"password,omitempty"`
67166	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
67167	EnableSsl interface{} `json:"enableSsl,omitempty"`
67168	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
67169	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
67170	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
67171	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
67172	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
67173	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
67174	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
67175	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
67176	// TimeZoneID - The local time zone used by the connection. Valid values for this option are specified in the IANA Time Zone Database. The default value is the system time zone.
67177	TimeZoneID interface{} `json:"timeZoneID,omitempty"`
67178	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
67179	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
67180}
67181
67182// UnmarshalJSON is the custom unmarshaler for PrestoLinkedServiceTypeProperties struct.
67183func (plstp *PrestoLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
67184	var m map[string]*json.RawMessage
67185	err := json.Unmarshal(body, &m)
67186	if err != nil {
67187		return err
67188	}
67189	for k, v := range m {
67190		switch k {
67191		case "host":
67192			if v != nil {
67193				var host interface{}
67194				err = json.Unmarshal(*v, &host)
67195				if err != nil {
67196					return err
67197				}
67198				plstp.Host = host
67199			}
67200		case "serverVersion":
67201			if v != nil {
67202				var serverVersion interface{}
67203				err = json.Unmarshal(*v, &serverVersion)
67204				if err != nil {
67205					return err
67206				}
67207				plstp.ServerVersion = serverVersion
67208			}
67209		case "catalog":
67210			if v != nil {
67211				var catalog interface{}
67212				err = json.Unmarshal(*v, &catalog)
67213				if err != nil {
67214					return err
67215				}
67216				plstp.Catalog = catalog
67217			}
67218		case "port":
67219			if v != nil {
67220				var port interface{}
67221				err = json.Unmarshal(*v, &port)
67222				if err != nil {
67223					return err
67224				}
67225				plstp.Port = port
67226			}
67227		case "authenticationType":
67228			if v != nil {
67229				var authenticationType PrestoAuthenticationType
67230				err = json.Unmarshal(*v, &authenticationType)
67231				if err != nil {
67232					return err
67233				}
67234				plstp.AuthenticationType = authenticationType
67235			}
67236		case "username":
67237			if v != nil {
67238				var username interface{}
67239				err = json.Unmarshal(*v, &username)
67240				if err != nil {
67241					return err
67242				}
67243				plstp.Username = username
67244			}
67245		case "password":
67246			if v != nil {
67247				password, err := unmarshalBasicSecretBase(*v)
67248				if err != nil {
67249					return err
67250				}
67251				plstp.Password = password
67252			}
67253		case "enableSsl":
67254			if v != nil {
67255				var enableSsl interface{}
67256				err = json.Unmarshal(*v, &enableSsl)
67257				if err != nil {
67258					return err
67259				}
67260				plstp.EnableSsl = enableSsl
67261			}
67262		case "trustedCertPath":
67263			if v != nil {
67264				var trustedCertPath interface{}
67265				err = json.Unmarshal(*v, &trustedCertPath)
67266				if err != nil {
67267					return err
67268				}
67269				plstp.TrustedCertPath = trustedCertPath
67270			}
67271		case "useSystemTrustStore":
67272			if v != nil {
67273				var useSystemTrustStore interface{}
67274				err = json.Unmarshal(*v, &useSystemTrustStore)
67275				if err != nil {
67276					return err
67277				}
67278				plstp.UseSystemTrustStore = useSystemTrustStore
67279			}
67280		case "allowHostNameCNMismatch":
67281			if v != nil {
67282				var allowHostNameCNMismatch interface{}
67283				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
67284				if err != nil {
67285					return err
67286				}
67287				plstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
67288			}
67289		case "allowSelfSignedServerCert":
67290			if v != nil {
67291				var allowSelfSignedServerCert interface{}
67292				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
67293				if err != nil {
67294					return err
67295				}
67296				plstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
67297			}
67298		case "timeZoneID":
67299			if v != nil {
67300				var timeZoneID interface{}
67301				err = json.Unmarshal(*v, &timeZoneID)
67302				if err != nil {
67303					return err
67304				}
67305				plstp.TimeZoneID = timeZoneID
67306			}
67307		case "encryptedCredential":
67308			if v != nil {
67309				var encryptedCredential interface{}
67310				err = json.Unmarshal(*v, &encryptedCredential)
67311				if err != nil {
67312					return err
67313				}
67314				plstp.EncryptedCredential = encryptedCredential
67315			}
67316		}
67317	}
67318
67319	return nil
67320}
67321
67322// PrestoObjectDataset presto server dataset.
67323type PrestoObjectDataset struct {
67324	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
67325	AdditionalProperties map[string]interface{} `json:""`
67326	// Description - Dataset description.
67327	Description *string `json:"description,omitempty"`
67328	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
67329	Structure interface{} `json:"structure,omitempty"`
67330	// LinkedServiceName - Linked service reference.
67331	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
67332	// Parameters - Parameters for dataset.
67333	Parameters map[string]*ParameterSpecification `json:"parameters"`
67334	// Annotations - List of tags that can be used for describing the Dataset.
67335	Annotations *[]interface{} `json:"annotations,omitempty"`
67336	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
67337	Type TypeBasicDataset `json:"type,omitempty"`
67338}
67339
67340// MarshalJSON is the custom marshaler for PrestoObjectDataset.
67341func (pod PrestoObjectDataset) MarshalJSON() ([]byte, error) {
67342	pod.Type = TypePrestoObject
67343	objectMap := make(map[string]interface{})
67344	if pod.Description != nil {
67345		objectMap["description"] = pod.Description
67346	}
67347	objectMap["structure"] = pod.Structure
67348	if pod.LinkedServiceName != nil {
67349		objectMap["linkedServiceName"] = pod.LinkedServiceName
67350	}
67351	if pod.Parameters != nil {
67352		objectMap["parameters"] = pod.Parameters
67353	}
67354	if pod.Annotations != nil {
67355		objectMap["annotations"] = pod.Annotations
67356	}
67357	if pod.Type != "" {
67358		objectMap["type"] = pod.Type
67359	}
67360	for k, v := range pod.AdditionalProperties {
67361		objectMap[k] = v
67362	}
67363	return json.Marshal(objectMap)
67364}
67365
67366// AsResponsysObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67367func (pod PrestoObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
67368	return nil, false
67369}
67370
67371// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67372func (pod PrestoObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
67373	return nil, false
67374}
67375
67376// AsVerticaTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67377func (pod PrestoObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
67378	return nil, false
67379}
67380
67381// AsNetezzaTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67382func (pod PrestoObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
67383	return nil, false
67384}
67385
67386// AsZohoObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67387func (pod PrestoObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
67388	return nil, false
67389}
67390
67391// AsXeroObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67392func (pod PrestoObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
67393	return nil, false
67394}
67395
67396// AsSquareObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67397func (pod PrestoObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
67398	return nil, false
67399}
67400
67401// AsSparkObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67402func (pod PrestoObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
67403	return nil, false
67404}
67405
67406// AsShopifyObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67407func (pod PrestoObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
67408	return nil, false
67409}
67410
67411// AsServiceNowObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67412func (pod PrestoObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
67413	return nil, false
67414}
67415
67416// AsQuickBooksObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67417func (pod PrestoObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
67418	return nil, false
67419}
67420
67421// AsPrestoObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67422func (pod PrestoObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
67423	return &pod, true
67424}
67425
67426// AsPhoenixObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67427func (pod PrestoObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
67428	return nil, false
67429}
67430
67431// AsPaypalObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67432func (pod PrestoObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
67433	return nil, false
67434}
67435
67436// AsMarketoObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67437func (pod PrestoObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
67438	return nil, false
67439}
67440
67441// AsMariaDBTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67442func (pod PrestoObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
67443	return nil, false
67444}
67445
67446// AsMagentoObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67447func (pod PrestoObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
67448	return nil, false
67449}
67450
67451// AsJiraObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67452func (pod PrestoObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
67453	return nil, false
67454}
67455
67456// AsImpalaObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67457func (pod PrestoObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
67458	return nil, false
67459}
67460
67461// AsHubspotObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67462func (pod PrestoObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
67463	return nil, false
67464}
67465
67466// AsHiveObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67467func (pod PrestoObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
67468	return nil, false
67469}
67470
67471// AsHBaseObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67472func (pod PrestoObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
67473	return nil, false
67474}
67475
67476// AsGreenplumTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67477func (pod PrestoObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
67478	return nil, false
67479}
67480
67481// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67482func (pod PrestoObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
67483	return nil, false
67484}
67485
67486// AsEloquaObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67487func (pod PrestoObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
67488	return nil, false
67489}
67490
67491// AsDrillTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67492func (pod PrestoObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
67493	return nil, false
67494}
67495
67496// AsCouchbaseTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67497func (pod PrestoObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
67498	return nil, false
67499}
67500
67501// AsConcurObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67502func (pod PrestoObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
67503	return nil, false
67504}
67505
67506// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67507func (pod PrestoObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
67508	return nil, false
67509}
67510
67511// AsAmazonMWSObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67512func (pod PrestoObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
67513	return nil, false
67514}
67515
67516// AsHTTPDataset is the BasicDataset implementation for PrestoObjectDataset.
67517func (pod PrestoObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
67518	return nil, false
67519}
67520
67521// AsAzureSearchIndexDataset is the BasicDataset implementation for PrestoObjectDataset.
67522func (pod PrestoObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
67523	return nil, false
67524}
67525
67526// AsWebTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67527func (pod PrestoObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
67528	return nil, false
67529}
67530
67531// AsSQLServerTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67532func (pod PrestoObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
67533	return nil, false
67534}
67535
67536// AsSapEccResourceDataset is the BasicDataset implementation for PrestoObjectDataset.
67537func (pod PrestoObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
67538	return nil, false
67539}
67540
67541// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for PrestoObjectDataset.
67542func (pod PrestoObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
67543	return nil, false
67544}
67545
67546// AsSalesforceObjectDataset is the BasicDataset implementation for PrestoObjectDataset.
67547func (pod PrestoObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
67548	return nil, false
67549}
67550
67551// AsRelationalTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67552func (pod PrestoObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
67553	return nil, false
67554}
67555
67556// AsAzureMySQLTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67557func (pod PrestoObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
67558	return nil, false
67559}
67560
67561// AsOracleTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67562func (pod PrestoObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
67563	return nil, false
67564}
67565
67566// AsODataResourceDataset is the BasicDataset implementation for PrestoObjectDataset.
67567func (pod PrestoObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
67568	return nil, false
67569}
67570
67571// AsMongoDbCollectionDataset is the BasicDataset implementation for PrestoObjectDataset.
67572func (pod PrestoObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
67573	return nil, false
67574}
67575
67576// AsFileShareDataset is the BasicDataset implementation for PrestoObjectDataset.
67577func (pod PrestoObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
67578	return nil, false
67579}
67580
67581// AsAzureDataLakeStoreDataset is the BasicDataset implementation for PrestoObjectDataset.
67582func (pod PrestoObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
67583	return nil, false
67584}
67585
67586// AsDynamicsEntityDataset is the BasicDataset implementation for PrestoObjectDataset.
67587func (pod PrestoObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
67588	return nil, false
67589}
67590
67591// AsDocumentDbCollectionDataset is the BasicDataset implementation for PrestoObjectDataset.
67592func (pod PrestoObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
67593	return nil, false
67594}
67595
67596// AsCustomDataset is the BasicDataset implementation for PrestoObjectDataset.
67597func (pod PrestoObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
67598	return nil, false
67599}
67600
67601// AsCassandraTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67602func (pod PrestoObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
67603	return nil, false
67604}
67605
67606// AsAzureSQLDWTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67607func (pod PrestoObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
67608	return nil, false
67609}
67610
67611// AsAzureSQLTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67612func (pod PrestoObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
67613	return nil, false
67614}
67615
67616// AsAzureTableDataset is the BasicDataset implementation for PrestoObjectDataset.
67617func (pod PrestoObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
67618	return nil, false
67619}
67620
67621// AsAzureBlobDataset is the BasicDataset implementation for PrestoObjectDataset.
67622func (pod PrestoObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
67623	return nil, false
67624}
67625
67626// AsAmazonS3Dataset is the BasicDataset implementation for PrestoObjectDataset.
67627func (pod PrestoObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
67628	return nil, false
67629}
67630
67631// AsDataset is the BasicDataset implementation for PrestoObjectDataset.
67632func (pod PrestoObjectDataset) AsDataset() (*Dataset, bool) {
67633	return nil, false
67634}
67635
67636// AsBasicDataset is the BasicDataset implementation for PrestoObjectDataset.
67637func (pod PrestoObjectDataset) AsBasicDataset() (BasicDataset, bool) {
67638	return &pod, true
67639}
67640
67641// PrestoSource a copy activity Presto server source.
67642type PrestoSource struct {
67643	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
67644	Query interface{} `json:"query,omitempty"`
67645	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
67646	AdditionalProperties map[string]interface{} `json:""`
67647	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
67648	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
67649	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
67650	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
67651	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
67652	Type TypeBasicCopySource `json:"type,omitempty"`
67653}
67654
67655// MarshalJSON is the custom marshaler for PrestoSource.
67656func (ps PrestoSource) MarshalJSON() ([]byte, error) {
67657	ps.Type = TypePrestoSource
67658	objectMap := make(map[string]interface{})
67659	objectMap["query"] = ps.Query
67660	objectMap["sourceRetryCount"] = ps.SourceRetryCount
67661	objectMap["sourceRetryWait"] = ps.SourceRetryWait
67662	if ps.Type != "" {
67663		objectMap["type"] = ps.Type
67664	}
67665	for k, v := range ps.AdditionalProperties {
67666		objectMap[k] = v
67667	}
67668	return json.Marshal(objectMap)
67669}
67670
67671// AsAmazonRedshiftSource is the BasicCopySource implementation for PrestoSource.
67672func (ps PrestoSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
67673	return nil, false
67674}
67675
67676// AsResponsysSource is the BasicCopySource implementation for PrestoSource.
67677func (ps PrestoSource) AsResponsysSource() (*ResponsysSource, bool) {
67678	return nil, false
67679}
67680
67681// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for PrestoSource.
67682func (ps PrestoSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
67683	return nil, false
67684}
67685
67686// AsVerticaSource is the BasicCopySource implementation for PrestoSource.
67687func (ps PrestoSource) AsVerticaSource() (*VerticaSource, bool) {
67688	return nil, false
67689}
67690
67691// AsNetezzaSource is the BasicCopySource implementation for PrestoSource.
67692func (ps PrestoSource) AsNetezzaSource() (*NetezzaSource, bool) {
67693	return nil, false
67694}
67695
67696// AsZohoSource is the BasicCopySource implementation for PrestoSource.
67697func (ps PrestoSource) AsZohoSource() (*ZohoSource, bool) {
67698	return nil, false
67699}
67700
67701// AsXeroSource is the BasicCopySource implementation for PrestoSource.
67702func (ps PrestoSource) AsXeroSource() (*XeroSource, bool) {
67703	return nil, false
67704}
67705
67706// AsSquareSource is the BasicCopySource implementation for PrestoSource.
67707func (ps PrestoSource) AsSquareSource() (*SquareSource, bool) {
67708	return nil, false
67709}
67710
67711// AsSparkSource is the BasicCopySource implementation for PrestoSource.
67712func (ps PrestoSource) AsSparkSource() (*SparkSource, bool) {
67713	return nil, false
67714}
67715
67716// AsShopifySource is the BasicCopySource implementation for PrestoSource.
67717func (ps PrestoSource) AsShopifySource() (*ShopifySource, bool) {
67718	return nil, false
67719}
67720
67721// AsServiceNowSource is the BasicCopySource implementation for PrestoSource.
67722func (ps PrestoSource) AsServiceNowSource() (*ServiceNowSource, bool) {
67723	return nil, false
67724}
67725
67726// AsQuickBooksSource is the BasicCopySource implementation for PrestoSource.
67727func (ps PrestoSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
67728	return nil, false
67729}
67730
67731// AsPrestoSource is the BasicCopySource implementation for PrestoSource.
67732func (ps PrestoSource) AsPrestoSource() (*PrestoSource, bool) {
67733	return &ps, true
67734}
67735
67736// AsPhoenixSource is the BasicCopySource implementation for PrestoSource.
67737func (ps PrestoSource) AsPhoenixSource() (*PhoenixSource, bool) {
67738	return nil, false
67739}
67740
67741// AsPaypalSource is the BasicCopySource implementation for PrestoSource.
67742func (ps PrestoSource) AsPaypalSource() (*PaypalSource, bool) {
67743	return nil, false
67744}
67745
67746// AsMarketoSource is the BasicCopySource implementation for PrestoSource.
67747func (ps PrestoSource) AsMarketoSource() (*MarketoSource, bool) {
67748	return nil, false
67749}
67750
67751// AsMariaDBSource is the BasicCopySource implementation for PrestoSource.
67752func (ps PrestoSource) AsMariaDBSource() (*MariaDBSource, bool) {
67753	return nil, false
67754}
67755
67756// AsMagentoSource is the BasicCopySource implementation for PrestoSource.
67757func (ps PrestoSource) AsMagentoSource() (*MagentoSource, bool) {
67758	return nil, false
67759}
67760
67761// AsJiraSource is the BasicCopySource implementation for PrestoSource.
67762func (ps PrestoSource) AsJiraSource() (*JiraSource, bool) {
67763	return nil, false
67764}
67765
67766// AsImpalaSource is the BasicCopySource implementation for PrestoSource.
67767func (ps PrestoSource) AsImpalaSource() (*ImpalaSource, bool) {
67768	return nil, false
67769}
67770
67771// AsHubspotSource is the BasicCopySource implementation for PrestoSource.
67772func (ps PrestoSource) AsHubspotSource() (*HubspotSource, bool) {
67773	return nil, false
67774}
67775
67776// AsHiveSource is the BasicCopySource implementation for PrestoSource.
67777func (ps PrestoSource) AsHiveSource() (*HiveSource, bool) {
67778	return nil, false
67779}
67780
67781// AsHBaseSource is the BasicCopySource implementation for PrestoSource.
67782func (ps PrestoSource) AsHBaseSource() (*HBaseSource, bool) {
67783	return nil, false
67784}
67785
67786// AsGreenplumSource is the BasicCopySource implementation for PrestoSource.
67787func (ps PrestoSource) AsGreenplumSource() (*GreenplumSource, bool) {
67788	return nil, false
67789}
67790
67791// AsGoogleBigQuerySource is the BasicCopySource implementation for PrestoSource.
67792func (ps PrestoSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
67793	return nil, false
67794}
67795
67796// AsEloquaSource is the BasicCopySource implementation for PrestoSource.
67797func (ps PrestoSource) AsEloquaSource() (*EloquaSource, bool) {
67798	return nil, false
67799}
67800
67801// AsDrillSource is the BasicCopySource implementation for PrestoSource.
67802func (ps PrestoSource) AsDrillSource() (*DrillSource, bool) {
67803	return nil, false
67804}
67805
67806// AsCouchbaseSource is the BasicCopySource implementation for PrestoSource.
67807func (ps PrestoSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
67808	return nil, false
67809}
67810
67811// AsConcurSource is the BasicCopySource implementation for PrestoSource.
67812func (ps PrestoSource) AsConcurSource() (*ConcurSource, bool) {
67813	return nil, false
67814}
67815
67816// AsAzurePostgreSQLSource is the BasicCopySource implementation for PrestoSource.
67817func (ps PrestoSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
67818	return nil, false
67819}
67820
67821// AsAmazonMWSSource is the BasicCopySource implementation for PrestoSource.
67822func (ps PrestoSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
67823	return nil, false
67824}
67825
67826// AsHTTPSource is the BasicCopySource implementation for PrestoSource.
67827func (ps PrestoSource) AsHTTPSource() (*HTTPSource, bool) {
67828	return nil, false
67829}
67830
67831// AsAzureDataLakeStoreSource is the BasicCopySource implementation for PrestoSource.
67832func (ps PrestoSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
67833	return nil, false
67834}
67835
67836// AsMongoDbSource is the BasicCopySource implementation for PrestoSource.
67837func (ps PrestoSource) AsMongoDbSource() (*MongoDbSource, bool) {
67838	return nil, false
67839}
67840
67841// AsCassandraSource is the BasicCopySource implementation for PrestoSource.
67842func (ps PrestoSource) AsCassandraSource() (*CassandraSource, bool) {
67843	return nil, false
67844}
67845
67846// AsWebSource is the BasicCopySource implementation for PrestoSource.
67847func (ps PrestoSource) AsWebSource() (*WebSource, bool) {
67848	return nil, false
67849}
67850
67851// AsOracleSource is the BasicCopySource implementation for PrestoSource.
67852func (ps PrestoSource) AsOracleSource() (*OracleSource, bool) {
67853	return nil, false
67854}
67855
67856// AsAzureMySQLSource is the BasicCopySource implementation for PrestoSource.
67857func (ps PrestoSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
67858	return nil, false
67859}
67860
67861// AsHdfsSource is the BasicCopySource implementation for PrestoSource.
67862func (ps PrestoSource) AsHdfsSource() (*HdfsSource, bool) {
67863	return nil, false
67864}
67865
67866// AsFileSystemSource is the BasicCopySource implementation for PrestoSource.
67867func (ps PrestoSource) AsFileSystemSource() (*FileSystemSource, bool) {
67868	return nil, false
67869}
67870
67871// AsSQLDWSource is the BasicCopySource implementation for PrestoSource.
67872func (ps PrestoSource) AsSQLDWSource() (*SQLDWSource, bool) {
67873	return nil, false
67874}
67875
67876// AsSQLSource is the BasicCopySource implementation for PrestoSource.
67877func (ps PrestoSource) AsSQLSource() (*SQLSource, bool) {
67878	return nil, false
67879}
67880
67881// AsSapEccSource is the BasicCopySource implementation for PrestoSource.
67882func (ps PrestoSource) AsSapEccSource() (*SapEccSource, bool) {
67883	return nil, false
67884}
67885
67886// AsSapCloudForCustomerSource is the BasicCopySource implementation for PrestoSource.
67887func (ps PrestoSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
67888	return nil, false
67889}
67890
67891// AsSalesforceSource is the BasicCopySource implementation for PrestoSource.
67892func (ps PrestoSource) AsSalesforceSource() (*SalesforceSource, bool) {
67893	return nil, false
67894}
67895
67896// AsRelationalSource is the BasicCopySource implementation for PrestoSource.
67897func (ps PrestoSource) AsRelationalSource() (*RelationalSource, bool) {
67898	return nil, false
67899}
67900
67901// AsDynamicsSource is the BasicCopySource implementation for PrestoSource.
67902func (ps PrestoSource) AsDynamicsSource() (*DynamicsSource, bool) {
67903	return nil, false
67904}
67905
67906// AsDocumentDbCollectionSource is the BasicCopySource implementation for PrestoSource.
67907func (ps PrestoSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
67908	return nil, false
67909}
67910
67911// AsBlobSource is the BasicCopySource implementation for PrestoSource.
67912func (ps PrestoSource) AsBlobSource() (*BlobSource, bool) {
67913	return nil, false
67914}
67915
67916// AsAzureTableSource is the BasicCopySource implementation for PrestoSource.
67917func (ps PrestoSource) AsAzureTableSource() (*AzureTableSource, bool) {
67918	return nil, false
67919}
67920
67921// AsCopySource is the BasicCopySource implementation for PrestoSource.
67922func (ps PrestoSource) AsCopySource() (*CopySource, bool) {
67923	return nil, false
67924}
67925
67926// AsBasicCopySource is the BasicCopySource implementation for PrestoSource.
67927func (ps PrestoSource) AsBasicCopySource() (BasicCopySource, bool) {
67928	return &ps, true
67929}
67930
67931// QuickBooksLinkedService quickBooks server linked service.
67932type QuickBooksLinkedService struct {
67933	// QuickBooksLinkedServiceTypeProperties - QuickBooks server linked service properties.
67934	*QuickBooksLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
67935	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
67936	AdditionalProperties map[string]interface{} `json:""`
67937	// ConnectVia - The integration runtime reference.
67938	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
67939	// Description - Linked service description.
67940	Description *string `json:"description,omitempty"`
67941	// Parameters - Parameters for linked service.
67942	Parameters map[string]*ParameterSpecification `json:"parameters"`
67943	// Annotations - List of tags that can be used for describing the Dataset.
67944	Annotations *[]interface{} `json:"annotations,omitempty"`
67945	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
67946	Type TypeBasicLinkedService `json:"type,omitempty"`
67947}
67948
67949// MarshalJSON is the custom marshaler for QuickBooksLinkedService.
67950func (qbls QuickBooksLinkedService) MarshalJSON() ([]byte, error) {
67951	qbls.Type = TypeQuickBooks
67952	objectMap := make(map[string]interface{})
67953	if qbls.QuickBooksLinkedServiceTypeProperties != nil {
67954		objectMap["typeProperties"] = qbls.QuickBooksLinkedServiceTypeProperties
67955	}
67956	if qbls.ConnectVia != nil {
67957		objectMap["connectVia"] = qbls.ConnectVia
67958	}
67959	if qbls.Description != nil {
67960		objectMap["description"] = qbls.Description
67961	}
67962	if qbls.Parameters != nil {
67963		objectMap["parameters"] = qbls.Parameters
67964	}
67965	if qbls.Annotations != nil {
67966		objectMap["annotations"] = qbls.Annotations
67967	}
67968	if qbls.Type != "" {
67969		objectMap["type"] = qbls.Type
67970	}
67971	for k, v := range qbls.AdditionalProperties {
67972		objectMap[k] = v
67973	}
67974	return json.Marshal(objectMap)
67975}
67976
67977// AsResponsysLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
67978func (qbls QuickBooksLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
67979	return nil, false
67980}
67981
67982// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
67983func (qbls QuickBooksLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
67984	return nil, false
67985}
67986
67987// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
67988func (qbls QuickBooksLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
67989	return nil, false
67990}
67991
67992// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
67993func (qbls QuickBooksLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
67994	return nil, false
67995}
67996
67997// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
67998func (qbls QuickBooksLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
67999	return nil, false
68000}
68001
68002// AsNetezzaLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68003func (qbls QuickBooksLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
68004	return nil, false
68005}
68006
68007// AsVerticaLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68008func (qbls QuickBooksLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
68009	return nil, false
68010}
68011
68012// AsZohoLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68013func (qbls QuickBooksLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
68014	return nil, false
68015}
68016
68017// AsXeroLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68018func (qbls QuickBooksLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
68019	return nil, false
68020}
68021
68022// AsSquareLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68023func (qbls QuickBooksLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
68024	return nil, false
68025}
68026
68027// AsSparkLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68028func (qbls QuickBooksLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
68029	return nil, false
68030}
68031
68032// AsShopifyLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68033func (qbls QuickBooksLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
68034	return nil, false
68035}
68036
68037// AsServiceNowLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68038func (qbls QuickBooksLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
68039	return nil, false
68040}
68041
68042// AsQuickBooksLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68043func (qbls QuickBooksLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
68044	return &qbls, true
68045}
68046
68047// AsPrestoLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68048func (qbls QuickBooksLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
68049	return nil, false
68050}
68051
68052// AsPhoenixLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68053func (qbls QuickBooksLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
68054	return nil, false
68055}
68056
68057// AsPaypalLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68058func (qbls QuickBooksLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
68059	return nil, false
68060}
68061
68062// AsMarketoLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68063func (qbls QuickBooksLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
68064	return nil, false
68065}
68066
68067// AsMariaDBLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68068func (qbls QuickBooksLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
68069	return nil, false
68070}
68071
68072// AsMagentoLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68073func (qbls QuickBooksLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
68074	return nil, false
68075}
68076
68077// AsJiraLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68078func (qbls QuickBooksLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
68079	return nil, false
68080}
68081
68082// AsImpalaLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68083func (qbls QuickBooksLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
68084	return nil, false
68085}
68086
68087// AsHubspotLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68088func (qbls QuickBooksLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
68089	return nil, false
68090}
68091
68092// AsHiveLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68093func (qbls QuickBooksLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
68094	return nil, false
68095}
68096
68097// AsHBaseLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68098func (qbls QuickBooksLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
68099	return nil, false
68100}
68101
68102// AsGreenplumLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68103func (qbls QuickBooksLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
68104	return nil, false
68105}
68106
68107// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68108func (qbls QuickBooksLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
68109	return nil, false
68110}
68111
68112// AsEloquaLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68113func (qbls QuickBooksLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
68114	return nil, false
68115}
68116
68117// AsDrillLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68118func (qbls QuickBooksLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
68119	return nil, false
68120}
68121
68122// AsCouchbaseLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68123func (qbls QuickBooksLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
68124	return nil, false
68125}
68126
68127// AsConcurLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68128func (qbls QuickBooksLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
68129	return nil, false
68130}
68131
68132// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68133func (qbls QuickBooksLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
68134	return nil, false
68135}
68136
68137// AsAmazonMWSLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68138func (qbls QuickBooksLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
68139	return nil, false
68140}
68141
68142// AsSapHanaLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68143func (qbls QuickBooksLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
68144	return nil, false
68145}
68146
68147// AsSapBWLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68148func (qbls QuickBooksLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
68149	return nil, false
68150}
68151
68152// AsSftpServerLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68153func (qbls QuickBooksLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
68154	return nil, false
68155}
68156
68157// AsFtpServerLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68158func (qbls QuickBooksLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
68159	return nil, false
68160}
68161
68162// AsHTTPLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68163func (qbls QuickBooksLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
68164	return nil, false
68165}
68166
68167// AsAzureSearchLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68168func (qbls QuickBooksLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
68169	return nil, false
68170}
68171
68172// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68173func (qbls QuickBooksLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
68174	return nil, false
68175}
68176
68177// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68178func (qbls QuickBooksLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
68179	return nil, false
68180}
68181
68182// AsAmazonS3LinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68183func (qbls QuickBooksLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
68184	return nil, false
68185}
68186
68187// AsSapEccLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68188func (qbls QuickBooksLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
68189	return nil, false
68190}
68191
68192// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68193func (qbls QuickBooksLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
68194	return nil, false
68195}
68196
68197// AsSalesforceLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68198func (qbls QuickBooksLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
68199	return nil, false
68200}
68201
68202// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68203func (qbls QuickBooksLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
68204	return nil, false
68205}
68206
68207// AsMongoDbLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68208func (qbls QuickBooksLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
68209	return nil, false
68210}
68211
68212// AsCassandraLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68213func (qbls QuickBooksLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
68214	return nil, false
68215}
68216
68217// AsWebLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68218func (qbls QuickBooksLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
68219	return nil, false
68220}
68221
68222// AsODataLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68223func (qbls QuickBooksLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
68224	return nil, false
68225}
68226
68227// AsHdfsLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68228func (qbls QuickBooksLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
68229	return nil, false
68230}
68231
68232// AsOdbcLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68233func (qbls QuickBooksLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
68234	return nil, false
68235}
68236
68237// AsAzureMLLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68238func (qbls QuickBooksLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
68239	return nil, false
68240}
68241
68242// AsTeradataLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68243func (qbls QuickBooksLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
68244	return nil, false
68245}
68246
68247// AsDb2LinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68248func (qbls QuickBooksLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
68249	return nil, false
68250}
68251
68252// AsSybaseLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68253func (qbls QuickBooksLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
68254	return nil, false
68255}
68256
68257// AsPostgreSQLLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68258func (qbls QuickBooksLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
68259	return nil, false
68260}
68261
68262// AsMySQLLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68263func (qbls QuickBooksLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
68264	return nil, false
68265}
68266
68267// AsAzureMySQLLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68268func (qbls QuickBooksLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
68269	return nil, false
68270}
68271
68272// AsOracleLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68273func (qbls QuickBooksLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
68274	return nil, false
68275}
68276
68277// AsFileServerLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68278func (qbls QuickBooksLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
68279	return nil, false
68280}
68281
68282// AsHDInsightLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68283func (qbls QuickBooksLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
68284	return nil, false
68285}
68286
68287// AsDynamicsLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68288func (qbls QuickBooksLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
68289	return nil, false
68290}
68291
68292// AsCosmosDbLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68293func (qbls QuickBooksLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
68294	return nil, false
68295}
68296
68297// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68298func (qbls QuickBooksLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
68299	return nil, false
68300}
68301
68302// AsAzureBatchLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68303func (qbls QuickBooksLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
68304	return nil, false
68305}
68306
68307// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68308func (qbls QuickBooksLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
68309	return nil, false
68310}
68311
68312// AsSQLServerLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68313func (qbls QuickBooksLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
68314	return nil, false
68315}
68316
68317// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68318func (qbls QuickBooksLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
68319	return nil, false
68320}
68321
68322// AsAzureStorageLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68323func (qbls QuickBooksLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
68324	return nil, false
68325}
68326
68327// AsLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68328func (qbls QuickBooksLinkedService) AsLinkedService() (*LinkedService, bool) {
68329	return nil, false
68330}
68331
68332// AsBasicLinkedService is the BasicLinkedService implementation for QuickBooksLinkedService.
68333func (qbls QuickBooksLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
68334	return &qbls, true
68335}
68336
68337// UnmarshalJSON is the custom unmarshaler for QuickBooksLinkedService struct.
68338func (qbls *QuickBooksLinkedService) UnmarshalJSON(body []byte) error {
68339	var m map[string]*json.RawMessage
68340	err := json.Unmarshal(body, &m)
68341	if err != nil {
68342		return err
68343	}
68344	for k, v := range m {
68345		switch k {
68346		case "typeProperties":
68347			if v != nil {
68348				var quickBooksLinkedServiceTypeProperties QuickBooksLinkedServiceTypeProperties
68349				err = json.Unmarshal(*v, &quickBooksLinkedServiceTypeProperties)
68350				if err != nil {
68351					return err
68352				}
68353				qbls.QuickBooksLinkedServiceTypeProperties = &quickBooksLinkedServiceTypeProperties
68354			}
68355		default:
68356			if v != nil {
68357				var additionalProperties interface{}
68358				err = json.Unmarshal(*v, &additionalProperties)
68359				if err != nil {
68360					return err
68361				}
68362				if qbls.AdditionalProperties == nil {
68363					qbls.AdditionalProperties = make(map[string]interface{})
68364				}
68365				qbls.AdditionalProperties[k] = additionalProperties
68366			}
68367		case "connectVia":
68368			if v != nil {
68369				var connectVia IntegrationRuntimeReference
68370				err = json.Unmarshal(*v, &connectVia)
68371				if err != nil {
68372					return err
68373				}
68374				qbls.ConnectVia = &connectVia
68375			}
68376		case "description":
68377			if v != nil {
68378				var description string
68379				err = json.Unmarshal(*v, &description)
68380				if err != nil {
68381					return err
68382				}
68383				qbls.Description = &description
68384			}
68385		case "parameters":
68386			if v != nil {
68387				var parameters map[string]*ParameterSpecification
68388				err = json.Unmarshal(*v, &parameters)
68389				if err != nil {
68390					return err
68391				}
68392				qbls.Parameters = parameters
68393			}
68394		case "annotations":
68395			if v != nil {
68396				var annotations []interface{}
68397				err = json.Unmarshal(*v, &annotations)
68398				if err != nil {
68399					return err
68400				}
68401				qbls.Annotations = &annotations
68402			}
68403		case "type":
68404			if v != nil {
68405				var typeVar TypeBasicLinkedService
68406				err = json.Unmarshal(*v, &typeVar)
68407				if err != nil {
68408					return err
68409				}
68410				qbls.Type = typeVar
68411			}
68412		}
68413	}
68414
68415	return nil
68416}
68417
68418// QuickBooksLinkedServiceTypeProperties quickBooks server linked service properties.
68419type QuickBooksLinkedServiceTypeProperties struct {
68420	// Endpoint - The endpoint of the QuickBooks server. (i.e. quickbooks.api.intuit.com)
68421	Endpoint interface{} `json:"endpoint,omitempty"`
68422	// CompanyID - The company ID of the QuickBooks company to authorize.
68423	CompanyID interface{} `json:"companyId,omitempty"`
68424	// AccessToken - The access token for OAuth 1.0 authentication.
68425	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
68426	// AccessTokenSecret - The access token secret for OAuth 1.0 authentication.
68427	AccessTokenSecret BasicSecretBase `json:"accessTokenSecret,omitempty"`
68428	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
68429	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
68430	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
68431	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
68432}
68433
68434// UnmarshalJSON is the custom unmarshaler for QuickBooksLinkedServiceTypeProperties struct.
68435func (qblstp *QuickBooksLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
68436	var m map[string]*json.RawMessage
68437	err := json.Unmarshal(body, &m)
68438	if err != nil {
68439		return err
68440	}
68441	for k, v := range m {
68442		switch k {
68443		case "endpoint":
68444			if v != nil {
68445				var endpoint interface{}
68446				err = json.Unmarshal(*v, &endpoint)
68447				if err != nil {
68448					return err
68449				}
68450				qblstp.Endpoint = endpoint
68451			}
68452		case "companyId":
68453			if v != nil {
68454				var companyID interface{}
68455				err = json.Unmarshal(*v, &companyID)
68456				if err != nil {
68457					return err
68458				}
68459				qblstp.CompanyID = companyID
68460			}
68461		case "accessToken":
68462			if v != nil {
68463				accessToken, err := unmarshalBasicSecretBase(*v)
68464				if err != nil {
68465					return err
68466				}
68467				qblstp.AccessToken = accessToken
68468			}
68469		case "accessTokenSecret":
68470			if v != nil {
68471				accessTokenSecret, err := unmarshalBasicSecretBase(*v)
68472				if err != nil {
68473					return err
68474				}
68475				qblstp.AccessTokenSecret = accessTokenSecret
68476			}
68477		case "useEncryptedEndpoints":
68478			if v != nil {
68479				var useEncryptedEndpoints interface{}
68480				err = json.Unmarshal(*v, &useEncryptedEndpoints)
68481				if err != nil {
68482					return err
68483				}
68484				qblstp.UseEncryptedEndpoints = useEncryptedEndpoints
68485			}
68486		case "encryptedCredential":
68487			if v != nil {
68488				var encryptedCredential interface{}
68489				err = json.Unmarshal(*v, &encryptedCredential)
68490				if err != nil {
68491					return err
68492				}
68493				qblstp.EncryptedCredential = encryptedCredential
68494			}
68495		}
68496	}
68497
68498	return nil
68499}
68500
68501// QuickBooksObjectDataset quickBooks server dataset.
68502type QuickBooksObjectDataset struct {
68503	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
68504	AdditionalProperties map[string]interface{} `json:""`
68505	// Description - Dataset description.
68506	Description *string `json:"description,omitempty"`
68507	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
68508	Structure interface{} `json:"structure,omitempty"`
68509	// LinkedServiceName - Linked service reference.
68510	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
68511	// Parameters - Parameters for dataset.
68512	Parameters map[string]*ParameterSpecification `json:"parameters"`
68513	// Annotations - List of tags that can be used for describing the Dataset.
68514	Annotations *[]interface{} `json:"annotations,omitempty"`
68515	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
68516	Type TypeBasicDataset `json:"type,omitempty"`
68517}
68518
68519// MarshalJSON is the custom marshaler for QuickBooksObjectDataset.
68520func (qbod QuickBooksObjectDataset) MarshalJSON() ([]byte, error) {
68521	qbod.Type = TypeQuickBooksObject
68522	objectMap := make(map[string]interface{})
68523	if qbod.Description != nil {
68524		objectMap["description"] = qbod.Description
68525	}
68526	objectMap["structure"] = qbod.Structure
68527	if qbod.LinkedServiceName != nil {
68528		objectMap["linkedServiceName"] = qbod.LinkedServiceName
68529	}
68530	if qbod.Parameters != nil {
68531		objectMap["parameters"] = qbod.Parameters
68532	}
68533	if qbod.Annotations != nil {
68534		objectMap["annotations"] = qbod.Annotations
68535	}
68536	if qbod.Type != "" {
68537		objectMap["type"] = qbod.Type
68538	}
68539	for k, v := range qbod.AdditionalProperties {
68540		objectMap[k] = v
68541	}
68542	return json.Marshal(objectMap)
68543}
68544
68545// AsResponsysObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68546func (qbod QuickBooksObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
68547	return nil, false
68548}
68549
68550// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68551func (qbod QuickBooksObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
68552	return nil, false
68553}
68554
68555// AsVerticaTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68556func (qbod QuickBooksObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
68557	return nil, false
68558}
68559
68560// AsNetezzaTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68561func (qbod QuickBooksObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
68562	return nil, false
68563}
68564
68565// AsZohoObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68566func (qbod QuickBooksObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
68567	return nil, false
68568}
68569
68570// AsXeroObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68571func (qbod QuickBooksObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
68572	return nil, false
68573}
68574
68575// AsSquareObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68576func (qbod QuickBooksObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
68577	return nil, false
68578}
68579
68580// AsSparkObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68581func (qbod QuickBooksObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
68582	return nil, false
68583}
68584
68585// AsShopifyObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68586func (qbod QuickBooksObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
68587	return nil, false
68588}
68589
68590// AsServiceNowObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68591func (qbod QuickBooksObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
68592	return nil, false
68593}
68594
68595// AsQuickBooksObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68596func (qbod QuickBooksObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
68597	return &qbod, true
68598}
68599
68600// AsPrestoObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68601func (qbod QuickBooksObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
68602	return nil, false
68603}
68604
68605// AsPhoenixObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68606func (qbod QuickBooksObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
68607	return nil, false
68608}
68609
68610// AsPaypalObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68611func (qbod QuickBooksObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
68612	return nil, false
68613}
68614
68615// AsMarketoObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68616func (qbod QuickBooksObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
68617	return nil, false
68618}
68619
68620// AsMariaDBTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68621func (qbod QuickBooksObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
68622	return nil, false
68623}
68624
68625// AsMagentoObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68626func (qbod QuickBooksObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
68627	return nil, false
68628}
68629
68630// AsJiraObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68631func (qbod QuickBooksObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
68632	return nil, false
68633}
68634
68635// AsImpalaObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68636func (qbod QuickBooksObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
68637	return nil, false
68638}
68639
68640// AsHubspotObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68641func (qbod QuickBooksObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
68642	return nil, false
68643}
68644
68645// AsHiveObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68646func (qbod QuickBooksObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
68647	return nil, false
68648}
68649
68650// AsHBaseObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68651func (qbod QuickBooksObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
68652	return nil, false
68653}
68654
68655// AsGreenplumTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68656func (qbod QuickBooksObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
68657	return nil, false
68658}
68659
68660// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68661func (qbod QuickBooksObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
68662	return nil, false
68663}
68664
68665// AsEloquaObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68666func (qbod QuickBooksObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
68667	return nil, false
68668}
68669
68670// AsDrillTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68671func (qbod QuickBooksObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
68672	return nil, false
68673}
68674
68675// AsCouchbaseTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68676func (qbod QuickBooksObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
68677	return nil, false
68678}
68679
68680// AsConcurObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68681func (qbod QuickBooksObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
68682	return nil, false
68683}
68684
68685// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68686func (qbod QuickBooksObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
68687	return nil, false
68688}
68689
68690// AsAmazonMWSObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68691func (qbod QuickBooksObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
68692	return nil, false
68693}
68694
68695// AsHTTPDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68696func (qbod QuickBooksObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
68697	return nil, false
68698}
68699
68700// AsAzureSearchIndexDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68701func (qbod QuickBooksObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
68702	return nil, false
68703}
68704
68705// AsWebTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68706func (qbod QuickBooksObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
68707	return nil, false
68708}
68709
68710// AsSQLServerTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68711func (qbod QuickBooksObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
68712	return nil, false
68713}
68714
68715// AsSapEccResourceDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68716func (qbod QuickBooksObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
68717	return nil, false
68718}
68719
68720// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68721func (qbod QuickBooksObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
68722	return nil, false
68723}
68724
68725// AsSalesforceObjectDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68726func (qbod QuickBooksObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
68727	return nil, false
68728}
68729
68730// AsRelationalTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68731func (qbod QuickBooksObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
68732	return nil, false
68733}
68734
68735// AsAzureMySQLTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68736func (qbod QuickBooksObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
68737	return nil, false
68738}
68739
68740// AsOracleTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68741func (qbod QuickBooksObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
68742	return nil, false
68743}
68744
68745// AsODataResourceDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68746func (qbod QuickBooksObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
68747	return nil, false
68748}
68749
68750// AsMongoDbCollectionDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68751func (qbod QuickBooksObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
68752	return nil, false
68753}
68754
68755// AsFileShareDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68756func (qbod QuickBooksObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
68757	return nil, false
68758}
68759
68760// AsAzureDataLakeStoreDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68761func (qbod QuickBooksObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
68762	return nil, false
68763}
68764
68765// AsDynamicsEntityDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68766func (qbod QuickBooksObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
68767	return nil, false
68768}
68769
68770// AsDocumentDbCollectionDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68771func (qbod QuickBooksObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
68772	return nil, false
68773}
68774
68775// AsCustomDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68776func (qbod QuickBooksObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
68777	return nil, false
68778}
68779
68780// AsCassandraTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68781func (qbod QuickBooksObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
68782	return nil, false
68783}
68784
68785// AsAzureSQLDWTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68786func (qbod QuickBooksObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
68787	return nil, false
68788}
68789
68790// AsAzureSQLTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68791func (qbod QuickBooksObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
68792	return nil, false
68793}
68794
68795// AsAzureTableDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68796func (qbod QuickBooksObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
68797	return nil, false
68798}
68799
68800// AsAzureBlobDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68801func (qbod QuickBooksObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
68802	return nil, false
68803}
68804
68805// AsAmazonS3Dataset is the BasicDataset implementation for QuickBooksObjectDataset.
68806func (qbod QuickBooksObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
68807	return nil, false
68808}
68809
68810// AsDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68811func (qbod QuickBooksObjectDataset) AsDataset() (*Dataset, bool) {
68812	return nil, false
68813}
68814
68815// AsBasicDataset is the BasicDataset implementation for QuickBooksObjectDataset.
68816func (qbod QuickBooksObjectDataset) AsBasicDataset() (BasicDataset, bool) {
68817	return &qbod, true
68818}
68819
68820// QuickBooksSource a copy activity QuickBooks server source.
68821type QuickBooksSource struct {
68822	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
68823	Query interface{} `json:"query,omitempty"`
68824	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
68825	AdditionalProperties map[string]interface{} `json:""`
68826	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
68827	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
68828	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
68829	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
68830	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
68831	Type TypeBasicCopySource `json:"type,omitempty"`
68832}
68833
68834// MarshalJSON is the custom marshaler for QuickBooksSource.
68835func (qbs QuickBooksSource) MarshalJSON() ([]byte, error) {
68836	qbs.Type = TypeQuickBooksSource
68837	objectMap := make(map[string]interface{})
68838	objectMap["query"] = qbs.Query
68839	objectMap["sourceRetryCount"] = qbs.SourceRetryCount
68840	objectMap["sourceRetryWait"] = qbs.SourceRetryWait
68841	if qbs.Type != "" {
68842		objectMap["type"] = qbs.Type
68843	}
68844	for k, v := range qbs.AdditionalProperties {
68845		objectMap[k] = v
68846	}
68847	return json.Marshal(objectMap)
68848}
68849
68850// AsAmazonRedshiftSource is the BasicCopySource implementation for QuickBooksSource.
68851func (qbs QuickBooksSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
68852	return nil, false
68853}
68854
68855// AsResponsysSource is the BasicCopySource implementation for QuickBooksSource.
68856func (qbs QuickBooksSource) AsResponsysSource() (*ResponsysSource, bool) {
68857	return nil, false
68858}
68859
68860// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for QuickBooksSource.
68861func (qbs QuickBooksSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
68862	return nil, false
68863}
68864
68865// AsVerticaSource is the BasicCopySource implementation for QuickBooksSource.
68866func (qbs QuickBooksSource) AsVerticaSource() (*VerticaSource, bool) {
68867	return nil, false
68868}
68869
68870// AsNetezzaSource is the BasicCopySource implementation for QuickBooksSource.
68871func (qbs QuickBooksSource) AsNetezzaSource() (*NetezzaSource, bool) {
68872	return nil, false
68873}
68874
68875// AsZohoSource is the BasicCopySource implementation for QuickBooksSource.
68876func (qbs QuickBooksSource) AsZohoSource() (*ZohoSource, bool) {
68877	return nil, false
68878}
68879
68880// AsXeroSource is the BasicCopySource implementation for QuickBooksSource.
68881func (qbs QuickBooksSource) AsXeroSource() (*XeroSource, bool) {
68882	return nil, false
68883}
68884
68885// AsSquareSource is the BasicCopySource implementation for QuickBooksSource.
68886func (qbs QuickBooksSource) AsSquareSource() (*SquareSource, bool) {
68887	return nil, false
68888}
68889
68890// AsSparkSource is the BasicCopySource implementation for QuickBooksSource.
68891func (qbs QuickBooksSource) AsSparkSource() (*SparkSource, bool) {
68892	return nil, false
68893}
68894
68895// AsShopifySource is the BasicCopySource implementation for QuickBooksSource.
68896func (qbs QuickBooksSource) AsShopifySource() (*ShopifySource, bool) {
68897	return nil, false
68898}
68899
68900// AsServiceNowSource is the BasicCopySource implementation for QuickBooksSource.
68901func (qbs QuickBooksSource) AsServiceNowSource() (*ServiceNowSource, bool) {
68902	return nil, false
68903}
68904
68905// AsQuickBooksSource is the BasicCopySource implementation for QuickBooksSource.
68906func (qbs QuickBooksSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
68907	return &qbs, true
68908}
68909
68910// AsPrestoSource is the BasicCopySource implementation for QuickBooksSource.
68911func (qbs QuickBooksSource) AsPrestoSource() (*PrestoSource, bool) {
68912	return nil, false
68913}
68914
68915// AsPhoenixSource is the BasicCopySource implementation for QuickBooksSource.
68916func (qbs QuickBooksSource) AsPhoenixSource() (*PhoenixSource, bool) {
68917	return nil, false
68918}
68919
68920// AsPaypalSource is the BasicCopySource implementation for QuickBooksSource.
68921func (qbs QuickBooksSource) AsPaypalSource() (*PaypalSource, bool) {
68922	return nil, false
68923}
68924
68925// AsMarketoSource is the BasicCopySource implementation for QuickBooksSource.
68926func (qbs QuickBooksSource) AsMarketoSource() (*MarketoSource, bool) {
68927	return nil, false
68928}
68929
68930// AsMariaDBSource is the BasicCopySource implementation for QuickBooksSource.
68931func (qbs QuickBooksSource) AsMariaDBSource() (*MariaDBSource, bool) {
68932	return nil, false
68933}
68934
68935// AsMagentoSource is the BasicCopySource implementation for QuickBooksSource.
68936func (qbs QuickBooksSource) AsMagentoSource() (*MagentoSource, bool) {
68937	return nil, false
68938}
68939
68940// AsJiraSource is the BasicCopySource implementation for QuickBooksSource.
68941func (qbs QuickBooksSource) AsJiraSource() (*JiraSource, bool) {
68942	return nil, false
68943}
68944
68945// AsImpalaSource is the BasicCopySource implementation for QuickBooksSource.
68946func (qbs QuickBooksSource) AsImpalaSource() (*ImpalaSource, bool) {
68947	return nil, false
68948}
68949
68950// AsHubspotSource is the BasicCopySource implementation for QuickBooksSource.
68951func (qbs QuickBooksSource) AsHubspotSource() (*HubspotSource, bool) {
68952	return nil, false
68953}
68954
68955// AsHiveSource is the BasicCopySource implementation for QuickBooksSource.
68956func (qbs QuickBooksSource) AsHiveSource() (*HiveSource, bool) {
68957	return nil, false
68958}
68959
68960// AsHBaseSource is the BasicCopySource implementation for QuickBooksSource.
68961func (qbs QuickBooksSource) AsHBaseSource() (*HBaseSource, bool) {
68962	return nil, false
68963}
68964
68965// AsGreenplumSource is the BasicCopySource implementation for QuickBooksSource.
68966func (qbs QuickBooksSource) AsGreenplumSource() (*GreenplumSource, bool) {
68967	return nil, false
68968}
68969
68970// AsGoogleBigQuerySource is the BasicCopySource implementation for QuickBooksSource.
68971func (qbs QuickBooksSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
68972	return nil, false
68973}
68974
68975// AsEloquaSource is the BasicCopySource implementation for QuickBooksSource.
68976func (qbs QuickBooksSource) AsEloquaSource() (*EloquaSource, bool) {
68977	return nil, false
68978}
68979
68980// AsDrillSource is the BasicCopySource implementation for QuickBooksSource.
68981func (qbs QuickBooksSource) AsDrillSource() (*DrillSource, bool) {
68982	return nil, false
68983}
68984
68985// AsCouchbaseSource is the BasicCopySource implementation for QuickBooksSource.
68986func (qbs QuickBooksSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
68987	return nil, false
68988}
68989
68990// AsConcurSource is the BasicCopySource implementation for QuickBooksSource.
68991func (qbs QuickBooksSource) AsConcurSource() (*ConcurSource, bool) {
68992	return nil, false
68993}
68994
68995// AsAzurePostgreSQLSource is the BasicCopySource implementation for QuickBooksSource.
68996func (qbs QuickBooksSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
68997	return nil, false
68998}
68999
69000// AsAmazonMWSSource is the BasicCopySource implementation for QuickBooksSource.
69001func (qbs QuickBooksSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
69002	return nil, false
69003}
69004
69005// AsHTTPSource is the BasicCopySource implementation for QuickBooksSource.
69006func (qbs QuickBooksSource) AsHTTPSource() (*HTTPSource, bool) {
69007	return nil, false
69008}
69009
69010// AsAzureDataLakeStoreSource is the BasicCopySource implementation for QuickBooksSource.
69011func (qbs QuickBooksSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
69012	return nil, false
69013}
69014
69015// AsMongoDbSource is the BasicCopySource implementation for QuickBooksSource.
69016func (qbs QuickBooksSource) AsMongoDbSource() (*MongoDbSource, bool) {
69017	return nil, false
69018}
69019
69020// AsCassandraSource is the BasicCopySource implementation for QuickBooksSource.
69021func (qbs QuickBooksSource) AsCassandraSource() (*CassandraSource, bool) {
69022	return nil, false
69023}
69024
69025// AsWebSource is the BasicCopySource implementation for QuickBooksSource.
69026func (qbs QuickBooksSource) AsWebSource() (*WebSource, bool) {
69027	return nil, false
69028}
69029
69030// AsOracleSource is the BasicCopySource implementation for QuickBooksSource.
69031func (qbs QuickBooksSource) AsOracleSource() (*OracleSource, bool) {
69032	return nil, false
69033}
69034
69035// AsAzureMySQLSource is the BasicCopySource implementation for QuickBooksSource.
69036func (qbs QuickBooksSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
69037	return nil, false
69038}
69039
69040// AsHdfsSource is the BasicCopySource implementation for QuickBooksSource.
69041func (qbs QuickBooksSource) AsHdfsSource() (*HdfsSource, bool) {
69042	return nil, false
69043}
69044
69045// AsFileSystemSource is the BasicCopySource implementation for QuickBooksSource.
69046func (qbs QuickBooksSource) AsFileSystemSource() (*FileSystemSource, bool) {
69047	return nil, false
69048}
69049
69050// AsSQLDWSource is the BasicCopySource implementation for QuickBooksSource.
69051func (qbs QuickBooksSource) AsSQLDWSource() (*SQLDWSource, bool) {
69052	return nil, false
69053}
69054
69055// AsSQLSource is the BasicCopySource implementation for QuickBooksSource.
69056func (qbs QuickBooksSource) AsSQLSource() (*SQLSource, bool) {
69057	return nil, false
69058}
69059
69060// AsSapEccSource is the BasicCopySource implementation for QuickBooksSource.
69061func (qbs QuickBooksSource) AsSapEccSource() (*SapEccSource, bool) {
69062	return nil, false
69063}
69064
69065// AsSapCloudForCustomerSource is the BasicCopySource implementation for QuickBooksSource.
69066func (qbs QuickBooksSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
69067	return nil, false
69068}
69069
69070// AsSalesforceSource is the BasicCopySource implementation for QuickBooksSource.
69071func (qbs QuickBooksSource) AsSalesforceSource() (*SalesforceSource, bool) {
69072	return nil, false
69073}
69074
69075// AsRelationalSource is the BasicCopySource implementation for QuickBooksSource.
69076func (qbs QuickBooksSource) AsRelationalSource() (*RelationalSource, bool) {
69077	return nil, false
69078}
69079
69080// AsDynamicsSource is the BasicCopySource implementation for QuickBooksSource.
69081func (qbs QuickBooksSource) AsDynamicsSource() (*DynamicsSource, bool) {
69082	return nil, false
69083}
69084
69085// AsDocumentDbCollectionSource is the BasicCopySource implementation for QuickBooksSource.
69086func (qbs QuickBooksSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
69087	return nil, false
69088}
69089
69090// AsBlobSource is the BasicCopySource implementation for QuickBooksSource.
69091func (qbs QuickBooksSource) AsBlobSource() (*BlobSource, bool) {
69092	return nil, false
69093}
69094
69095// AsAzureTableSource is the BasicCopySource implementation for QuickBooksSource.
69096func (qbs QuickBooksSource) AsAzureTableSource() (*AzureTableSource, bool) {
69097	return nil, false
69098}
69099
69100// AsCopySource is the BasicCopySource implementation for QuickBooksSource.
69101func (qbs QuickBooksSource) AsCopySource() (*CopySource, bool) {
69102	return nil, false
69103}
69104
69105// AsBasicCopySource is the BasicCopySource implementation for QuickBooksSource.
69106func (qbs QuickBooksSource) AsBasicCopySource() (BasicCopySource, bool) {
69107	return &qbs, true
69108}
69109
69110// RecurrenceSchedule the recurrence schedule.
69111type RecurrenceSchedule struct {
69112	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69113	AdditionalProperties map[string]interface{} `json:""`
69114	// Minutes - The minutes.
69115	Minutes *[]int32 `json:"minutes,omitempty"`
69116	// Hours - The hours.
69117	Hours *[]int32 `json:"hours,omitempty"`
69118	// WeekDays - The days of the week.
69119	WeekDays *[]DaysOfWeek `json:"weekDays,omitempty"`
69120	// MonthDays - The month days.
69121	MonthDays *[]int32 `json:"monthDays,omitempty"`
69122	// MonthlyOccurrences - The monthly occurrences.
69123	MonthlyOccurrences *[]RecurrenceScheduleOccurrence `json:"monthlyOccurrences,omitempty"`
69124}
69125
69126// MarshalJSON is the custom marshaler for RecurrenceSchedule.
69127func (rs RecurrenceSchedule) MarshalJSON() ([]byte, error) {
69128	objectMap := make(map[string]interface{})
69129	if rs.Minutes != nil {
69130		objectMap["minutes"] = rs.Minutes
69131	}
69132	if rs.Hours != nil {
69133		objectMap["hours"] = rs.Hours
69134	}
69135	if rs.WeekDays != nil {
69136		objectMap["weekDays"] = rs.WeekDays
69137	}
69138	if rs.MonthDays != nil {
69139		objectMap["monthDays"] = rs.MonthDays
69140	}
69141	if rs.MonthlyOccurrences != nil {
69142		objectMap["monthlyOccurrences"] = rs.MonthlyOccurrences
69143	}
69144	for k, v := range rs.AdditionalProperties {
69145		objectMap[k] = v
69146	}
69147	return json.Marshal(objectMap)
69148}
69149
69150// RecurrenceScheduleOccurrence the recurrence schedule occurence.
69151type RecurrenceScheduleOccurrence struct {
69152	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69153	AdditionalProperties map[string]interface{} `json:""`
69154	// Day - The day of the week. Possible values include: 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'
69155	Day DayOfWeek `json:"day,omitempty"`
69156	// Occurrence - The occurrence.
69157	Occurrence *int32 `json:"occurrence,omitempty"`
69158}
69159
69160// MarshalJSON is the custom marshaler for RecurrenceScheduleOccurrence.
69161func (rso RecurrenceScheduleOccurrence) MarshalJSON() ([]byte, error) {
69162	objectMap := make(map[string]interface{})
69163	if rso.Day != "" {
69164		objectMap["day"] = rso.Day
69165	}
69166	if rso.Occurrence != nil {
69167		objectMap["occurrence"] = rso.Occurrence
69168	}
69169	for k, v := range rso.AdditionalProperties {
69170		objectMap[k] = v
69171	}
69172	return json.Marshal(objectMap)
69173}
69174
69175// RedirectIncompatibleRowSettings redirect incompatible row settings
69176type RedirectIncompatibleRowSettings struct {
69177	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69178	AdditionalProperties map[string]interface{} `json:""`
69179	// LinkedServiceName - Name of the Azure Storage, Storage SAS, or Azure Data Lake Store linked service used for redirecting incompatible row. Must be specified if redirectIncompatibleRowSettings is specified. Type: string (or Expression with resultType string).
69180	LinkedServiceName interface{} `json:"linkedServiceName,omitempty"`
69181	// Path - The path for storing the redirect incompatible row data. Type: string (or Expression with resultType string).
69182	Path interface{} `json:"path,omitempty"`
69183}
69184
69185// MarshalJSON is the custom marshaler for RedirectIncompatibleRowSettings.
69186func (rirs RedirectIncompatibleRowSettings) MarshalJSON() ([]byte, error) {
69187	objectMap := make(map[string]interface{})
69188	objectMap["linkedServiceName"] = rirs.LinkedServiceName
69189	objectMap["path"] = rirs.Path
69190	for k, v := range rirs.AdditionalProperties {
69191		objectMap[k] = v
69192	}
69193	return json.Marshal(objectMap)
69194}
69195
69196// RedshiftUnloadSettings the Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift
69197// with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the
69198// targeted sink from the interim S3.
69199type RedshiftUnloadSettings struct {
69200	// S3LinkedServiceName - The name of the Amazon S3 linked service which will be used for the unload operation when copying from the Amazon Redshift source.
69201	S3LinkedServiceName *LinkedServiceReference `json:"s3LinkedServiceName,omitempty"`
69202	// BucketName - The bucket of the interim Amazon S3 which will be used to store the unloaded data from Amazon Redshift source. The bucket must be in the same region as the Amazon Redshift source. Type: string (or Expression with resultType string).
69203	BucketName interface{} `json:"bucketName,omitempty"`
69204}
69205
69206// RelationalSource a copy activity source for various relational databases.
69207type RelationalSource struct {
69208	// Query - Database query. Type: string (or Expression with resultType string).
69209	Query interface{} `json:"query,omitempty"`
69210	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69211	AdditionalProperties map[string]interface{} `json:""`
69212	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
69213	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
69214	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
69215	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
69216	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
69217	Type TypeBasicCopySource `json:"type,omitempty"`
69218}
69219
69220// MarshalJSON is the custom marshaler for RelationalSource.
69221func (rs RelationalSource) MarshalJSON() ([]byte, error) {
69222	rs.Type = TypeRelationalSource
69223	objectMap := make(map[string]interface{})
69224	objectMap["query"] = rs.Query
69225	objectMap["sourceRetryCount"] = rs.SourceRetryCount
69226	objectMap["sourceRetryWait"] = rs.SourceRetryWait
69227	if rs.Type != "" {
69228		objectMap["type"] = rs.Type
69229	}
69230	for k, v := range rs.AdditionalProperties {
69231		objectMap[k] = v
69232	}
69233	return json.Marshal(objectMap)
69234}
69235
69236// AsAmazonRedshiftSource is the BasicCopySource implementation for RelationalSource.
69237func (rs RelationalSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
69238	return nil, false
69239}
69240
69241// AsResponsysSource is the BasicCopySource implementation for RelationalSource.
69242func (rs RelationalSource) AsResponsysSource() (*ResponsysSource, bool) {
69243	return nil, false
69244}
69245
69246// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for RelationalSource.
69247func (rs RelationalSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
69248	return nil, false
69249}
69250
69251// AsVerticaSource is the BasicCopySource implementation for RelationalSource.
69252func (rs RelationalSource) AsVerticaSource() (*VerticaSource, bool) {
69253	return nil, false
69254}
69255
69256// AsNetezzaSource is the BasicCopySource implementation for RelationalSource.
69257func (rs RelationalSource) AsNetezzaSource() (*NetezzaSource, bool) {
69258	return nil, false
69259}
69260
69261// AsZohoSource is the BasicCopySource implementation for RelationalSource.
69262func (rs RelationalSource) AsZohoSource() (*ZohoSource, bool) {
69263	return nil, false
69264}
69265
69266// AsXeroSource is the BasicCopySource implementation for RelationalSource.
69267func (rs RelationalSource) AsXeroSource() (*XeroSource, bool) {
69268	return nil, false
69269}
69270
69271// AsSquareSource is the BasicCopySource implementation for RelationalSource.
69272func (rs RelationalSource) AsSquareSource() (*SquareSource, bool) {
69273	return nil, false
69274}
69275
69276// AsSparkSource is the BasicCopySource implementation for RelationalSource.
69277func (rs RelationalSource) AsSparkSource() (*SparkSource, bool) {
69278	return nil, false
69279}
69280
69281// AsShopifySource is the BasicCopySource implementation for RelationalSource.
69282func (rs RelationalSource) AsShopifySource() (*ShopifySource, bool) {
69283	return nil, false
69284}
69285
69286// AsServiceNowSource is the BasicCopySource implementation for RelationalSource.
69287func (rs RelationalSource) AsServiceNowSource() (*ServiceNowSource, bool) {
69288	return nil, false
69289}
69290
69291// AsQuickBooksSource is the BasicCopySource implementation for RelationalSource.
69292func (rs RelationalSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
69293	return nil, false
69294}
69295
69296// AsPrestoSource is the BasicCopySource implementation for RelationalSource.
69297func (rs RelationalSource) AsPrestoSource() (*PrestoSource, bool) {
69298	return nil, false
69299}
69300
69301// AsPhoenixSource is the BasicCopySource implementation for RelationalSource.
69302func (rs RelationalSource) AsPhoenixSource() (*PhoenixSource, bool) {
69303	return nil, false
69304}
69305
69306// AsPaypalSource is the BasicCopySource implementation for RelationalSource.
69307func (rs RelationalSource) AsPaypalSource() (*PaypalSource, bool) {
69308	return nil, false
69309}
69310
69311// AsMarketoSource is the BasicCopySource implementation for RelationalSource.
69312func (rs RelationalSource) AsMarketoSource() (*MarketoSource, bool) {
69313	return nil, false
69314}
69315
69316// AsMariaDBSource is the BasicCopySource implementation for RelationalSource.
69317func (rs RelationalSource) AsMariaDBSource() (*MariaDBSource, bool) {
69318	return nil, false
69319}
69320
69321// AsMagentoSource is the BasicCopySource implementation for RelationalSource.
69322func (rs RelationalSource) AsMagentoSource() (*MagentoSource, bool) {
69323	return nil, false
69324}
69325
69326// AsJiraSource is the BasicCopySource implementation for RelationalSource.
69327func (rs RelationalSource) AsJiraSource() (*JiraSource, bool) {
69328	return nil, false
69329}
69330
69331// AsImpalaSource is the BasicCopySource implementation for RelationalSource.
69332func (rs RelationalSource) AsImpalaSource() (*ImpalaSource, bool) {
69333	return nil, false
69334}
69335
69336// AsHubspotSource is the BasicCopySource implementation for RelationalSource.
69337func (rs RelationalSource) AsHubspotSource() (*HubspotSource, bool) {
69338	return nil, false
69339}
69340
69341// AsHiveSource is the BasicCopySource implementation for RelationalSource.
69342func (rs RelationalSource) AsHiveSource() (*HiveSource, bool) {
69343	return nil, false
69344}
69345
69346// AsHBaseSource is the BasicCopySource implementation for RelationalSource.
69347func (rs RelationalSource) AsHBaseSource() (*HBaseSource, bool) {
69348	return nil, false
69349}
69350
69351// AsGreenplumSource is the BasicCopySource implementation for RelationalSource.
69352func (rs RelationalSource) AsGreenplumSource() (*GreenplumSource, bool) {
69353	return nil, false
69354}
69355
69356// AsGoogleBigQuerySource is the BasicCopySource implementation for RelationalSource.
69357func (rs RelationalSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
69358	return nil, false
69359}
69360
69361// AsEloquaSource is the BasicCopySource implementation for RelationalSource.
69362func (rs RelationalSource) AsEloquaSource() (*EloquaSource, bool) {
69363	return nil, false
69364}
69365
69366// AsDrillSource is the BasicCopySource implementation for RelationalSource.
69367func (rs RelationalSource) AsDrillSource() (*DrillSource, bool) {
69368	return nil, false
69369}
69370
69371// AsCouchbaseSource is the BasicCopySource implementation for RelationalSource.
69372func (rs RelationalSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
69373	return nil, false
69374}
69375
69376// AsConcurSource is the BasicCopySource implementation for RelationalSource.
69377func (rs RelationalSource) AsConcurSource() (*ConcurSource, bool) {
69378	return nil, false
69379}
69380
69381// AsAzurePostgreSQLSource is the BasicCopySource implementation for RelationalSource.
69382func (rs RelationalSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
69383	return nil, false
69384}
69385
69386// AsAmazonMWSSource is the BasicCopySource implementation for RelationalSource.
69387func (rs RelationalSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
69388	return nil, false
69389}
69390
69391// AsHTTPSource is the BasicCopySource implementation for RelationalSource.
69392func (rs RelationalSource) AsHTTPSource() (*HTTPSource, bool) {
69393	return nil, false
69394}
69395
69396// AsAzureDataLakeStoreSource is the BasicCopySource implementation for RelationalSource.
69397func (rs RelationalSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
69398	return nil, false
69399}
69400
69401// AsMongoDbSource is the BasicCopySource implementation for RelationalSource.
69402func (rs RelationalSource) AsMongoDbSource() (*MongoDbSource, bool) {
69403	return nil, false
69404}
69405
69406// AsCassandraSource is the BasicCopySource implementation for RelationalSource.
69407func (rs RelationalSource) AsCassandraSource() (*CassandraSource, bool) {
69408	return nil, false
69409}
69410
69411// AsWebSource is the BasicCopySource implementation for RelationalSource.
69412func (rs RelationalSource) AsWebSource() (*WebSource, bool) {
69413	return nil, false
69414}
69415
69416// AsOracleSource is the BasicCopySource implementation for RelationalSource.
69417func (rs RelationalSource) AsOracleSource() (*OracleSource, bool) {
69418	return nil, false
69419}
69420
69421// AsAzureMySQLSource is the BasicCopySource implementation for RelationalSource.
69422func (rs RelationalSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
69423	return nil, false
69424}
69425
69426// AsHdfsSource is the BasicCopySource implementation for RelationalSource.
69427func (rs RelationalSource) AsHdfsSource() (*HdfsSource, bool) {
69428	return nil, false
69429}
69430
69431// AsFileSystemSource is the BasicCopySource implementation for RelationalSource.
69432func (rs RelationalSource) AsFileSystemSource() (*FileSystemSource, bool) {
69433	return nil, false
69434}
69435
69436// AsSQLDWSource is the BasicCopySource implementation for RelationalSource.
69437func (rs RelationalSource) AsSQLDWSource() (*SQLDWSource, bool) {
69438	return nil, false
69439}
69440
69441// AsSQLSource is the BasicCopySource implementation for RelationalSource.
69442func (rs RelationalSource) AsSQLSource() (*SQLSource, bool) {
69443	return nil, false
69444}
69445
69446// AsSapEccSource is the BasicCopySource implementation for RelationalSource.
69447func (rs RelationalSource) AsSapEccSource() (*SapEccSource, bool) {
69448	return nil, false
69449}
69450
69451// AsSapCloudForCustomerSource is the BasicCopySource implementation for RelationalSource.
69452func (rs RelationalSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
69453	return nil, false
69454}
69455
69456// AsSalesforceSource is the BasicCopySource implementation for RelationalSource.
69457func (rs RelationalSource) AsSalesforceSource() (*SalesforceSource, bool) {
69458	return nil, false
69459}
69460
69461// AsRelationalSource is the BasicCopySource implementation for RelationalSource.
69462func (rs RelationalSource) AsRelationalSource() (*RelationalSource, bool) {
69463	return &rs, true
69464}
69465
69466// AsDynamicsSource is the BasicCopySource implementation for RelationalSource.
69467func (rs RelationalSource) AsDynamicsSource() (*DynamicsSource, bool) {
69468	return nil, false
69469}
69470
69471// AsDocumentDbCollectionSource is the BasicCopySource implementation for RelationalSource.
69472func (rs RelationalSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
69473	return nil, false
69474}
69475
69476// AsBlobSource is the BasicCopySource implementation for RelationalSource.
69477func (rs RelationalSource) AsBlobSource() (*BlobSource, bool) {
69478	return nil, false
69479}
69480
69481// AsAzureTableSource is the BasicCopySource implementation for RelationalSource.
69482func (rs RelationalSource) AsAzureTableSource() (*AzureTableSource, bool) {
69483	return nil, false
69484}
69485
69486// AsCopySource is the BasicCopySource implementation for RelationalSource.
69487func (rs RelationalSource) AsCopySource() (*CopySource, bool) {
69488	return nil, false
69489}
69490
69491// AsBasicCopySource is the BasicCopySource implementation for RelationalSource.
69492func (rs RelationalSource) AsBasicCopySource() (BasicCopySource, bool) {
69493	return &rs, true
69494}
69495
69496// RelationalTableDataset the relational table dataset.
69497type RelationalTableDataset struct {
69498	// RelationalTableDatasetTypeProperties - Relational table dataset properties.
69499	*RelationalTableDatasetTypeProperties `json:"typeProperties,omitempty"`
69500	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69501	AdditionalProperties map[string]interface{} `json:""`
69502	// Description - Dataset description.
69503	Description *string `json:"description,omitempty"`
69504	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
69505	Structure interface{} `json:"structure,omitempty"`
69506	// LinkedServiceName - Linked service reference.
69507	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
69508	// Parameters - Parameters for dataset.
69509	Parameters map[string]*ParameterSpecification `json:"parameters"`
69510	// Annotations - List of tags that can be used for describing the Dataset.
69511	Annotations *[]interface{} `json:"annotations,omitempty"`
69512	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
69513	Type TypeBasicDataset `json:"type,omitempty"`
69514}
69515
69516// MarshalJSON is the custom marshaler for RelationalTableDataset.
69517func (rtd RelationalTableDataset) MarshalJSON() ([]byte, error) {
69518	rtd.Type = TypeRelationalTable
69519	objectMap := make(map[string]interface{})
69520	if rtd.RelationalTableDatasetTypeProperties != nil {
69521		objectMap["typeProperties"] = rtd.RelationalTableDatasetTypeProperties
69522	}
69523	if rtd.Description != nil {
69524		objectMap["description"] = rtd.Description
69525	}
69526	objectMap["structure"] = rtd.Structure
69527	if rtd.LinkedServiceName != nil {
69528		objectMap["linkedServiceName"] = rtd.LinkedServiceName
69529	}
69530	if rtd.Parameters != nil {
69531		objectMap["parameters"] = rtd.Parameters
69532	}
69533	if rtd.Annotations != nil {
69534		objectMap["annotations"] = rtd.Annotations
69535	}
69536	if rtd.Type != "" {
69537		objectMap["type"] = rtd.Type
69538	}
69539	for k, v := range rtd.AdditionalProperties {
69540		objectMap[k] = v
69541	}
69542	return json.Marshal(objectMap)
69543}
69544
69545// AsResponsysObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69546func (rtd RelationalTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
69547	return nil, false
69548}
69549
69550// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69551func (rtd RelationalTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
69552	return nil, false
69553}
69554
69555// AsVerticaTableDataset is the BasicDataset implementation for RelationalTableDataset.
69556func (rtd RelationalTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
69557	return nil, false
69558}
69559
69560// AsNetezzaTableDataset is the BasicDataset implementation for RelationalTableDataset.
69561func (rtd RelationalTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
69562	return nil, false
69563}
69564
69565// AsZohoObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69566func (rtd RelationalTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
69567	return nil, false
69568}
69569
69570// AsXeroObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69571func (rtd RelationalTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
69572	return nil, false
69573}
69574
69575// AsSquareObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69576func (rtd RelationalTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
69577	return nil, false
69578}
69579
69580// AsSparkObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69581func (rtd RelationalTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
69582	return nil, false
69583}
69584
69585// AsShopifyObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69586func (rtd RelationalTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
69587	return nil, false
69588}
69589
69590// AsServiceNowObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69591func (rtd RelationalTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
69592	return nil, false
69593}
69594
69595// AsQuickBooksObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69596func (rtd RelationalTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
69597	return nil, false
69598}
69599
69600// AsPrestoObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69601func (rtd RelationalTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
69602	return nil, false
69603}
69604
69605// AsPhoenixObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69606func (rtd RelationalTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
69607	return nil, false
69608}
69609
69610// AsPaypalObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69611func (rtd RelationalTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
69612	return nil, false
69613}
69614
69615// AsMarketoObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69616func (rtd RelationalTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
69617	return nil, false
69618}
69619
69620// AsMariaDBTableDataset is the BasicDataset implementation for RelationalTableDataset.
69621func (rtd RelationalTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
69622	return nil, false
69623}
69624
69625// AsMagentoObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69626func (rtd RelationalTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
69627	return nil, false
69628}
69629
69630// AsJiraObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69631func (rtd RelationalTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
69632	return nil, false
69633}
69634
69635// AsImpalaObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69636func (rtd RelationalTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
69637	return nil, false
69638}
69639
69640// AsHubspotObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69641func (rtd RelationalTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
69642	return nil, false
69643}
69644
69645// AsHiveObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69646func (rtd RelationalTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
69647	return nil, false
69648}
69649
69650// AsHBaseObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69651func (rtd RelationalTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
69652	return nil, false
69653}
69654
69655// AsGreenplumTableDataset is the BasicDataset implementation for RelationalTableDataset.
69656func (rtd RelationalTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
69657	return nil, false
69658}
69659
69660// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69661func (rtd RelationalTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
69662	return nil, false
69663}
69664
69665// AsEloquaObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69666func (rtd RelationalTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
69667	return nil, false
69668}
69669
69670// AsDrillTableDataset is the BasicDataset implementation for RelationalTableDataset.
69671func (rtd RelationalTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
69672	return nil, false
69673}
69674
69675// AsCouchbaseTableDataset is the BasicDataset implementation for RelationalTableDataset.
69676func (rtd RelationalTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
69677	return nil, false
69678}
69679
69680// AsConcurObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69681func (rtd RelationalTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
69682	return nil, false
69683}
69684
69685// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for RelationalTableDataset.
69686func (rtd RelationalTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
69687	return nil, false
69688}
69689
69690// AsAmazonMWSObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69691func (rtd RelationalTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
69692	return nil, false
69693}
69694
69695// AsHTTPDataset is the BasicDataset implementation for RelationalTableDataset.
69696func (rtd RelationalTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
69697	return nil, false
69698}
69699
69700// AsAzureSearchIndexDataset is the BasicDataset implementation for RelationalTableDataset.
69701func (rtd RelationalTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
69702	return nil, false
69703}
69704
69705// AsWebTableDataset is the BasicDataset implementation for RelationalTableDataset.
69706func (rtd RelationalTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
69707	return nil, false
69708}
69709
69710// AsSQLServerTableDataset is the BasicDataset implementation for RelationalTableDataset.
69711func (rtd RelationalTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
69712	return nil, false
69713}
69714
69715// AsSapEccResourceDataset is the BasicDataset implementation for RelationalTableDataset.
69716func (rtd RelationalTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
69717	return nil, false
69718}
69719
69720// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for RelationalTableDataset.
69721func (rtd RelationalTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
69722	return nil, false
69723}
69724
69725// AsSalesforceObjectDataset is the BasicDataset implementation for RelationalTableDataset.
69726func (rtd RelationalTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
69727	return nil, false
69728}
69729
69730// AsRelationalTableDataset is the BasicDataset implementation for RelationalTableDataset.
69731func (rtd RelationalTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
69732	return &rtd, true
69733}
69734
69735// AsAzureMySQLTableDataset is the BasicDataset implementation for RelationalTableDataset.
69736func (rtd RelationalTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
69737	return nil, false
69738}
69739
69740// AsOracleTableDataset is the BasicDataset implementation for RelationalTableDataset.
69741func (rtd RelationalTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
69742	return nil, false
69743}
69744
69745// AsODataResourceDataset is the BasicDataset implementation for RelationalTableDataset.
69746func (rtd RelationalTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
69747	return nil, false
69748}
69749
69750// AsMongoDbCollectionDataset is the BasicDataset implementation for RelationalTableDataset.
69751func (rtd RelationalTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
69752	return nil, false
69753}
69754
69755// AsFileShareDataset is the BasicDataset implementation for RelationalTableDataset.
69756func (rtd RelationalTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
69757	return nil, false
69758}
69759
69760// AsAzureDataLakeStoreDataset is the BasicDataset implementation for RelationalTableDataset.
69761func (rtd RelationalTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
69762	return nil, false
69763}
69764
69765// AsDynamicsEntityDataset is the BasicDataset implementation for RelationalTableDataset.
69766func (rtd RelationalTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
69767	return nil, false
69768}
69769
69770// AsDocumentDbCollectionDataset is the BasicDataset implementation for RelationalTableDataset.
69771func (rtd RelationalTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
69772	return nil, false
69773}
69774
69775// AsCustomDataset is the BasicDataset implementation for RelationalTableDataset.
69776func (rtd RelationalTableDataset) AsCustomDataset() (*CustomDataset, bool) {
69777	return nil, false
69778}
69779
69780// AsCassandraTableDataset is the BasicDataset implementation for RelationalTableDataset.
69781func (rtd RelationalTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
69782	return nil, false
69783}
69784
69785// AsAzureSQLDWTableDataset is the BasicDataset implementation for RelationalTableDataset.
69786func (rtd RelationalTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
69787	return nil, false
69788}
69789
69790// AsAzureSQLTableDataset is the BasicDataset implementation for RelationalTableDataset.
69791func (rtd RelationalTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
69792	return nil, false
69793}
69794
69795// AsAzureTableDataset is the BasicDataset implementation for RelationalTableDataset.
69796func (rtd RelationalTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
69797	return nil, false
69798}
69799
69800// AsAzureBlobDataset is the BasicDataset implementation for RelationalTableDataset.
69801func (rtd RelationalTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
69802	return nil, false
69803}
69804
69805// AsAmazonS3Dataset is the BasicDataset implementation for RelationalTableDataset.
69806func (rtd RelationalTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
69807	return nil, false
69808}
69809
69810// AsDataset is the BasicDataset implementation for RelationalTableDataset.
69811func (rtd RelationalTableDataset) AsDataset() (*Dataset, bool) {
69812	return nil, false
69813}
69814
69815// AsBasicDataset is the BasicDataset implementation for RelationalTableDataset.
69816func (rtd RelationalTableDataset) AsBasicDataset() (BasicDataset, bool) {
69817	return &rtd, true
69818}
69819
69820// UnmarshalJSON is the custom unmarshaler for RelationalTableDataset struct.
69821func (rtd *RelationalTableDataset) UnmarshalJSON(body []byte) error {
69822	var m map[string]*json.RawMessage
69823	err := json.Unmarshal(body, &m)
69824	if err != nil {
69825		return err
69826	}
69827	for k, v := range m {
69828		switch k {
69829		case "typeProperties":
69830			if v != nil {
69831				var relationalTableDatasetTypeProperties RelationalTableDatasetTypeProperties
69832				err = json.Unmarshal(*v, &relationalTableDatasetTypeProperties)
69833				if err != nil {
69834					return err
69835				}
69836				rtd.RelationalTableDatasetTypeProperties = &relationalTableDatasetTypeProperties
69837			}
69838		default:
69839			if v != nil {
69840				var additionalProperties interface{}
69841				err = json.Unmarshal(*v, &additionalProperties)
69842				if err != nil {
69843					return err
69844				}
69845				if rtd.AdditionalProperties == nil {
69846					rtd.AdditionalProperties = make(map[string]interface{})
69847				}
69848				rtd.AdditionalProperties[k] = additionalProperties
69849			}
69850		case "description":
69851			if v != nil {
69852				var description string
69853				err = json.Unmarshal(*v, &description)
69854				if err != nil {
69855					return err
69856				}
69857				rtd.Description = &description
69858			}
69859		case "structure":
69860			if v != nil {
69861				var structure interface{}
69862				err = json.Unmarshal(*v, &structure)
69863				if err != nil {
69864					return err
69865				}
69866				rtd.Structure = structure
69867			}
69868		case "linkedServiceName":
69869			if v != nil {
69870				var linkedServiceName LinkedServiceReference
69871				err = json.Unmarshal(*v, &linkedServiceName)
69872				if err != nil {
69873					return err
69874				}
69875				rtd.LinkedServiceName = &linkedServiceName
69876			}
69877		case "parameters":
69878			if v != nil {
69879				var parameters map[string]*ParameterSpecification
69880				err = json.Unmarshal(*v, &parameters)
69881				if err != nil {
69882					return err
69883				}
69884				rtd.Parameters = parameters
69885			}
69886		case "annotations":
69887			if v != nil {
69888				var annotations []interface{}
69889				err = json.Unmarshal(*v, &annotations)
69890				if err != nil {
69891					return err
69892				}
69893				rtd.Annotations = &annotations
69894			}
69895		case "type":
69896			if v != nil {
69897				var typeVar TypeBasicDataset
69898				err = json.Unmarshal(*v, &typeVar)
69899				if err != nil {
69900					return err
69901				}
69902				rtd.Type = typeVar
69903			}
69904		}
69905	}
69906
69907	return nil
69908}
69909
69910// RelationalTableDatasetTypeProperties relational table dataset properties.
69911type RelationalTableDatasetTypeProperties struct {
69912	// TableName - The relational table name. Type: string (or Expression with resultType string).
69913	TableName interface{} `json:"tableName,omitempty"`
69914}
69915
69916// Resource azure Data Factory top-level resource.
69917type Resource struct {
69918	// ID - The resource identifier.
69919	ID *string `json:"id,omitempty"`
69920	// Name - The resource name.
69921	Name *string `json:"name,omitempty"`
69922	// Type - The resource type.
69923	Type *string `json:"type,omitempty"`
69924	// Location - The resource location.
69925	Location *string `json:"location,omitempty"`
69926	// Tags - The resource tags.
69927	Tags map[string]*string `json:"tags"`
69928}
69929
69930// MarshalJSON is the custom marshaler for Resource.
69931func (r Resource) MarshalJSON() ([]byte, error) {
69932	objectMap := make(map[string]interface{})
69933	if r.ID != nil {
69934		objectMap["id"] = r.ID
69935	}
69936	if r.Name != nil {
69937		objectMap["name"] = r.Name
69938	}
69939	if r.Type != nil {
69940		objectMap["type"] = r.Type
69941	}
69942	if r.Location != nil {
69943		objectMap["location"] = r.Location
69944	}
69945	if r.Tags != nil {
69946		objectMap["tags"] = r.Tags
69947	}
69948	return json.Marshal(objectMap)
69949}
69950
69951// ResponsysLinkedService responsys linked service.
69952type ResponsysLinkedService struct {
69953	// ResponsysLinkedServiceTypeProperties - Responsys linked service properties.
69954	*ResponsysLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
69955	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
69956	AdditionalProperties map[string]interface{} `json:""`
69957	// ConnectVia - The integration runtime reference.
69958	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
69959	// Description - Linked service description.
69960	Description *string `json:"description,omitempty"`
69961	// Parameters - Parameters for linked service.
69962	Parameters map[string]*ParameterSpecification `json:"parameters"`
69963	// Annotations - List of tags that can be used for describing the Dataset.
69964	Annotations *[]interface{} `json:"annotations,omitempty"`
69965	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
69966	Type TypeBasicLinkedService `json:"type,omitempty"`
69967}
69968
69969// MarshalJSON is the custom marshaler for ResponsysLinkedService.
69970func (rls ResponsysLinkedService) MarshalJSON() ([]byte, error) {
69971	rls.Type = TypeResponsys
69972	objectMap := make(map[string]interface{})
69973	if rls.ResponsysLinkedServiceTypeProperties != nil {
69974		objectMap["typeProperties"] = rls.ResponsysLinkedServiceTypeProperties
69975	}
69976	if rls.ConnectVia != nil {
69977		objectMap["connectVia"] = rls.ConnectVia
69978	}
69979	if rls.Description != nil {
69980		objectMap["description"] = rls.Description
69981	}
69982	if rls.Parameters != nil {
69983		objectMap["parameters"] = rls.Parameters
69984	}
69985	if rls.Annotations != nil {
69986		objectMap["annotations"] = rls.Annotations
69987	}
69988	if rls.Type != "" {
69989		objectMap["type"] = rls.Type
69990	}
69991	for k, v := range rls.AdditionalProperties {
69992		objectMap[k] = v
69993	}
69994	return json.Marshal(objectMap)
69995}
69996
69997// AsResponsysLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
69998func (rls ResponsysLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
69999	return &rls, true
70000}
70001
70002// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70003func (rls ResponsysLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
70004	return nil, false
70005}
70006
70007// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70008func (rls ResponsysLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
70009	return nil, false
70010}
70011
70012// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70013func (rls ResponsysLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
70014	return nil, false
70015}
70016
70017// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70018func (rls ResponsysLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
70019	return nil, false
70020}
70021
70022// AsNetezzaLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70023func (rls ResponsysLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
70024	return nil, false
70025}
70026
70027// AsVerticaLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70028func (rls ResponsysLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
70029	return nil, false
70030}
70031
70032// AsZohoLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70033func (rls ResponsysLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
70034	return nil, false
70035}
70036
70037// AsXeroLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70038func (rls ResponsysLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
70039	return nil, false
70040}
70041
70042// AsSquareLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70043func (rls ResponsysLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
70044	return nil, false
70045}
70046
70047// AsSparkLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70048func (rls ResponsysLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
70049	return nil, false
70050}
70051
70052// AsShopifyLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70053func (rls ResponsysLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
70054	return nil, false
70055}
70056
70057// AsServiceNowLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70058func (rls ResponsysLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
70059	return nil, false
70060}
70061
70062// AsQuickBooksLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70063func (rls ResponsysLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
70064	return nil, false
70065}
70066
70067// AsPrestoLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70068func (rls ResponsysLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
70069	return nil, false
70070}
70071
70072// AsPhoenixLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70073func (rls ResponsysLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
70074	return nil, false
70075}
70076
70077// AsPaypalLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70078func (rls ResponsysLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
70079	return nil, false
70080}
70081
70082// AsMarketoLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70083func (rls ResponsysLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
70084	return nil, false
70085}
70086
70087// AsMariaDBLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70088func (rls ResponsysLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
70089	return nil, false
70090}
70091
70092// AsMagentoLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70093func (rls ResponsysLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
70094	return nil, false
70095}
70096
70097// AsJiraLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70098func (rls ResponsysLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
70099	return nil, false
70100}
70101
70102// AsImpalaLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70103func (rls ResponsysLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
70104	return nil, false
70105}
70106
70107// AsHubspotLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70108func (rls ResponsysLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
70109	return nil, false
70110}
70111
70112// AsHiveLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70113func (rls ResponsysLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
70114	return nil, false
70115}
70116
70117// AsHBaseLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70118func (rls ResponsysLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
70119	return nil, false
70120}
70121
70122// AsGreenplumLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70123func (rls ResponsysLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
70124	return nil, false
70125}
70126
70127// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70128func (rls ResponsysLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
70129	return nil, false
70130}
70131
70132// AsEloquaLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70133func (rls ResponsysLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
70134	return nil, false
70135}
70136
70137// AsDrillLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70138func (rls ResponsysLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
70139	return nil, false
70140}
70141
70142// AsCouchbaseLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70143func (rls ResponsysLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
70144	return nil, false
70145}
70146
70147// AsConcurLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70148func (rls ResponsysLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
70149	return nil, false
70150}
70151
70152// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70153func (rls ResponsysLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
70154	return nil, false
70155}
70156
70157// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70158func (rls ResponsysLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
70159	return nil, false
70160}
70161
70162// AsSapHanaLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70163func (rls ResponsysLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
70164	return nil, false
70165}
70166
70167// AsSapBWLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70168func (rls ResponsysLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
70169	return nil, false
70170}
70171
70172// AsSftpServerLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70173func (rls ResponsysLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
70174	return nil, false
70175}
70176
70177// AsFtpServerLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70178func (rls ResponsysLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
70179	return nil, false
70180}
70181
70182// AsHTTPLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70183func (rls ResponsysLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
70184	return nil, false
70185}
70186
70187// AsAzureSearchLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70188func (rls ResponsysLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
70189	return nil, false
70190}
70191
70192// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70193func (rls ResponsysLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
70194	return nil, false
70195}
70196
70197// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70198func (rls ResponsysLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
70199	return nil, false
70200}
70201
70202// AsAmazonS3LinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70203func (rls ResponsysLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
70204	return nil, false
70205}
70206
70207// AsSapEccLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70208func (rls ResponsysLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
70209	return nil, false
70210}
70211
70212// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70213func (rls ResponsysLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
70214	return nil, false
70215}
70216
70217// AsSalesforceLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70218func (rls ResponsysLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
70219	return nil, false
70220}
70221
70222// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70223func (rls ResponsysLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
70224	return nil, false
70225}
70226
70227// AsMongoDbLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70228func (rls ResponsysLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
70229	return nil, false
70230}
70231
70232// AsCassandraLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70233func (rls ResponsysLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
70234	return nil, false
70235}
70236
70237// AsWebLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70238func (rls ResponsysLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
70239	return nil, false
70240}
70241
70242// AsODataLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70243func (rls ResponsysLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
70244	return nil, false
70245}
70246
70247// AsHdfsLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70248func (rls ResponsysLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
70249	return nil, false
70250}
70251
70252// AsOdbcLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70253func (rls ResponsysLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
70254	return nil, false
70255}
70256
70257// AsAzureMLLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70258func (rls ResponsysLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
70259	return nil, false
70260}
70261
70262// AsTeradataLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70263func (rls ResponsysLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
70264	return nil, false
70265}
70266
70267// AsDb2LinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70268func (rls ResponsysLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
70269	return nil, false
70270}
70271
70272// AsSybaseLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70273func (rls ResponsysLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
70274	return nil, false
70275}
70276
70277// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70278func (rls ResponsysLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
70279	return nil, false
70280}
70281
70282// AsMySQLLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70283func (rls ResponsysLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
70284	return nil, false
70285}
70286
70287// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70288func (rls ResponsysLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
70289	return nil, false
70290}
70291
70292// AsOracleLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70293func (rls ResponsysLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
70294	return nil, false
70295}
70296
70297// AsFileServerLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70298func (rls ResponsysLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
70299	return nil, false
70300}
70301
70302// AsHDInsightLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70303func (rls ResponsysLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
70304	return nil, false
70305}
70306
70307// AsDynamicsLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70308func (rls ResponsysLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
70309	return nil, false
70310}
70311
70312// AsCosmosDbLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70313func (rls ResponsysLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
70314	return nil, false
70315}
70316
70317// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70318func (rls ResponsysLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
70319	return nil, false
70320}
70321
70322// AsAzureBatchLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70323func (rls ResponsysLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
70324	return nil, false
70325}
70326
70327// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70328func (rls ResponsysLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
70329	return nil, false
70330}
70331
70332// AsSQLServerLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70333func (rls ResponsysLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
70334	return nil, false
70335}
70336
70337// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70338func (rls ResponsysLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
70339	return nil, false
70340}
70341
70342// AsAzureStorageLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70343func (rls ResponsysLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
70344	return nil, false
70345}
70346
70347// AsLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70348func (rls ResponsysLinkedService) AsLinkedService() (*LinkedService, bool) {
70349	return nil, false
70350}
70351
70352// AsBasicLinkedService is the BasicLinkedService implementation for ResponsysLinkedService.
70353func (rls ResponsysLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
70354	return &rls, true
70355}
70356
70357// UnmarshalJSON is the custom unmarshaler for ResponsysLinkedService struct.
70358func (rls *ResponsysLinkedService) UnmarshalJSON(body []byte) error {
70359	var m map[string]*json.RawMessage
70360	err := json.Unmarshal(body, &m)
70361	if err != nil {
70362		return err
70363	}
70364	for k, v := range m {
70365		switch k {
70366		case "typeProperties":
70367			if v != nil {
70368				var responsysLinkedServiceTypeProperties ResponsysLinkedServiceTypeProperties
70369				err = json.Unmarshal(*v, &responsysLinkedServiceTypeProperties)
70370				if err != nil {
70371					return err
70372				}
70373				rls.ResponsysLinkedServiceTypeProperties = &responsysLinkedServiceTypeProperties
70374			}
70375		default:
70376			if v != nil {
70377				var additionalProperties interface{}
70378				err = json.Unmarshal(*v, &additionalProperties)
70379				if err != nil {
70380					return err
70381				}
70382				if rls.AdditionalProperties == nil {
70383					rls.AdditionalProperties = make(map[string]interface{})
70384				}
70385				rls.AdditionalProperties[k] = additionalProperties
70386			}
70387		case "connectVia":
70388			if v != nil {
70389				var connectVia IntegrationRuntimeReference
70390				err = json.Unmarshal(*v, &connectVia)
70391				if err != nil {
70392					return err
70393				}
70394				rls.ConnectVia = &connectVia
70395			}
70396		case "description":
70397			if v != nil {
70398				var description string
70399				err = json.Unmarshal(*v, &description)
70400				if err != nil {
70401					return err
70402				}
70403				rls.Description = &description
70404			}
70405		case "parameters":
70406			if v != nil {
70407				var parameters map[string]*ParameterSpecification
70408				err = json.Unmarshal(*v, &parameters)
70409				if err != nil {
70410					return err
70411				}
70412				rls.Parameters = parameters
70413			}
70414		case "annotations":
70415			if v != nil {
70416				var annotations []interface{}
70417				err = json.Unmarshal(*v, &annotations)
70418				if err != nil {
70419					return err
70420				}
70421				rls.Annotations = &annotations
70422			}
70423		case "type":
70424			if v != nil {
70425				var typeVar TypeBasicLinkedService
70426				err = json.Unmarshal(*v, &typeVar)
70427				if err != nil {
70428					return err
70429				}
70430				rls.Type = typeVar
70431			}
70432		}
70433	}
70434
70435	return nil
70436}
70437
70438// ResponsysLinkedServiceTypeProperties responsys linked service properties.
70439type ResponsysLinkedServiceTypeProperties struct {
70440	// Endpoint - The endpoint of the Responsys server.
70441	Endpoint interface{} `json:"endpoint,omitempty"`
70442	// ClientID - The client ID associated with the Responsys application. Type: string (or Expression with resultType string).
70443	ClientID interface{} `json:"clientId,omitempty"`
70444	// ClientSecret - The client secret associated with the Responsys application. Type: string (or Expression with resultType string).
70445	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
70446	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).
70447	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
70448	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).
70449	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
70450	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).
70451	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
70452	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
70453	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
70454}
70455
70456// UnmarshalJSON is the custom unmarshaler for ResponsysLinkedServiceTypeProperties struct.
70457func (rlstp *ResponsysLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
70458	var m map[string]*json.RawMessage
70459	err := json.Unmarshal(body, &m)
70460	if err != nil {
70461		return err
70462	}
70463	for k, v := range m {
70464		switch k {
70465		case "endpoint":
70466			if v != nil {
70467				var endpoint interface{}
70468				err = json.Unmarshal(*v, &endpoint)
70469				if err != nil {
70470					return err
70471				}
70472				rlstp.Endpoint = endpoint
70473			}
70474		case "clientId":
70475			if v != nil {
70476				var clientID interface{}
70477				err = json.Unmarshal(*v, &clientID)
70478				if err != nil {
70479					return err
70480				}
70481				rlstp.ClientID = clientID
70482			}
70483		case "clientSecret":
70484			if v != nil {
70485				clientSecret, err := unmarshalBasicSecretBase(*v)
70486				if err != nil {
70487					return err
70488				}
70489				rlstp.ClientSecret = clientSecret
70490			}
70491		case "useEncryptedEndpoints":
70492			if v != nil {
70493				var useEncryptedEndpoints interface{}
70494				err = json.Unmarshal(*v, &useEncryptedEndpoints)
70495				if err != nil {
70496					return err
70497				}
70498				rlstp.UseEncryptedEndpoints = useEncryptedEndpoints
70499			}
70500		case "useHostVerification":
70501			if v != nil {
70502				var useHostVerification interface{}
70503				err = json.Unmarshal(*v, &useHostVerification)
70504				if err != nil {
70505					return err
70506				}
70507				rlstp.UseHostVerification = useHostVerification
70508			}
70509		case "usePeerVerification":
70510			if v != nil {
70511				var usePeerVerification interface{}
70512				err = json.Unmarshal(*v, &usePeerVerification)
70513				if err != nil {
70514					return err
70515				}
70516				rlstp.UsePeerVerification = usePeerVerification
70517			}
70518		case "encryptedCredential":
70519			if v != nil {
70520				var encryptedCredential interface{}
70521				err = json.Unmarshal(*v, &encryptedCredential)
70522				if err != nil {
70523					return err
70524				}
70525				rlstp.EncryptedCredential = encryptedCredential
70526			}
70527		}
70528	}
70529
70530	return nil
70531}
70532
70533// ResponsysObjectDataset responsys dataset.
70534type ResponsysObjectDataset struct {
70535	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
70536	AdditionalProperties map[string]interface{} `json:""`
70537	// Description - Dataset description.
70538	Description *string `json:"description,omitempty"`
70539	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
70540	Structure interface{} `json:"structure,omitempty"`
70541	// LinkedServiceName - Linked service reference.
70542	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
70543	// Parameters - Parameters for dataset.
70544	Parameters map[string]*ParameterSpecification `json:"parameters"`
70545	// Annotations - List of tags that can be used for describing the Dataset.
70546	Annotations *[]interface{} `json:"annotations,omitempty"`
70547	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
70548	Type TypeBasicDataset `json:"type,omitempty"`
70549}
70550
70551// MarshalJSON is the custom marshaler for ResponsysObjectDataset.
70552func (rod ResponsysObjectDataset) MarshalJSON() ([]byte, error) {
70553	rod.Type = TypeResponsysObject
70554	objectMap := make(map[string]interface{})
70555	if rod.Description != nil {
70556		objectMap["description"] = rod.Description
70557	}
70558	objectMap["structure"] = rod.Structure
70559	if rod.LinkedServiceName != nil {
70560		objectMap["linkedServiceName"] = rod.LinkedServiceName
70561	}
70562	if rod.Parameters != nil {
70563		objectMap["parameters"] = rod.Parameters
70564	}
70565	if rod.Annotations != nil {
70566		objectMap["annotations"] = rod.Annotations
70567	}
70568	if rod.Type != "" {
70569		objectMap["type"] = rod.Type
70570	}
70571	for k, v := range rod.AdditionalProperties {
70572		objectMap[k] = v
70573	}
70574	return json.Marshal(objectMap)
70575}
70576
70577// AsResponsysObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70578func (rod ResponsysObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
70579	return &rod, true
70580}
70581
70582// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70583func (rod ResponsysObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
70584	return nil, false
70585}
70586
70587// AsVerticaTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70588func (rod ResponsysObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
70589	return nil, false
70590}
70591
70592// AsNetezzaTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70593func (rod ResponsysObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
70594	return nil, false
70595}
70596
70597// AsZohoObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70598func (rod ResponsysObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
70599	return nil, false
70600}
70601
70602// AsXeroObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70603func (rod ResponsysObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
70604	return nil, false
70605}
70606
70607// AsSquareObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70608func (rod ResponsysObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
70609	return nil, false
70610}
70611
70612// AsSparkObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70613func (rod ResponsysObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
70614	return nil, false
70615}
70616
70617// AsShopifyObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70618func (rod ResponsysObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
70619	return nil, false
70620}
70621
70622// AsServiceNowObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70623func (rod ResponsysObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
70624	return nil, false
70625}
70626
70627// AsQuickBooksObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70628func (rod ResponsysObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
70629	return nil, false
70630}
70631
70632// AsPrestoObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70633func (rod ResponsysObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
70634	return nil, false
70635}
70636
70637// AsPhoenixObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70638func (rod ResponsysObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
70639	return nil, false
70640}
70641
70642// AsPaypalObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70643func (rod ResponsysObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
70644	return nil, false
70645}
70646
70647// AsMarketoObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70648func (rod ResponsysObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
70649	return nil, false
70650}
70651
70652// AsMariaDBTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70653func (rod ResponsysObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
70654	return nil, false
70655}
70656
70657// AsMagentoObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70658func (rod ResponsysObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
70659	return nil, false
70660}
70661
70662// AsJiraObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70663func (rod ResponsysObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
70664	return nil, false
70665}
70666
70667// AsImpalaObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70668func (rod ResponsysObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
70669	return nil, false
70670}
70671
70672// AsHubspotObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70673func (rod ResponsysObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
70674	return nil, false
70675}
70676
70677// AsHiveObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70678func (rod ResponsysObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
70679	return nil, false
70680}
70681
70682// AsHBaseObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70683func (rod ResponsysObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
70684	return nil, false
70685}
70686
70687// AsGreenplumTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70688func (rod ResponsysObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
70689	return nil, false
70690}
70691
70692// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70693func (rod ResponsysObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
70694	return nil, false
70695}
70696
70697// AsEloquaObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70698func (rod ResponsysObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
70699	return nil, false
70700}
70701
70702// AsDrillTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70703func (rod ResponsysObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
70704	return nil, false
70705}
70706
70707// AsCouchbaseTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70708func (rod ResponsysObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
70709	return nil, false
70710}
70711
70712// AsConcurObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70713func (rod ResponsysObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
70714	return nil, false
70715}
70716
70717// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70718func (rod ResponsysObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
70719	return nil, false
70720}
70721
70722// AsAmazonMWSObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70723func (rod ResponsysObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
70724	return nil, false
70725}
70726
70727// AsHTTPDataset is the BasicDataset implementation for ResponsysObjectDataset.
70728func (rod ResponsysObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
70729	return nil, false
70730}
70731
70732// AsAzureSearchIndexDataset is the BasicDataset implementation for ResponsysObjectDataset.
70733func (rod ResponsysObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
70734	return nil, false
70735}
70736
70737// AsWebTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70738func (rod ResponsysObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
70739	return nil, false
70740}
70741
70742// AsSQLServerTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70743func (rod ResponsysObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
70744	return nil, false
70745}
70746
70747// AsSapEccResourceDataset is the BasicDataset implementation for ResponsysObjectDataset.
70748func (rod ResponsysObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
70749	return nil, false
70750}
70751
70752// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ResponsysObjectDataset.
70753func (rod ResponsysObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
70754	return nil, false
70755}
70756
70757// AsSalesforceObjectDataset is the BasicDataset implementation for ResponsysObjectDataset.
70758func (rod ResponsysObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
70759	return nil, false
70760}
70761
70762// AsRelationalTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70763func (rod ResponsysObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
70764	return nil, false
70765}
70766
70767// AsAzureMySQLTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70768func (rod ResponsysObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
70769	return nil, false
70770}
70771
70772// AsOracleTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70773func (rod ResponsysObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
70774	return nil, false
70775}
70776
70777// AsODataResourceDataset is the BasicDataset implementation for ResponsysObjectDataset.
70778func (rod ResponsysObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
70779	return nil, false
70780}
70781
70782// AsMongoDbCollectionDataset is the BasicDataset implementation for ResponsysObjectDataset.
70783func (rod ResponsysObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
70784	return nil, false
70785}
70786
70787// AsFileShareDataset is the BasicDataset implementation for ResponsysObjectDataset.
70788func (rod ResponsysObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
70789	return nil, false
70790}
70791
70792// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ResponsysObjectDataset.
70793func (rod ResponsysObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
70794	return nil, false
70795}
70796
70797// AsDynamicsEntityDataset is the BasicDataset implementation for ResponsysObjectDataset.
70798func (rod ResponsysObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
70799	return nil, false
70800}
70801
70802// AsDocumentDbCollectionDataset is the BasicDataset implementation for ResponsysObjectDataset.
70803func (rod ResponsysObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
70804	return nil, false
70805}
70806
70807// AsCustomDataset is the BasicDataset implementation for ResponsysObjectDataset.
70808func (rod ResponsysObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
70809	return nil, false
70810}
70811
70812// AsCassandraTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70813func (rod ResponsysObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
70814	return nil, false
70815}
70816
70817// AsAzureSQLDWTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70818func (rod ResponsysObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
70819	return nil, false
70820}
70821
70822// AsAzureSQLTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70823func (rod ResponsysObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
70824	return nil, false
70825}
70826
70827// AsAzureTableDataset is the BasicDataset implementation for ResponsysObjectDataset.
70828func (rod ResponsysObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
70829	return nil, false
70830}
70831
70832// AsAzureBlobDataset is the BasicDataset implementation for ResponsysObjectDataset.
70833func (rod ResponsysObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
70834	return nil, false
70835}
70836
70837// AsAmazonS3Dataset is the BasicDataset implementation for ResponsysObjectDataset.
70838func (rod ResponsysObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
70839	return nil, false
70840}
70841
70842// AsDataset is the BasicDataset implementation for ResponsysObjectDataset.
70843func (rod ResponsysObjectDataset) AsDataset() (*Dataset, bool) {
70844	return nil, false
70845}
70846
70847// AsBasicDataset is the BasicDataset implementation for ResponsysObjectDataset.
70848func (rod ResponsysObjectDataset) AsBasicDataset() (BasicDataset, bool) {
70849	return &rod, true
70850}
70851
70852// ResponsysSource a copy activity Responsys source.
70853type ResponsysSource struct {
70854	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
70855	Query interface{} `json:"query,omitempty"`
70856	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
70857	AdditionalProperties map[string]interface{} `json:""`
70858	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
70859	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
70860	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
70861	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
70862	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
70863	Type TypeBasicCopySource `json:"type,omitempty"`
70864}
70865
70866// MarshalJSON is the custom marshaler for ResponsysSource.
70867func (rs ResponsysSource) MarshalJSON() ([]byte, error) {
70868	rs.Type = TypeResponsysSource
70869	objectMap := make(map[string]interface{})
70870	objectMap["query"] = rs.Query
70871	objectMap["sourceRetryCount"] = rs.SourceRetryCount
70872	objectMap["sourceRetryWait"] = rs.SourceRetryWait
70873	if rs.Type != "" {
70874		objectMap["type"] = rs.Type
70875	}
70876	for k, v := range rs.AdditionalProperties {
70877		objectMap[k] = v
70878	}
70879	return json.Marshal(objectMap)
70880}
70881
70882// AsAmazonRedshiftSource is the BasicCopySource implementation for ResponsysSource.
70883func (rs ResponsysSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
70884	return nil, false
70885}
70886
70887// AsResponsysSource is the BasicCopySource implementation for ResponsysSource.
70888func (rs ResponsysSource) AsResponsysSource() (*ResponsysSource, bool) {
70889	return &rs, true
70890}
70891
70892// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ResponsysSource.
70893func (rs ResponsysSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
70894	return nil, false
70895}
70896
70897// AsVerticaSource is the BasicCopySource implementation for ResponsysSource.
70898func (rs ResponsysSource) AsVerticaSource() (*VerticaSource, bool) {
70899	return nil, false
70900}
70901
70902// AsNetezzaSource is the BasicCopySource implementation for ResponsysSource.
70903func (rs ResponsysSource) AsNetezzaSource() (*NetezzaSource, bool) {
70904	return nil, false
70905}
70906
70907// AsZohoSource is the BasicCopySource implementation for ResponsysSource.
70908func (rs ResponsysSource) AsZohoSource() (*ZohoSource, bool) {
70909	return nil, false
70910}
70911
70912// AsXeroSource is the BasicCopySource implementation for ResponsysSource.
70913func (rs ResponsysSource) AsXeroSource() (*XeroSource, bool) {
70914	return nil, false
70915}
70916
70917// AsSquareSource is the BasicCopySource implementation for ResponsysSource.
70918func (rs ResponsysSource) AsSquareSource() (*SquareSource, bool) {
70919	return nil, false
70920}
70921
70922// AsSparkSource is the BasicCopySource implementation for ResponsysSource.
70923func (rs ResponsysSource) AsSparkSource() (*SparkSource, bool) {
70924	return nil, false
70925}
70926
70927// AsShopifySource is the BasicCopySource implementation for ResponsysSource.
70928func (rs ResponsysSource) AsShopifySource() (*ShopifySource, bool) {
70929	return nil, false
70930}
70931
70932// AsServiceNowSource is the BasicCopySource implementation for ResponsysSource.
70933func (rs ResponsysSource) AsServiceNowSource() (*ServiceNowSource, bool) {
70934	return nil, false
70935}
70936
70937// AsQuickBooksSource is the BasicCopySource implementation for ResponsysSource.
70938func (rs ResponsysSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
70939	return nil, false
70940}
70941
70942// AsPrestoSource is the BasicCopySource implementation for ResponsysSource.
70943func (rs ResponsysSource) AsPrestoSource() (*PrestoSource, bool) {
70944	return nil, false
70945}
70946
70947// AsPhoenixSource is the BasicCopySource implementation for ResponsysSource.
70948func (rs ResponsysSource) AsPhoenixSource() (*PhoenixSource, bool) {
70949	return nil, false
70950}
70951
70952// AsPaypalSource is the BasicCopySource implementation for ResponsysSource.
70953func (rs ResponsysSource) AsPaypalSource() (*PaypalSource, bool) {
70954	return nil, false
70955}
70956
70957// AsMarketoSource is the BasicCopySource implementation for ResponsysSource.
70958func (rs ResponsysSource) AsMarketoSource() (*MarketoSource, bool) {
70959	return nil, false
70960}
70961
70962// AsMariaDBSource is the BasicCopySource implementation for ResponsysSource.
70963func (rs ResponsysSource) AsMariaDBSource() (*MariaDBSource, bool) {
70964	return nil, false
70965}
70966
70967// AsMagentoSource is the BasicCopySource implementation for ResponsysSource.
70968func (rs ResponsysSource) AsMagentoSource() (*MagentoSource, bool) {
70969	return nil, false
70970}
70971
70972// AsJiraSource is the BasicCopySource implementation for ResponsysSource.
70973func (rs ResponsysSource) AsJiraSource() (*JiraSource, bool) {
70974	return nil, false
70975}
70976
70977// AsImpalaSource is the BasicCopySource implementation for ResponsysSource.
70978func (rs ResponsysSource) AsImpalaSource() (*ImpalaSource, bool) {
70979	return nil, false
70980}
70981
70982// AsHubspotSource is the BasicCopySource implementation for ResponsysSource.
70983func (rs ResponsysSource) AsHubspotSource() (*HubspotSource, bool) {
70984	return nil, false
70985}
70986
70987// AsHiveSource is the BasicCopySource implementation for ResponsysSource.
70988func (rs ResponsysSource) AsHiveSource() (*HiveSource, bool) {
70989	return nil, false
70990}
70991
70992// AsHBaseSource is the BasicCopySource implementation for ResponsysSource.
70993func (rs ResponsysSource) AsHBaseSource() (*HBaseSource, bool) {
70994	return nil, false
70995}
70996
70997// AsGreenplumSource is the BasicCopySource implementation for ResponsysSource.
70998func (rs ResponsysSource) AsGreenplumSource() (*GreenplumSource, bool) {
70999	return nil, false
71000}
71001
71002// AsGoogleBigQuerySource is the BasicCopySource implementation for ResponsysSource.
71003func (rs ResponsysSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
71004	return nil, false
71005}
71006
71007// AsEloquaSource is the BasicCopySource implementation for ResponsysSource.
71008func (rs ResponsysSource) AsEloquaSource() (*EloquaSource, bool) {
71009	return nil, false
71010}
71011
71012// AsDrillSource is the BasicCopySource implementation for ResponsysSource.
71013func (rs ResponsysSource) AsDrillSource() (*DrillSource, bool) {
71014	return nil, false
71015}
71016
71017// AsCouchbaseSource is the BasicCopySource implementation for ResponsysSource.
71018func (rs ResponsysSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
71019	return nil, false
71020}
71021
71022// AsConcurSource is the BasicCopySource implementation for ResponsysSource.
71023func (rs ResponsysSource) AsConcurSource() (*ConcurSource, bool) {
71024	return nil, false
71025}
71026
71027// AsAzurePostgreSQLSource is the BasicCopySource implementation for ResponsysSource.
71028func (rs ResponsysSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
71029	return nil, false
71030}
71031
71032// AsAmazonMWSSource is the BasicCopySource implementation for ResponsysSource.
71033func (rs ResponsysSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
71034	return nil, false
71035}
71036
71037// AsHTTPSource is the BasicCopySource implementation for ResponsysSource.
71038func (rs ResponsysSource) AsHTTPSource() (*HTTPSource, bool) {
71039	return nil, false
71040}
71041
71042// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ResponsysSource.
71043func (rs ResponsysSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
71044	return nil, false
71045}
71046
71047// AsMongoDbSource is the BasicCopySource implementation for ResponsysSource.
71048func (rs ResponsysSource) AsMongoDbSource() (*MongoDbSource, bool) {
71049	return nil, false
71050}
71051
71052// AsCassandraSource is the BasicCopySource implementation for ResponsysSource.
71053func (rs ResponsysSource) AsCassandraSource() (*CassandraSource, bool) {
71054	return nil, false
71055}
71056
71057// AsWebSource is the BasicCopySource implementation for ResponsysSource.
71058func (rs ResponsysSource) AsWebSource() (*WebSource, bool) {
71059	return nil, false
71060}
71061
71062// AsOracleSource is the BasicCopySource implementation for ResponsysSource.
71063func (rs ResponsysSource) AsOracleSource() (*OracleSource, bool) {
71064	return nil, false
71065}
71066
71067// AsAzureMySQLSource is the BasicCopySource implementation for ResponsysSource.
71068func (rs ResponsysSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
71069	return nil, false
71070}
71071
71072// AsHdfsSource is the BasicCopySource implementation for ResponsysSource.
71073func (rs ResponsysSource) AsHdfsSource() (*HdfsSource, bool) {
71074	return nil, false
71075}
71076
71077// AsFileSystemSource is the BasicCopySource implementation for ResponsysSource.
71078func (rs ResponsysSource) AsFileSystemSource() (*FileSystemSource, bool) {
71079	return nil, false
71080}
71081
71082// AsSQLDWSource is the BasicCopySource implementation for ResponsysSource.
71083func (rs ResponsysSource) AsSQLDWSource() (*SQLDWSource, bool) {
71084	return nil, false
71085}
71086
71087// AsSQLSource is the BasicCopySource implementation for ResponsysSource.
71088func (rs ResponsysSource) AsSQLSource() (*SQLSource, bool) {
71089	return nil, false
71090}
71091
71092// AsSapEccSource is the BasicCopySource implementation for ResponsysSource.
71093func (rs ResponsysSource) AsSapEccSource() (*SapEccSource, bool) {
71094	return nil, false
71095}
71096
71097// AsSapCloudForCustomerSource is the BasicCopySource implementation for ResponsysSource.
71098func (rs ResponsysSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
71099	return nil, false
71100}
71101
71102// AsSalesforceSource is the BasicCopySource implementation for ResponsysSource.
71103func (rs ResponsysSource) AsSalesforceSource() (*SalesforceSource, bool) {
71104	return nil, false
71105}
71106
71107// AsRelationalSource is the BasicCopySource implementation for ResponsysSource.
71108func (rs ResponsysSource) AsRelationalSource() (*RelationalSource, bool) {
71109	return nil, false
71110}
71111
71112// AsDynamicsSource is the BasicCopySource implementation for ResponsysSource.
71113func (rs ResponsysSource) AsDynamicsSource() (*DynamicsSource, bool) {
71114	return nil, false
71115}
71116
71117// AsDocumentDbCollectionSource is the BasicCopySource implementation for ResponsysSource.
71118func (rs ResponsysSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
71119	return nil, false
71120}
71121
71122// AsBlobSource is the BasicCopySource implementation for ResponsysSource.
71123func (rs ResponsysSource) AsBlobSource() (*BlobSource, bool) {
71124	return nil, false
71125}
71126
71127// AsAzureTableSource is the BasicCopySource implementation for ResponsysSource.
71128func (rs ResponsysSource) AsAzureTableSource() (*AzureTableSource, bool) {
71129	return nil, false
71130}
71131
71132// AsCopySource is the BasicCopySource implementation for ResponsysSource.
71133func (rs ResponsysSource) AsCopySource() (*CopySource, bool) {
71134	return nil, false
71135}
71136
71137// AsBasicCopySource is the BasicCopySource implementation for ResponsysSource.
71138func (rs ResponsysSource) AsBasicCopySource() (BasicCopySource, bool) {
71139	return &rs, true
71140}
71141
71142// RetryPolicy execution policy for an activity.
71143type RetryPolicy struct {
71144	// Count - Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0.
71145	Count interface{} `json:"count,omitempty"`
71146	// IntervalInSeconds - Interval between retries in seconds. Default is 30.
71147	IntervalInSeconds *int32 `json:"intervalInSeconds,omitempty"`
71148}
71149
71150// SalesforceLinkedService linked service for Salesforce.
71151type SalesforceLinkedService struct {
71152	// SalesforceLinkedServiceTypeProperties - Salesforce linked service properties.
71153	*SalesforceLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
71154	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
71155	AdditionalProperties map[string]interface{} `json:""`
71156	// ConnectVia - The integration runtime reference.
71157	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
71158	// Description - Linked service description.
71159	Description *string `json:"description,omitempty"`
71160	// Parameters - Parameters for linked service.
71161	Parameters map[string]*ParameterSpecification `json:"parameters"`
71162	// Annotations - List of tags that can be used for describing the Dataset.
71163	Annotations *[]interface{} `json:"annotations,omitempty"`
71164	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
71165	Type TypeBasicLinkedService `json:"type,omitempty"`
71166}
71167
71168// MarshalJSON is the custom marshaler for SalesforceLinkedService.
71169func (sls SalesforceLinkedService) MarshalJSON() ([]byte, error) {
71170	sls.Type = TypeSalesforce
71171	objectMap := make(map[string]interface{})
71172	if sls.SalesforceLinkedServiceTypeProperties != nil {
71173		objectMap["typeProperties"] = sls.SalesforceLinkedServiceTypeProperties
71174	}
71175	if sls.ConnectVia != nil {
71176		objectMap["connectVia"] = sls.ConnectVia
71177	}
71178	if sls.Description != nil {
71179		objectMap["description"] = sls.Description
71180	}
71181	if sls.Parameters != nil {
71182		objectMap["parameters"] = sls.Parameters
71183	}
71184	if sls.Annotations != nil {
71185		objectMap["annotations"] = sls.Annotations
71186	}
71187	if sls.Type != "" {
71188		objectMap["type"] = sls.Type
71189	}
71190	for k, v := range sls.AdditionalProperties {
71191		objectMap[k] = v
71192	}
71193	return json.Marshal(objectMap)
71194}
71195
71196// AsResponsysLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71197func (sls SalesforceLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
71198	return nil, false
71199}
71200
71201// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71202func (sls SalesforceLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
71203	return nil, false
71204}
71205
71206// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71207func (sls SalesforceLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
71208	return nil, false
71209}
71210
71211// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71212func (sls SalesforceLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
71213	return nil, false
71214}
71215
71216// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71217func (sls SalesforceLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
71218	return nil, false
71219}
71220
71221// AsNetezzaLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71222func (sls SalesforceLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
71223	return nil, false
71224}
71225
71226// AsVerticaLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71227func (sls SalesforceLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
71228	return nil, false
71229}
71230
71231// AsZohoLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71232func (sls SalesforceLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
71233	return nil, false
71234}
71235
71236// AsXeroLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71237func (sls SalesforceLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
71238	return nil, false
71239}
71240
71241// AsSquareLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71242func (sls SalesforceLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
71243	return nil, false
71244}
71245
71246// AsSparkLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71247func (sls SalesforceLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
71248	return nil, false
71249}
71250
71251// AsShopifyLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71252func (sls SalesforceLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
71253	return nil, false
71254}
71255
71256// AsServiceNowLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71257func (sls SalesforceLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
71258	return nil, false
71259}
71260
71261// AsQuickBooksLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71262func (sls SalesforceLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
71263	return nil, false
71264}
71265
71266// AsPrestoLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71267func (sls SalesforceLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
71268	return nil, false
71269}
71270
71271// AsPhoenixLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71272func (sls SalesforceLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
71273	return nil, false
71274}
71275
71276// AsPaypalLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71277func (sls SalesforceLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
71278	return nil, false
71279}
71280
71281// AsMarketoLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71282func (sls SalesforceLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
71283	return nil, false
71284}
71285
71286// AsMariaDBLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71287func (sls SalesforceLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
71288	return nil, false
71289}
71290
71291// AsMagentoLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71292func (sls SalesforceLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
71293	return nil, false
71294}
71295
71296// AsJiraLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71297func (sls SalesforceLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
71298	return nil, false
71299}
71300
71301// AsImpalaLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71302func (sls SalesforceLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
71303	return nil, false
71304}
71305
71306// AsHubspotLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71307func (sls SalesforceLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
71308	return nil, false
71309}
71310
71311// AsHiveLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71312func (sls SalesforceLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
71313	return nil, false
71314}
71315
71316// AsHBaseLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71317func (sls SalesforceLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
71318	return nil, false
71319}
71320
71321// AsGreenplumLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71322func (sls SalesforceLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
71323	return nil, false
71324}
71325
71326// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71327func (sls SalesforceLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
71328	return nil, false
71329}
71330
71331// AsEloquaLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71332func (sls SalesforceLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
71333	return nil, false
71334}
71335
71336// AsDrillLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71337func (sls SalesforceLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
71338	return nil, false
71339}
71340
71341// AsCouchbaseLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71342func (sls SalesforceLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
71343	return nil, false
71344}
71345
71346// AsConcurLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71347func (sls SalesforceLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
71348	return nil, false
71349}
71350
71351// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71352func (sls SalesforceLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
71353	return nil, false
71354}
71355
71356// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71357func (sls SalesforceLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
71358	return nil, false
71359}
71360
71361// AsSapHanaLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71362func (sls SalesforceLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
71363	return nil, false
71364}
71365
71366// AsSapBWLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71367func (sls SalesforceLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
71368	return nil, false
71369}
71370
71371// AsSftpServerLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71372func (sls SalesforceLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
71373	return nil, false
71374}
71375
71376// AsFtpServerLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71377func (sls SalesforceLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
71378	return nil, false
71379}
71380
71381// AsHTTPLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71382func (sls SalesforceLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
71383	return nil, false
71384}
71385
71386// AsAzureSearchLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71387func (sls SalesforceLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
71388	return nil, false
71389}
71390
71391// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71392func (sls SalesforceLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
71393	return nil, false
71394}
71395
71396// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71397func (sls SalesforceLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
71398	return nil, false
71399}
71400
71401// AsAmazonS3LinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71402func (sls SalesforceLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
71403	return nil, false
71404}
71405
71406// AsSapEccLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71407func (sls SalesforceLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
71408	return nil, false
71409}
71410
71411// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71412func (sls SalesforceLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
71413	return nil, false
71414}
71415
71416// AsSalesforceLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71417func (sls SalesforceLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
71418	return &sls, true
71419}
71420
71421// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71422func (sls SalesforceLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
71423	return nil, false
71424}
71425
71426// AsMongoDbLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71427func (sls SalesforceLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
71428	return nil, false
71429}
71430
71431// AsCassandraLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71432func (sls SalesforceLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
71433	return nil, false
71434}
71435
71436// AsWebLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71437func (sls SalesforceLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
71438	return nil, false
71439}
71440
71441// AsODataLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71442func (sls SalesforceLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
71443	return nil, false
71444}
71445
71446// AsHdfsLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71447func (sls SalesforceLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
71448	return nil, false
71449}
71450
71451// AsOdbcLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71452func (sls SalesforceLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
71453	return nil, false
71454}
71455
71456// AsAzureMLLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71457func (sls SalesforceLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
71458	return nil, false
71459}
71460
71461// AsTeradataLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71462func (sls SalesforceLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
71463	return nil, false
71464}
71465
71466// AsDb2LinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71467func (sls SalesforceLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
71468	return nil, false
71469}
71470
71471// AsSybaseLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71472func (sls SalesforceLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
71473	return nil, false
71474}
71475
71476// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71477func (sls SalesforceLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
71478	return nil, false
71479}
71480
71481// AsMySQLLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71482func (sls SalesforceLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
71483	return nil, false
71484}
71485
71486// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71487func (sls SalesforceLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
71488	return nil, false
71489}
71490
71491// AsOracleLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71492func (sls SalesforceLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
71493	return nil, false
71494}
71495
71496// AsFileServerLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71497func (sls SalesforceLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
71498	return nil, false
71499}
71500
71501// AsHDInsightLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71502func (sls SalesforceLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
71503	return nil, false
71504}
71505
71506// AsDynamicsLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71507func (sls SalesforceLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
71508	return nil, false
71509}
71510
71511// AsCosmosDbLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71512func (sls SalesforceLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
71513	return nil, false
71514}
71515
71516// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71517func (sls SalesforceLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
71518	return nil, false
71519}
71520
71521// AsAzureBatchLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71522func (sls SalesforceLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
71523	return nil, false
71524}
71525
71526// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71527func (sls SalesforceLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
71528	return nil, false
71529}
71530
71531// AsSQLServerLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71532func (sls SalesforceLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
71533	return nil, false
71534}
71535
71536// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71537func (sls SalesforceLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
71538	return nil, false
71539}
71540
71541// AsAzureStorageLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71542func (sls SalesforceLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
71543	return nil, false
71544}
71545
71546// AsLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71547func (sls SalesforceLinkedService) AsLinkedService() (*LinkedService, bool) {
71548	return nil, false
71549}
71550
71551// AsBasicLinkedService is the BasicLinkedService implementation for SalesforceLinkedService.
71552func (sls SalesforceLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
71553	return &sls, true
71554}
71555
71556// UnmarshalJSON is the custom unmarshaler for SalesforceLinkedService struct.
71557func (sls *SalesforceLinkedService) UnmarshalJSON(body []byte) error {
71558	var m map[string]*json.RawMessage
71559	err := json.Unmarshal(body, &m)
71560	if err != nil {
71561		return err
71562	}
71563	for k, v := range m {
71564		switch k {
71565		case "typeProperties":
71566			if v != nil {
71567				var salesforceLinkedServiceTypeProperties SalesforceLinkedServiceTypeProperties
71568				err = json.Unmarshal(*v, &salesforceLinkedServiceTypeProperties)
71569				if err != nil {
71570					return err
71571				}
71572				sls.SalesforceLinkedServiceTypeProperties = &salesforceLinkedServiceTypeProperties
71573			}
71574		default:
71575			if v != nil {
71576				var additionalProperties interface{}
71577				err = json.Unmarshal(*v, &additionalProperties)
71578				if err != nil {
71579					return err
71580				}
71581				if sls.AdditionalProperties == nil {
71582					sls.AdditionalProperties = make(map[string]interface{})
71583				}
71584				sls.AdditionalProperties[k] = additionalProperties
71585			}
71586		case "connectVia":
71587			if v != nil {
71588				var connectVia IntegrationRuntimeReference
71589				err = json.Unmarshal(*v, &connectVia)
71590				if err != nil {
71591					return err
71592				}
71593				sls.ConnectVia = &connectVia
71594			}
71595		case "description":
71596			if v != nil {
71597				var description string
71598				err = json.Unmarshal(*v, &description)
71599				if err != nil {
71600					return err
71601				}
71602				sls.Description = &description
71603			}
71604		case "parameters":
71605			if v != nil {
71606				var parameters map[string]*ParameterSpecification
71607				err = json.Unmarshal(*v, &parameters)
71608				if err != nil {
71609					return err
71610				}
71611				sls.Parameters = parameters
71612			}
71613		case "annotations":
71614			if v != nil {
71615				var annotations []interface{}
71616				err = json.Unmarshal(*v, &annotations)
71617				if err != nil {
71618					return err
71619				}
71620				sls.Annotations = &annotations
71621			}
71622		case "type":
71623			if v != nil {
71624				var typeVar TypeBasicLinkedService
71625				err = json.Unmarshal(*v, &typeVar)
71626				if err != nil {
71627					return err
71628				}
71629				sls.Type = typeVar
71630			}
71631		}
71632	}
71633
71634	return nil
71635}
71636
71637// SalesforceLinkedServiceTypeProperties salesforce linked service properties.
71638type SalesforceLinkedServiceTypeProperties struct {
71639	// EnvironmentURL - The URL of Salesforce instance. Default is 'https://login.salesforce.com'. To copy data from sandbox, specify 'https://test.salesforce.com'. To copy data from custom domain, specify, for example, 'https://[domain].my.salesforce.com'. Type: string (or Expression with resultType string).
71640	EnvironmentURL interface{} `json:"environmentUrl,omitempty"`
71641	// Username - The username for Basic authentication of the Salesforce instance. Type: string (or Expression with resultType string).
71642	Username interface{} `json:"username,omitempty"`
71643	// Password - The password for Basic authentication of the Salesforce instance.
71644	Password BasicSecretBase `json:"password,omitempty"`
71645	// SecurityToken - The security token is required to remotely access Salesforce instance.
71646	SecurityToken BasicSecretBase `json:"securityToken,omitempty"`
71647	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
71648	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
71649}
71650
71651// UnmarshalJSON is the custom unmarshaler for SalesforceLinkedServiceTypeProperties struct.
71652func (slstp *SalesforceLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
71653	var m map[string]*json.RawMessage
71654	err := json.Unmarshal(body, &m)
71655	if err != nil {
71656		return err
71657	}
71658	for k, v := range m {
71659		switch k {
71660		case "environmentUrl":
71661			if v != nil {
71662				var environmentURL interface{}
71663				err = json.Unmarshal(*v, &environmentURL)
71664				if err != nil {
71665					return err
71666				}
71667				slstp.EnvironmentURL = environmentURL
71668			}
71669		case "username":
71670			if v != nil {
71671				var username interface{}
71672				err = json.Unmarshal(*v, &username)
71673				if err != nil {
71674					return err
71675				}
71676				slstp.Username = username
71677			}
71678		case "password":
71679			if v != nil {
71680				password, err := unmarshalBasicSecretBase(*v)
71681				if err != nil {
71682					return err
71683				}
71684				slstp.Password = password
71685			}
71686		case "securityToken":
71687			if v != nil {
71688				securityToken, err := unmarshalBasicSecretBase(*v)
71689				if err != nil {
71690					return err
71691				}
71692				slstp.SecurityToken = securityToken
71693			}
71694		case "encryptedCredential":
71695			if v != nil {
71696				var encryptedCredential interface{}
71697				err = json.Unmarshal(*v, &encryptedCredential)
71698				if err != nil {
71699					return err
71700				}
71701				slstp.EncryptedCredential = encryptedCredential
71702			}
71703		}
71704	}
71705
71706	return nil
71707}
71708
71709// SalesforceMarketingCloudLinkedService salesforce Marketing Cloud linked service.
71710type SalesforceMarketingCloudLinkedService struct {
71711	// SalesforceMarketingCloudLinkedServiceTypeProperties - Salesforce Marketing Cloud linked service properties.
71712	*SalesforceMarketingCloudLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
71713	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
71714	AdditionalProperties map[string]interface{} `json:""`
71715	// ConnectVia - The integration runtime reference.
71716	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
71717	// Description - Linked service description.
71718	Description *string `json:"description,omitempty"`
71719	// Parameters - Parameters for linked service.
71720	Parameters map[string]*ParameterSpecification `json:"parameters"`
71721	// Annotations - List of tags that can be used for describing the Dataset.
71722	Annotations *[]interface{} `json:"annotations,omitempty"`
71723	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
71724	Type TypeBasicLinkedService `json:"type,omitempty"`
71725}
71726
71727// MarshalJSON is the custom marshaler for SalesforceMarketingCloudLinkedService.
71728func (smcls SalesforceMarketingCloudLinkedService) MarshalJSON() ([]byte, error) {
71729	smcls.Type = TypeSalesforceMarketingCloud
71730	objectMap := make(map[string]interface{})
71731	if smcls.SalesforceMarketingCloudLinkedServiceTypeProperties != nil {
71732		objectMap["typeProperties"] = smcls.SalesforceMarketingCloudLinkedServiceTypeProperties
71733	}
71734	if smcls.ConnectVia != nil {
71735		objectMap["connectVia"] = smcls.ConnectVia
71736	}
71737	if smcls.Description != nil {
71738		objectMap["description"] = smcls.Description
71739	}
71740	if smcls.Parameters != nil {
71741		objectMap["parameters"] = smcls.Parameters
71742	}
71743	if smcls.Annotations != nil {
71744		objectMap["annotations"] = smcls.Annotations
71745	}
71746	if smcls.Type != "" {
71747		objectMap["type"] = smcls.Type
71748	}
71749	for k, v := range smcls.AdditionalProperties {
71750		objectMap[k] = v
71751	}
71752	return json.Marshal(objectMap)
71753}
71754
71755// AsResponsysLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71756func (smcls SalesforceMarketingCloudLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
71757	return nil, false
71758}
71759
71760// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71761func (smcls SalesforceMarketingCloudLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
71762	return nil, false
71763}
71764
71765// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71766func (smcls SalesforceMarketingCloudLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
71767	return nil, false
71768}
71769
71770// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71771func (smcls SalesforceMarketingCloudLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
71772	return nil, false
71773}
71774
71775// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71776func (smcls SalesforceMarketingCloudLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
71777	return &smcls, true
71778}
71779
71780// AsNetezzaLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71781func (smcls SalesforceMarketingCloudLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
71782	return nil, false
71783}
71784
71785// AsVerticaLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71786func (smcls SalesforceMarketingCloudLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
71787	return nil, false
71788}
71789
71790// AsZohoLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71791func (smcls SalesforceMarketingCloudLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
71792	return nil, false
71793}
71794
71795// AsXeroLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71796func (smcls SalesforceMarketingCloudLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
71797	return nil, false
71798}
71799
71800// AsSquareLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71801func (smcls SalesforceMarketingCloudLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
71802	return nil, false
71803}
71804
71805// AsSparkLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71806func (smcls SalesforceMarketingCloudLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
71807	return nil, false
71808}
71809
71810// AsShopifyLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71811func (smcls SalesforceMarketingCloudLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
71812	return nil, false
71813}
71814
71815// AsServiceNowLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71816func (smcls SalesforceMarketingCloudLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
71817	return nil, false
71818}
71819
71820// AsQuickBooksLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71821func (smcls SalesforceMarketingCloudLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
71822	return nil, false
71823}
71824
71825// AsPrestoLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71826func (smcls SalesforceMarketingCloudLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
71827	return nil, false
71828}
71829
71830// AsPhoenixLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71831func (smcls SalesforceMarketingCloudLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
71832	return nil, false
71833}
71834
71835// AsPaypalLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71836func (smcls SalesforceMarketingCloudLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
71837	return nil, false
71838}
71839
71840// AsMarketoLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71841func (smcls SalesforceMarketingCloudLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
71842	return nil, false
71843}
71844
71845// AsMariaDBLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71846func (smcls SalesforceMarketingCloudLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
71847	return nil, false
71848}
71849
71850// AsMagentoLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71851func (smcls SalesforceMarketingCloudLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
71852	return nil, false
71853}
71854
71855// AsJiraLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71856func (smcls SalesforceMarketingCloudLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
71857	return nil, false
71858}
71859
71860// AsImpalaLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71861func (smcls SalesforceMarketingCloudLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
71862	return nil, false
71863}
71864
71865// AsHubspotLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71866func (smcls SalesforceMarketingCloudLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
71867	return nil, false
71868}
71869
71870// AsHiveLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71871func (smcls SalesforceMarketingCloudLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
71872	return nil, false
71873}
71874
71875// AsHBaseLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71876func (smcls SalesforceMarketingCloudLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
71877	return nil, false
71878}
71879
71880// AsGreenplumLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71881func (smcls SalesforceMarketingCloudLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
71882	return nil, false
71883}
71884
71885// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71886func (smcls SalesforceMarketingCloudLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
71887	return nil, false
71888}
71889
71890// AsEloquaLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71891func (smcls SalesforceMarketingCloudLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
71892	return nil, false
71893}
71894
71895// AsDrillLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71896func (smcls SalesforceMarketingCloudLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
71897	return nil, false
71898}
71899
71900// AsCouchbaseLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71901func (smcls SalesforceMarketingCloudLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
71902	return nil, false
71903}
71904
71905// AsConcurLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71906func (smcls SalesforceMarketingCloudLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
71907	return nil, false
71908}
71909
71910// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71911func (smcls SalesforceMarketingCloudLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
71912	return nil, false
71913}
71914
71915// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71916func (smcls SalesforceMarketingCloudLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
71917	return nil, false
71918}
71919
71920// AsSapHanaLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71921func (smcls SalesforceMarketingCloudLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
71922	return nil, false
71923}
71924
71925// AsSapBWLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71926func (smcls SalesforceMarketingCloudLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
71927	return nil, false
71928}
71929
71930// AsSftpServerLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71931func (smcls SalesforceMarketingCloudLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
71932	return nil, false
71933}
71934
71935// AsFtpServerLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71936func (smcls SalesforceMarketingCloudLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
71937	return nil, false
71938}
71939
71940// AsHTTPLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71941func (smcls SalesforceMarketingCloudLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
71942	return nil, false
71943}
71944
71945// AsAzureSearchLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71946func (smcls SalesforceMarketingCloudLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
71947	return nil, false
71948}
71949
71950// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71951func (smcls SalesforceMarketingCloudLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
71952	return nil, false
71953}
71954
71955// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71956func (smcls SalesforceMarketingCloudLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
71957	return nil, false
71958}
71959
71960// AsAmazonS3LinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71961func (smcls SalesforceMarketingCloudLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
71962	return nil, false
71963}
71964
71965// AsSapEccLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71966func (smcls SalesforceMarketingCloudLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
71967	return nil, false
71968}
71969
71970// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71971func (smcls SalesforceMarketingCloudLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
71972	return nil, false
71973}
71974
71975// AsSalesforceLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71976func (smcls SalesforceMarketingCloudLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
71977	return nil, false
71978}
71979
71980// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71981func (smcls SalesforceMarketingCloudLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
71982	return nil, false
71983}
71984
71985// AsMongoDbLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71986func (smcls SalesforceMarketingCloudLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
71987	return nil, false
71988}
71989
71990// AsCassandraLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71991func (smcls SalesforceMarketingCloudLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
71992	return nil, false
71993}
71994
71995// AsWebLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
71996func (smcls SalesforceMarketingCloudLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
71997	return nil, false
71998}
71999
72000// AsODataLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72001func (smcls SalesforceMarketingCloudLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
72002	return nil, false
72003}
72004
72005// AsHdfsLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72006func (smcls SalesforceMarketingCloudLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
72007	return nil, false
72008}
72009
72010// AsOdbcLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72011func (smcls SalesforceMarketingCloudLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
72012	return nil, false
72013}
72014
72015// AsAzureMLLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72016func (smcls SalesforceMarketingCloudLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
72017	return nil, false
72018}
72019
72020// AsTeradataLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72021func (smcls SalesforceMarketingCloudLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
72022	return nil, false
72023}
72024
72025// AsDb2LinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72026func (smcls SalesforceMarketingCloudLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
72027	return nil, false
72028}
72029
72030// AsSybaseLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72031func (smcls SalesforceMarketingCloudLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
72032	return nil, false
72033}
72034
72035// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72036func (smcls SalesforceMarketingCloudLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
72037	return nil, false
72038}
72039
72040// AsMySQLLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72041func (smcls SalesforceMarketingCloudLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
72042	return nil, false
72043}
72044
72045// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72046func (smcls SalesforceMarketingCloudLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
72047	return nil, false
72048}
72049
72050// AsOracleLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72051func (smcls SalesforceMarketingCloudLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
72052	return nil, false
72053}
72054
72055// AsFileServerLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72056func (smcls SalesforceMarketingCloudLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
72057	return nil, false
72058}
72059
72060// AsHDInsightLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72061func (smcls SalesforceMarketingCloudLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
72062	return nil, false
72063}
72064
72065// AsDynamicsLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72066func (smcls SalesforceMarketingCloudLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
72067	return nil, false
72068}
72069
72070// AsCosmosDbLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72071func (smcls SalesforceMarketingCloudLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
72072	return nil, false
72073}
72074
72075// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72076func (smcls SalesforceMarketingCloudLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
72077	return nil, false
72078}
72079
72080// AsAzureBatchLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72081func (smcls SalesforceMarketingCloudLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
72082	return nil, false
72083}
72084
72085// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72086func (smcls SalesforceMarketingCloudLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
72087	return nil, false
72088}
72089
72090// AsSQLServerLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72091func (smcls SalesforceMarketingCloudLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
72092	return nil, false
72093}
72094
72095// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72096func (smcls SalesforceMarketingCloudLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
72097	return nil, false
72098}
72099
72100// AsAzureStorageLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72101func (smcls SalesforceMarketingCloudLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
72102	return nil, false
72103}
72104
72105// AsLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72106func (smcls SalesforceMarketingCloudLinkedService) AsLinkedService() (*LinkedService, bool) {
72107	return nil, false
72108}
72109
72110// AsBasicLinkedService is the BasicLinkedService implementation for SalesforceMarketingCloudLinkedService.
72111func (smcls SalesforceMarketingCloudLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
72112	return &smcls, true
72113}
72114
72115// UnmarshalJSON is the custom unmarshaler for SalesforceMarketingCloudLinkedService struct.
72116func (smcls *SalesforceMarketingCloudLinkedService) UnmarshalJSON(body []byte) error {
72117	var m map[string]*json.RawMessage
72118	err := json.Unmarshal(body, &m)
72119	if err != nil {
72120		return err
72121	}
72122	for k, v := range m {
72123		switch k {
72124		case "typeProperties":
72125			if v != nil {
72126				var salesforceMarketingCloudLinkedServiceTypeProperties SalesforceMarketingCloudLinkedServiceTypeProperties
72127				err = json.Unmarshal(*v, &salesforceMarketingCloudLinkedServiceTypeProperties)
72128				if err != nil {
72129					return err
72130				}
72131				smcls.SalesforceMarketingCloudLinkedServiceTypeProperties = &salesforceMarketingCloudLinkedServiceTypeProperties
72132			}
72133		default:
72134			if v != nil {
72135				var additionalProperties interface{}
72136				err = json.Unmarshal(*v, &additionalProperties)
72137				if err != nil {
72138					return err
72139				}
72140				if smcls.AdditionalProperties == nil {
72141					smcls.AdditionalProperties = make(map[string]interface{})
72142				}
72143				smcls.AdditionalProperties[k] = additionalProperties
72144			}
72145		case "connectVia":
72146			if v != nil {
72147				var connectVia IntegrationRuntimeReference
72148				err = json.Unmarshal(*v, &connectVia)
72149				if err != nil {
72150					return err
72151				}
72152				smcls.ConnectVia = &connectVia
72153			}
72154		case "description":
72155			if v != nil {
72156				var description string
72157				err = json.Unmarshal(*v, &description)
72158				if err != nil {
72159					return err
72160				}
72161				smcls.Description = &description
72162			}
72163		case "parameters":
72164			if v != nil {
72165				var parameters map[string]*ParameterSpecification
72166				err = json.Unmarshal(*v, &parameters)
72167				if err != nil {
72168					return err
72169				}
72170				smcls.Parameters = parameters
72171			}
72172		case "annotations":
72173			if v != nil {
72174				var annotations []interface{}
72175				err = json.Unmarshal(*v, &annotations)
72176				if err != nil {
72177					return err
72178				}
72179				smcls.Annotations = &annotations
72180			}
72181		case "type":
72182			if v != nil {
72183				var typeVar TypeBasicLinkedService
72184				err = json.Unmarshal(*v, &typeVar)
72185				if err != nil {
72186					return err
72187				}
72188				smcls.Type = typeVar
72189			}
72190		}
72191	}
72192
72193	return nil
72194}
72195
72196// SalesforceMarketingCloudLinkedServiceTypeProperties salesforce Marketing Cloud linked service properties.
72197type SalesforceMarketingCloudLinkedServiceTypeProperties struct {
72198	// ClientID - The client ID associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).
72199	ClientID interface{} `json:"clientId,omitempty"`
72200	// ClientSecret - The client secret associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).
72201	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
72202	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).
72203	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
72204	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).
72205	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
72206	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).
72207	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
72208	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
72209	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
72210}
72211
72212// UnmarshalJSON is the custom unmarshaler for SalesforceMarketingCloudLinkedServiceTypeProperties struct.
72213func (smclstp *SalesforceMarketingCloudLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
72214	var m map[string]*json.RawMessage
72215	err := json.Unmarshal(body, &m)
72216	if err != nil {
72217		return err
72218	}
72219	for k, v := range m {
72220		switch k {
72221		case "clientId":
72222			if v != nil {
72223				var clientID interface{}
72224				err = json.Unmarshal(*v, &clientID)
72225				if err != nil {
72226					return err
72227				}
72228				smclstp.ClientID = clientID
72229			}
72230		case "clientSecret":
72231			if v != nil {
72232				clientSecret, err := unmarshalBasicSecretBase(*v)
72233				if err != nil {
72234					return err
72235				}
72236				smclstp.ClientSecret = clientSecret
72237			}
72238		case "useEncryptedEndpoints":
72239			if v != nil {
72240				var useEncryptedEndpoints interface{}
72241				err = json.Unmarshal(*v, &useEncryptedEndpoints)
72242				if err != nil {
72243					return err
72244				}
72245				smclstp.UseEncryptedEndpoints = useEncryptedEndpoints
72246			}
72247		case "useHostVerification":
72248			if v != nil {
72249				var useHostVerification interface{}
72250				err = json.Unmarshal(*v, &useHostVerification)
72251				if err != nil {
72252					return err
72253				}
72254				smclstp.UseHostVerification = useHostVerification
72255			}
72256		case "usePeerVerification":
72257			if v != nil {
72258				var usePeerVerification interface{}
72259				err = json.Unmarshal(*v, &usePeerVerification)
72260				if err != nil {
72261					return err
72262				}
72263				smclstp.UsePeerVerification = usePeerVerification
72264			}
72265		case "encryptedCredential":
72266			if v != nil {
72267				var encryptedCredential interface{}
72268				err = json.Unmarshal(*v, &encryptedCredential)
72269				if err != nil {
72270					return err
72271				}
72272				smclstp.EncryptedCredential = encryptedCredential
72273			}
72274		}
72275	}
72276
72277	return nil
72278}
72279
72280// SalesforceMarketingCloudObjectDataset salesforce Marketing Cloud dataset.
72281type SalesforceMarketingCloudObjectDataset struct {
72282	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
72283	AdditionalProperties map[string]interface{} `json:""`
72284	// Description - Dataset description.
72285	Description *string `json:"description,omitempty"`
72286	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
72287	Structure interface{} `json:"structure,omitempty"`
72288	// LinkedServiceName - Linked service reference.
72289	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
72290	// Parameters - Parameters for dataset.
72291	Parameters map[string]*ParameterSpecification `json:"parameters"`
72292	// Annotations - List of tags that can be used for describing the Dataset.
72293	Annotations *[]interface{} `json:"annotations,omitempty"`
72294	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
72295	Type TypeBasicDataset `json:"type,omitempty"`
72296}
72297
72298// MarshalJSON is the custom marshaler for SalesforceMarketingCloudObjectDataset.
72299func (smcod SalesforceMarketingCloudObjectDataset) MarshalJSON() ([]byte, error) {
72300	smcod.Type = TypeSalesforceMarketingCloudObject
72301	objectMap := make(map[string]interface{})
72302	if smcod.Description != nil {
72303		objectMap["description"] = smcod.Description
72304	}
72305	objectMap["structure"] = smcod.Structure
72306	if smcod.LinkedServiceName != nil {
72307		objectMap["linkedServiceName"] = smcod.LinkedServiceName
72308	}
72309	if smcod.Parameters != nil {
72310		objectMap["parameters"] = smcod.Parameters
72311	}
72312	if smcod.Annotations != nil {
72313		objectMap["annotations"] = smcod.Annotations
72314	}
72315	if smcod.Type != "" {
72316		objectMap["type"] = smcod.Type
72317	}
72318	for k, v := range smcod.AdditionalProperties {
72319		objectMap[k] = v
72320	}
72321	return json.Marshal(objectMap)
72322}
72323
72324// AsResponsysObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72325func (smcod SalesforceMarketingCloudObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
72326	return nil, false
72327}
72328
72329// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72330func (smcod SalesforceMarketingCloudObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
72331	return &smcod, true
72332}
72333
72334// AsVerticaTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72335func (smcod SalesforceMarketingCloudObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
72336	return nil, false
72337}
72338
72339// AsNetezzaTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72340func (smcod SalesforceMarketingCloudObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
72341	return nil, false
72342}
72343
72344// AsZohoObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72345func (smcod SalesforceMarketingCloudObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
72346	return nil, false
72347}
72348
72349// AsXeroObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72350func (smcod SalesforceMarketingCloudObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
72351	return nil, false
72352}
72353
72354// AsSquareObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72355func (smcod SalesforceMarketingCloudObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
72356	return nil, false
72357}
72358
72359// AsSparkObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72360func (smcod SalesforceMarketingCloudObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
72361	return nil, false
72362}
72363
72364// AsShopifyObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72365func (smcod SalesforceMarketingCloudObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
72366	return nil, false
72367}
72368
72369// AsServiceNowObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72370func (smcod SalesforceMarketingCloudObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
72371	return nil, false
72372}
72373
72374// AsQuickBooksObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72375func (smcod SalesforceMarketingCloudObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
72376	return nil, false
72377}
72378
72379// AsPrestoObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72380func (smcod SalesforceMarketingCloudObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
72381	return nil, false
72382}
72383
72384// AsPhoenixObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72385func (smcod SalesforceMarketingCloudObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
72386	return nil, false
72387}
72388
72389// AsPaypalObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72390func (smcod SalesforceMarketingCloudObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
72391	return nil, false
72392}
72393
72394// AsMarketoObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72395func (smcod SalesforceMarketingCloudObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
72396	return nil, false
72397}
72398
72399// AsMariaDBTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72400func (smcod SalesforceMarketingCloudObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
72401	return nil, false
72402}
72403
72404// AsMagentoObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72405func (smcod SalesforceMarketingCloudObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
72406	return nil, false
72407}
72408
72409// AsJiraObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72410func (smcod SalesforceMarketingCloudObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
72411	return nil, false
72412}
72413
72414// AsImpalaObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72415func (smcod SalesforceMarketingCloudObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
72416	return nil, false
72417}
72418
72419// AsHubspotObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72420func (smcod SalesforceMarketingCloudObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
72421	return nil, false
72422}
72423
72424// AsHiveObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72425func (smcod SalesforceMarketingCloudObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
72426	return nil, false
72427}
72428
72429// AsHBaseObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72430func (smcod SalesforceMarketingCloudObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
72431	return nil, false
72432}
72433
72434// AsGreenplumTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72435func (smcod SalesforceMarketingCloudObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
72436	return nil, false
72437}
72438
72439// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72440func (smcod SalesforceMarketingCloudObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
72441	return nil, false
72442}
72443
72444// AsEloquaObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72445func (smcod SalesforceMarketingCloudObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
72446	return nil, false
72447}
72448
72449// AsDrillTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72450func (smcod SalesforceMarketingCloudObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
72451	return nil, false
72452}
72453
72454// AsCouchbaseTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72455func (smcod SalesforceMarketingCloudObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
72456	return nil, false
72457}
72458
72459// AsConcurObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72460func (smcod SalesforceMarketingCloudObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
72461	return nil, false
72462}
72463
72464// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72465func (smcod SalesforceMarketingCloudObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
72466	return nil, false
72467}
72468
72469// AsAmazonMWSObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72470func (smcod SalesforceMarketingCloudObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
72471	return nil, false
72472}
72473
72474// AsHTTPDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72475func (smcod SalesforceMarketingCloudObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
72476	return nil, false
72477}
72478
72479// AsAzureSearchIndexDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72480func (smcod SalesforceMarketingCloudObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
72481	return nil, false
72482}
72483
72484// AsWebTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72485func (smcod SalesforceMarketingCloudObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
72486	return nil, false
72487}
72488
72489// AsSQLServerTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72490func (smcod SalesforceMarketingCloudObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
72491	return nil, false
72492}
72493
72494// AsSapEccResourceDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72495func (smcod SalesforceMarketingCloudObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
72496	return nil, false
72497}
72498
72499// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72500func (smcod SalesforceMarketingCloudObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
72501	return nil, false
72502}
72503
72504// AsSalesforceObjectDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72505func (smcod SalesforceMarketingCloudObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
72506	return nil, false
72507}
72508
72509// AsRelationalTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72510func (smcod SalesforceMarketingCloudObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
72511	return nil, false
72512}
72513
72514// AsAzureMySQLTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72515func (smcod SalesforceMarketingCloudObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
72516	return nil, false
72517}
72518
72519// AsOracleTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72520func (smcod SalesforceMarketingCloudObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
72521	return nil, false
72522}
72523
72524// AsODataResourceDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72525func (smcod SalesforceMarketingCloudObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
72526	return nil, false
72527}
72528
72529// AsMongoDbCollectionDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72530func (smcod SalesforceMarketingCloudObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
72531	return nil, false
72532}
72533
72534// AsFileShareDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72535func (smcod SalesforceMarketingCloudObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
72536	return nil, false
72537}
72538
72539// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72540func (smcod SalesforceMarketingCloudObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
72541	return nil, false
72542}
72543
72544// AsDynamicsEntityDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72545func (smcod SalesforceMarketingCloudObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
72546	return nil, false
72547}
72548
72549// AsDocumentDbCollectionDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72550func (smcod SalesforceMarketingCloudObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
72551	return nil, false
72552}
72553
72554// AsCustomDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72555func (smcod SalesforceMarketingCloudObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
72556	return nil, false
72557}
72558
72559// AsCassandraTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72560func (smcod SalesforceMarketingCloudObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
72561	return nil, false
72562}
72563
72564// AsAzureSQLDWTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72565func (smcod SalesforceMarketingCloudObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
72566	return nil, false
72567}
72568
72569// AsAzureSQLTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72570func (smcod SalesforceMarketingCloudObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
72571	return nil, false
72572}
72573
72574// AsAzureTableDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72575func (smcod SalesforceMarketingCloudObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
72576	return nil, false
72577}
72578
72579// AsAzureBlobDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72580func (smcod SalesforceMarketingCloudObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
72581	return nil, false
72582}
72583
72584// AsAmazonS3Dataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72585func (smcod SalesforceMarketingCloudObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
72586	return nil, false
72587}
72588
72589// AsDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72590func (smcod SalesforceMarketingCloudObjectDataset) AsDataset() (*Dataset, bool) {
72591	return nil, false
72592}
72593
72594// AsBasicDataset is the BasicDataset implementation for SalesforceMarketingCloudObjectDataset.
72595func (smcod SalesforceMarketingCloudObjectDataset) AsBasicDataset() (BasicDataset, bool) {
72596	return &smcod, true
72597}
72598
72599// SalesforceMarketingCloudSource a copy activity Salesforce Marketing Cloud source.
72600type SalesforceMarketingCloudSource struct {
72601	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
72602	Query interface{} `json:"query,omitempty"`
72603	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
72604	AdditionalProperties map[string]interface{} `json:""`
72605	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
72606	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
72607	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
72608	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
72609	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
72610	Type TypeBasicCopySource `json:"type,omitempty"`
72611}
72612
72613// MarshalJSON is the custom marshaler for SalesforceMarketingCloudSource.
72614func (smcs SalesforceMarketingCloudSource) MarshalJSON() ([]byte, error) {
72615	smcs.Type = TypeSalesforceMarketingCloudSource
72616	objectMap := make(map[string]interface{})
72617	objectMap["query"] = smcs.Query
72618	objectMap["sourceRetryCount"] = smcs.SourceRetryCount
72619	objectMap["sourceRetryWait"] = smcs.SourceRetryWait
72620	if smcs.Type != "" {
72621		objectMap["type"] = smcs.Type
72622	}
72623	for k, v := range smcs.AdditionalProperties {
72624		objectMap[k] = v
72625	}
72626	return json.Marshal(objectMap)
72627}
72628
72629// AsAmazonRedshiftSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72630func (smcs SalesforceMarketingCloudSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
72631	return nil, false
72632}
72633
72634// AsResponsysSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72635func (smcs SalesforceMarketingCloudSource) AsResponsysSource() (*ResponsysSource, bool) {
72636	return nil, false
72637}
72638
72639// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72640func (smcs SalesforceMarketingCloudSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
72641	return &smcs, true
72642}
72643
72644// AsVerticaSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72645func (smcs SalesforceMarketingCloudSource) AsVerticaSource() (*VerticaSource, bool) {
72646	return nil, false
72647}
72648
72649// AsNetezzaSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72650func (smcs SalesforceMarketingCloudSource) AsNetezzaSource() (*NetezzaSource, bool) {
72651	return nil, false
72652}
72653
72654// AsZohoSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72655func (smcs SalesforceMarketingCloudSource) AsZohoSource() (*ZohoSource, bool) {
72656	return nil, false
72657}
72658
72659// AsXeroSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72660func (smcs SalesforceMarketingCloudSource) AsXeroSource() (*XeroSource, bool) {
72661	return nil, false
72662}
72663
72664// AsSquareSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72665func (smcs SalesforceMarketingCloudSource) AsSquareSource() (*SquareSource, bool) {
72666	return nil, false
72667}
72668
72669// AsSparkSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72670func (smcs SalesforceMarketingCloudSource) AsSparkSource() (*SparkSource, bool) {
72671	return nil, false
72672}
72673
72674// AsShopifySource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72675func (smcs SalesforceMarketingCloudSource) AsShopifySource() (*ShopifySource, bool) {
72676	return nil, false
72677}
72678
72679// AsServiceNowSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72680func (smcs SalesforceMarketingCloudSource) AsServiceNowSource() (*ServiceNowSource, bool) {
72681	return nil, false
72682}
72683
72684// AsQuickBooksSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72685func (smcs SalesforceMarketingCloudSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
72686	return nil, false
72687}
72688
72689// AsPrestoSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72690func (smcs SalesforceMarketingCloudSource) AsPrestoSource() (*PrestoSource, bool) {
72691	return nil, false
72692}
72693
72694// AsPhoenixSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72695func (smcs SalesforceMarketingCloudSource) AsPhoenixSource() (*PhoenixSource, bool) {
72696	return nil, false
72697}
72698
72699// AsPaypalSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72700func (smcs SalesforceMarketingCloudSource) AsPaypalSource() (*PaypalSource, bool) {
72701	return nil, false
72702}
72703
72704// AsMarketoSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72705func (smcs SalesforceMarketingCloudSource) AsMarketoSource() (*MarketoSource, bool) {
72706	return nil, false
72707}
72708
72709// AsMariaDBSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72710func (smcs SalesforceMarketingCloudSource) AsMariaDBSource() (*MariaDBSource, bool) {
72711	return nil, false
72712}
72713
72714// AsMagentoSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72715func (smcs SalesforceMarketingCloudSource) AsMagentoSource() (*MagentoSource, bool) {
72716	return nil, false
72717}
72718
72719// AsJiraSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72720func (smcs SalesforceMarketingCloudSource) AsJiraSource() (*JiraSource, bool) {
72721	return nil, false
72722}
72723
72724// AsImpalaSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72725func (smcs SalesforceMarketingCloudSource) AsImpalaSource() (*ImpalaSource, bool) {
72726	return nil, false
72727}
72728
72729// AsHubspotSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72730func (smcs SalesforceMarketingCloudSource) AsHubspotSource() (*HubspotSource, bool) {
72731	return nil, false
72732}
72733
72734// AsHiveSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72735func (smcs SalesforceMarketingCloudSource) AsHiveSource() (*HiveSource, bool) {
72736	return nil, false
72737}
72738
72739// AsHBaseSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72740func (smcs SalesforceMarketingCloudSource) AsHBaseSource() (*HBaseSource, bool) {
72741	return nil, false
72742}
72743
72744// AsGreenplumSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72745func (smcs SalesforceMarketingCloudSource) AsGreenplumSource() (*GreenplumSource, bool) {
72746	return nil, false
72747}
72748
72749// AsGoogleBigQuerySource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72750func (smcs SalesforceMarketingCloudSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
72751	return nil, false
72752}
72753
72754// AsEloquaSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72755func (smcs SalesforceMarketingCloudSource) AsEloquaSource() (*EloquaSource, bool) {
72756	return nil, false
72757}
72758
72759// AsDrillSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72760func (smcs SalesforceMarketingCloudSource) AsDrillSource() (*DrillSource, bool) {
72761	return nil, false
72762}
72763
72764// AsCouchbaseSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72765func (smcs SalesforceMarketingCloudSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
72766	return nil, false
72767}
72768
72769// AsConcurSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72770func (smcs SalesforceMarketingCloudSource) AsConcurSource() (*ConcurSource, bool) {
72771	return nil, false
72772}
72773
72774// AsAzurePostgreSQLSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72775func (smcs SalesforceMarketingCloudSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
72776	return nil, false
72777}
72778
72779// AsAmazonMWSSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72780func (smcs SalesforceMarketingCloudSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
72781	return nil, false
72782}
72783
72784// AsHTTPSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72785func (smcs SalesforceMarketingCloudSource) AsHTTPSource() (*HTTPSource, bool) {
72786	return nil, false
72787}
72788
72789// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72790func (smcs SalesforceMarketingCloudSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
72791	return nil, false
72792}
72793
72794// AsMongoDbSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72795func (smcs SalesforceMarketingCloudSource) AsMongoDbSource() (*MongoDbSource, bool) {
72796	return nil, false
72797}
72798
72799// AsCassandraSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72800func (smcs SalesforceMarketingCloudSource) AsCassandraSource() (*CassandraSource, bool) {
72801	return nil, false
72802}
72803
72804// AsWebSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72805func (smcs SalesforceMarketingCloudSource) AsWebSource() (*WebSource, bool) {
72806	return nil, false
72807}
72808
72809// AsOracleSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72810func (smcs SalesforceMarketingCloudSource) AsOracleSource() (*OracleSource, bool) {
72811	return nil, false
72812}
72813
72814// AsAzureMySQLSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72815func (smcs SalesforceMarketingCloudSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
72816	return nil, false
72817}
72818
72819// AsHdfsSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72820func (smcs SalesforceMarketingCloudSource) AsHdfsSource() (*HdfsSource, bool) {
72821	return nil, false
72822}
72823
72824// AsFileSystemSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72825func (smcs SalesforceMarketingCloudSource) AsFileSystemSource() (*FileSystemSource, bool) {
72826	return nil, false
72827}
72828
72829// AsSQLDWSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72830func (smcs SalesforceMarketingCloudSource) AsSQLDWSource() (*SQLDWSource, bool) {
72831	return nil, false
72832}
72833
72834// AsSQLSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72835func (smcs SalesforceMarketingCloudSource) AsSQLSource() (*SQLSource, bool) {
72836	return nil, false
72837}
72838
72839// AsSapEccSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72840func (smcs SalesforceMarketingCloudSource) AsSapEccSource() (*SapEccSource, bool) {
72841	return nil, false
72842}
72843
72844// AsSapCloudForCustomerSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72845func (smcs SalesforceMarketingCloudSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
72846	return nil, false
72847}
72848
72849// AsSalesforceSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72850func (smcs SalesforceMarketingCloudSource) AsSalesforceSource() (*SalesforceSource, bool) {
72851	return nil, false
72852}
72853
72854// AsRelationalSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72855func (smcs SalesforceMarketingCloudSource) AsRelationalSource() (*RelationalSource, bool) {
72856	return nil, false
72857}
72858
72859// AsDynamicsSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72860func (smcs SalesforceMarketingCloudSource) AsDynamicsSource() (*DynamicsSource, bool) {
72861	return nil, false
72862}
72863
72864// AsDocumentDbCollectionSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72865func (smcs SalesforceMarketingCloudSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
72866	return nil, false
72867}
72868
72869// AsBlobSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72870func (smcs SalesforceMarketingCloudSource) AsBlobSource() (*BlobSource, bool) {
72871	return nil, false
72872}
72873
72874// AsAzureTableSource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72875func (smcs SalesforceMarketingCloudSource) AsAzureTableSource() (*AzureTableSource, bool) {
72876	return nil, false
72877}
72878
72879// AsCopySource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72880func (smcs SalesforceMarketingCloudSource) AsCopySource() (*CopySource, bool) {
72881	return nil, false
72882}
72883
72884// AsBasicCopySource is the BasicCopySource implementation for SalesforceMarketingCloudSource.
72885func (smcs SalesforceMarketingCloudSource) AsBasicCopySource() (BasicCopySource, bool) {
72886	return &smcs, true
72887}
72888
72889// SalesforceObjectDataset the Salesforce object dataset.
72890type SalesforceObjectDataset struct {
72891	// SalesforceObjectDatasetTypeProperties - Salesforce object dataset properties.
72892	*SalesforceObjectDatasetTypeProperties `json:"typeProperties,omitempty"`
72893	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
72894	AdditionalProperties map[string]interface{} `json:""`
72895	// Description - Dataset description.
72896	Description *string `json:"description,omitempty"`
72897	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
72898	Structure interface{} `json:"structure,omitempty"`
72899	// LinkedServiceName - Linked service reference.
72900	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
72901	// Parameters - Parameters for dataset.
72902	Parameters map[string]*ParameterSpecification `json:"parameters"`
72903	// Annotations - List of tags that can be used for describing the Dataset.
72904	Annotations *[]interface{} `json:"annotations,omitempty"`
72905	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
72906	Type TypeBasicDataset `json:"type,omitempty"`
72907}
72908
72909// MarshalJSON is the custom marshaler for SalesforceObjectDataset.
72910func (sod SalesforceObjectDataset) MarshalJSON() ([]byte, error) {
72911	sod.Type = TypeSalesforceObject
72912	objectMap := make(map[string]interface{})
72913	if sod.SalesforceObjectDatasetTypeProperties != nil {
72914		objectMap["typeProperties"] = sod.SalesforceObjectDatasetTypeProperties
72915	}
72916	if sod.Description != nil {
72917		objectMap["description"] = sod.Description
72918	}
72919	objectMap["structure"] = sod.Structure
72920	if sod.LinkedServiceName != nil {
72921		objectMap["linkedServiceName"] = sod.LinkedServiceName
72922	}
72923	if sod.Parameters != nil {
72924		objectMap["parameters"] = sod.Parameters
72925	}
72926	if sod.Annotations != nil {
72927		objectMap["annotations"] = sod.Annotations
72928	}
72929	if sod.Type != "" {
72930		objectMap["type"] = sod.Type
72931	}
72932	for k, v := range sod.AdditionalProperties {
72933		objectMap[k] = v
72934	}
72935	return json.Marshal(objectMap)
72936}
72937
72938// AsResponsysObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72939func (sod SalesforceObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
72940	return nil, false
72941}
72942
72943// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72944func (sod SalesforceObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
72945	return nil, false
72946}
72947
72948// AsVerticaTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
72949func (sod SalesforceObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
72950	return nil, false
72951}
72952
72953// AsNetezzaTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
72954func (sod SalesforceObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
72955	return nil, false
72956}
72957
72958// AsZohoObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72959func (sod SalesforceObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
72960	return nil, false
72961}
72962
72963// AsXeroObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72964func (sod SalesforceObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
72965	return nil, false
72966}
72967
72968// AsSquareObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72969func (sod SalesforceObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
72970	return nil, false
72971}
72972
72973// AsSparkObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72974func (sod SalesforceObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
72975	return nil, false
72976}
72977
72978// AsShopifyObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72979func (sod SalesforceObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
72980	return nil, false
72981}
72982
72983// AsServiceNowObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72984func (sod SalesforceObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
72985	return nil, false
72986}
72987
72988// AsQuickBooksObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72989func (sod SalesforceObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
72990	return nil, false
72991}
72992
72993// AsPrestoObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72994func (sod SalesforceObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
72995	return nil, false
72996}
72997
72998// AsPhoenixObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
72999func (sod SalesforceObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
73000	return nil, false
73001}
73002
73003// AsPaypalObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73004func (sod SalesforceObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
73005	return nil, false
73006}
73007
73008// AsMarketoObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73009func (sod SalesforceObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
73010	return nil, false
73011}
73012
73013// AsMariaDBTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73014func (sod SalesforceObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
73015	return nil, false
73016}
73017
73018// AsMagentoObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73019func (sod SalesforceObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
73020	return nil, false
73021}
73022
73023// AsJiraObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73024func (sod SalesforceObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
73025	return nil, false
73026}
73027
73028// AsImpalaObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73029func (sod SalesforceObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
73030	return nil, false
73031}
73032
73033// AsHubspotObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73034func (sod SalesforceObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
73035	return nil, false
73036}
73037
73038// AsHiveObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73039func (sod SalesforceObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
73040	return nil, false
73041}
73042
73043// AsHBaseObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73044func (sod SalesforceObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
73045	return nil, false
73046}
73047
73048// AsGreenplumTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73049func (sod SalesforceObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
73050	return nil, false
73051}
73052
73053// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73054func (sod SalesforceObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
73055	return nil, false
73056}
73057
73058// AsEloquaObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73059func (sod SalesforceObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
73060	return nil, false
73061}
73062
73063// AsDrillTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73064func (sod SalesforceObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
73065	return nil, false
73066}
73067
73068// AsCouchbaseTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73069func (sod SalesforceObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
73070	return nil, false
73071}
73072
73073// AsConcurObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73074func (sod SalesforceObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
73075	return nil, false
73076}
73077
73078// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73079func (sod SalesforceObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
73080	return nil, false
73081}
73082
73083// AsAmazonMWSObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73084func (sod SalesforceObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
73085	return nil, false
73086}
73087
73088// AsHTTPDataset is the BasicDataset implementation for SalesforceObjectDataset.
73089func (sod SalesforceObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
73090	return nil, false
73091}
73092
73093// AsAzureSearchIndexDataset is the BasicDataset implementation for SalesforceObjectDataset.
73094func (sod SalesforceObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
73095	return nil, false
73096}
73097
73098// AsWebTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73099func (sod SalesforceObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
73100	return nil, false
73101}
73102
73103// AsSQLServerTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73104func (sod SalesforceObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
73105	return nil, false
73106}
73107
73108// AsSapEccResourceDataset is the BasicDataset implementation for SalesforceObjectDataset.
73109func (sod SalesforceObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
73110	return nil, false
73111}
73112
73113// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SalesforceObjectDataset.
73114func (sod SalesforceObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
73115	return nil, false
73116}
73117
73118// AsSalesforceObjectDataset is the BasicDataset implementation for SalesforceObjectDataset.
73119func (sod SalesforceObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
73120	return &sod, true
73121}
73122
73123// AsRelationalTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73124func (sod SalesforceObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
73125	return nil, false
73126}
73127
73128// AsAzureMySQLTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73129func (sod SalesforceObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
73130	return nil, false
73131}
73132
73133// AsOracleTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73134func (sod SalesforceObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
73135	return nil, false
73136}
73137
73138// AsODataResourceDataset is the BasicDataset implementation for SalesforceObjectDataset.
73139func (sod SalesforceObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
73140	return nil, false
73141}
73142
73143// AsMongoDbCollectionDataset is the BasicDataset implementation for SalesforceObjectDataset.
73144func (sod SalesforceObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
73145	return nil, false
73146}
73147
73148// AsFileShareDataset is the BasicDataset implementation for SalesforceObjectDataset.
73149func (sod SalesforceObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
73150	return nil, false
73151}
73152
73153// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SalesforceObjectDataset.
73154func (sod SalesforceObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
73155	return nil, false
73156}
73157
73158// AsDynamicsEntityDataset is the BasicDataset implementation for SalesforceObjectDataset.
73159func (sod SalesforceObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
73160	return nil, false
73161}
73162
73163// AsDocumentDbCollectionDataset is the BasicDataset implementation for SalesforceObjectDataset.
73164func (sod SalesforceObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
73165	return nil, false
73166}
73167
73168// AsCustomDataset is the BasicDataset implementation for SalesforceObjectDataset.
73169func (sod SalesforceObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
73170	return nil, false
73171}
73172
73173// AsCassandraTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73174func (sod SalesforceObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
73175	return nil, false
73176}
73177
73178// AsAzureSQLDWTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73179func (sod SalesforceObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
73180	return nil, false
73181}
73182
73183// AsAzureSQLTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73184func (sod SalesforceObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
73185	return nil, false
73186}
73187
73188// AsAzureTableDataset is the BasicDataset implementation for SalesforceObjectDataset.
73189func (sod SalesforceObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
73190	return nil, false
73191}
73192
73193// AsAzureBlobDataset is the BasicDataset implementation for SalesforceObjectDataset.
73194func (sod SalesforceObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
73195	return nil, false
73196}
73197
73198// AsAmazonS3Dataset is the BasicDataset implementation for SalesforceObjectDataset.
73199func (sod SalesforceObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
73200	return nil, false
73201}
73202
73203// AsDataset is the BasicDataset implementation for SalesforceObjectDataset.
73204func (sod SalesforceObjectDataset) AsDataset() (*Dataset, bool) {
73205	return nil, false
73206}
73207
73208// AsBasicDataset is the BasicDataset implementation for SalesforceObjectDataset.
73209func (sod SalesforceObjectDataset) AsBasicDataset() (BasicDataset, bool) {
73210	return &sod, true
73211}
73212
73213// UnmarshalJSON is the custom unmarshaler for SalesforceObjectDataset struct.
73214func (sod *SalesforceObjectDataset) UnmarshalJSON(body []byte) error {
73215	var m map[string]*json.RawMessage
73216	err := json.Unmarshal(body, &m)
73217	if err != nil {
73218		return err
73219	}
73220	for k, v := range m {
73221		switch k {
73222		case "typeProperties":
73223			if v != nil {
73224				var salesforceObjectDatasetTypeProperties SalesforceObjectDatasetTypeProperties
73225				err = json.Unmarshal(*v, &salesforceObjectDatasetTypeProperties)
73226				if err != nil {
73227					return err
73228				}
73229				sod.SalesforceObjectDatasetTypeProperties = &salesforceObjectDatasetTypeProperties
73230			}
73231		default:
73232			if v != nil {
73233				var additionalProperties interface{}
73234				err = json.Unmarshal(*v, &additionalProperties)
73235				if err != nil {
73236					return err
73237				}
73238				if sod.AdditionalProperties == nil {
73239					sod.AdditionalProperties = make(map[string]interface{})
73240				}
73241				sod.AdditionalProperties[k] = additionalProperties
73242			}
73243		case "description":
73244			if v != nil {
73245				var description string
73246				err = json.Unmarshal(*v, &description)
73247				if err != nil {
73248					return err
73249				}
73250				sod.Description = &description
73251			}
73252		case "structure":
73253			if v != nil {
73254				var structure interface{}
73255				err = json.Unmarshal(*v, &structure)
73256				if err != nil {
73257					return err
73258				}
73259				sod.Structure = structure
73260			}
73261		case "linkedServiceName":
73262			if v != nil {
73263				var linkedServiceName LinkedServiceReference
73264				err = json.Unmarshal(*v, &linkedServiceName)
73265				if err != nil {
73266					return err
73267				}
73268				sod.LinkedServiceName = &linkedServiceName
73269			}
73270		case "parameters":
73271			if v != nil {
73272				var parameters map[string]*ParameterSpecification
73273				err = json.Unmarshal(*v, &parameters)
73274				if err != nil {
73275					return err
73276				}
73277				sod.Parameters = parameters
73278			}
73279		case "annotations":
73280			if v != nil {
73281				var annotations []interface{}
73282				err = json.Unmarshal(*v, &annotations)
73283				if err != nil {
73284					return err
73285				}
73286				sod.Annotations = &annotations
73287			}
73288		case "type":
73289			if v != nil {
73290				var typeVar TypeBasicDataset
73291				err = json.Unmarshal(*v, &typeVar)
73292				if err != nil {
73293					return err
73294				}
73295				sod.Type = typeVar
73296			}
73297		}
73298	}
73299
73300	return nil
73301}
73302
73303// SalesforceObjectDatasetTypeProperties salesforce object dataset properties.
73304type SalesforceObjectDatasetTypeProperties struct {
73305	// ObjectAPIName - The Salesforce object API name. Type: string (or Expression with resultType string).
73306	ObjectAPIName interface{} `json:"objectApiName,omitempty"`
73307}
73308
73309// SalesforceSink a copy activity Salesforce sink.
73310type SalesforceSink struct {
73311	// WriteBehavior - The write behavior for the operation. Default is Insert. Possible values include: 'Insert', 'Upsert'
73312	WriteBehavior SalesforceSinkWriteBehavior `json:"writeBehavior,omitempty"`
73313	// ExternalIDFieldName - The name of the external ID field for upsert operation. Default value is 'Id' column. Type: string (or Expression with resultType string).
73314	ExternalIDFieldName interface{} `json:"externalIdFieldName,omitempty"`
73315	// IgnoreNullValues - The flag indicating whether or not to ignore null values from input dataset (except key fields) during write operation. Default value is false. If set it to true, it means ADF will leave the data in the destination object unchanged when doing upsert/update operation and insert defined default value when doing insert operation, versus ADF will update the data in the destination object to NULL when doing upsert/update operation and insert NULL value when doing insert operation. Type: boolean (or Expression with resultType boolean).
73316	IgnoreNullValues interface{} `json:"ignoreNullValues,omitempty"`
73317	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
73318	AdditionalProperties map[string]interface{} `json:""`
73319	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
73320	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
73321	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
73322	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
73323	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
73324	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
73325	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
73326	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
73327	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
73328	Type TypeBasicCopySink `json:"type,omitempty"`
73329}
73330
73331// MarshalJSON is the custom marshaler for SalesforceSink.
73332func (ss SalesforceSink) MarshalJSON() ([]byte, error) {
73333	ss.Type = TypeSalesforceSink
73334	objectMap := make(map[string]interface{})
73335	if ss.WriteBehavior != "" {
73336		objectMap["writeBehavior"] = ss.WriteBehavior
73337	}
73338	objectMap["externalIdFieldName"] = ss.ExternalIDFieldName
73339	objectMap["ignoreNullValues"] = ss.IgnoreNullValues
73340	objectMap["writeBatchSize"] = ss.WriteBatchSize
73341	objectMap["writeBatchTimeout"] = ss.WriteBatchTimeout
73342	objectMap["sinkRetryCount"] = ss.SinkRetryCount
73343	objectMap["sinkRetryWait"] = ss.SinkRetryWait
73344	if ss.Type != "" {
73345		objectMap["type"] = ss.Type
73346	}
73347	for k, v := range ss.AdditionalProperties {
73348		objectMap[k] = v
73349	}
73350	return json.Marshal(objectMap)
73351}
73352
73353// AsSalesforceSink is the BasicCopySink implementation for SalesforceSink.
73354func (ss SalesforceSink) AsSalesforceSink() (*SalesforceSink, bool) {
73355	return &ss, true
73356}
73357
73358// AsDynamicsSink is the BasicCopySink implementation for SalesforceSink.
73359func (ss SalesforceSink) AsDynamicsSink() (*DynamicsSink, bool) {
73360	return nil, false
73361}
73362
73363// AsOdbcSink is the BasicCopySink implementation for SalesforceSink.
73364func (ss SalesforceSink) AsOdbcSink() (*OdbcSink, bool) {
73365	return nil, false
73366}
73367
73368// AsAzureSearchIndexSink is the BasicCopySink implementation for SalesforceSink.
73369func (ss SalesforceSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
73370	return nil, false
73371}
73372
73373// AsAzureDataLakeStoreSink is the BasicCopySink implementation for SalesforceSink.
73374func (ss SalesforceSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
73375	return nil, false
73376}
73377
73378// AsOracleSink is the BasicCopySink implementation for SalesforceSink.
73379func (ss SalesforceSink) AsOracleSink() (*OracleSink, bool) {
73380	return nil, false
73381}
73382
73383// AsSQLDWSink is the BasicCopySink implementation for SalesforceSink.
73384func (ss SalesforceSink) AsSQLDWSink() (*SQLDWSink, bool) {
73385	return nil, false
73386}
73387
73388// AsSQLSink is the BasicCopySink implementation for SalesforceSink.
73389func (ss SalesforceSink) AsSQLSink() (*SQLSink, bool) {
73390	return nil, false
73391}
73392
73393// AsDocumentDbCollectionSink is the BasicCopySink implementation for SalesforceSink.
73394func (ss SalesforceSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
73395	return nil, false
73396}
73397
73398// AsFileSystemSink is the BasicCopySink implementation for SalesforceSink.
73399func (ss SalesforceSink) AsFileSystemSink() (*FileSystemSink, bool) {
73400	return nil, false
73401}
73402
73403// AsBlobSink is the BasicCopySink implementation for SalesforceSink.
73404func (ss SalesforceSink) AsBlobSink() (*BlobSink, bool) {
73405	return nil, false
73406}
73407
73408// AsAzureTableSink is the BasicCopySink implementation for SalesforceSink.
73409func (ss SalesforceSink) AsAzureTableSink() (*AzureTableSink, bool) {
73410	return nil, false
73411}
73412
73413// AsAzureQueueSink is the BasicCopySink implementation for SalesforceSink.
73414func (ss SalesforceSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
73415	return nil, false
73416}
73417
73418// AsSapCloudForCustomerSink is the BasicCopySink implementation for SalesforceSink.
73419func (ss SalesforceSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
73420	return nil, false
73421}
73422
73423// AsCopySink is the BasicCopySink implementation for SalesforceSink.
73424func (ss SalesforceSink) AsCopySink() (*CopySink, bool) {
73425	return nil, false
73426}
73427
73428// AsBasicCopySink is the BasicCopySink implementation for SalesforceSink.
73429func (ss SalesforceSink) AsBasicCopySink() (BasicCopySink, bool) {
73430	return &ss, true
73431}
73432
73433// SalesforceSource a copy activity Salesforce source.
73434type SalesforceSource struct {
73435	// Query - Database query. Type: string (or Expression with resultType string).
73436	Query interface{} `json:"query,omitempty"`
73437	// ReadBehavior - The read behavior for the operation. Default is Query. Possible values include: 'Query', 'QueryAll'
73438	ReadBehavior SalesforceSourceReadBehavior `json:"readBehavior,omitempty"`
73439	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
73440	AdditionalProperties map[string]interface{} `json:""`
73441	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
73442	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
73443	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
73444	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
73445	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
73446	Type TypeBasicCopySource `json:"type,omitempty"`
73447}
73448
73449// MarshalJSON is the custom marshaler for SalesforceSource.
73450func (ss SalesforceSource) MarshalJSON() ([]byte, error) {
73451	ss.Type = TypeSalesforceSource
73452	objectMap := make(map[string]interface{})
73453	objectMap["query"] = ss.Query
73454	if ss.ReadBehavior != "" {
73455		objectMap["readBehavior"] = ss.ReadBehavior
73456	}
73457	objectMap["sourceRetryCount"] = ss.SourceRetryCount
73458	objectMap["sourceRetryWait"] = ss.SourceRetryWait
73459	if ss.Type != "" {
73460		objectMap["type"] = ss.Type
73461	}
73462	for k, v := range ss.AdditionalProperties {
73463		objectMap[k] = v
73464	}
73465	return json.Marshal(objectMap)
73466}
73467
73468// AsAmazonRedshiftSource is the BasicCopySource implementation for SalesforceSource.
73469func (ss SalesforceSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
73470	return nil, false
73471}
73472
73473// AsResponsysSource is the BasicCopySource implementation for SalesforceSource.
73474func (ss SalesforceSource) AsResponsysSource() (*ResponsysSource, bool) {
73475	return nil, false
73476}
73477
73478// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SalesforceSource.
73479func (ss SalesforceSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
73480	return nil, false
73481}
73482
73483// AsVerticaSource is the BasicCopySource implementation for SalesforceSource.
73484func (ss SalesforceSource) AsVerticaSource() (*VerticaSource, bool) {
73485	return nil, false
73486}
73487
73488// AsNetezzaSource is the BasicCopySource implementation for SalesforceSource.
73489func (ss SalesforceSource) AsNetezzaSource() (*NetezzaSource, bool) {
73490	return nil, false
73491}
73492
73493// AsZohoSource is the BasicCopySource implementation for SalesforceSource.
73494func (ss SalesforceSource) AsZohoSource() (*ZohoSource, bool) {
73495	return nil, false
73496}
73497
73498// AsXeroSource is the BasicCopySource implementation for SalesforceSource.
73499func (ss SalesforceSource) AsXeroSource() (*XeroSource, bool) {
73500	return nil, false
73501}
73502
73503// AsSquareSource is the BasicCopySource implementation for SalesforceSource.
73504func (ss SalesforceSource) AsSquareSource() (*SquareSource, bool) {
73505	return nil, false
73506}
73507
73508// AsSparkSource is the BasicCopySource implementation for SalesforceSource.
73509func (ss SalesforceSource) AsSparkSource() (*SparkSource, bool) {
73510	return nil, false
73511}
73512
73513// AsShopifySource is the BasicCopySource implementation for SalesforceSource.
73514func (ss SalesforceSource) AsShopifySource() (*ShopifySource, bool) {
73515	return nil, false
73516}
73517
73518// AsServiceNowSource is the BasicCopySource implementation for SalesforceSource.
73519func (ss SalesforceSource) AsServiceNowSource() (*ServiceNowSource, bool) {
73520	return nil, false
73521}
73522
73523// AsQuickBooksSource is the BasicCopySource implementation for SalesforceSource.
73524func (ss SalesforceSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
73525	return nil, false
73526}
73527
73528// AsPrestoSource is the BasicCopySource implementation for SalesforceSource.
73529func (ss SalesforceSource) AsPrestoSource() (*PrestoSource, bool) {
73530	return nil, false
73531}
73532
73533// AsPhoenixSource is the BasicCopySource implementation for SalesforceSource.
73534func (ss SalesforceSource) AsPhoenixSource() (*PhoenixSource, bool) {
73535	return nil, false
73536}
73537
73538// AsPaypalSource is the BasicCopySource implementation for SalesforceSource.
73539func (ss SalesforceSource) AsPaypalSource() (*PaypalSource, bool) {
73540	return nil, false
73541}
73542
73543// AsMarketoSource is the BasicCopySource implementation for SalesforceSource.
73544func (ss SalesforceSource) AsMarketoSource() (*MarketoSource, bool) {
73545	return nil, false
73546}
73547
73548// AsMariaDBSource is the BasicCopySource implementation for SalesforceSource.
73549func (ss SalesforceSource) AsMariaDBSource() (*MariaDBSource, bool) {
73550	return nil, false
73551}
73552
73553// AsMagentoSource is the BasicCopySource implementation for SalesforceSource.
73554func (ss SalesforceSource) AsMagentoSource() (*MagentoSource, bool) {
73555	return nil, false
73556}
73557
73558// AsJiraSource is the BasicCopySource implementation for SalesforceSource.
73559func (ss SalesforceSource) AsJiraSource() (*JiraSource, bool) {
73560	return nil, false
73561}
73562
73563// AsImpalaSource is the BasicCopySource implementation for SalesforceSource.
73564func (ss SalesforceSource) AsImpalaSource() (*ImpalaSource, bool) {
73565	return nil, false
73566}
73567
73568// AsHubspotSource is the BasicCopySource implementation for SalesforceSource.
73569func (ss SalesforceSource) AsHubspotSource() (*HubspotSource, bool) {
73570	return nil, false
73571}
73572
73573// AsHiveSource is the BasicCopySource implementation for SalesforceSource.
73574func (ss SalesforceSource) AsHiveSource() (*HiveSource, bool) {
73575	return nil, false
73576}
73577
73578// AsHBaseSource is the BasicCopySource implementation for SalesforceSource.
73579func (ss SalesforceSource) AsHBaseSource() (*HBaseSource, bool) {
73580	return nil, false
73581}
73582
73583// AsGreenplumSource is the BasicCopySource implementation for SalesforceSource.
73584func (ss SalesforceSource) AsGreenplumSource() (*GreenplumSource, bool) {
73585	return nil, false
73586}
73587
73588// AsGoogleBigQuerySource is the BasicCopySource implementation for SalesforceSource.
73589func (ss SalesforceSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
73590	return nil, false
73591}
73592
73593// AsEloquaSource is the BasicCopySource implementation for SalesforceSource.
73594func (ss SalesforceSource) AsEloquaSource() (*EloquaSource, bool) {
73595	return nil, false
73596}
73597
73598// AsDrillSource is the BasicCopySource implementation for SalesforceSource.
73599func (ss SalesforceSource) AsDrillSource() (*DrillSource, bool) {
73600	return nil, false
73601}
73602
73603// AsCouchbaseSource is the BasicCopySource implementation for SalesforceSource.
73604func (ss SalesforceSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
73605	return nil, false
73606}
73607
73608// AsConcurSource is the BasicCopySource implementation for SalesforceSource.
73609func (ss SalesforceSource) AsConcurSource() (*ConcurSource, bool) {
73610	return nil, false
73611}
73612
73613// AsAzurePostgreSQLSource is the BasicCopySource implementation for SalesforceSource.
73614func (ss SalesforceSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
73615	return nil, false
73616}
73617
73618// AsAmazonMWSSource is the BasicCopySource implementation for SalesforceSource.
73619func (ss SalesforceSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
73620	return nil, false
73621}
73622
73623// AsHTTPSource is the BasicCopySource implementation for SalesforceSource.
73624func (ss SalesforceSource) AsHTTPSource() (*HTTPSource, bool) {
73625	return nil, false
73626}
73627
73628// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SalesforceSource.
73629func (ss SalesforceSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
73630	return nil, false
73631}
73632
73633// AsMongoDbSource is the BasicCopySource implementation for SalesforceSource.
73634func (ss SalesforceSource) AsMongoDbSource() (*MongoDbSource, bool) {
73635	return nil, false
73636}
73637
73638// AsCassandraSource is the BasicCopySource implementation for SalesforceSource.
73639func (ss SalesforceSource) AsCassandraSource() (*CassandraSource, bool) {
73640	return nil, false
73641}
73642
73643// AsWebSource is the BasicCopySource implementation for SalesforceSource.
73644func (ss SalesforceSource) AsWebSource() (*WebSource, bool) {
73645	return nil, false
73646}
73647
73648// AsOracleSource is the BasicCopySource implementation for SalesforceSource.
73649func (ss SalesforceSource) AsOracleSource() (*OracleSource, bool) {
73650	return nil, false
73651}
73652
73653// AsAzureMySQLSource is the BasicCopySource implementation for SalesforceSource.
73654func (ss SalesforceSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
73655	return nil, false
73656}
73657
73658// AsHdfsSource is the BasicCopySource implementation for SalesforceSource.
73659func (ss SalesforceSource) AsHdfsSource() (*HdfsSource, bool) {
73660	return nil, false
73661}
73662
73663// AsFileSystemSource is the BasicCopySource implementation for SalesforceSource.
73664func (ss SalesforceSource) AsFileSystemSource() (*FileSystemSource, bool) {
73665	return nil, false
73666}
73667
73668// AsSQLDWSource is the BasicCopySource implementation for SalesforceSource.
73669func (ss SalesforceSource) AsSQLDWSource() (*SQLDWSource, bool) {
73670	return nil, false
73671}
73672
73673// AsSQLSource is the BasicCopySource implementation for SalesforceSource.
73674func (ss SalesforceSource) AsSQLSource() (*SQLSource, bool) {
73675	return nil, false
73676}
73677
73678// AsSapEccSource is the BasicCopySource implementation for SalesforceSource.
73679func (ss SalesforceSource) AsSapEccSource() (*SapEccSource, bool) {
73680	return nil, false
73681}
73682
73683// AsSapCloudForCustomerSource is the BasicCopySource implementation for SalesforceSource.
73684func (ss SalesforceSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
73685	return nil, false
73686}
73687
73688// AsSalesforceSource is the BasicCopySource implementation for SalesforceSource.
73689func (ss SalesforceSource) AsSalesforceSource() (*SalesforceSource, bool) {
73690	return &ss, true
73691}
73692
73693// AsRelationalSource is the BasicCopySource implementation for SalesforceSource.
73694func (ss SalesforceSource) AsRelationalSource() (*RelationalSource, bool) {
73695	return nil, false
73696}
73697
73698// AsDynamicsSource is the BasicCopySource implementation for SalesforceSource.
73699func (ss SalesforceSource) AsDynamicsSource() (*DynamicsSource, bool) {
73700	return nil, false
73701}
73702
73703// AsDocumentDbCollectionSource is the BasicCopySource implementation for SalesforceSource.
73704func (ss SalesforceSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
73705	return nil, false
73706}
73707
73708// AsBlobSource is the BasicCopySource implementation for SalesforceSource.
73709func (ss SalesforceSource) AsBlobSource() (*BlobSource, bool) {
73710	return nil, false
73711}
73712
73713// AsAzureTableSource is the BasicCopySource implementation for SalesforceSource.
73714func (ss SalesforceSource) AsAzureTableSource() (*AzureTableSource, bool) {
73715	return nil, false
73716}
73717
73718// AsCopySource is the BasicCopySource implementation for SalesforceSource.
73719func (ss SalesforceSource) AsCopySource() (*CopySource, bool) {
73720	return nil, false
73721}
73722
73723// AsBasicCopySource is the BasicCopySource implementation for SalesforceSource.
73724func (ss SalesforceSource) AsBasicCopySource() (BasicCopySource, bool) {
73725	return &ss, true
73726}
73727
73728// SapBWLinkedService SAP Business Warehouse Linked Service.
73729type SapBWLinkedService struct {
73730	// SapBWLinkedServiceTypeProperties - Properties specific to this linked service type.
73731	*SapBWLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
73732	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
73733	AdditionalProperties map[string]interface{} `json:""`
73734	// ConnectVia - The integration runtime reference.
73735	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
73736	// Description - Linked service description.
73737	Description *string `json:"description,omitempty"`
73738	// Parameters - Parameters for linked service.
73739	Parameters map[string]*ParameterSpecification `json:"parameters"`
73740	// Annotations - List of tags that can be used for describing the Dataset.
73741	Annotations *[]interface{} `json:"annotations,omitempty"`
73742	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
73743	Type TypeBasicLinkedService `json:"type,omitempty"`
73744}
73745
73746// MarshalJSON is the custom marshaler for SapBWLinkedService.
73747func (sbls SapBWLinkedService) MarshalJSON() ([]byte, error) {
73748	sbls.Type = TypeSapBW
73749	objectMap := make(map[string]interface{})
73750	if sbls.SapBWLinkedServiceTypeProperties != nil {
73751		objectMap["typeProperties"] = sbls.SapBWLinkedServiceTypeProperties
73752	}
73753	if sbls.ConnectVia != nil {
73754		objectMap["connectVia"] = sbls.ConnectVia
73755	}
73756	if sbls.Description != nil {
73757		objectMap["description"] = sbls.Description
73758	}
73759	if sbls.Parameters != nil {
73760		objectMap["parameters"] = sbls.Parameters
73761	}
73762	if sbls.Annotations != nil {
73763		objectMap["annotations"] = sbls.Annotations
73764	}
73765	if sbls.Type != "" {
73766		objectMap["type"] = sbls.Type
73767	}
73768	for k, v := range sbls.AdditionalProperties {
73769		objectMap[k] = v
73770	}
73771	return json.Marshal(objectMap)
73772}
73773
73774// AsResponsysLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73775func (sbls SapBWLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
73776	return nil, false
73777}
73778
73779// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73780func (sbls SapBWLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
73781	return nil, false
73782}
73783
73784// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73785func (sbls SapBWLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
73786	return nil, false
73787}
73788
73789// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73790func (sbls SapBWLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
73791	return nil, false
73792}
73793
73794// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73795func (sbls SapBWLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
73796	return nil, false
73797}
73798
73799// AsNetezzaLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73800func (sbls SapBWLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
73801	return nil, false
73802}
73803
73804// AsVerticaLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73805func (sbls SapBWLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
73806	return nil, false
73807}
73808
73809// AsZohoLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73810func (sbls SapBWLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
73811	return nil, false
73812}
73813
73814// AsXeroLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73815func (sbls SapBWLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
73816	return nil, false
73817}
73818
73819// AsSquareLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73820func (sbls SapBWLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
73821	return nil, false
73822}
73823
73824// AsSparkLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73825func (sbls SapBWLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
73826	return nil, false
73827}
73828
73829// AsShopifyLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73830func (sbls SapBWLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
73831	return nil, false
73832}
73833
73834// AsServiceNowLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73835func (sbls SapBWLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
73836	return nil, false
73837}
73838
73839// AsQuickBooksLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73840func (sbls SapBWLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
73841	return nil, false
73842}
73843
73844// AsPrestoLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73845func (sbls SapBWLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
73846	return nil, false
73847}
73848
73849// AsPhoenixLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73850func (sbls SapBWLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
73851	return nil, false
73852}
73853
73854// AsPaypalLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73855func (sbls SapBWLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
73856	return nil, false
73857}
73858
73859// AsMarketoLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73860func (sbls SapBWLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
73861	return nil, false
73862}
73863
73864// AsMariaDBLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73865func (sbls SapBWLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
73866	return nil, false
73867}
73868
73869// AsMagentoLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73870func (sbls SapBWLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
73871	return nil, false
73872}
73873
73874// AsJiraLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73875func (sbls SapBWLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
73876	return nil, false
73877}
73878
73879// AsImpalaLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73880func (sbls SapBWLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
73881	return nil, false
73882}
73883
73884// AsHubspotLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73885func (sbls SapBWLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
73886	return nil, false
73887}
73888
73889// AsHiveLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73890func (sbls SapBWLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
73891	return nil, false
73892}
73893
73894// AsHBaseLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73895func (sbls SapBWLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
73896	return nil, false
73897}
73898
73899// AsGreenplumLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73900func (sbls SapBWLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
73901	return nil, false
73902}
73903
73904// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73905func (sbls SapBWLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
73906	return nil, false
73907}
73908
73909// AsEloquaLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73910func (sbls SapBWLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
73911	return nil, false
73912}
73913
73914// AsDrillLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73915func (sbls SapBWLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
73916	return nil, false
73917}
73918
73919// AsCouchbaseLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73920func (sbls SapBWLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
73921	return nil, false
73922}
73923
73924// AsConcurLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73925func (sbls SapBWLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
73926	return nil, false
73927}
73928
73929// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73930func (sbls SapBWLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
73931	return nil, false
73932}
73933
73934// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73935func (sbls SapBWLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
73936	return nil, false
73937}
73938
73939// AsSapHanaLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73940func (sbls SapBWLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
73941	return nil, false
73942}
73943
73944// AsSapBWLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73945func (sbls SapBWLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
73946	return &sbls, true
73947}
73948
73949// AsSftpServerLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73950func (sbls SapBWLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
73951	return nil, false
73952}
73953
73954// AsFtpServerLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73955func (sbls SapBWLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
73956	return nil, false
73957}
73958
73959// AsHTTPLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73960func (sbls SapBWLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
73961	return nil, false
73962}
73963
73964// AsAzureSearchLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73965func (sbls SapBWLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
73966	return nil, false
73967}
73968
73969// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73970func (sbls SapBWLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
73971	return nil, false
73972}
73973
73974// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73975func (sbls SapBWLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
73976	return nil, false
73977}
73978
73979// AsAmazonS3LinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73980func (sbls SapBWLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
73981	return nil, false
73982}
73983
73984// AsSapEccLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73985func (sbls SapBWLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
73986	return nil, false
73987}
73988
73989// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73990func (sbls SapBWLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
73991	return nil, false
73992}
73993
73994// AsSalesforceLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
73995func (sbls SapBWLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
73996	return nil, false
73997}
73998
73999// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74000func (sbls SapBWLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
74001	return nil, false
74002}
74003
74004// AsMongoDbLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74005func (sbls SapBWLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
74006	return nil, false
74007}
74008
74009// AsCassandraLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74010func (sbls SapBWLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
74011	return nil, false
74012}
74013
74014// AsWebLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74015func (sbls SapBWLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
74016	return nil, false
74017}
74018
74019// AsODataLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74020func (sbls SapBWLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
74021	return nil, false
74022}
74023
74024// AsHdfsLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74025func (sbls SapBWLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
74026	return nil, false
74027}
74028
74029// AsOdbcLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74030func (sbls SapBWLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
74031	return nil, false
74032}
74033
74034// AsAzureMLLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74035func (sbls SapBWLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
74036	return nil, false
74037}
74038
74039// AsTeradataLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74040func (sbls SapBWLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
74041	return nil, false
74042}
74043
74044// AsDb2LinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74045func (sbls SapBWLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
74046	return nil, false
74047}
74048
74049// AsSybaseLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74050func (sbls SapBWLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
74051	return nil, false
74052}
74053
74054// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74055func (sbls SapBWLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
74056	return nil, false
74057}
74058
74059// AsMySQLLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74060func (sbls SapBWLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
74061	return nil, false
74062}
74063
74064// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74065func (sbls SapBWLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
74066	return nil, false
74067}
74068
74069// AsOracleLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74070func (sbls SapBWLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
74071	return nil, false
74072}
74073
74074// AsFileServerLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74075func (sbls SapBWLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
74076	return nil, false
74077}
74078
74079// AsHDInsightLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74080func (sbls SapBWLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
74081	return nil, false
74082}
74083
74084// AsDynamicsLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74085func (sbls SapBWLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
74086	return nil, false
74087}
74088
74089// AsCosmosDbLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74090func (sbls SapBWLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
74091	return nil, false
74092}
74093
74094// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74095func (sbls SapBWLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
74096	return nil, false
74097}
74098
74099// AsAzureBatchLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74100func (sbls SapBWLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
74101	return nil, false
74102}
74103
74104// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74105func (sbls SapBWLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
74106	return nil, false
74107}
74108
74109// AsSQLServerLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74110func (sbls SapBWLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
74111	return nil, false
74112}
74113
74114// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74115func (sbls SapBWLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
74116	return nil, false
74117}
74118
74119// AsAzureStorageLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74120func (sbls SapBWLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
74121	return nil, false
74122}
74123
74124// AsLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74125func (sbls SapBWLinkedService) AsLinkedService() (*LinkedService, bool) {
74126	return nil, false
74127}
74128
74129// AsBasicLinkedService is the BasicLinkedService implementation for SapBWLinkedService.
74130func (sbls SapBWLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
74131	return &sbls, true
74132}
74133
74134// UnmarshalJSON is the custom unmarshaler for SapBWLinkedService struct.
74135func (sbls *SapBWLinkedService) UnmarshalJSON(body []byte) error {
74136	var m map[string]*json.RawMessage
74137	err := json.Unmarshal(body, &m)
74138	if err != nil {
74139		return err
74140	}
74141	for k, v := range m {
74142		switch k {
74143		case "typeProperties":
74144			if v != nil {
74145				var sapBWLinkedServiceTypeProperties SapBWLinkedServiceTypeProperties
74146				err = json.Unmarshal(*v, &sapBWLinkedServiceTypeProperties)
74147				if err != nil {
74148					return err
74149				}
74150				sbls.SapBWLinkedServiceTypeProperties = &sapBWLinkedServiceTypeProperties
74151			}
74152		default:
74153			if v != nil {
74154				var additionalProperties interface{}
74155				err = json.Unmarshal(*v, &additionalProperties)
74156				if err != nil {
74157					return err
74158				}
74159				if sbls.AdditionalProperties == nil {
74160					sbls.AdditionalProperties = make(map[string]interface{})
74161				}
74162				sbls.AdditionalProperties[k] = additionalProperties
74163			}
74164		case "connectVia":
74165			if v != nil {
74166				var connectVia IntegrationRuntimeReference
74167				err = json.Unmarshal(*v, &connectVia)
74168				if err != nil {
74169					return err
74170				}
74171				sbls.ConnectVia = &connectVia
74172			}
74173		case "description":
74174			if v != nil {
74175				var description string
74176				err = json.Unmarshal(*v, &description)
74177				if err != nil {
74178					return err
74179				}
74180				sbls.Description = &description
74181			}
74182		case "parameters":
74183			if v != nil {
74184				var parameters map[string]*ParameterSpecification
74185				err = json.Unmarshal(*v, &parameters)
74186				if err != nil {
74187					return err
74188				}
74189				sbls.Parameters = parameters
74190			}
74191		case "annotations":
74192			if v != nil {
74193				var annotations []interface{}
74194				err = json.Unmarshal(*v, &annotations)
74195				if err != nil {
74196					return err
74197				}
74198				sbls.Annotations = &annotations
74199			}
74200		case "type":
74201			if v != nil {
74202				var typeVar TypeBasicLinkedService
74203				err = json.Unmarshal(*v, &typeVar)
74204				if err != nil {
74205					return err
74206				}
74207				sbls.Type = typeVar
74208			}
74209		}
74210	}
74211
74212	return nil
74213}
74214
74215// SapBWLinkedServiceTypeProperties properties specific to this linked service type.
74216type SapBWLinkedServiceTypeProperties struct {
74217	// Server - Host name of the SAP BW instance. Type: string (or Expression with resultType string).
74218	Server interface{} `json:"server,omitempty"`
74219	// SystemNumber - System number of the BW system. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string).
74220	SystemNumber interface{} `json:"systemNumber,omitempty"`
74221	// ClientID - Client ID of the client on the BW system. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string).
74222	ClientID interface{} `json:"clientId,omitempty"`
74223	// UserName - Username to access the SAP BW server. Type: string (or Expression with resultType string).
74224	UserName interface{} `json:"userName,omitempty"`
74225	// Password - Password to access the SAP BW server.
74226	Password BasicSecretBase `json:"password,omitempty"`
74227	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
74228	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
74229}
74230
74231// UnmarshalJSON is the custom unmarshaler for SapBWLinkedServiceTypeProperties struct.
74232func (sblstp *SapBWLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
74233	var m map[string]*json.RawMessage
74234	err := json.Unmarshal(body, &m)
74235	if err != nil {
74236		return err
74237	}
74238	for k, v := range m {
74239		switch k {
74240		case "server":
74241			if v != nil {
74242				var server interface{}
74243				err = json.Unmarshal(*v, &server)
74244				if err != nil {
74245					return err
74246				}
74247				sblstp.Server = server
74248			}
74249		case "systemNumber":
74250			if v != nil {
74251				var systemNumber interface{}
74252				err = json.Unmarshal(*v, &systemNumber)
74253				if err != nil {
74254					return err
74255				}
74256				sblstp.SystemNumber = systemNumber
74257			}
74258		case "clientId":
74259			if v != nil {
74260				var clientID interface{}
74261				err = json.Unmarshal(*v, &clientID)
74262				if err != nil {
74263					return err
74264				}
74265				sblstp.ClientID = clientID
74266			}
74267		case "userName":
74268			if v != nil {
74269				var userName interface{}
74270				err = json.Unmarshal(*v, &userName)
74271				if err != nil {
74272					return err
74273				}
74274				sblstp.UserName = userName
74275			}
74276		case "password":
74277			if v != nil {
74278				password, err := unmarshalBasicSecretBase(*v)
74279				if err != nil {
74280					return err
74281				}
74282				sblstp.Password = password
74283			}
74284		case "encryptedCredential":
74285			if v != nil {
74286				var encryptedCredential interface{}
74287				err = json.Unmarshal(*v, &encryptedCredential)
74288				if err != nil {
74289					return err
74290				}
74291				sblstp.EncryptedCredential = encryptedCredential
74292			}
74293		}
74294	}
74295
74296	return nil
74297}
74298
74299// SapCloudForCustomerLinkedService linked service for SAP Cloud for Customer.
74300type SapCloudForCustomerLinkedService struct {
74301	// SapCloudForCustomerLinkedServiceTypeProperties - SAP Cloud for Customer linked service properties.
74302	*SapCloudForCustomerLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
74303	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
74304	AdditionalProperties map[string]interface{} `json:""`
74305	// ConnectVia - The integration runtime reference.
74306	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
74307	// Description - Linked service description.
74308	Description *string `json:"description,omitempty"`
74309	// Parameters - Parameters for linked service.
74310	Parameters map[string]*ParameterSpecification `json:"parameters"`
74311	// Annotations - List of tags that can be used for describing the Dataset.
74312	Annotations *[]interface{} `json:"annotations,omitempty"`
74313	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
74314	Type TypeBasicLinkedService `json:"type,omitempty"`
74315}
74316
74317// MarshalJSON is the custom marshaler for SapCloudForCustomerLinkedService.
74318func (scfcls SapCloudForCustomerLinkedService) MarshalJSON() ([]byte, error) {
74319	scfcls.Type = TypeSapCloudForCustomer
74320	objectMap := make(map[string]interface{})
74321	if scfcls.SapCloudForCustomerLinkedServiceTypeProperties != nil {
74322		objectMap["typeProperties"] = scfcls.SapCloudForCustomerLinkedServiceTypeProperties
74323	}
74324	if scfcls.ConnectVia != nil {
74325		objectMap["connectVia"] = scfcls.ConnectVia
74326	}
74327	if scfcls.Description != nil {
74328		objectMap["description"] = scfcls.Description
74329	}
74330	if scfcls.Parameters != nil {
74331		objectMap["parameters"] = scfcls.Parameters
74332	}
74333	if scfcls.Annotations != nil {
74334		objectMap["annotations"] = scfcls.Annotations
74335	}
74336	if scfcls.Type != "" {
74337		objectMap["type"] = scfcls.Type
74338	}
74339	for k, v := range scfcls.AdditionalProperties {
74340		objectMap[k] = v
74341	}
74342	return json.Marshal(objectMap)
74343}
74344
74345// AsResponsysLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74346func (scfcls SapCloudForCustomerLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
74347	return nil, false
74348}
74349
74350// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74351func (scfcls SapCloudForCustomerLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
74352	return nil, false
74353}
74354
74355// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74356func (scfcls SapCloudForCustomerLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
74357	return nil, false
74358}
74359
74360// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74361func (scfcls SapCloudForCustomerLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
74362	return nil, false
74363}
74364
74365// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74366func (scfcls SapCloudForCustomerLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
74367	return nil, false
74368}
74369
74370// AsNetezzaLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74371func (scfcls SapCloudForCustomerLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
74372	return nil, false
74373}
74374
74375// AsVerticaLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74376func (scfcls SapCloudForCustomerLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
74377	return nil, false
74378}
74379
74380// AsZohoLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74381func (scfcls SapCloudForCustomerLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
74382	return nil, false
74383}
74384
74385// AsXeroLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74386func (scfcls SapCloudForCustomerLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
74387	return nil, false
74388}
74389
74390// AsSquareLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74391func (scfcls SapCloudForCustomerLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
74392	return nil, false
74393}
74394
74395// AsSparkLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74396func (scfcls SapCloudForCustomerLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
74397	return nil, false
74398}
74399
74400// AsShopifyLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74401func (scfcls SapCloudForCustomerLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
74402	return nil, false
74403}
74404
74405// AsServiceNowLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74406func (scfcls SapCloudForCustomerLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
74407	return nil, false
74408}
74409
74410// AsQuickBooksLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74411func (scfcls SapCloudForCustomerLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
74412	return nil, false
74413}
74414
74415// AsPrestoLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74416func (scfcls SapCloudForCustomerLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
74417	return nil, false
74418}
74419
74420// AsPhoenixLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74421func (scfcls SapCloudForCustomerLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
74422	return nil, false
74423}
74424
74425// AsPaypalLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74426func (scfcls SapCloudForCustomerLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
74427	return nil, false
74428}
74429
74430// AsMarketoLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74431func (scfcls SapCloudForCustomerLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
74432	return nil, false
74433}
74434
74435// AsMariaDBLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74436func (scfcls SapCloudForCustomerLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
74437	return nil, false
74438}
74439
74440// AsMagentoLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74441func (scfcls SapCloudForCustomerLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
74442	return nil, false
74443}
74444
74445// AsJiraLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74446func (scfcls SapCloudForCustomerLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
74447	return nil, false
74448}
74449
74450// AsImpalaLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74451func (scfcls SapCloudForCustomerLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
74452	return nil, false
74453}
74454
74455// AsHubspotLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74456func (scfcls SapCloudForCustomerLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
74457	return nil, false
74458}
74459
74460// AsHiveLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74461func (scfcls SapCloudForCustomerLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
74462	return nil, false
74463}
74464
74465// AsHBaseLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74466func (scfcls SapCloudForCustomerLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
74467	return nil, false
74468}
74469
74470// AsGreenplumLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74471func (scfcls SapCloudForCustomerLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
74472	return nil, false
74473}
74474
74475// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74476func (scfcls SapCloudForCustomerLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
74477	return nil, false
74478}
74479
74480// AsEloquaLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74481func (scfcls SapCloudForCustomerLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
74482	return nil, false
74483}
74484
74485// AsDrillLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74486func (scfcls SapCloudForCustomerLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
74487	return nil, false
74488}
74489
74490// AsCouchbaseLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74491func (scfcls SapCloudForCustomerLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
74492	return nil, false
74493}
74494
74495// AsConcurLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74496func (scfcls SapCloudForCustomerLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
74497	return nil, false
74498}
74499
74500// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74501func (scfcls SapCloudForCustomerLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
74502	return nil, false
74503}
74504
74505// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74506func (scfcls SapCloudForCustomerLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
74507	return nil, false
74508}
74509
74510// AsSapHanaLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74511func (scfcls SapCloudForCustomerLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
74512	return nil, false
74513}
74514
74515// AsSapBWLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74516func (scfcls SapCloudForCustomerLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
74517	return nil, false
74518}
74519
74520// AsSftpServerLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74521func (scfcls SapCloudForCustomerLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
74522	return nil, false
74523}
74524
74525// AsFtpServerLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74526func (scfcls SapCloudForCustomerLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
74527	return nil, false
74528}
74529
74530// AsHTTPLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74531func (scfcls SapCloudForCustomerLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
74532	return nil, false
74533}
74534
74535// AsAzureSearchLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74536func (scfcls SapCloudForCustomerLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
74537	return nil, false
74538}
74539
74540// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74541func (scfcls SapCloudForCustomerLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
74542	return nil, false
74543}
74544
74545// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74546func (scfcls SapCloudForCustomerLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
74547	return nil, false
74548}
74549
74550// AsAmazonS3LinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74551func (scfcls SapCloudForCustomerLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
74552	return nil, false
74553}
74554
74555// AsSapEccLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74556func (scfcls SapCloudForCustomerLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
74557	return nil, false
74558}
74559
74560// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74561func (scfcls SapCloudForCustomerLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
74562	return &scfcls, true
74563}
74564
74565// AsSalesforceLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74566func (scfcls SapCloudForCustomerLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
74567	return nil, false
74568}
74569
74570// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74571func (scfcls SapCloudForCustomerLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
74572	return nil, false
74573}
74574
74575// AsMongoDbLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74576func (scfcls SapCloudForCustomerLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
74577	return nil, false
74578}
74579
74580// AsCassandraLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74581func (scfcls SapCloudForCustomerLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
74582	return nil, false
74583}
74584
74585// AsWebLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74586func (scfcls SapCloudForCustomerLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
74587	return nil, false
74588}
74589
74590// AsODataLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74591func (scfcls SapCloudForCustomerLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
74592	return nil, false
74593}
74594
74595// AsHdfsLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74596func (scfcls SapCloudForCustomerLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
74597	return nil, false
74598}
74599
74600// AsOdbcLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74601func (scfcls SapCloudForCustomerLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
74602	return nil, false
74603}
74604
74605// AsAzureMLLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74606func (scfcls SapCloudForCustomerLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
74607	return nil, false
74608}
74609
74610// AsTeradataLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74611func (scfcls SapCloudForCustomerLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
74612	return nil, false
74613}
74614
74615// AsDb2LinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74616func (scfcls SapCloudForCustomerLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
74617	return nil, false
74618}
74619
74620// AsSybaseLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74621func (scfcls SapCloudForCustomerLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
74622	return nil, false
74623}
74624
74625// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74626func (scfcls SapCloudForCustomerLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
74627	return nil, false
74628}
74629
74630// AsMySQLLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74631func (scfcls SapCloudForCustomerLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
74632	return nil, false
74633}
74634
74635// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74636func (scfcls SapCloudForCustomerLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
74637	return nil, false
74638}
74639
74640// AsOracleLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74641func (scfcls SapCloudForCustomerLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
74642	return nil, false
74643}
74644
74645// AsFileServerLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74646func (scfcls SapCloudForCustomerLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
74647	return nil, false
74648}
74649
74650// AsHDInsightLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74651func (scfcls SapCloudForCustomerLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
74652	return nil, false
74653}
74654
74655// AsDynamicsLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74656func (scfcls SapCloudForCustomerLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
74657	return nil, false
74658}
74659
74660// AsCosmosDbLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74661func (scfcls SapCloudForCustomerLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
74662	return nil, false
74663}
74664
74665// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74666func (scfcls SapCloudForCustomerLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
74667	return nil, false
74668}
74669
74670// AsAzureBatchLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74671func (scfcls SapCloudForCustomerLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
74672	return nil, false
74673}
74674
74675// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74676func (scfcls SapCloudForCustomerLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
74677	return nil, false
74678}
74679
74680// AsSQLServerLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74681func (scfcls SapCloudForCustomerLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
74682	return nil, false
74683}
74684
74685// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74686func (scfcls SapCloudForCustomerLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
74687	return nil, false
74688}
74689
74690// AsAzureStorageLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74691func (scfcls SapCloudForCustomerLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
74692	return nil, false
74693}
74694
74695// AsLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74696func (scfcls SapCloudForCustomerLinkedService) AsLinkedService() (*LinkedService, bool) {
74697	return nil, false
74698}
74699
74700// AsBasicLinkedService is the BasicLinkedService implementation for SapCloudForCustomerLinkedService.
74701func (scfcls SapCloudForCustomerLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
74702	return &scfcls, true
74703}
74704
74705// UnmarshalJSON is the custom unmarshaler for SapCloudForCustomerLinkedService struct.
74706func (scfcls *SapCloudForCustomerLinkedService) UnmarshalJSON(body []byte) error {
74707	var m map[string]*json.RawMessage
74708	err := json.Unmarshal(body, &m)
74709	if err != nil {
74710		return err
74711	}
74712	for k, v := range m {
74713		switch k {
74714		case "typeProperties":
74715			if v != nil {
74716				var sapCloudForCustomerLinkedServiceTypeProperties SapCloudForCustomerLinkedServiceTypeProperties
74717				err = json.Unmarshal(*v, &sapCloudForCustomerLinkedServiceTypeProperties)
74718				if err != nil {
74719					return err
74720				}
74721				scfcls.SapCloudForCustomerLinkedServiceTypeProperties = &sapCloudForCustomerLinkedServiceTypeProperties
74722			}
74723		default:
74724			if v != nil {
74725				var additionalProperties interface{}
74726				err = json.Unmarshal(*v, &additionalProperties)
74727				if err != nil {
74728					return err
74729				}
74730				if scfcls.AdditionalProperties == nil {
74731					scfcls.AdditionalProperties = make(map[string]interface{})
74732				}
74733				scfcls.AdditionalProperties[k] = additionalProperties
74734			}
74735		case "connectVia":
74736			if v != nil {
74737				var connectVia IntegrationRuntimeReference
74738				err = json.Unmarshal(*v, &connectVia)
74739				if err != nil {
74740					return err
74741				}
74742				scfcls.ConnectVia = &connectVia
74743			}
74744		case "description":
74745			if v != nil {
74746				var description string
74747				err = json.Unmarshal(*v, &description)
74748				if err != nil {
74749					return err
74750				}
74751				scfcls.Description = &description
74752			}
74753		case "parameters":
74754			if v != nil {
74755				var parameters map[string]*ParameterSpecification
74756				err = json.Unmarshal(*v, &parameters)
74757				if err != nil {
74758					return err
74759				}
74760				scfcls.Parameters = parameters
74761			}
74762		case "annotations":
74763			if v != nil {
74764				var annotations []interface{}
74765				err = json.Unmarshal(*v, &annotations)
74766				if err != nil {
74767					return err
74768				}
74769				scfcls.Annotations = &annotations
74770			}
74771		case "type":
74772			if v != nil {
74773				var typeVar TypeBasicLinkedService
74774				err = json.Unmarshal(*v, &typeVar)
74775				if err != nil {
74776					return err
74777				}
74778				scfcls.Type = typeVar
74779			}
74780		}
74781	}
74782
74783	return nil
74784}
74785
74786// SapCloudForCustomerLinkedServiceTypeProperties SAP Cloud for Customer linked service properties.
74787type SapCloudForCustomerLinkedServiceTypeProperties struct {
74788	// URL - The URL of SAP Cloud for Customer OData API. For example, '[https://[tenantname].crm.ondemand.com/sap/c4c/odata/v1]'. Type: string (or Expression with resultType string).
74789	URL interface{} `json:"url,omitempty"`
74790	// Username - The username for Basic authentication. Type: string (or Expression with resultType string).
74791	Username interface{} `json:"username,omitempty"`
74792	// Password - The password for Basic authentication.
74793	Password BasicSecretBase `json:"password,omitempty"`
74794	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string).
74795	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
74796}
74797
74798// UnmarshalJSON is the custom unmarshaler for SapCloudForCustomerLinkedServiceTypeProperties struct.
74799func (scfclstp *SapCloudForCustomerLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
74800	var m map[string]*json.RawMessage
74801	err := json.Unmarshal(body, &m)
74802	if err != nil {
74803		return err
74804	}
74805	for k, v := range m {
74806		switch k {
74807		case "url":
74808			if v != nil {
74809				var URL interface{}
74810				err = json.Unmarshal(*v, &URL)
74811				if err != nil {
74812					return err
74813				}
74814				scfclstp.URL = URL
74815			}
74816		case "username":
74817			if v != nil {
74818				var username interface{}
74819				err = json.Unmarshal(*v, &username)
74820				if err != nil {
74821					return err
74822				}
74823				scfclstp.Username = username
74824			}
74825		case "password":
74826			if v != nil {
74827				password, err := unmarshalBasicSecretBase(*v)
74828				if err != nil {
74829					return err
74830				}
74831				scfclstp.Password = password
74832			}
74833		case "encryptedCredential":
74834			if v != nil {
74835				var encryptedCredential interface{}
74836				err = json.Unmarshal(*v, &encryptedCredential)
74837				if err != nil {
74838					return err
74839				}
74840				scfclstp.EncryptedCredential = encryptedCredential
74841			}
74842		}
74843	}
74844
74845	return nil
74846}
74847
74848// SapCloudForCustomerResourceDataset the path of the SAP Cloud for Customer OData entity.
74849type SapCloudForCustomerResourceDataset struct {
74850	// SapCloudForCustomerResourceDatasetTypeProperties - SAP Cloud For Customer OData resource dataset properties.
74851	*SapCloudForCustomerResourceDatasetTypeProperties `json:"typeProperties,omitempty"`
74852	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
74853	AdditionalProperties map[string]interface{} `json:""`
74854	// Description - Dataset description.
74855	Description *string `json:"description,omitempty"`
74856	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
74857	Structure interface{} `json:"structure,omitempty"`
74858	// LinkedServiceName - Linked service reference.
74859	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
74860	// Parameters - Parameters for dataset.
74861	Parameters map[string]*ParameterSpecification `json:"parameters"`
74862	// Annotations - List of tags that can be used for describing the Dataset.
74863	Annotations *[]interface{} `json:"annotations,omitempty"`
74864	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
74865	Type TypeBasicDataset `json:"type,omitempty"`
74866}
74867
74868// MarshalJSON is the custom marshaler for SapCloudForCustomerResourceDataset.
74869func (scfcrd SapCloudForCustomerResourceDataset) MarshalJSON() ([]byte, error) {
74870	scfcrd.Type = TypeSapCloudForCustomerResource
74871	objectMap := make(map[string]interface{})
74872	if scfcrd.SapCloudForCustomerResourceDatasetTypeProperties != nil {
74873		objectMap["typeProperties"] = scfcrd.SapCloudForCustomerResourceDatasetTypeProperties
74874	}
74875	if scfcrd.Description != nil {
74876		objectMap["description"] = scfcrd.Description
74877	}
74878	objectMap["structure"] = scfcrd.Structure
74879	if scfcrd.LinkedServiceName != nil {
74880		objectMap["linkedServiceName"] = scfcrd.LinkedServiceName
74881	}
74882	if scfcrd.Parameters != nil {
74883		objectMap["parameters"] = scfcrd.Parameters
74884	}
74885	if scfcrd.Annotations != nil {
74886		objectMap["annotations"] = scfcrd.Annotations
74887	}
74888	if scfcrd.Type != "" {
74889		objectMap["type"] = scfcrd.Type
74890	}
74891	for k, v := range scfcrd.AdditionalProperties {
74892		objectMap[k] = v
74893	}
74894	return json.Marshal(objectMap)
74895}
74896
74897// AsResponsysObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74898func (scfcrd SapCloudForCustomerResourceDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
74899	return nil, false
74900}
74901
74902// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74903func (scfcrd SapCloudForCustomerResourceDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
74904	return nil, false
74905}
74906
74907// AsVerticaTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74908func (scfcrd SapCloudForCustomerResourceDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
74909	return nil, false
74910}
74911
74912// AsNetezzaTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74913func (scfcrd SapCloudForCustomerResourceDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
74914	return nil, false
74915}
74916
74917// AsZohoObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74918func (scfcrd SapCloudForCustomerResourceDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
74919	return nil, false
74920}
74921
74922// AsXeroObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74923func (scfcrd SapCloudForCustomerResourceDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
74924	return nil, false
74925}
74926
74927// AsSquareObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74928func (scfcrd SapCloudForCustomerResourceDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
74929	return nil, false
74930}
74931
74932// AsSparkObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74933func (scfcrd SapCloudForCustomerResourceDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
74934	return nil, false
74935}
74936
74937// AsShopifyObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74938func (scfcrd SapCloudForCustomerResourceDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
74939	return nil, false
74940}
74941
74942// AsServiceNowObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74943func (scfcrd SapCloudForCustomerResourceDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
74944	return nil, false
74945}
74946
74947// AsQuickBooksObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74948func (scfcrd SapCloudForCustomerResourceDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
74949	return nil, false
74950}
74951
74952// AsPrestoObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74953func (scfcrd SapCloudForCustomerResourceDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
74954	return nil, false
74955}
74956
74957// AsPhoenixObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74958func (scfcrd SapCloudForCustomerResourceDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
74959	return nil, false
74960}
74961
74962// AsPaypalObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74963func (scfcrd SapCloudForCustomerResourceDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
74964	return nil, false
74965}
74966
74967// AsMarketoObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74968func (scfcrd SapCloudForCustomerResourceDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
74969	return nil, false
74970}
74971
74972// AsMariaDBTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74973func (scfcrd SapCloudForCustomerResourceDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
74974	return nil, false
74975}
74976
74977// AsMagentoObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74978func (scfcrd SapCloudForCustomerResourceDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
74979	return nil, false
74980}
74981
74982// AsJiraObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74983func (scfcrd SapCloudForCustomerResourceDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
74984	return nil, false
74985}
74986
74987// AsImpalaObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74988func (scfcrd SapCloudForCustomerResourceDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
74989	return nil, false
74990}
74991
74992// AsHubspotObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74993func (scfcrd SapCloudForCustomerResourceDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
74994	return nil, false
74995}
74996
74997// AsHiveObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
74998func (scfcrd SapCloudForCustomerResourceDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
74999	return nil, false
75000}
75001
75002// AsHBaseObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75003func (scfcrd SapCloudForCustomerResourceDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
75004	return nil, false
75005}
75006
75007// AsGreenplumTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75008func (scfcrd SapCloudForCustomerResourceDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
75009	return nil, false
75010}
75011
75012// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75013func (scfcrd SapCloudForCustomerResourceDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
75014	return nil, false
75015}
75016
75017// AsEloquaObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75018func (scfcrd SapCloudForCustomerResourceDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
75019	return nil, false
75020}
75021
75022// AsDrillTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75023func (scfcrd SapCloudForCustomerResourceDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
75024	return nil, false
75025}
75026
75027// AsCouchbaseTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75028func (scfcrd SapCloudForCustomerResourceDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
75029	return nil, false
75030}
75031
75032// AsConcurObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75033func (scfcrd SapCloudForCustomerResourceDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
75034	return nil, false
75035}
75036
75037// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75038func (scfcrd SapCloudForCustomerResourceDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
75039	return nil, false
75040}
75041
75042// AsAmazonMWSObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75043func (scfcrd SapCloudForCustomerResourceDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
75044	return nil, false
75045}
75046
75047// AsHTTPDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75048func (scfcrd SapCloudForCustomerResourceDataset) AsHTTPDataset() (*HTTPDataset, bool) {
75049	return nil, false
75050}
75051
75052// AsAzureSearchIndexDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75053func (scfcrd SapCloudForCustomerResourceDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
75054	return nil, false
75055}
75056
75057// AsWebTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75058func (scfcrd SapCloudForCustomerResourceDataset) AsWebTableDataset() (*WebTableDataset, bool) {
75059	return nil, false
75060}
75061
75062// AsSQLServerTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75063func (scfcrd SapCloudForCustomerResourceDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
75064	return nil, false
75065}
75066
75067// AsSapEccResourceDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75068func (scfcrd SapCloudForCustomerResourceDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
75069	return nil, false
75070}
75071
75072// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75073func (scfcrd SapCloudForCustomerResourceDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
75074	return &scfcrd, true
75075}
75076
75077// AsSalesforceObjectDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75078func (scfcrd SapCloudForCustomerResourceDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
75079	return nil, false
75080}
75081
75082// AsRelationalTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75083func (scfcrd SapCloudForCustomerResourceDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
75084	return nil, false
75085}
75086
75087// AsAzureMySQLTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75088func (scfcrd SapCloudForCustomerResourceDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
75089	return nil, false
75090}
75091
75092// AsOracleTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75093func (scfcrd SapCloudForCustomerResourceDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
75094	return nil, false
75095}
75096
75097// AsODataResourceDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75098func (scfcrd SapCloudForCustomerResourceDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
75099	return nil, false
75100}
75101
75102// AsMongoDbCollectionDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75103func (scfcrd SapCloudForCustomerResourceDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
75104	return nil, false
75105}
75106
75107// AsFileShareDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75108func (scfcrd SapCloudForCustomerResourceDataset) AsFileShareDataset() (*FileShareDataset, bool) {
75109	return nil, false
75110}
75111
75112// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75113func (scfcrd SapCloudForCustomerResourceDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
75114	return nil, false
75115}
75116
75117// AsDynamicsEntityDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75118func (scfcrd SapCloudForCustomerResourceDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
75119	return nil, false
75120}
75121
75122// AsDocumentDbCollectionDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75123func (scfcrd SapCloudForCustomerResourceDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
75124	return nil, false
75125}
75126
75127// AsCustomDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75128func (scfcrd SapCloudForCustomerResourceDataset) AsCustomDataset() (*CustomDataset, bool) {
75129	return nil, false
75130}
75131
75132// AsCassandraTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75133func (scfcrd SapCloudForCustomerResourceDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
75134	return nil, false
75135}
75136
75137// AsAzureSQLDWTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75138func (scfcrd SapCloudForCustomerResourceDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
75139	return nil, false
75140}
75141
75142// AsAzureSQLTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75143func (scfcrd SapCloudForCustomerResourceDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
75144	return nil, false
75145}
75146
75147// AsAzureTableDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75148func (scfcrd SapCloudForCustomerResourceDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
75149	return nil, false
75150}
75151
75152// AsAzureBlobDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75153func (scfcrd SapCloudForCustomerResourceDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
75154	return nil, false
75155}
75156
75157// AsAmazonS3Dataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75158func (scfcrd SapCloudForCustomerResourceDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
75159	return nil, false
75160}
75161
75162// AsDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75163func (scfcrd SapCloudForCustomerResourceDataset) AsDataset() (*Dataset, bool) {
75164	return nil, false
75165}
75166
75167// AsBasicDataset is the BasicDataset implementation for SapCloudForCustomerResourceDataset.
75168func (scfcrd SapCloudForCustomerResourceDataset) AsBasicDataset() (BasicDataset, bool) {
75169	return &scfcrd, true
75170}
75171
75172// UnmarshalJSON is the custom unmarshaler for SapCloudForCustomerResourceDataset struct.
75173func (scfcrd *SapCloudForCustomerResourceDataset) UnmarshalJSON(body []byte) error {
75174	var m map[string]*json.RawMessage
75175	err := json.Unmarshal(body, &m)
75176	if err != nil {
75177		return err
75178	}
75179	for k, v := range m {
75180		switch k {
75181		case "typeProperties":
75182			if v != nil {
75183				var sapCloudForCustomerResourceDatasetTypeProperties SapCloudForCustomerResourceDatasetTypeProperties
75184				err = json.Unmarshal(*v, &sapCloudForCustomerResourceDatasetTypeProperties)
75185				if err != nil {
75186					return err
75187				}
75188				scfcrd.SapCloudForCustomerResourceDatasetTypeProperties = &sapCloudForCustomerResourceDatasetTypeProperties
75189			}
75190		default:
75191			if v != nil {
75192				var additionalProperties interface{}
75193				err = json.Unmarshal(*v, &additionalProperties)
75194				if err != nil {
75195					return err
75196				}
75197				if scfcrd.AdditionalProperties == nil {
75198					scfcrd.AdditionalProperties = make(map[string]interface{})
75199				}
75200				scfcrd.AdditionalProperties[k] = additionalProperties
75201			}
75202		case "description":
75203			if v != nil {
75204				var description string
75205				err = json.Unmarshal(*v, &description)
75206				if err != nil {
75207					return err
75208				}
75209				scfcrd.Description = &description
75210			}
75211		case "structure":
75212			if v != nil {
75213				var structure interface{}
75214				err = json.Unmarshal(*v, &structure)
75215				if err != nil {
75216					return err
75217				}
75218				scfcrd.Structure = structure
75219			}
75220		case "linkedServiceName":
75221			if v != nil {
75222				var linkedServiceName LinkedServiceReference
75223				err = json.Unmarshal(*v, &linkedServiceName)
75224				if err != nil {
75225					return err
75226				}
75227				scfcrd.LinkedServiceName = &linkedServiceName
75228			}
75229		case "parameters":
75230			if v != nil {
75231				var parameters map[string]*ParameterSpecification
75232				err = json.Unmarshal(*v, &parameters)
75233				if err != nil {
75234					return err
75235				}
75236				scfcrd.Parameters = parameters
75237			}
75238		case "annotations":
75239			if v != nil {
75240				var annotations []interface{}
75241				err = json.Unmarshal(*v, &annotations)
75242				if err != nil {
75243					return err
75244				}
75245				scfcrd.Annotations = &annotations
75246			}
75247		case "type":
75248			if v != nil {
75249				var typeVar TypeBasicDataset
75250				err = json.Unmarshal(*v, &typeVar)
75251				if err != nil {
75252					return err
75253				}
75254				scfcrd.Type = typeVar
75255			}
75256		}
75257	}
75258
75259	return nil
75260}
75261
75262// SapCloudForCustomerResourceDatasetTypeProperties sap Cloud For Customer OData resource dataset properties.
75263type SapCloudForCustomerResourceDatasetTypeProperties struct {
75264	// Path - The path of the SAP Cloud for Customer OData entity. Type: string (or Expression with resultType string).
75265	Path interface{} `json:"path,omitempty"`
75266}
75267
75268// SapCloudForCustomerSink a copy activity SAP Cloud for Customer sink.
75269type SapCloudForCustomerSink struct {
75270	// WriteBehavior - The write behavior for the operation. Default is 'Insert'. Possible values include: 'SapCloudForCustomerSinkWriteBehaviorInsert', 'SapCloudForCustomerSinkWriteBehaviorUpdate'
75271	WriteBehavior SapCloudForCustomerSinkWriteBehavior `json:"writeBehavior,omitempty"`
75272	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
75273	AdditionalProperties map[string]interface{} `json:""`
75274	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
75275	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
75276	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
75277	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
75278	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
75279	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
75280	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
75281	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
75282	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
75283	Type TypeBasicCopySink `json:"type,omitempty"`
75284}
75285
75286// MarshalJSON is the custom marshaler for SapCloudForCustomerSink.
75287func (scfcs SapCloudForCustomerSink) MarshalJSON() ([]byte, error) {
75288	scfcs.Type = TypeSapCloudForCustomerSink
75289	objectMap := make(map[string]interface{})
75290	if scfcs.WriteBehavior != "" {
75291		objectMap["writeBehavior"] = scfcs.WriteBehavior
75292	}
75293	objectMap["writeBatchSize"] = scfcs.WriteBatchSize
75294	objectMap["writeBatchTimeout"] = scfcs.WriteBatchTimeout
75295	objectMap["sinkRetryCount"] = scfcs.SinkRetryCount
75296	objectMap["sinkRetryWait"] = scfcs.SinkRetryWait
75297	if scfcs.Type != "" {
75298		objectMap["type"] = scfcs.Type
75299	}
75300	for k, v := range scfcs.AdditionalProperties {
75301		objectMap[k] = v
75302	}
75303	return json.Marshal(objectMap)
75304}
75305
75306// AsSalesforceSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75307func (scfcs SapCloudForCustomerSink) AsSalesforceSink() (*SalesforceSink, bool) {
75308	return nil, false
75309}
75310
75311// AsDynamicsSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75312func (scfcs SapCloudForCustomerSink) AsDynamicsSink() (*DynamicsSink, bool) {
75313	return nil, false
75314}
75315
75316// AsOdbcSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75317func (scfcs SapCloudForCustomerSink) AsOdbcSink() (*OdbcSink, bool) {
75318	return nil, false
75319}
75320
75321// AsAzureSearchIndexSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75322func (scfcs SapCloudForCustomerSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
75323	return nil, false
75324}
75325
75326// AsAzureDataLakeStoreSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75327func (scfcs SapCloudForCustomerSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
75328	return nil, false
75329}
75330
75331// AsOracleSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75332func (scfcs SapCloudForCustomerSink) AsOracleSink() (*OracleSink, bool) {
75333	return nil, false
75334}
75335
75336// AsSQLDWSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75337func (scfcs SapCloudForCustomerSink) AsSQLDWSink() (*SQLDWSink, bool) {
75338	return nil, false
75339}
75340
75341// AsSQLSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75342func (scfcs SapCloudForCustomerSink) AsSQLSink() (*SQLSink, bool) {
75343	return nil, false
75344}
75345
75346// AsDocumentDbCollectionSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75347func (scfcs SapCloudForCustomerSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
75348	return nil, false
75349}
75350
75351// AsFileSystemSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75352func (scfcs SapCloudForCustomerSink) AsFileSystemSink() (*FileSystemSink, bool) {
75353	return nil, false
75354}
75355
75356// AsBlobSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75357func (scfcs SapCloudForCustomerSink) AsBlobSink() (*BlobSink, bool) {
75358	return nil, false
75359}
75360
75361// AsAzureTableSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75362func (scfcs SapCloudForCustomerSink) AsAzureTableSink() (*AzureTableSink, bool) {
75363	return nil, false
75364}
75365
75366// AsAzureQueueSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75367func (scfcs SapCloudForCustomerSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
75368	return nil, false
75369}
75370
75371// AsSapCloudForCustomerSink is the BasicCopySink implementation for SapCloudForCustomerSink.
75372func (scfcs SapCloudForCustomerSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
75373	return &scfcs, true
75374}
75375
75376// AsCopySink is the BasicCopySink implementation for SapCloudForCustomerSink.
75377func (scfcs SapCloudForCustomerSink) AsCopySink() (*CopySink, bool) {
75378	return nil, false
75379}
75380
75381// AsBasicCopySink is the BasicCopySink implementation for SapCloudForCustomerSink.
75382func (scfcs SapCloudForCustomerSink) AsBasicCopySink() (BasicCopySink, bool) {
75383	return &scfcs, true
75384}
75385
75386// SapCloudForCustomerSource a copy activity source for SAP Cloud for Customer source.
75387type SapCloudForCustomerSource struct {
75388	// Query - SAP Cloud for Customer OData query. For example, "$top=1". Type: string (or Expression with resultType string).
75389	Query interface{} `json:"query,omitempty"`
75390	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
75391	AdditionalProperties map[string]interface{} `json:""`
75392	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
75393	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
75394	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
75395	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
75396	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
75397	Type TypeBasicCopySource `json:"type,omitempty"`
75398}
75399
75400// MarshalJSON is the custom marshaler for SapCloudForCustomerSource.
75401func (scfcs SapCloudForCustomerSource) MarshalJSON() ([]byte, error) {
75402	scfcs.Type = TypeSapCloudForCustomerSource
75403	objectMap := make(map[string]interface{})
75404	objectMap["query"] = scfcs.Query
75405	objectMap["sourceRetryCount"] = scfcs.SourceRetryCount
75406	objectMap["sourceRetryWait"] = scfcs.SourceRetryWait
75407	if scfcs.Type != "" {
75408		objectMap["type"] = scfcs.Type
75409	}
75410	for k, v := range scfcs.AdditionalProperties {
75411		objectMap[k] = v
75412	}
75413	return json.Marshal(objectMap)
75414}
75415
75416// AsAmazonRedshiftSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75417func (scfcs SapCloudForCustomerSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
75418	return nil, false
75419}
75420
75421// AsResponsysSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75422func (scfcs SapCloudForCustomerSource) AsResponsysSource() (*ResponsysSource, bool) {
75423	return nil, false
75424}
75425
75426// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75427func (scfcs SapCloudForCustomerSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
75428	return nil, false
75429}
75430
75431// AsVerticaSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75432func (scfcs SapCloudForCustomerSource) AsVerticaSource() (*VerticaSource, bool) {
75433	return nil, false
75434}
75435
75436// AsNetezzaSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75437func (scfcs SapCloudForCustomerSource) AsNetezzaSource() (*NetezzaSource, bool) {
75438	return nil, false
75439}
75440
75441// AsZohoSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75442func (scfcs SapCloudForCustomerSource) AsZohoSource() (*ZohoSource, bool) {
75443	return nil, false
75444}
75445
75446// AsXeroSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75447func (scfcs SapCloudForCustomerSource) AsXeroSource() (*XeroSource, bool) {
75448	return nil, false
75449}
75450
75451// AsSquareSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75452func (scfcs SapCloudForCustomerSource) AsSquareSource() (*SquareSource, bool) {
75453	return nil, false
75454}
75455
75456// AsSparkSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75457func (scfcs SapCloudForCustomerSource) AsSparkSource() (*SparkSource, bool) {
75458	return nil, false
75459}
75460
75461// AsShopifySource is the BasicCopySource implementation for SapCloudForCustomerSource.
75462func (scfcs SapCloudForCustomerSource) AsShopifySource() (*ShopifySource, bool) {
75463	return nil, false
75464}
75465
75466// AsServiceNowSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75467func (scfcs SapCloudForCustomerSource) AsServiceNowSource() (*ServiceNowSource, bool) {
75468	return nil, false
75469}
75470
75471// AsQuickBooksSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75472func (scfcs SapCloudForCustomerSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
75473	return nil, false
75474}
75475
75476// AsPrestoSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75477func (scfcs SapCloudForCustomerSource) AsPrestoSource() (*PrestoSource, bool) {
75478	return nil, false
75479}
75480
75481// AsPhoenixSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75482func (scfcs SapCloudForCustomerSource) AsPhoenixSource() (*PhoenixSource, bool) {
75483	return nil, false
75484}
75485
75486// AsPaypalSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75487func (scfcs SapCloudForCustomerSource) AsPaypalSource() (*PaypalSource, bool) {
75488	return nil, false
75489}
75490
75491// AsMarketoSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75492func (scfcs SapCloudForCustomerSource) AsMarketoSource() (*MarketoSource, bool) {
75493	return nil, false
75494}
75495
75496// AsMariaDBSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75497func (scfcs SapCloudForCustomerSource) AsMariaDBSource() (*MariaDBSource, bool) {
75498	return nil, false
75499}
75500
75501// AsMagentoSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75502func (scfcs SapCloudForCustomerSource) AsMagentoSource() (*MagentoSource, bool) {
75503	return nil, false
75504}
75505
75506// AsJiraSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75507func (scfcs SapCloudForCustomerSource) AsJiraSource() (*JiraSource, bool) {
75508	return nil, false
75509}
75510
75511// AsImpalaSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75512func (scfcs SapCloudForCustomerSource) AsImpalaSource() (*ImpalaSource, bool) {
75513	return nil, false
75514}
75515
75516// AsHubspotSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75517func (scfcs SapCloudForCustomerSource) AsHubspotSource() (*HubspotSource, bool) {
75518	return nil, false
75519}
75520
75521// AsHiveSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75522func (scfcs SapCloudForCustomerSource) AsHiveSource() (*HiveSource, bool) {
75523	return nil, false
75524}
75525
75526// AsHBaseSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75527func (scfcs SapCloudForCustomerSource) AsHBaseSource() (*HBaseSource, bool) {
75528	return nil, false
75529}
75530
75531// AsGreenplumSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75532func (scfcs SapCloudForCustomerSource) AsGreenplumSource() (*GreenplumSource, bool) {
75533	return nil, false
75534}
75535
75536// AsGoogleBigQuerySource is the BasicCopySource implementation for SapCloudForCustomerSource.
75537func (scfcs SapCloudForCustomerSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
75538	return nil, false
75539}
75540
75541// AsEloquaSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75542func (scfcs SapCloudForCustomerSource) AsEloquaSource() (*EloquaSource, bool) {
75543	return nil, false
75544}
75545
75546// AsDrillSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75547func (scfcs SapCloudForCustomerSource) AsDrillSource() (*DrillSource, bool) {
75548	return nil, false
75549}
75550
75551// AsCouchbaseSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75552func (scfcs SapCloudForCustomerSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
75553	return nil, false
75554}
75555
75556// AsConcurSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75557func (scfcs SapCloudForCustomerSource) AsConcurSource() (*ConcurSource, bool) {
75558	return nil, false
75559}
75560
75561// AsAzurePostgreSQLSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75562func (scfcs SapCloudForCustomerSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
75563	return nil, false
75564}
75565
75566// AsAmazonMWSSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75567func (scfcs SapCloudForCustomerSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
75568	return nil, false
75569}
75570
75571// AsHTTPSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75572func (scfcs SapCloudForCustomerSource) AsHTTPSource() (*HTTPSource, bool) {
75573	return nil, false
75574}
75575
75576// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75577func (scfcs SapCloudForCustomerSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
75578	return nil, false
75579}
75580
75581// AsMongoDbSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75582func (scfcs SapCloudForCustomerSource) AsMongoDbSource() (*MongoDbSource, bool) {
75583	return nil, false
75584}
75585
75586// AsCassandraSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75587func (scfcs SapCloudForCustomerSource) AsCassandraSource() (*CassandraSource, bool) {
75588	return nil, false
75589}
75590
75591// AsWebSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75592func (scfcs SapCloudForCustomerSource) AsWebSource() (*WebSource, bool) {
75593	return nil, false
75594}
75595
75596// AsOracleSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75597func (scfcs SapCloudForCustomerSource) AsOracleSource() (*OracleSource, bool) {
75598	return nil, false
75599}
75600
75601// AsAzureMySQLSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75602func (scfcs SapCloudForCustomerSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
75603	return nil, false
75604}
75605
75606// AsHdfsSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75607func (scfcs SapCloudForCustomerSource) AsHdfsSource() (*HdfsSource, bool) {
75608	return nil, false
75609}
75610
75611// AsFileSystemSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75612func (scfcs SapCloudForCustomerSource) AsFileSystemSource() (*FileSystemSource, bool) {
75613	return nil, false
75614}
75615
75616// AsSQLDWSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75617func (scfcs SapCloudForCustomerSource) AsSQLDWSource() (*SQLDWSource, bool) {
75618	return nil, false
75619}
75620
75621// AsSQLSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75622func (scfcs SapCloudForCustomerSource) AsSQLSource() (*SQLSource, bool) {
75623	return nil, false
75624}
75625
75626// AsSapEccSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75627func (scfcs SapCloudForCustomerSource) AsSapEccSource() (*SapEccSource, bool) {
75628	return nil, false
75629}
75630
75631// AsSapCloudForCustomerSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75632func (scfcs SapCloudForCustomerSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
75633	return &scfcs, true
75634}
75635
75636// AsSalesforceSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75637func (scfcs SapCloudForCustomerSource) AsSalesforceSource() (*SalesforceSource, bool) {
75638	return nil, false
75639}
75640
75641// AsRelationalSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75642func (scfcs SapCloudForCustomerSource) AsRelationalSource() (*RelationalSource, bool) {
75643	return nil, false
75644}
75645
75646// AsDynamicsSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75647func (scfcs SapCloudForCustomerSource) AsDynamicsSource() (*DynamicsSource, bool) {
75648	return nil, false
75649}
75650
75651// AsDocumentDbCollectionSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75652func (scfcs SapCloudForCustomerSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
75653	return nil, false
75654}
75655
75656// AsBlobSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75657func (scfcs SapCloudForCustomerSource) AsBlobSource() (*BlobSource, bool) {
75658	return nil, false
75659}
75660
75661// AsAzureTableSource is the BasicCopySource implementation for SapCloudForCustomerSource.
75662func (scfcs SapCloudForCustomerSource) AsAzureTableSource() (*AzureTableSource, bool) {
75663	return nil, false
75664}
75665
75666// AsCopySource is the BasicCopySource implementation for SapCloudForCustomerSource.
75667func (scfcs SapCloudForCustomerSource) AsCopySource() (*CopySource, bool) {
75668	return nil, false
75669}
75670
75671// AsBasicCopySource is the BasicCopySource implementation for SapCloudForCustomerSource.
75672func (scfcs SapCloudForCustomerSource) AsBasicCopySource() (BasicCopySource, bool) {
75673	return &scfcs, true
75674}
75675
75676// SapEccLinkedService linked service for SAP ERP Central Component(SAP ECC).
75677type SapEccLinkedService struct {
75678	// SapEccLinkedServiceTypeProperties - SAP ECC linked service properties.
75679	*SapEccLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
75680	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
75681	AdditionalProperties map[string]interface{} `json:""`
75682	// ConnectVia - The integration runtime reference.
75683	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
75684	// Description - Linked service description.
75685	Description *string `json:"description,omitempty"`
75686	// Parameters - Parameters for linked service.
75687	Parameters map[string]*ParameterSpecification `json:"parameters"`
75688	// Annotations - List of tags that can be used for describing the Dataset.
75689	Annotations *[]interface{} `json:"annotations,omitempty"`
75690	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
75691	Type TypeBasicLinkedService `json:"type,omitempty"`
75692}
75693
75694// MarshalJSON is the custom marshaler for SapEccLinkedService.
75695func (sels SapEccLinkedService) MarshalJSON() ([]byte, error) {
75696	sels.Type = TypeSapEcc
75697	objectMap := make(map[string]interface{})
75698	if sels.SapEccLinkedServiceTypeProperties != nil {
75699		objectMap["typeProperties"] = sels.SapEccLinkedServiceTypeProperties
75700	}
75701	if sels.ConnectVia != nil {
75702		objectMap["connectVia"] = sels.ConnectVia
75703	}
75704	if sels.Description != nil {
75705		objectMap["description"] = sels.Description
75706	}
75707	if sels.Parameters != nil {
75708		objectMap["parameters"] = sels.Parameters
75709	}
75710	if sels.Annotations != nil {
75711		objectMap["annotations"] = sels.Annotations
75712	}
75713	if sels.Type != "" {
75714		objectMap["type"] = sels.Type
75715	}
75716	for k, v := range sels.AdditionalProperties {
75717		objectMap[k] = v
75718	}
75719	return json.Marshal(objectMap)
75720}
75721
75722// AsResponsysLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75723func (sels SapEccLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
75724	return nil, false
75725}
75726
75727// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75728func (sels SapEccLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
75729	return nil, false
75730}
75731
75732// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75733func (sels SapEccLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
75734	return nil, false
75735}
75736
75737// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75738func (sels SapEccLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
75739	return nil, false
75740}
75741
75742// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75743func (sels SapEccLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
75744	return nil, false
75745}
75746
75747// AsNetezzaLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75748func (sels SapEccLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
75749	return nil, false
75750}
75751
75752// AsVerticaLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75753func (sels SapEccLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
75754	return nil, false
75755}
75756
75757// AsZohoLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75758func (sels SapEccLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
75759	return nil, false
75760}
75761
75762// AsXeroLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75763func (sels SapEccLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
75764	return nil, false
75765}
75766
75767// AsSquareLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75768func (sels SapEccLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
75769	return nil, false
75770}
75771
75772// AsSparkLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75773func (sels SapEccLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
75774	return nil, false
75775}
75776
75777// AsShopifyLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75778func (sels SapEccLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
75779	return nil, false
75780}
75781
75782// AsServiceNowLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75783func (sels SapEccLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
75784	return nil, false
75785}
75786
75787// AsQuickBooksLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75788func (sels SapEccLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
75789	return nil, false
75790}
75791
75792// AsPrestoLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75793func (sels SapEccLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
75794	return nil, false
75795}
75796
75797// AsPhoenixLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75798func (sels SapEccLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
75799	return nil, false
75800}
75801
75802// AsPaypalLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75803func (sels SapEccLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
75804	return nil, false
75805}
75806
75807// AsMarketoLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75808func (sels SapEccLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
75809	return nil, false
75810}
75811
75812// AsMariaDBLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75813func (sels SapEccLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
75814	return nil, false
75815}
75816
75817// AsMagentoLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75818func (sels SapEccLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
75819	return nil, false
75820}
75821
75822// AsJiraLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75823func (sels SapEccLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
75824	return nil, false
75825}
75826
75827// AsImpalaLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75828func (sels SapEccLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
75829	return nil, false
75830}
75831
75832// AsHubspotLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75833func (sels SapEccLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
75834	return nil, false
75835}
75836
75837// AsHiveLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75838func (sels SapEccLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
75839	return nil, false
75840}
75841
75842// AsHBaseLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75843func (sels SapEccLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
75844	return nil, false
75845}
75846
75847// AsGreenplumLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75848func (sels SapEccLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
75849	return nil, false
75850}
75851
75852// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75853func (sels SapEccLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
75854	return nil, false
75855}
75856
75857// AsEloquaLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75858func (sels SapEccLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
75859	return nil, false
75860}
75861
75862// AsDrillLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75863func (sels SapEccLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
75864	return nil, false
75865}
75866
75867// AsCouchbaseLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75868func (sels SapEccLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
75869	return nil, false
75870}
75871
75872// AsConcurLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75873func (sels SapEccLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
75874	return nil, false
75875}
75876
75877// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75878func (sels SapEccLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
75879	return nil, false
75880}
75881
75882// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75883func (sels SapEccLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
75884	return nil, false
75885}
75886
75887// AsSapHanaLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75888func (sels SapEccLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
75889	return nil, false
75890}
75891
75892// AsSapBWLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75893func (sels SapEccLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
75894	return nil, false
75895}
75896
75897// AsSftpServerLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75898func (sels SapEccLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
75899	return nil, false
75900}
75901
75902// AsFtpServerLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75903func (sels SapEccLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
75904	return nil, false
75905}
75906
75907// AsHTTPLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75908func (sels SapEccLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
75909	return nil, false
75910}
75911
75912// AsAzureSearchLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75913func (sels SapEccLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
75914	return nil, false
75915}
75916
75917// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75918func (sels SapEccLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
75919	return nil, false
75920}
75921
75922// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75923func (sels SapEccLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
75924	return nil, false
75925}
75926
75927// AsAmazonS3LinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75928func (sels SapEccLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
75929	return nil, false
75930}
75931
75932// AsSapEccLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75933func (sels SapEccLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
75934	return &sels, true
75935}
75936
75937// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75938func (sels SapEccLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
75939	return nil, false
75940}
75941
75942// AsSalesforceLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75943func (sels SapEccLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
75944	return nil, false
75945}
75946
75947// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75948func (sels SapEccLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
75949	return nil, false
75950}
75951
75952// AsMongoDbLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75953func (sels SapEccLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
75954	return nil, false
75955}
75956
75957// AsCassandraLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75958func (sels SapEccLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
75959	return nil, false
75960}
75961
75962// AsWebLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75963func (sels SapEccLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
75964	return nil, false
75965}
75966
75967// AsODataLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75968func (sels SapEccLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
75969	return nil, false
75970}
75971
75972// AsHdfsLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75973func (sels SapEccLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
75974	return nil, false
75975}
75976
75977// AsOdbcLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75978func (sels SapEccLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
75979	return nil, false
75980}
75981
75982// AsAzureMLLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75983func (sels SapEccLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
75984	return nil, false
75985}
75986
75987// AsTeradataLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75988func (sels SapEccLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
75989	return nil, false
75990}
75991
75992// AsDb2LinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75993func (sels SapEccLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
75994	return nil, false
75995}
75996
75997// AsSybaseLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
75998func (sels SapEccLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
75999	return nil, false
76000}
76001
76002// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76003func (sels SapEccLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
76004	return nil, false
76005}
76006
76007// AsMySQLLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76008func (sels SapEccLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
76009	return nil, false
76010}
76011
76012// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76013func (sels SapEccLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
76014	return nil, false
76015}
76016
76017// AsOracleLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76018func (sels SapEccLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
76019	return nil, false
76020}
76021
76022// AsFileServerLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76023func (sels SapEccLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
76024	return nil, false
76025}
76026
76027// AsHDInsightLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76028func (sels SapEccLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
76029	return nil, false
76030}
76031
76032// AsDynamicsLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76033func (sels SapEccLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
76034	return nil, false
76035}
76036
76037// AsCosmosDbLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76038func (sels SapEccLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
76039	return nil, false
76040}
76041
76042// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76043func (sels SapEccLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
76044	return nil, false
76045}
76046
76047// AsAzureBatchLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76048func (sels SapEccLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
76049	return nil, false
76050}
76051
76052// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76053func (sels SapEccLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
76054	return nil, false
76055}
76056
76057// AsSQLServerLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76058func (sels SapEccLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
76059	return nil, false
76060}
76061
76062// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76063func (sels SapEccLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
76064	return nil, false
76065}
76066
76067// AsAzureStorageLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76068func (sels SapEccLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
76069	return nil, false
76070}
76071
76072// AsLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76073func (sels SapEccLinkedService) AsLinkedService() (*LinkedService, bool) {
76074	return nil, false
76075}
76076
76077// AsBasicLinkedService is the BasicLinkedService implementation for SapEccLinkedService.
76078func (sels SapEccLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
76079	return &sels, true
76080}
76081
76082// UnmarshalJSON is the custom unmarshaler for SapEccLinkedService struct.
76083func (sels *SapEccLinkedService) UnmarshalJSON(body []byte) error {
76084	var m map[string]*json.RawMessage
76085	err := json.Unmarshal(body, &m)
76086	if err != nil {
76087		return err
76088	}
76089	for k, v := range m {
76090		switch k {
76091		case "typeProperties":
76092			if v != nil {
76093				var sapEccLinkedServiceTypeProperties SapEccLinkedServiceTypeProperties
76094				err = json.Unmarshal(*v, &sapEccLinkedServiceTypeProperties)
76095				if err != nil {
76096					return err
76097				}
76098				sels.SapEccLinkedServiceTypeProperties = &sapEccLinkedServiceTypeProperties
76099			}
76100		default:
76101			if v != nil {
76102				var additionalProperties interface{}
76103				err = json.Unmarshal(*v, &additionalProperties)
76104				if err != nil {
76105					return err
76106				}
76107				if sels.AdditionalProperties == nil {
76108					sels.AdditionalProperties = make(map[string]interface{})
76109				}
76110				sels.AdditionalProperties[k] = additionalProperties
76111			}
76112		case "connectVia":
76113			if v != nil {
76114				var connectVia IntegrationRuntimeReference
76115				err = json.Unmarshal(*v, &connectVia)
76116				if err != nil {
76117					return err
76118				}
76119				sels.ConnectVia = &connectVia
76120			}
76121		case "description":
76122			if v != nil {
76123				var description string
76124				err = json.Unmarshal(*v, &description)
76125				if err != nil {
76126					return err
76127				}
76128				sels.Description = &description
76129			}
76130		case "parameters":
76131			if v != nil {
76132				var parameters map[string]*ParameterSpecification
76133				err = json.Unmarshal(*v, &parameters)
76134				if err != nil {
76135					return err
76136				}
76137				sels.Parameters = parameters
76138			}
76139		case "annotations":
76140			if v != nil {
76141				var annotations []interface{}
76142				err = json.Unmarshal(*v, &annotations)
76143				if err != nil {
76144					return err
76145				}
76146				sels.Annotations = &annotations
76147			}
76148		case "type":
76149			if v != nil {
76150				var typeVar TypeBasicLinkedService
76151				err = json.Unmarshal(*v, &typeVar)
76152				if err != nil {
76153					return err
76154				}
76155				sels.Type = typeVar
76156			}
76157		}
76158	}
76159
76160	return nil
76161}
76162
76163// SapEccLinkedServiceTypeProperties SAP ECC linked service properties.
76164type SapEccLinkedServiceTypeProperties struct {
76165	// URL - The URL of SAP ECC OData API. For example, '[https://hostname:port/sap/opu/odata/sap/servicename/]'. Type: string (or Expression with resultType string).
76166	URL *string `json:"url,omitempty"`
76167	// Username - The username for Basic authentication. Type: string (or Expression with resultType string).
76168	Username *string `json:"username,omitempty"`
76169	// Password - The password for Basic authentication.
76170	Password BasicSecretBase `json:"password,omitempty"`
76171	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string).
76172	EncryptedCredential *string `json:"encryptedCredential,omitempty"`
76173}
76174
76175// UnmarshalJSON is the custom unmarshaler for SapEccLinkedServiceTypeProperties struct.
76176func (selstp *SapEccLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
76177	var m map[string]*json.RawMessage
76178	err := json.Unmarshal(body, &m)
76179	if err != nil {
76180		return err
76181	}
76182	for k, v := range m {
76183		switch k {
76184		case "url":
76185			if v != nil {
76186				var URL string
76187				err = json.Unmarshal(*v, &URL)
76188				if err != nil {
76189					return err
76190				}
76191				selstp.URL = &URL
76192			}
76193		case "username":
76194			if v != nil {
76195				var username string
76196				err = json.Unmarshal(*v, &username)
76197				if err != nil {
76198					return err
76199				}
76200				selstp.Username = &username
76201			}
76202		case "password":
76203			if v != nil {
76204				password, err := unmarshalBasicSecretBase(*v)
76205				if err != nil {
76206					return err
76207				}
76208				selstp.Password = password
76209			}
76210		case "encryptedCredential":
76211			if v != nil {
76212				var encryptedCredential string
76213				err = json.Unmarshal(*v, &encryptedCredential)
76214				if err != nil {
76215					return err
76216				}
76217				selstp.EncryptedCredential = &encryptedCredential
76218			}
76219		}
76220	}
76221
76222	return nil
76223}
76224
76225// SapEccResourceDataset the path of the SAP ECC OData entity.
76226type SapEccResourceDataset struct {
76227	// SapEccResourceDatasetTypeProperties - SAP ECC OData resource dataset properties.
76228	*SapEccResourceDatasetTypeProperties `json:"typeProperties,omitempty"`
76229	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
76230	AdditionalProperties map[string]interface{} `json:""`
76231	// Description - Dataset description.
76232	Description *string `json:"description,omitempty"`
76233	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
76234	Structure interface{} `json:"structure,omitempty"`
76235	// LinkedServiceName - Linked service reference.
76236	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
76237	// Parameters - Parameters for dataset.
76238	Parameters map[string]*ParameterSpecification `json:"parameters"`
76239	// Annotations - List of tags that can be used for describing the Dataset.
76240	Annotations *[]interface{} `json:"annotations,omitempty"`
76241	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
76242	Type TypeBasicDataset `json:"type,omitempty"`
76243}
76244
76245// MarshalJSON is the custom marshaler for SapEccResourceDataset.
76246func (serd SapEccResourceDataset) MarshalJSON() ([]byte, error) {
76247	serd.Type = TypeSapEccResource
76248	objectMap := make(map[string]interface{})
76249	if serd.SapEccResourceDatasetTypeProperties != nil {
76250		objectMap["typeProperties"] = serd.SapEccResourceDatasetTypeProperties
76251	}
76252	if serd.Description != nil {
76253		objectMap["description"] = serd.Description
76254	}
76255	objectMap["structure"] = serd.Structure
76256	if serd.LinkedServiceName != nil {
76257		objectMap["linkedServiceName"] = serd.LinkedServiceName
76258	}
76259	if serd.Parameters != nil {
76260		objectMap["parameters"] = serd.Parameters
76261	}
76262	if serd.Annotations != nil {
76263		objectMap["annotations"] = serd.Annotations
76264	}
76265	if serd.Type != "" {
76266		objectMap["type"] = serd.Type
76267	}
76268	for k, v := range serd.AdditionalProperties {
76269		objectMap[k] = v
76270	}
76271	return json.Marshal(objectMap)
76272}
76273
76274// AsResponsysObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76275func (serd SapEccResourceDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
76276	return nil, false
76277}
76278
76279// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76280func (serd SapEccResourceDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
76281	return nil, false
76282}
76283
76284// AsVerticaTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76285func (serd SapEccResourceDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
76286	return nil, false
76287}
76288
76289// AsNetezzaTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76290func (serd SapEccResourceDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
76291	return nil, false
76292}
76293
76294// AsZohoObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76295func (serd SapEccResourceDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
76296	return nil, false
76297}
76298
76299// AsXeroObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76300func (serd SapEccResourceDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
76301	return nil, false
76302}
76303
76304// AsSquareObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76305func (serd SapEccResourceDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
76306	return nil, false
76307}
76308
76309// AsSparkObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76310func (serd SapEccResourceDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
76311	return nil, false
76312}
76313
76314// AsShopifyObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76315func (serd SapEccResourceDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
76316	return nil, false
76317}
76318
76319// AsServiceNowObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76320func (serd SapEccResourceDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
76321	return nil, false
76322}
76323
76324// AsQuickBooksObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76325func (serd SapEccResourceDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
76326	return nil, false
76327}
76328
76329// AsPrestoObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76330func (serd SapEccResourceDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
76331	return nil, false
76332}
76333
76334// AsPhoenixObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76335func (serd SapEccResourceDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
76336	return nil, false
76337}
76338
76339// AsPaypalObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76340func (serd SapEccResourceDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
76341	return nil, false
76342}
76343
76344// AsMarketoObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76345func (serd SapEccResourceDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
76346	return nil, false
76347}
76348
76349// AsMariaDBTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76350func (serd SapEccResourceDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
76351	return nil, false
76352}
76353
76354// AsMagentoObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76355func (serd SapEccResourceDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
76356	return nil, false
76357}
76358
76359// AsJiraObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76360func (serd SapEccResourceDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
76361	return nil, false
76362}
76363
76364// AsImpalaObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76365func (serd SapEccResourceDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
76366	return nil, false
76367}
76368
76369// AsHubspotObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76370func (serd SapEccResourceDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
76371	return nil, false
76372}
76373
76374// AsHiveObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76375func (serd SapEccResourceDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
76376	return nil, false
76377}
76378
76379// AsHBaseObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76380func (serd SapEccResourceDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
76381	return nil, false
76382}
76383
76384// AsGreenplumTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76385func (serd SapEccResourceDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
76386	return nil, false
76387}
76388
76389// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76390func (serd SapEccResourceDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
76391	return nil, false
76392}
76393
76394// AsEloquaObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76395func (serd SapEccResourceDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
76396	return nil, false
76397}
76398
76399// AsDrillTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76400func (serd SapEccResourceDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
76401	return nil, false
76402}
76403
76404// AsCouchbaseTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76405func (serd SapEccResourceDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
76406	return nil, false
76407}
76408
76409// AsConcurObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76410func (serd SapEccResourceDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
76411	return nil, false
76412}
76413
76414// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76415func (serd SapEccResourceDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
76416	return nil, false
76417}
76418
76419// AsAmazonMWSObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76420func (serd SapEccResourceDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
76421	return nil, false
76422}
76423
76424// AsHTTPDataset is the BasicDataset implementation for SapEccResourceDataset.
76425func (serd SapEccResourceDataset) AsHTTPDataset() (*HTTPDataset, bool) {
76426	return nil, false
76427}
76428
76429// AsAzureSearchIndexDataset is the BasicDataset implementation for SapEccResourceDataset.
76430func (serd SapEccResourceDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
76431	return nil, false
76432}
76433
76434// AsWebTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76435func (serd SapEccResourceDataset) AsWebTableDataset() (*WebTableDataset, bool) {
76436	return nil, false
76437}
76438
76439// AsSQLServerTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76440func (serd SapEccResourceDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
76441	return nil, false
76442}
76443
76444// AsSapEccResourceDataset is the BasicDataset implementation for SapEccResourceDataset.
76445func (serd SapEccResourceDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
76446	return &serd, true
76447}
76448
76449// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SapEccResourceDataset.
76450func (serd SapEccResourceDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
76451	return nil, false
76452}
76453
76454// AsSalesforceObjectDataset is the BasicDataset implementation for SapEccResourceDataset.
76455func (serd SapEccResourceDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
76456	return nil, false
76457}
76458
76459// AsRelationalTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76460func (serd SapEccResourceDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
76461	return nil, false
76462}
76463
76464// AsAzureMySQLTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76465func (serd SapEccResourceDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
76466	return nil, false
76467}
76468
76469// AsOracleTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76470func (serd SapEccResourceDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
76471	return nil, false
76472}
76473
76474// AsODataResourceDataset is the BasicDataset implementation for SapEccResourceDataset.
76475func (serd SapEccResourceDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
76476	return nil, false
76477}
76478
76479// AsMongoDbCollectionDataset is the BasicDataset implementation for SapEccResourceDataset.
76480func (serd SapEccResourceDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
76481	return nil, false
76482}
76483
76484// AsFileShareDataset is the BasicDataset implementation for SapEccResourceDataset.
76485func (serd SapEccResourceDataset) AsFileShareDataset() (*FileShareDataset, bool) {
76486	return nil, false
76487}
76488
76489// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SapEccResourceDataset.
76490func (serd SapEccResourceDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
76491	return nil, false
76492}
76493
76494// AsDynamicsEntityDataset is the BasicDataset implementation for SapEccResourceDataset.
76495func (serd SapEccResourceDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
76496	return nil, false
76497}
76498
76499// AsDocumentDbCollectionDataset is the BasicDataset implementation for SapEccResourceDataset.
76500func (serd SapEccResourceDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
76501	return nil, false
76502}
76503
76504// AsCustomDataset is the BasicDataset implementation for SapEccResourceDataset.
76505func (serd SapEccResourceDataset) AsCustomDataset() (*CustomDataset, bool) {
76506	return nil, false
76507}
76508
76509// AsCassandraTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76510func (serd SapEccResourceDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
76511	return nil, false
76512}
76513
76514// AsAzureSQLDWTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76515func (serd SapEccResourceDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
76516	return nil, false
76517}
76518
76519// AsAzureSQLTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76520func (serd SapEccResourceDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
76521	return nil, false
76522}
76523
76524// AsAzureTableDataset is the BasicDataset implementation for SapEccResourceDataset.
76525func (serd SapEccResourceDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
76526	return nil, false
76527}
76528
76529// AsAzureBlobDataset is the BasicDataset implementation for SapEccResourceDataset.
76530func (serd SapEccResourceDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
76531	return nil, false
76532}
76533
76534// AsAmazonS3Dataset is the BasicDataset implementation for SapEccResourceDataset.
76535func (serd SapEccResourceDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
76536	return nil, false
76537}
76538
76539// AsDataset is the BasicDataset implementation for SapEccResourceDataset.
76540func (serd SapEccResourceDataset) AsDataset() (*Dataset, bool) {
76541	return nil, false
76542}
76543
76544// AsBasicDataset is the BasicDataset implementation for SapEccResourceDataset.
76545func (serd SapEccResourceDataset) AsBasicDataset() (BasicDataset, bool) {
76546	return &serd, true
76547}
76548
76549// UnmarshalJSON is the custom unmarshaler for SapEccResourceDataset struct.
76550func (serd *SapEccResourceDataset) UnmarshalJSON(body []byte) error {
76551	var m map[string]*json.RawMessage
76552	err := json.Unmarshal(body, &m)
76553	if err != nil {
76554		return err
76555	}
76556	for k, v := range m {
76557		switch k {
76558		case "typeProperties":
76559			if v != nil {
76560				var sapEccResourceDatasetTypeProperties SapEccResourceDatasetTypeProperties
76561				err = json.Unmarshal(*v, &sapEccResourceDatasetTypeProperties)
76562				if err != nil {
76563					return err
76564				}
76565				serd.SapEccResourceDatasetTypeProperties = &sapEccResourceDatasetTypeProperties
76566			}
76567		default:
76568			if v != nil {
76569				var additionalProperties interface{}
76570				err = json.Unmarshal(*v, &additionalProperties)
76571				if err != nil {
76572					return err
76573				}
76574				if serd.AdditionalProperties == nil {
76575					serd.AdditionalProperties = make(map[string]interface{})
76576				}
76577				serd.AdditionalProperties[k] = additionalProperties
76578			}
76579		case "description":
76580			if v != nil {
76581				var description string
76582				err = json.Unmarshal(*v, &description)
76583				if err != nil {
76584					return err
76585				}
76586				serd.Description = &description
76587			}
76588		case "structure":
76589			if v != nil {
76590				var structure interface{}
76591				err = json.Unmarshal(*v, &structure)
76592				if err != nil {
76593					return err
76594				}
76595				serd.Structure = structure
76596			}
76597		case "linkedServiceName":
76598			if v != nil {
76599				var linkedServiceName LinkedServiceReference
76600				err = json.Unmarshal(*v, &linkedServiceName)
76601				if err != nil {
76602					return err
76603				}
76604				serd.LinkedServiceName = &linkedServiceName
76605			}
76606		case "parameters":
76607			if v != nil {
76608				var parameters map[string]*ParameterSpecification
76609				err = json.Unmarshal(*v, &parameters)
76610				if err != nil {
76611					return err
76612				}
76613				serd.Parameters = parameters
76614			}
76615		case "annotations":
76616			if v != nil {
76617				var annotations []interface{}
76618				err = json.Unmarshal(*v, &annotations)
76619				if err != nil {
76620					return err
76621				}
76622				serd.Annotations = &annotations
76623			}
76624		case "type":
76625			if v != nil {
76626				var typeVar TypeBasicDataset
76627				err = json.Unmarshal(*v, &typeVar)
76628				if err != nil {
76629					return err
76630				}
76631				serd.Type = typeVar
76632			}
76633		}
76634	}
76635
76636	return nil
76637}
76638
76639// SapEccResourceDatasetTypeProperties sap ECC OData resource dataset properties.
76640type SapEccResourceDatasetTypeProperties struct {
76641	// Path - The path of the SAP ECC OData entity. Type: string (or Expression with resultType string).
76642	Path *string `json:"path,omitempty"`
76643}
76644
76645// SapEccSource a copy activity source for SAP ECC source.
76646type SapEccSource struct {
76647	// Query - SAP ECC OData query. For example, "$top=1". Type: string (or Expression with resultType string).
76648	Query *string `json:"query,omitempty"`
76649	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
76650	AdditionalProperties map[string]interface{} `json:""`
76651	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
76652	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
76653	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
76654	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
76655	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
76656	Type TypeBasicCopySource `json:"type,omitempty"`
76657}
76658
76659// MarshalJSON is the custom marshaler for SapEccSource.
76660func (ses SapEccSource) MarshalJSON() ([]byte, error) {
76661	ses.Type = TypeSapEccSource
76662	objectMap := make(map[string]interface{})
76663	if ses.Query != nil {
76664		objectMap["query"] = ses.Query
76665	}
76666	objectMap["sourceRetryCount"] = ses.SourceRetryCount
76667	objectMap["sourceRetryWait"] = ses.SourceRetryWait
76668	if ses.Type != "" {
76669		objectMap["type"] = ses.Type
76670	}
76671	for k, v := range ses.AdditionalProperties {
76672		objectMap[k] = v
76673	}
76674	return json.Marshal(objectMap)
76675}
76676
76677// AsAmazonRedshiftSource is the BasicCopySource implementation for SapEccSource.
76678func (ses SapEccSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
76679	return nil, false
76680}
76681
76682// AsResponsysSource is the BasicCopySource implementation for SapEccSource.
76683func (ses SapEccSource) AsResponsysSource() (*ResponsysSource, bool) {
76684	return nil, false
76685}
76686
76687// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SapEccSource.
76688func (ses SapEccSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
76689	return nil, false
76690}
76691
76692// AsVerticaSource is the BasicCopySource implementation for SapEccSource.
76693func (ses SapEccSource) AsVerticaSource() (*VerticaSource, bool) {
76694	return nil, false
76695}
76696
76697// AsNetezzaSource is the BasicCopySource implementation for SapEccSource.
76698func (ses SapEccSource) AsNetezzaSource() (*NetezzaSource, bool) {
76699	return nil, false
76700}
76701
76702// AsZohoSource is the BasicCopySource implementation for SapEccSource.
76703func (ses SapEccSource) AsZohoSource() (*ZohoSource, bool) {
76704	return nil, false
76705}
76706
76707// AsXeroSource is the BasicCopySource implementation for SapEccSource.
76708func (ses SapEccSource) AsXeroSource() (*XeroSource, bool) {
76709	return nil, false
76710}
76711
76712// AsSquareSource is the BasicCopySource implementation for SapEccSource.
76713func (ses SapEccSource) AsSquareSource() (*SquareSource, bool) {
76714	return nil, false
76715}
76716
76717// AsSparkSource is the BasicCopySource implementation for SapEccSource.
76718func (ses SapEccSource) AsSparkSource() (*SparkSource, bool) {
76719	return nil, false
76720}
76721
76722// AsShopifySource is the BasicCopySource implementation for SapEccSource.
76723func (ses SapEccSource) AsShopifySource() (*ShopifySource, bool) {
76724	return nil, false
76725}
76726
76727// AsServiceNowSource is the BasicCopySource implementation for SapEccSource.
76728func (ses SapEccSource) AsServiceNowSource() (*ServiceNowSource, bool) {
76729	return nil, false
76730}
76731
76732// AsQuickBooksSource is the BasicCopySource implementation for SapEccSource.
76733func (ses SapEccSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
76734	return nil, false
76735}
76736
76737// AsPrestoSource is the BasicCopySource implementation for SapEccSource.
76738func (ses SapEccSource) AsPrestoSource() (*PrestoSource, bool) {
76739	return nil, false
76740}
76741
76742// AsPhoenixSource is the BasicCopySource implementation for SapEccSource.
76743func (ses SapEccSource) AsPhoenixSource() (*PhoenixSource, bool) {
76744	return nil, false
76745}
76746
76747// AsPaypalSource is the BasicCopySource implementation for SapEccSource.
76748func (ses SapEccSource) AsPaypalSource() (*PaypalSource, bool) {
76749	return nil, false
76750}
76751
76752// AsMarketoSource is the BasicCopySource implementation for SapEccSource.
76753func (ses SapEccSource) AsMarketoSource() (*MarketoSource, bool) {
76754	return nil, false
76755}
76756
76757// AsMariaDBSource is the BasicCopySource implementation for SapEccSource.
76758func (ses SapEccSource) AsMariaDBSource() (*MariaDBSource, bool) {
76759	return nil, false
76760}
76761
76762// AsMagentoSource is the BasicCopySource implementation for SapEccSource.
76763func (ses SapEccSource) AsMagentoSource() (*MagentoSource, bool) {
76764	return nil, false
76765}
76766
76767// AsJiraSource is the BasicCopySource implementation for SapEccSource.
76768func (ses SapEccSource) AsJiraSource() (*JiraSource, bool) {
76769	return nil, false
76770}
76771
76772// AsImpalaSource is the BasicCopySource implementation for SapEccSource.
76773func (ses SapEccSource) AsImpalaSource() (*ImpalaSource, bool) {
76774	return nil, false
76775}
76776
76777// AsHubspotSource is the BasicCopySource implementation for SapEccSource.
76778func (ses SapEccSource) AsHubspotSource() (*HubspotSource, bool) {
76779	return nil, false
76780}
76781
76782// AsHiveSource is the BasicCopySource implementation for SapEccSource.
76783func (ses SapEccSource) AsHiveSource() (*HiveSource, bool) {
76784	return nil, false
76785}
76786
76787// AsHBaseSource is the BasicCopySource implementation for SapEccSource.
76788func (ses SapEccSource) AsHBaseSource() (*HBaseSource, bool) {
76789	return nil, false
76790}
76791
76792// AsGreenplumSource is the BasicCopySource implementation for SapEccSource.
76793func (ses SapEccSource) AsGreenplumSource() (*GreenplumSource, bool) {
76794	return nil, false
76795}
76796
76797// AsGoogleBigQuerySource is the BasicCopySource implementation for SapEccSource.
76798func (ses SapEccSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
76799	return nil, false
76800}
76801
76802// AsEloquaSource is the BasicCopySource implementation for SapEccSource.
76803func (ses SapEccSource) AsEloquaSource() (*EloquaSource, bool) {
76804	return nil, false
76805}
76806
76807// AsDrillSource is the BasicCopySource implementation for SapEccSource.
76808func (ses SapEccSource) AsDrillSource() (*DrillSource, bool) {
76809	return nil, false
76810}
76811
76812// AsCouchbaseSource is the BasicCopySource implementation for SapEccSource.
76813func (ses SapEccSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
76814	return nil, false
76815}
76816
76817// AsConcurSource is the BasicCopySource implementation for SapEccSource.
76818func (ses SapEccSource) AsConcurSource() (*ConcurSource, bool) {
76819	return nil, false
76820}
76821
76822// AsAzurePostgreSQLSource is the BasicCopySource implementation for SapEccSource.
76823func (ses SapEccSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
76824	return nil, false
76825}
76826
76827// AsAmazonMWSSource is the BasicCopySource implementation for SapEccSource.
76828func (ses SapEccSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
76829	return nil, false
76830}
76831
76832// AsHTTPSource is the BasicCopySource implementation for SapEccSource.
76833func (ses SapEccSource) AsHTTPSource() (*HTTPSource, bool) {
76834	return nil, false
76835}
76836
76837// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SapEccSource.
76838func (ses SapEccSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
76839	return nil, false
76840}
76841
76842// AsMongoDbSource is the BasicCopySource implementation for SapEccSource.
76843func (ses SapEccSource) AsMongoDbSource() (*MongoDbSource, bool) {
76844	return nil, false
76845}
76846
76847// AsCassandraSource is the BasicCopySource implementation for SapEccSource.
76848func (ses SapEccSource) AsCassandraSource() (*CassandraSource, bool) {
76849	return nil, false
76850}
76851
76852// AsWebSource is the BasicCopySource implementation for SapEccSource.
76853func (ses SapEccSource) AsWebSource() (*WebSource, bool) {
76854	return nil, false
76855}
76856
76857// AsOracleSource is the BasicCopySource implementation for SapEccSource.
76858func (ses SapEccSource) AsOracleSource() (*OracleSource, bool) {
76859	return nil, false
76860}
76861
76862// AsAzureMySQLSource is the BasicCopySource implementation for SapEccSource.
76863func (ses SapEccSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
76864	return nil, false
76865}
76866
76867// AsHdfsSource is the BasicCopySource implementation for SapEccSource.
76868func (ses SapEccSource) AsHdfsSource() (*HdfsSource, bool) {
76869	return nil, false
76870}
76871
76872// AsFileSystemSource is the BasicCopySource implementation for SapEccSource.
76873func (ses SapEccSource) AsFileSystemSource() (*FileSystemSource, bool) {
76874	return nil, false
76875}
76876
76877// AsSQLDWSource is the BasicCopySource implementation for SapEccSource.
76878func (ses SapEccSource) AsSQLDWSource() (*SQLDWSource, bool) {
76879	return nil, false
76880}
76881
76882// AsSQLSource is the BasicCopySource implementation for SapEccSource.
76883func (ses SapEccSource) AsSQLSource() (*SQLSource, bool) {
76884	return nil, false
76885}
76886
76887// AsSapEccSource is the BasicCopySource implementation for SapEccSource.
76888func (ses SapEccSource) AsSapEccSource() (*SapEccSource, bool) {
76889	return &ses, true
76890}
76891
76892// AsSapCloudForCustomerSource is the BasicCopySource implementation for SapEccSource.
76893func (ses SapEccSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
76894	return nil, false
76895}
76896
76897// AsSalesforceSource is the BasicCopySource implementation for SapEccSource.
76898func (ses SapEccSource) AsSalesforceSource() (*SalesforceSource, bool) {
76899	return nil, false
76900}
76901
76902// AsRelationalSource is the BasicCopySource implementation for SapEccSource.
76903func (ses SapEccSource) AsRelationalSource() (*RelationalSource, bool) {
76904	return nil, false
76905}
76906
76907// AsDynamicsSource is the BasicCopySource implementation for SapEccSource.
76908func (ses SapEccSource) AsDynamicsSource() (*DynamicsSource, bool) {
76909	return nil, false
76910}
76911
76912// AsDocumentDbCollectionSource is the BasicCopySource implementation for SapEccSource.
76913func (ses SapEccSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
76914	return nil, false
76915}
76916
76917// AsBlobSource is the BasicCopySource implementation for SapEccSource.
76918func (ses SapEccSource) AsBlobSource() (*BlobSource, bool) {
76919	return nil, false
76920}
76921
76922// AsAzureTableSource is the BasicCopySource implementation for SapEccSource.
76923func (ses SapEccSource) AsAzureTableSource() (*AzureTableSource, bool) {
76924	return nil, false
76925}
76926
76927// AsCopySource is the BasicCopySource implementation for SapEccSource.
76928func (ses SapEccSource) AsCopySource() (*CopySource, bool) {
76929	return nil, false
76930}
76931
76932// AsBasicCopySource is the BasicCopySource implementation for SapEccSource.
76933func (ses SapEccSource) AsBasicCopySource() (BasicCopySource, bool) {
76934	return &ses, true
76935}
76936
76937// SapHanaLinkedService SAP HANA Linked Service.
76938type SapHanaLinkedService struct {
76939	// SapHanaLinkedServiceProperties - Properties specific to this linked service type.
76940	*SapHanaLinkedServiceProperties `json:"typeProperties,omitempty"`
76941	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
76942	AdditionalProperties map[string]interface{} `json:""`
76943	// ConnectVia - The integration runtime reference.
76944	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
76945	// Description - Linked service description.
76946	Description *string `json:"description,omitempty"`
76947	// Parameters - Parameters for linked service.
76948	Parameters map[string]*ParameterSpecification `json:"parameters"`
76949	// Annotations - List of tags that can be used for describing the Dataset.
76950	Annotations *[]interface{} `json:"annotations,omitempty"`
76951	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
76952	Type TypeBasicLinkedService `json:"type,omitempty"`
76953}
76954
76955// MarshalJSON is the custom marshaler for SapHanaLinkedService.
76956func (shls SapHanaLinkedService) MarshalJSON() ([]byte, error) {
76957	shls.Type = TypeSapHana
76958	objectMap := make(map[string]interface{})
76959	if shls.SapHanaLinkedServiceProperties != nil {
76960		objectMap["typeProperties"] = shls.SapHanaLinkedServiceProperties
76961	}
76962	if shls.ConnectVia != nil {
76963		objectMap["connectVia"] = shls.ConnectVia
76964	}
76965	if shls.Description != nil {
76966		objectMap["description"] = shls.Description
76967	}
76968	if shls.Parameters != nil {
76969		objectMap["parameters"] = shls.Parameters
76970	}
76971	if shls.Annotations != nil {
76972		objectMap["annotations"] = shls.Annotations
76973	}
76974	if shls.Type != "" {
76975		objectMap["type"] = shls.Type
76976	}
76977	for k, v := range shls.AdditionalProperties {
76978		objectMap[k] = v
76979	}
76980	return json.Marshal(objectMap)
76981}
76982
76983// AsResponsysLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
76984func (shls SapHanaLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
76985	return nil, false
76986}
76987
76988// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
76989func (shls SapHanaLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
76990	return nil, false
76991}
76992
76993// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
76994func (shls SapHanaLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
76995	return nil, false
76996}
76997
76998// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
76999func (shls SapHanaLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
77000	return nil, false
77001}
77002
77003// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77004func (shls SapHanaLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
77005	return nil, false
77006}
77007
77008// AsNetezzaLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77009func (shls SapHanaLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
77010	return nil, false
77011}
77012
77013// AsVerticaLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77014func (shls SapHanaLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
77015	return nil, false
77016}
77017
77018// AsZohoLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77019func (shls SapHanaLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
77020	return nil, false
77021}
77022
77023// AsXeroLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77024func (shls SapHanaLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
77025	return nil, false
77026}
77027
77028// AsSquareLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77029func (shls SapHanaLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
77030	return nil, false
77031}
77032
77033// AsSparkLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77034func (shls SapHanaLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
77035	return nil, false
77036}
77037
77038// AsShopifyLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77039func (shls SapHanaLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
77040	return nil, false
77041}
77042
77043// AsServiceNowLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77044func (shls SapHanaLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
77045	return nil, false
77046}
77047
77048// AsQuickBooksLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77049func (shls SapHanaLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
77050	return nil, false
77051}
77052
77053// AsPrestoLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77054func (shls SapHanaLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
77055	return nil, false
77056}
77057
77058// AsPhoenixLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77059func (shls SapHanaLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
77060	return nil, false
77061}
77062
77063// AsPaypalLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77064func (shls SapHanaLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
77065	return nil, false
77066}
77067
77068// AsMarketoLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77069func (shls SapHanaLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
77070	return nil, false
77071}
77072
77073// AsMariaDBLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77074func (shls SapHanaLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
77075	return nil, false
77076}
77077
77078// AsMagentoLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77079func (shls SapHanaLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
77080	return nil, false
77081}
77082
77083// AsJiraLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77084func (shls SapHanaLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
77085	return nil, false
77086}
77087
77088// AsImpalaLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77089func (shls SapHanaLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
77090	return nil, false
77091}
77092
77093// AsHubspotLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77094func (shls SapHanaLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
77095	return nil, false
77096}
77097
77098// AsHiveLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77099func (shls SapHanaLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
77100	return nil, false
77101}
77102
77103// AsHBaseLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77104func (shls SapHanaLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
77105	return nil, false
77106}
77107
77108// AsGreenplumLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77109func (shls SapHanaLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
77110	return nil, false
77111}
77112
77113// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77114func (shls SapHanaLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
77115	return nil, false
77116}
77117
77118// AsEloquaLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77119func (shls SapHanaLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
77120	return nil, false
77121}
77122
77123// AsDrillLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77124func (shls SapHanaLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
77125	return nil, false
77126}
77127
77128// AsCouchbaseLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77129func (shls SapHanaLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
77130	return nil, false
77131}
77132
77133// AsConcurLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77134func (shls SapHanaLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
77135	return nil, false
77136}
77137
77138// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77139func (shls SapHanaLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
77140	return nil, false
77141}
77142
77143// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77144func (shls SapHanaLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
77145	return nil, false
77146}
77147
77148// AsSapHanaLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77149func (shls SapHanaLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
77150	return &shls, true
77151}
77152
77153// AsSapBWLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77154func (shls SapHanaLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
77155	return nil, false
77156}
77157
77158// AsSftpServerLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77159func (shls SapHanaLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
77160	return nil, false
77161}
77162
77163// AsFtpServerLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77164func (shls SapHanaLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
77165	return nil, false
77166}
77167
77168// AsHTTPLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77169func (shls SapHanaLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
77170	return nil, false
77171}
77172
77173// AsAzureSearchLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77174func (shls SapHanaLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
77175	return nil, false
77176}
77177
77178// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77179func (shls SapHanaLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
77180	return nil, false
77181}
77182
77183// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77184func (shls SapHanaLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
77185	return nil, false
77186}
77187
77188// AsAmazonS3LinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77189func (shls SapHanaLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
77190	return nil, false
77191}
77192
77193// AsSapEccLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77194func (shls SapHanaLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
77195	return nil, false
77196}
77197
77198// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77199func (shls SapHanaLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
77200	return nil, false
77201}
77202
77203// AsSalesforceLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77204func (shls SapHanaLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
77205	return nil, false
77206}
77207
77208// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77209func (shls SapHanaLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
77210	return nil, false
77211}
77212
77213// AsMongoDbLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77214func (shls SapHanaLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
77215	return nil, false
77216}
77217
77218// AsCassandraLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77219func (shls SapHanaLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
77220	return nil, false
77221}
77222
77223// AsWebLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77224func (shls SapHanaLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
77225	return nil, false
77226}
77227
77228// AsODataLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77229func (shls SapHanaLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
77230	return nil, false
77231}
77232
77233// AsHdfsLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77234func (shls SapHanaLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
77235	return nil, false
77236}
77237
77238// AsOdbcLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77239func (shls SapHanaLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
77240	return nil, false
77241}
77242
77243// AsAzureMLLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77244func (shls SapHanaLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
77245	return nil, false
77246}
77247
77248// AsTeradataLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77249func (shls SapHanaLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
77250	return nil, false
77251}
77252
77253// AsDb2LinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77254func (shls SapHanaLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
77255	return nil, false
77256}
77257
77258// AsSybaseLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77259func (shls SapHanaLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
77260	return nil, false
77261}
77262
77263// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77264func (shls SapHanaLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
77265	return nil, false
77266}
77267
77268// AsMySQLLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77269func (shls SapHanaLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
77270	return nil, false
77271}
77272
77273// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77274func (shls SapHanaLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
77275	return nil, false
77276}
77277
77278// AsOracleLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77279func (shls SapHanaLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
77280	return nil, false
77281}
77282
77283// AsFileServerLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77284func (shls SapHanaLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
77285	return nil, false
77286}
77287
77288// AsHDInsightLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77289func (shls SapHanaLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
77290	return nil, false
77291}
77292
77293// AsDynamicsLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77294func (shls SapHanaLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
77295	return nil, false
77296}
77297
77298// AsCosmosDbLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77299func (shls SapHanaLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
77300	return nil, false
77301}
77302
77303// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77304func (shls SapHanaLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
77305	return nil, false
77306}
77307
77308// AsAzureBatchLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77309func (shls SapHanaLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
77310	return nil, false
77311}
77312
77313// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77314func (shls SapHanaLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
77315	return nil, false
77316}
77317
77318// AsSQLServerLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77319func (shls SapHanaLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
77320	return nil, false
77321}
77322
77323// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77324func (shls SapHanaLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
77325	return nil, false
77326}
77327
77328// AsAzureStorageLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77329func (shls SapHanaLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
77330	return nil, false
77331}
77332
77333// AsLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77334func (shls SapHanaLinkedService) AsLinkedService() (*LinkedService, bool) {
77335	return nil, false
77336}
77337
77338// AsBasicLinkedService is the BasicLinkedService implementation for SapHanaLinkedService.
77339func (shls SapHanaLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
77340	return &shls, true
77341}
77342
77343// UnmarshalJSON is the custom unmarshaler for SapHanaLinkedService struct.
77344func (shls *SapHanaLinkedService) UnmarshalJSON(body []byte) error {
77345	var m map[string]*json.RawMessage
77346	err := json.Unmarshal(body, &m)
77347	if err != nil {
77348		return err
77349	}
77350	for k, v := range m {
77351		switch k {
77352		case "typeProperties":
77353			if v != nil {
77354				var sapHanaLinkedServiceProperties SapHanaLinkedServiceProperties
77355				err = json.Unmarshal(*v, &sapHanaLinkedServiceProperties)
77356				if err != nil {
77357					return err
77358				}
77359				shls.SapHanaLinkedServiceProperties = &sapHanaLinkedServiceProperties
77360			}
77361		default:
77362			if v != nil {
77363				var additionalProperties interface{}
77364				err = json.Unmarshal(*v, &additionalProperties)
77365				if err != nil {
77366					return err
77367				}
77368				if shls.AdditionalProperties == nil {
77369					shls.AdditionalProperties = make(map[string]interface{})
77370				}
77371				shls.AdditionalProperties[k] = additionalProperties
77372			}
77373		case "connectVia":
77374			if v != nil {
77375				var connectVia IntegrationRuntimeReference
77376				err = json.Unmarshal(*v, &connectVia)
77377				if err != nil {
77378					return err
77379				}
77380				shls.ConnectVia = &connectVia
77381			}
77382		case "description":
77383			if v != nil {
77384				var description string
77385				err = json.Unmarshal(*v, &description)
77386				if err != nil {
77387					return err
77388				}
77389				shls.Description = &description
77390			}
77391		case "parameters":
77392			if v != nil {
77393				var parameters map[string]*ParameterSpecification
77394				err = json.Unmarshal(*v, &parameters)
77395				if err != nil {
77396					return err
77397				}
77398				shls.Parameters = parameters
77399			}
77400		case "annotations":
77401			if v != nil {
77402				var annotations []interface{}
77403				err = json.Unmarshal(*v, &annotations)
77404				if err != nil {
77405					return err
77406				}
77407				shls.Annotations = &annotations
77408			}
77409		case "type":
77410			if v != nil {
77411				var typeVar TypeBasicLinkedService
77412				err = json.Unmarshal(*v, &typeVar)
77413				if err != nil {
77414					return err
77415				}
77416				shls.Type = typeVar
77417			}
77418		}
77419	}
77420
77421	return nil
77422}
77423
77424// SapHanaLinkedServiceProperties properties specific to this linked service type.
77425type SapHanaLinkedServiceProperties struct {
77426	// Server - Host name of the SAP HANA server. Type: string (or Expression with resultType string).
77427	Server interface{} `json:"server,omitempty"`
77428	// AuthenticationType - The authentication type to be used to connect to the SAP HANA server. Possible values include: 'SapHanaAuthenticationTypeBasic', 'SapHanaAuthenticationTypeWindows'
77429	AuthenticationType SapHanaAuthenticationType `json:"authenticationType,omitempty"`
77430	// UserName - Username to access the SAP HANA server. Type: string (or Expression with resultType string).
77431	UserName interface{} `json:"userName,omitempty"`
77432	// Password - Password to access the SAP HANA server.
77433	Password BasicSecretBase `json:"password,omitempty"`
77434	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
77435	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
77436}
77437
77438// UnmarshalJSON is the custom unmarshaler for SapHanaLinkedServiceProperties struct.
77439func (shlsp *SapHanaLinkedServiceProperties) UnmarshalJSON(body []byte) error {
77440	var m map[string]*json.RawMessage
77441	err := json.Unmarshal(body, &m)
77442	if err != nil {
77443		return err
77444	}
77445	for k, v := range m {
77446		switch k {
77447		case "server":
77448			if v != nil {
77449				var server interface{}
77450				err = json.Unmarshal(*v, &server)
77451				if err != nil {
77452					return err
77453				}
77454				shlsp.Server = server
77455			}
77456		case "authenticationType":
77457			if v != nil {
77458				var authenticationType SapHanaAuthenticationType
77459				err = json.Unmarshal(*v, &authenticationType)
77460				if err != nil {
77461					return err
77462				}
77463				shlsp.AuthenticationType = authenticationType
77464			}
77465		case "userName":
77466			if v != nil {
77467				var userName interface{}
77468				err = json.Unmarshal(*v, &userName)
77469				if err != nil {
77470					return err
77471				}
77472				shlsp.UserName = userName
77473			}
77474		case "password":
77475			if v != nil {
77476				password, err := unmarshalBasicSecretBase(*v)
77477				if err != nil {
77478					return err
77479				}
77480				shlsp.Password = password
77481			}
77482		case "encryptedCredential":
77483			if v != nil {
77484				var encryptedCredential interface{}
77485				err = json.Unmarshal(*v, &encryptedCredential)
77486				if err != nil {
77487					return err
77488				}
77489				shlsp.EncryptedCredential = encryptedCredential
77490			}
77491		}
77492	}
77493
77494	return nil
77495}
77496
77497// ScheduleTrigger trigger that creates pipeline runs periodically, on schedule.
77498type ScheduleTrigger struct {
77499	// ScheduleTriggerTypeProperties - Schedule Trigger properties.
77500	*ScheduleTriggerTypeProperties `json:"typeProperties,omitempty"`
77501	// Pipelines - Pipelines that need to be started.
77502	Pipelines *[]TriggerPipelineReference `json:"pipelines,omitempty"`
77503	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
77504	AdditionalProperties map[string]interface{} `json:""`
77505	// Description - Trigger description.
77506	Description *string `json:"description,omitempty"`
77507	// RuntimeState - Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger. Possible values include: 'TriggerRuntimeStateStarted', 'TriggerRuntimeStateStopped', 'TriggerRuntimeStateDisabled'
77508	RuntimeState TriggerRuntimeState `json:"runtimeState,omitempty"`
77509	// Type - Possible values include: 'TypeTrigger', 'TypeTumblingWindowTrigger', 'TypeBlobTrigger', 'TypeScheduleTrigger', 'TypeMultiplePipelineTrigger'
77510	Type TypeBasicTrigger `json:"type,omitempty"`
77511}
77512
77513// MarshalJSON is the custom marshaler for ScheduleTrigger.
77514func (st ScheduleTrigger) MarshalJSON() ([]byte, error) {
77515	st.Type = TypeScheduleTrigger
77516	objectMap := make(map[string]interface{})
77517	if st.ScheduleTriggerTypeProperties != nil {
77518		objectMap["typeProperties"] = st.ScheduleTriggerTypeProperties
77519	}
77520	if st.Pipelines != nil {
77521		objectMap["pipelines"] = st.Pipelines
77522	}
77523	if st.Description != nil {
77524		objectMap["description"] = st.Description
77525	}
77526	if st.RuntimeState != "" {
77527		objectMap["runtimeState"] = st.RuntimeState
77528	}
77529	if st.Type != "" {
77530		objectMap["type"] = st.Type
77531	}
77532	for k, v := range st.AdditionalProperties {
77533		objectMap[k] = v
77534	}
77535	return json.Marshal(objectMap)
77536}
77537
77538// AsTumblingWindowTrigger is the BasicTrigger implementation for ScheduleTrigger.
77539func (st ScheduleTrigger) AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool) {
77540	return nil, false
77541}
77542
77543// AsBlobTrigger is the BasicTrigger implementation for ScheduleTrigger.
77544func (st ScheduleTrigger) AsBlobTrigger() (*BlobTrigger, bool) {
77545	return nil, false
77546}
77547
77548// AsScheduleTrigger is the BasicTrigger implementation for ScheduleTrigger.
77549func (st ScheduleTrigger) AsScheduleTrigger() (*ScheduleTrigger, bool) {
77550	return &st, true
77551}
77552
77553// AsMultiplePipelineTrigger is the BasicTrigger implementation for ScheduleTrigger.
77554func (st ScheduleTrigger) AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool) {
77555	return nil, false
77556}
77557
77558// AsBasicMultiplePipelineTrigger is the BasicTrigger implementation for ScheduleTrigger.
77559func (st ScheduleTrigger) AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool) {
77560	return &st, true
77561}
77562
77563// AsTrigger is the BasicTrigger implementation for ScheduleTrigger.
77564func (st ScheduleTrigger) AsTrigger() (*Trigger, bool) {
77565	return nil, false
77566}
77567
77568// AsBasicTrigger is the BasicTrigger implementation for ScheduleTrigger.
77569func (st ScheduleTrigger) AsBasicTrigger() (BasicTrigger, bool) {
77570	return &st, true
77571}
77572
77573// UnmarshalJSON is the custom unmarshaler for ScheduleTrigger struct.
77574func (st *ScheduleTrigger) UnmarshalJSON(body []byte) error {
77575	var m map[string]*json.RawMessage
77576	err := json.Unmarshal(body, &m)
77577	if err != nil {
77578		return err
77579	}
77580	for k, v := range m {
77581		switch k {
77582		case "typeProperties":
77583			if v != nil {
77584				var scheduleTriggerTypeProperties ScheduleTriggerTypeProperties
77585				err = json.Unmarshal(*v, &scheduleTriggerTypeProperties)
77586				if err != nil {
77587					return err
77588				}
77589				st.ScheduleTriggerTypeProperties = &scheduleTriggerTypeProperties
77590			}
77591		case "pipelines":
77592			if v != nil {
77593				var pipelines []TriggerPipelineReference
77594				err = json.Unmarshal(*v, &pipelines)
77595				if err != nil {
77596					return err
77597				}
77598				st.Pipelines = &pipelines
77599			}
77600		default:
77601			if v != nil {
77602				var additionalProperties interface{}
77603				err = json.Unmarshal(*v, &additionalProperties)
77604				if err != nil {
77605					return err
77606				}
77607				if st.AdditionalProperties == nil {
77608					st.AdditionalProperties = make(map[string]interface{})
77609				}
77610				st.AdditionalProperties[k] = additionalProperties
77611			}
77612		case "description":
77613			if v != nil {
77614				var description string
77615				err = json.Unmarshal(*v, &description)
77616				if err != nil {
77617					return err
77618				}
77619				st.Description = &description
77620			}
77621		case "runtimeState":
77622			if v != nil {
77623				var runtimeState TriggerRuntimeState
77624				err = json.Unmarshal(*v, &runtimeState)
77625				if err != nil {
77626					return err
77627				}
77628				st.RuntimeState = runtimeState
77629			}
77630		case "type":
77631			if v != nil {
77632				var typeVar TypeBasicTrigger
77633				err = json.Unmarshal(*v, &typeVar)
77634				if err != nil {
77635					return err
77636				}
77637				st.Type = typeVar
77638			}
77639		}
77640	}
77641
77642	return nil
77643}
77644
77645// ScheduleTriggerRecurrence the workflow trigger recurrence.
77646type ScheduleTriggerRecurrence struct {
77647	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
77648	AdditionalProperties map[string]interface{} `json:""`
77649	// Frequency - The frequency. Possible values include: 'NotSpecified', 'Minute', 'Hour', 'Day', 'Week', 'Month', 'Year'
77650	Frequency RecurrenceFrequency `json:"frequency,omitempty"`
77651	// Interval - The interval.
77652	Interval *int32 `json:"interval,omitempty"`
77653	// StartTime - The start time.
77654	StartTime *date.Time `json:"startTime,omitempty"`
77655	// EndTime - The end time.
77656	EndTime *date.Time `json:"endTime,omitempty"`
77657	// TimeZone - The time zone.
77658	TimeZone *string `json:"timeZone,omitempty"`
77659	// Schedule - The recurrence schedule.
77660	Schedule *RecurrenceSchedule `json:"schedule,omitempty"`
77661}
77662
77663// MarshalJSON is the custom marshaler for ScheduleTriggerRecurrence.
77664func (str ScheduleTriggerRecurrence) MarshalJSON() ([]byte, error) {
77665	objectMap := make(map[string]interface{})
77666	if str.Frequency != "" {
77667		objectMap["frequency"] = str.Frequency
77668	}
77669	if str.Interval != nil {
77670		objectMap["interval"] = str.Interval
77671	}
77672	if str.StartTime != nil {
77673		objectMap["startTime"] = str.StartTime
77674	}
77675	if str.EndTime != nil {
77676		objectMap["endTime"] = str.EndTime
77677	}
77678	if str.TimeZone != nil {
77679		objectMap["timeZone"] = str.TimeZone
77680	}
77681	if str.Schedule != nil {
77682		objectMap["schedule"] = str.Schedule
77683	}
77684	for k, v := range str.AdditionalProperties {
77685		objectMap[k] = v
77686	}
77687	return json.Marshal(objectMap)
77688}
77689
77690// ScheduleTriggerTypeProperties schedule Trigger properties.
77691type ScheduleTriggerTypeProperties struct {
77692	// Recurrence - Recurrence schedule configuration.
77693	Recurrence *ScheduleTriggerRecurrence `json:"recurrence,omitempty"`
77694}
77695
77696// BasicSecretBase the base definition of a secret type.
77697type BasicSecretBase interface {
77698	AsSecureString() (*SecureString, bool)
77699	AsAzureKeyVaultSecretReference() (*AzureKeyVaultSecretReference, bool)
77700	AsSecretBase() (*SecretBase, bool)
77701}
77702
77703// SecretBase the base definition of a secret type.
77704type SecretBase struct {
77705	// Type - Possible values include: 'TypeSecretBase', 'TypeSecureString', 'TypeAzureKeyVaultSecret'
77706	Type Type `json:"type,omitempty"`
77707}
77708
77709func unmarshalBasicSecretBase(body []byte) (BasicSecretBase, error) {
77710	var m map[string]interface{}
77711	err := json.Unmarshal(body, &m)
77712	if err != nil {
77713		return nil, err
77714	}
77715
77716	switch m["type"] {
77717	case string(TypeSecureString):
77718		var ss SecureString
77719		err := json.Unmarshal(body, &ss)
77720		return ss, err
77721	case string(TypeAzureKeyVaultSecret):
77722		var akvsr AzureKeyVaultSecretReference
77723		err := json.Unmarshal(body, &akvsr)
77724		return akvsr, err
77725	default:
77726		var sb SecretBase
77727		err := json.Unmarshal(body, &sb)
77728		return sb, err
77729	}
77730}
77731func unmarshalBasicSecretBaseArray(body []byte) ([]BasicSecretBase, error) {
77732	var rawMessages []*json.RawMessage
77733	err := json.Unmarshal(body, &rawMessages)
77734	if err != nil {
77735		return nil, err
77736	}
77737
77738	sbArray := make([]BasicSecretBase, len(rawMessages))
77739
77740	for index, rawMessage := range rawMessages {
77741		sb, err := unmarshalBasicSecretBase(*rawMessage)
77742		if err != nil {
77743			return nil, err
77744		}
77745		sbArray[index] = sb
77746	}
77747	return sbArray, nil
77748}
77749
77750// MarshalJSON is the custom marshaler for SecretBase.
77751func (sb SecretBase) MarshalJSON() ([]byte, error) {
77752	sb.Type = TypeSecretBase
77753	objectMap := make(map[string]interface{})
77754	if sb.Type != "" {
77755		objectMap["type"] = sb.Type
77756	}
77757	return json.Marshal(objectMap)
77758}
77759
77760// AsSecureString is the BasicSecretBase implementation for SecretBase.
77761func (sb SecretBase) AsSecureString() (*SecureString, bool) {
77762	return nil, false
77763}
77764
77765// AsAzureKeyVaultSecretReference is the BasicSecretBase implementation for SecretBase.
77766func (sb SecretBase) AsAzureKeyVaultSecretReference() (*AzureKeyVaultSecretReference, bool) {
77767	return nil, false
77768}
77769
77770// AsSecretBase is the BasicSecretBase implementation for SecretBase.
77771func (sb SecretBase) AsSecretBase() (*SecretBase, bool) {
77772	return &sb, true
77773}
77774
77775// AsBasicSecretBase is the BasicSecretBase implementation for SecretBase.
77776func (sb SecretBase) AsBasicSecretBase() (BasicSecretBase, bool) {
77777	return &sb, true
77778}
77779
77780// SecureString azure Data Factory secure string definition. The string value will be masked with asterisks '*'
77781// during Get or List API calls.
77782type SecureString struct {
77783	// Value - Value of secure string.
77784	Value *string `json:"value,omitempty"`
77785	// Type - Possible values include: 'TypeSecretBase', 'TypeSecureString', 'TypeAzureKeyVaultSecret'
77786	Type Type `json:"type,omitempty"`
77787}
77788
77789// MarshalJSON is the custom marshaler for SecureString.
77790func (ss SecureString) MarshalJSON() ([]byte, error) {
77791	ss.Type = TypeSecureString
77792	objectMap := make(map[string]interface{})
77793	if ss.Value != nil {
77794		objectMap["value"] = ss.Value
77795	}
77796	if ss.Type != "" {
77797		objectMap["type"] = ss.Type
77798	}
77799	return json.Marshal(objectMap)
77800}
77801
77802// AsSecureString is the BasicSecretBase implementation for SecureString.
77803func (ss SecureString) AsSecureString() (*SecureString, bool) {
77804	return &ss, true
77805}
77806
77807// AsAzureKeyVaultSecretReference is the BasicSecretBase implementation for SecureString.
77808func (ss SecureString) AsAzureKeyVaultSecretReference() (*AzureKeyVaultSecretReference, bool) {
77809	return nil, false
77810}
77811
77812// AsSecretBase is the BasicSecretBase implementation for SecureString.
77813func (ss SecureString) AsSecretBase() (*SecretBase, bool) {
77814	return nil, false
77815}
77816
77817// AsBasicSecretBase is the BasicSecretBase implementation for SecureString.
77818func (ss SecureString) AsBasicSecretBase() (BasicSecretBase, bool) {
77819	return &ss, true
77820}
77821
77822// SelfHostedIntegrationRuntime self-hosted integration runtime.
77823type SelfHostedIntegrationRuntime struct {
77824	// LinkedIntegrationRuntimeTypeProperties - When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime.
77825	*LinkedIntegrationRuntimeTypeProperties `json:"typeProperties,omitempty"`
77826	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
77827	AdditionalProperties map[string]interface{} `json:""`
77828	// Description - Integration runtime description.
77829	Description *string `json:"description,omitempty"`
77830	// Type - Possible values include: 'TypeIntegrationRuntime', 'TypeSelfHosted', 'TypeManaged'
77831	Type TypeBasicIntegrationRuntime `json:"type,omitempty"`
77832}
77833
77834// MarshalJSON is the custom marshaler for SelfHostedIntegrationRuntime.
77835func (shir SelfHostedIntegrationRuntime) MarshalJSON() ([]byte, error) {
77836	shir.Type = TypeSelfHosted
77837	objectMap := make(map[string]interface{})
77838	if shir.LinkedIntegrationRuntimeTypeProperties != nil {
77839		objectMap["typeProperties"] = shir.LinkedIntegrationRuntimeTypeProperties
77840	}
77841	if shir.Description != nil {
77842		objectMap["description"] = shir.Description
77843	}
77844	if shir.Type != "" {
77845		objectMap["type"] = shir.Type
77846	}
77847	for k, v := range shir.AdditionalProperties {
77848		objectMap[k] = v
77849	}
77850	return json.Marshal(objectMap)
77851}
77852
77853// AsSelfHostedIntegrationRuntime is the BasicIntegrationRuntime implementation for SelfHostedIntegrationRuntime.
77854func (shir SelfHostedIntegrationRuntime) AsSelfHostedIntegrationRuntime() (*SelfHostedIntegrationRuntime, bool) {
77855	return &shir, true
77856}
77857
77858// AsManagedIntegrationRuntime is the BasicIntegrationRuntime implementation for SelfHostedIntegrationRuntime.
77859func (shir SelfHostedIntegrationRuntime) AsManagedIntegrationRuntime() (*ManagedIntegrationRuntime, bool) {
77860	return nil, false
77861}
77862
77863// AsIntegrationRuntime is the BasicIntegrationRuntime implementation for SelfHostedIntegrationRuntime.
77864func (shir SelfHostedIntegrationRuntime) AsIntegrationRuntime() (*IntegrationRuntime, bool) {
77865	return nil, false
77866}
77867
77868// AsBasicIntegrationRuntime is the BasicIntegrationRuntime implementation for SelfHostedIntegrationRuntime.
77869func (shir SelfHostedIntegrationRuntime) AsBasicIntegrationRuntime() (BasicIntegrationRuntime, bool) {
77870	return &shir, true
77871}
77872
77873// UnmarshalJSON is the custom unmarshaler for SelfHostedIntegrationRuntime struct.
77874func (shir *SelfHostedIntegrationRuntime) UnmarshalJSON(body []byte) error {
77875	var m map[string]*json.RawMessage
77876	err := json.Unmarshal(body, &m)
77877	if err != nil {
77878		return err
77879	}
77880	for k, v := range m {
77881		switch k {
77882		case "typeProperties":
77883			if v != nil {
77884				var linkedIntegrationRuntimeTypeProperties LinkedIntegrationRuntimeTypeProperties
77885				err = json.Unmarshal(*v, &linkedIntegrationRuntimeTypeProperties)
77886				if err != nil {
77887					return err
77888				}
77889				shir.LinkedIntegrationRuntimeTypeProperties = &linkedIntegrationRuntimeTypeProperties
77890			}
77891		default:
77892			if v != nil {
77893				var additionalProperties interface{}
77894				err = json.Unmarshal(*v, &additionalProperties)
77895				if err != nil {
77896					return err
77897				}
77898				if shir.AdditionalProperties == nil {
77899					shir.AdditionalProperties = make(map[string]interface{})
77900				}
77901				shir.AdditionalProperties[k] = additionalProperties
77902			}
77903		case "description":
77904			if v != nil {
77905				var description string
77906				err = json.Unmarshal(*v, &description)
77907				if err != nil {
77908					return err
77909				}
77910				shir.Description = &description
77911			}
77912		case "type":
77913			if v != nil {
77914				var typeVar TypeBasicIntegrationRuntime
77915				err = json.Unmarshal(*v, &typeVar)
77916				if err != nil {
77917					return err
77918				}
77919				shir.Type = typeVar
77920			}
77921		}
77922	}
77923
77924	return nil
77925}
77926
77927// SelfHostedIntegrationRuntimeNode properties of Self-hosted integration runtime node.
77928type SelfHostedIntegrationRuntimeNode struct {
77929	autorest.Response `json:"-"`
77930	// NodeName - Name of the integration runtime node.
77931	NodeName *string `json:"nodeName,omitempty"`
77932	// MachineName - Machine name of the integration runtime node.
77933	MachineName *string `json:"machineName,omitempty"`
77934	// HostServiceURI - URI for the host machine of the integration runtime.
77935	HostServiceURI *string `json:"hostServiceUri,omitempty"`
77936	// Status - Status of the integration runtime node. Possible values include: 'SelfHostedIntegrationRuntimeNodeStatusNeedRegistration', 'SelfHostedIntegrationRuntimeNodeStatusOnline', 'SelfHostedIntegrationRuntimeNodeStatusLimited', 'SelfHostedIntegrationRuntimeNodeStatusOffline', 'SelfHostedIntegrationRuntimeNodeStatusUpgrading', 'SelfHostedIntegrationRuntimeNodeStatusInitializing', 'SelfHostedIntegrationRuntimeNodeStatusInitializeFailed'
77937	Status SelfHostedIntegrationRuntimeNodeStatus `json:"status,omitempty"`
77938	// Capabilities - The integration runtime capabilities dictionary
77939	Capabilities map[string]*string `json:"capabilities"`
77940	// VersionStatus - Status of the integration runtime node version.
77941	VersionStatus *string `json:"versionStatus,omitempty"`
77942	// Version - Version of the integration runtime node.
77943	Version *string `json:"version,omitempty"`
77944	// RegisterTime - The time at which the integration runtime node was registered in ISO8601 format.
77945	RegisterTime *date.Time `json:"registerTime,omitempty"`
77946	// LastConnectTime - The most recent time at which the integration runtime was connected in ISO8601 format.
77947	LastConnectTime *date.Time `json:"lastConnectTime,omitempty"`
77948	// ExpiryTime - The time at which the integration runtime will expire in ISO8601 format.
77949	ExpiryTime *date.Time `json:"expiryTime,omitempty"`
77950	// LastStartTime - The time the node last started up.
77951	LastStartTime *date.Time `json:"lastStartTime,omitempty"`
77952	// LastStopTime - The integration runtime node last stop time.
77953	LastStopTime *date.Time `json:"lastStopTime,omitempty"`
77954	// LastUpdateResult - The result of the last integration runtime node update. Possible values include: 'Succeed', 'Fail'
77955	LastUpdateResult IntegrationRuntimeUpdateResult `json:"lastUpdateResult,omitempty"`
77956	// LastStartUpdateTime - The last time for the integration runtime node update start.
77957	LastStartUpdateTime *date.Time `json:"lastStartUpdateTime,omitempty"`
77958	// LastEndUpdateTime - The last time for the integration runtime node update end.
77959	LastEndUpdateTime *date.Time `json:"lastEndUpdateTime,omitempty"`
77960	// IsActiveDispatcher - Indicates whether this node is the active dispatcher for integration runtime requests.
77961	IsActiveDispatcher *bool `json:"isActiveDispatcher,omitempty"`
77962	// ConcurrentJobsLimit - Maximum concurrent jobs on the integration runtime node.
77963	ConcurrentJobsLimit *int32 `json:"concurrentJobsLimit,omitempty"`
77964	// MaxConcurrentJobs - The maximum concurrent jobs in this integration runtime.
77965	MaxConcurrentJobs *int32 `json:"maxConcurrentJobs,omitempty"`
77966}
77967
77968// MarshalJSON is the custom marshaler for SelfHostedIntegrationRuntimeNode.
77969func (shirn SelfHostedIntegrationRuntimeNode) MarshalJSON() ([]byte, error) {
77970	objectMap := make(map[string]interface{})
77971	if shirn.NodeName != nil {
77972		objectMap["nodeName"] = shirn.NodeName
77973	}
77974	if shirn.MachineName != nil {
77975		objectMap["machineName"] = shirn.MachineName
77976	}
77977	if shirn.HostServiceURI != nil {
77978		objectMap["hostServiceUri"] = shirn.HostServiceURI
77979	}
77980	if shirn.Status != "" {
77981		objectMap["status"] = shirn.Status
77982	}
77983	if shirn.Capabilities != nil {
77984		objectMap["capabilities"] = shirn.Capabilities
77985	}
77986	if shirn.VersionStatus != nil {
77987		objectMap["versionStatus"] = shirn.VersionStatus
77988	}
77989	if shirn.Version != nil {
77990		objectMap["version"] = shirn.Version
77991	}
77992	if shirn.RegisterTime != nil {
77993		objectMap["registerTime"] = shirn.RegisterTime
77994	}
77995	if shirn.LastConnectTime != nil {
77996		objectMap["lastConnectTime"] = shirn.LastConnectTime
77997	}
77998	if shirn.ExpiryTime != nil {
77999		objectMap["expiryTime"] = shirn.ExpiryTime
78000	}
78001	if shirn.LastStartTime != nil {
78002		objectMap["lastStartTime"] = shirn.LastStartTime
78003	}
78004	if shirn.LastStopTime != nil {
78005		objectMap["lastStopTime"] = shirn.LastStopTime
78006	}
78007	if shirn.LastUpdateResult != "" {
78008		objectMap["lastUpdateResult"] = shirn.LastUpdateResult
78009	}
78010	if shirn.LastStartUpdateTime != nil {
78011		objectMap["lastStartUpdateTime"] = shirn.LastStartUpdateTime
78012	}
78013	if shirn.LastEndUpdateTime != nil {
78014		objectMap["lastEndUpdateTime"] = shirn.LastEndUpdateTime
78015	}
78016	if shirn.IsActiveDispatcher != nil {
78017		objectMap["isActiveDispatcher"] = shirn.IsActiveDispatcher
78018	}
78019	if shirn.ConcurrentJobsLimit != nil {
78020		objectMap["concurrentJobsLimit"] = shirn.ConcurrentJobsLimit
78021	}
78022	if shirn.MaxConcurrentJobs != nil {
78023		objectMap["maxConcurrentJobs"] = shirn.MaxConcurrentJobs
78024	}
78025	return json.Marshal(objectMap)
78026}
78027
78028// SelfHostedIntegrationRuntimeStatus self-hosted integration runtime status.
78029type SelfHostedIntegrationRuntimeStatus struct {
78030	// SelfHostedIntegrationRuntimeStatusTypeProperties - Self-hosted integration runtime status type properties.
78031	*SelfHostedIntegrationRuntimeStatusTypeProperties `json:"typeProperties,omitempty"`
78032	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
78033	AdditionalProperties map[string]interface{} `json:""`
78034	// DataFactoryName - The data factory name which the integration runtime belong to.
78035	DataFactoryName *string `json:"dataFactoryName,omitempty"`
78036	// State - The state of integration runtime. Possible values include: 'Initial', 'Stopped', 'Started', 'Starting', 'Stopping', 'NeedRegistration', 'Online', 'Limited', 'Offline'
78037	State IntegrationRuntimeState `json:"state,omitempty"`
78038	// Type - Possible values include: 'TypeBasicIntegrationRuntimeStatusTypeIntegrationRuntimeStatus', 'TypeBasicIntegrationRuntimeStatusTypeSelfHosted', 'TypeBasicIntegrationRuntimeStatusTypeManaged'
78039	Type TypeBasicIntegrationRuntimeStatus `json:"type,omitempty"`
78040}
78041
78042// MarshalJSON is the custom marshaler for SelfHostedIntegrationRuntimeStatus.
78043func (shirs SelfHostedIntegrationRuntimeStatus) MarshalJSON() ([]byte, error) {
78044	shirs.Type = TypeBasicIntegrationRuntimeStatusTypeSelfHosted
78045	objectMap := make(map[string]interface{})
78046	if shirs.SelfHostedIntegrationRuntimeStatusTypeProperties != nil {
78047		objectMap["typeProperties"] = shirs.SelfHostedIntegrationRuntimeStatusTypeProperties
78048	}
78049	if shirs.DataFactoryName != nil {
78050		objectMap["dataFactoryName"] = shirs.DataFactoryName
78051	}
78052	if shirs.State != "" {
78053		objectMap["state"] = shirs.State
78054	}
78055	if shirs.Type != "" {
78056		objectMap["type"] = shirs.Type
78057	}
78058	for k, v := range shirs.AdditionalProperties {
78059		objectMap[k] = v
78060	}
78061	return json.Marshal(objectMap)
78062}
78063
78064// AsSelfHostedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for SelfHostedIntegrationRuntimeStatus.
78065func (shirs SelfHostedIntegrationRuntimeStatus) AsSelfHostedIntegrationRuntimeStatus() (*SelfHostedIntegrationRuntimeStatus, bool) {
78066	return &shirs, true
78067}
78068
78069// AsManagedIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for SelfHostedIntegrationRuntimeStatus.
78070func (shirs SelfHostedIntegrationRuntimeStatus) AsManagedIntegrationRuntimeStatus() (*ManagedIntegrationRuntimeStatus, bool) {
78071	return nil, false
78072}
78073
78074// AsIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for SelfHostedIntegrationRuntimeStatus.
78075func (shirs SelfHostedIntegrationRuntimeStatus) AsIntegrationRuntimeStatus() (*IntegrationRuntimeStatus, bool) {
78076	return nil, false
78077}
78078
78079// AsBasicIntegrationRuntimeStatus is the BasicIntegrationRuntimeStatus implementation for SelfHostedIntegrationRuntimeStatus.
78080func (shirs SelfHostedIntegrationRuntimeStatus) AsBasicIntegrationRuntimeStatus() (BasicIntegrationRuntimeStatus, bool) {
78081	return &shirs, true
78082}
78083
78084// UnmarshalJSON is the custom unmarshaler for SelfHostedIntegrationRuntimeStatus struct.
78085func (shirs *SelfHostedIntegrationRuntimeStatus) UnmarshalJSON(body []byte) error {
78086	var m map[string]*json.RawMessage
78087	err := json.Unmarshal(body, &m)
78088	if err != nil {
78089		return err
78090	}
78091	for k, v := range m {
78092		switch k {
78093		case "typeProperties":
78094			if v != nil {
78095				var selfHostedIntegrationRuntimeStatusTypeProperties SelfHostedIntegrationRuntimeStatusTypeProperties
78096				err = json.Unmarshal(*v, &selfHostedIntegrationRuntimeStatusTypeProperties)
78097				if err != nil {
78098					return err
78099				}
78100				shirs.SelfHostedIntegrationRuntimeStatusTypeProperties = &selfHostedIntegrationRuntimeStatusTypeProperties
78101			}
78102		default:
78103			if v != nil {
78104				var additionalProperties interface{}
78105				err = json.Unmarshal(*v, &additionalProperties)
78106				if err != nil {
78107					return err
78108				}
78109				if shirs.AdditionalProperties == nil {
78110					shirs.AdditionalProperties = make(map[string]interface{})
78111				}
78112				shirs.AdditionalProperties[k] = additionalProperties
78113			}
78114		case "dataFactoryName":
78115			if v != nil {
78116				var dataFactoryName string
78117				err = json.Unmarshal(*v, &dataFactoryName)
78118				if err != nil {
78119					return err
78120				}
78121				shirs.DataFactoryName = &dataFactoryName
78122			}
78123		case "state":
78124			if v != nil {
78125				var state IntegrationRuntimeState
78126				err = json.Unmarshal(*v, &state)
78127				if err != nil {
78128					return err
78129				}
78130				shirs.State = state
78131			}
78132		case "type":
78133			if v != nil {
78134				var typeVar TypeBasicIntegrationRuntimeStatus
78135				err = json.Unmarshal(*v, &typeVar)
78136				if err != nil {
78137					return err
78138				}
78139				shirs.Type = typeVar
78140			}
78141		}
78142	}
78143
78144	return nil
78145}
78146
78147// SelfHostedIntegrationRuntimeStatusTypeProperties self-hosted integration runtime status type properties.
78148type SelfHostedIntegrationRuntimeStatusTypeProperties struct {
78149	// CreateTime - The time at which the integration runtime was created, in ISO8601 format.
78150	CreateTime *date.Time `json:"createTime,omitempty"`
78151	// TaskQueueID - The task queue id of the integration runtime.
78152	TaskQueueID *string `json:"taskQueueId,omitempty"`
78153	// InternalChannelEncryption - It is used to set the encryption mode for node-node communication channel (when more than 2 self-hosted integration runtime nodes exist). Possible values include: 'NotSet', 'SslEncrypted', 'NotEncrypted'
78154	InternalChannelEncryption IntegrationRuntimeInternalChannelEncryptionMode `json:"internalChannelEncryption,omitempty"`
78155	// Version - Version of the integration runtime.
78156	Version *string `json:"version,omitempty"`
78157	// Nodes - The list of nodes for this integration runtime.
78158	Nodes *[]SelfHostedIntegrationRuntimeNode `json:"nodes,omitempty"`
78159	// ScheduledUpdateDate - The date at which the integration runtime will be scheduled to update, in ISO8601 format.
78160	ScheduledUpdateDate *date.Time `json:"scheduledUpdateDate,omitempty"`
78161	// UpdateDelayOffset - The time in the date scheduled by service to update the integration runtime, e.g., PT03H is 3 hours
78162	UpdateDelayOffset *string `json:"updateDelayOffset,omitempty"`
78163	// LocalTimeZoneOffset - The local time zone offset in hours.
78164	LocalTimeZoneOffset *string `json:"localTimeZoneOffset,omitempty"`
78165	// Capabilities - Object with additional information about integration runtime capabilities.
78166	Capabilities map[string]*string `json:"capabilities"`
78167	// ServiceUrls - The URLs for the services used in integration runtime backend service.
78168	ServiceUrls *[]string `json:"serviceUrls,omitempty"`
78169	// AutoUpdate - Whether Self-hosted integration runtime auto update has been turned on. Possible values include: 'On', 'Off'
78170	AutoUpdate IntegrationRuntimeAutoUpdate `json:"autoUpdate,omitempty"`
78171	// VersionStatus - Status of the integration runtime version.
78172	VersionStatus *string `json:"versionStatus,omitempty"`
78173	// Links - The list of linked integration runtimes that are created to share with this integration runtime.
78174	Links *[]LinkedIntegrationRuntime `json:"links,omitempty"`
78175}
78176
78177// MarshalJSON is the custom marshaler for SelfHostedIntegrationRuntimeStatusTypeProperties.
78178func (shirstp SelfHostedIntegrationRuntimeStatusTypeProperties) MarshalJSON() ([]byte, error) {
78179	objectMap := make(map[string]interface{})
78180	if shirstp.CreateTime != nil {
78181		objectMap["createTime"] = shirstp.CreateTime
78182	}
78183	if shirstp.TaskQueueID != nil {
78184		objectMap["taskQueueId"] = shirstp.TaskQueueID
78185	}
78186	if shirstp.InternalChannelEncryption != "" {
78187		objectMap["internalChannelEncryption"] = shirstp.InternalChannelEncryption
78188	}
78189	if shirstp.Version != nil {
78190		objectMap["version"] = shirstp.Version
78191	}
78192	if shirstp.Nodes != nil {
78193		objectMap["nodes"] = shirstp.Nodes
78194	}
78195	if shirstp.ScheduledUpdateDate != nil {
78196		objectMap["scheduledUpdateDate"] = shirstp.ScheduledUpdateDate
78197	}
78198	if shirstp.UpdateDelayOffset != nil {
78199		objectMap["updateDelayOffset"] = shirstp.UpdateDelayOffset
78200	}
78201	if shirstp.LocalTimeZoneOffset != nil {
78202		objectMap["localTimeZoneOffset"] = shirstp.LocalTimeZoneOffset
78203	}
78204	if shirstp.Capabilities != nil {
78205		objectMap["capabilities"] = shirstp.Capabilities
78206	}
78207	if shirstp.ServiceUrls != nil {
78208		objectMap["serviceUrls"] = shirstp.ServiceUrls
78209	}
78210	if shirstp.AutoUpdate != "" {
78211		objectMap["autoUpdate"] = shirstp.AutoUpdate
78212	}
78213	if shirstp.VersionStatus != nil {
78214		objectMap["versionStatus"] = shirstp.VersionStatus
78215	}
78216	if shirstp.Links != nil {
78217		objectMap["links"] = shirstp.Links
78218	}
78219	return json.Marshal(objectMap)
78220}
78221
78222// ServiceNowLinkedService serviceNow server linked service.
78223type ServiceNowLinkedService struct {
78224	// ServiceNowLinkedServiceTypeProperties - ServiceNow server linked service properties.
78225	*ServiceNowLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
78226	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
78227	AdditionalProperties map[string]interface{} `json:""`
78228	// ConnectVia - The integration runtime reference.
78229	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
78230	// Description - Linked service description.
78231	Description *string `json:"description,omitempty"`
78232	// Parameters - Parameters for linked service.
78233	Parameters map[string]*ParameterSpecification `json:"parameters"`
78234	// Annotations - List of tags that can be used for describing the Dataset.
78235	Annotations *[]interface{} `json:"annotations,omitempty"`
78236	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
78237	Type TypeBasicLinkedService `json:"type,omitempty"`
78238}
78239
78240// MarshalJSON is the custom marshaler for ServiceNowLinkedService.
78241func (snls ServiceNowLinkedService) MarshalJSON() ([]byte, error) {
78242	snls.Type = TypeServiceNow
78243	objectMap := make(map[string]interface{})
78244	if snls.ServiceNowLinkedServiceTypeProperties != nil {
78245		objectMap["typeProperties"] = snls.ServiceNowLinkedServiceTypeProperties
78246	}
78247	if snls.ConnectVia != nil {
78248		objectMap["connectVia"] = snls.ConnectVia
78249	}
78250	if snls.Description != nil {
78251		objectMap["description"] = snls.Description
78252	}
78253	if snls.Parameters != nil {
78254		objectMap["parameters"] = snls.Parameters
78255	}
78256	if snls.Annotations != nil {
78257		objectMap["annotations"] = snls.Annotations
78258	}
78259	if snls.Type != "" {
78260		objectMap["type"] = snls.Type
78261	}
78262	for k, v := range snls.AdditionalProperties {
78263		objectMap[k] = v
78264	}
78265	return json.Marshal(objectMap)
78266}
78267
78268// AsResponsysLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78269func (snls ServiceNowLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
78270	return nil, false
78271}
78272
78273// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78274func (snls ServiceNowLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
78275	return nil, false
78276}
78277
78278// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78279func (snls ServiceNowLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
78280	return nil, false
78281}
78282
78283// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78284func (snls ServiceNowLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
78285	return nil, false
78286}
78287
78288// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78289func (snls ServiceNowLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
78290	return nil, false
78291}
78292
78293// AsNetezzaLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78294func (snls ServiceNowLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
78295	return nil, false
78296}
78297
78298// AsVerticaLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78299func (snls ServiceNowLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
78300	return nil, false
78301}
78302
78303// AsZohoLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78304func (snls ServiceNowLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
78305	return nil, false
78306}
78307
78308// AsXeroLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78309func (snls ServiceNowLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
78310	return nil, false
78311}
78312
78313// AsSquareLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78314func (snls ServiceNowLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
78315	return nil, false
78316}
78317
78318// AsSparkLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78319func (snls ServiceNowLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
78320	return nil, false
78321}
78322
78323// AsShopifyLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78324func (snls ServiceNowLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
78325	return nil, false
78326}
78327
78328// AsServiceNowLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78329func (snls ServiceNowLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
78330	return &snls, true
78331}
78332
78333// AsQuickBooksLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78334func (snls ServiceNowLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
78335	return nil, false
78336}
78337
78338// AsPrestoLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78339func (snls ServiceNowLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
78340	return nil, false
78341}
78342
78343// AsPhoenixLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78344func (snls ServiceNowLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
78345	return nil, false
78346}
78347
78348// AsPaypalLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78349func (snls ServiceNowLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
78350	return nil, false
78351}
78352
78353// AsMarketoLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78354func (snls ServiceNowLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
78355	return nil, false
78356}
78357
78358// AsMariaDBLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78359func (snls ServiceNowLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
78360	return nil, false
78361}
78362
78363// AsMagentoLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78364func (snls ServiceNowLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
78365	return nil, false
78366}
78367
78368// AsJiraLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78369func (snls ServiceNowLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
78370	return nil, false
78371}
78372
78373// AsImpalaLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78374func (snls ServiceNowLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
78375	return nil, false
78376}
78377
78378// AsHubspotLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78379func (snls ServiceNowLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
78380	return nil, false
78381}
78382
78383// AsHiveLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78384func (snls ServiceNowLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
78385	return nil, false
78386}
78387
78388// AsHBaseLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78389func (snls ServiceNowLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
78390	return nil, false
78391}
78392
78393// AsGreenplumLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78394func (snls ServiceNowLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
78395	return nil, false
78396}
78397
78398// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78399func (snls ServiceNowLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
78400	return nil, false
78401}
78402
78403// AsEloquaLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78404func (snls ServiceNowLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
78405	return nil, false
78406}
78407
78408// AsDrillLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78409func (snls ServiceNowLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
78410	return nil, false
78411}
78412
78413// AsCouchbaseLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78414func (snls ServiceNowLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
78415	return nil, false
78416}
78417
78418// AsConcurLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78419func (snls ServiceNowLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
78420	return nil, false
78421}
78422
78423// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78424func (snls ServiceNowLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
78425	return nil, false
78426}
78427
78428// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78429func (snls ServiceNowLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
78430	return nil, false
78431}
78432
78433// AsSapHanaLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78434func (snls ServiceNowLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
78435	return nil, false
78436}
78437
78438// AsSapBWLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78439func (snls ServiceNowLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
78440	return nil, false
78441}
78442
78443// AsSftpServerLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78444func (snls ServiceNowLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
78445	return nil, false
78446}
78447
78448// AsFtpServerLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78449func (snls ServiceNowLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
78450	return nil, false
78451}
78452
78453// AsHTTPLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78454func (snls ServiceNowLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
78455	return nil, false
78456}
78457
78458// AsAzureSearchLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78459func (snls ServiceNowLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
78460	return nil, false
78461}
78462
78463// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78464func (snls ServiceNowLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
78465	return nil, false
78466}
78467
78468// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78469func (snls ServiceNowLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
78470	return nil, false
78471}
78472
78473// AsAmazonS3LinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78474func (snls ServiceNowLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
78475	return nil, false
78476}
78477
78478// AsSapEccLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78479func (snls ServiceNowLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
78480	return nil, false
78481}
78482
78483// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78484func (snls ServiceNowLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
78485	return nil, false
78486}
78487
78488// AsSalesforceLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78489func (snls ServiceNowLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
78490	return nil, false
78491}
78492
78493// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78494func (snls ServiceNowLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
78495	return nil, false
78496}
78497
78498// AsMongoDbLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78499func (snls ServiceNowLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
78500	return nil, false
78501}
78502
78503// AsCassandraLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78504func (snls ServiceNowLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
78505	return nil, false
78506}
78507
78508// AsWebLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78509func (snls ServiceNowLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
78510	return nil, false
78511}
78512
78513// AsODataLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78514func (snls ServiceNowLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
78515	return nil, false
78516}
78517
78518// AsHdfsLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78519func (snls ServiceNowLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
78520	return nil, false
78521}
78522
78523// AsOdbcLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78524func (snls ServiceNowLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
78525	return nil, false
78526}
78527
78528// AsAzureMLLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78529func (snls ServiceNowLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
78530	return nil, false
78531}
78532
78533// AsTeradataLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78534func (snls ServiceNowLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
78535	return nil, false
78536}
78537
78538// AsDb2LinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78539func (snls ServiceNowLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
78540	return nil, false
78541}
78542
78543// AsSybaseLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78544func (snls ServiceNowLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
78545	return nil, false
78546}
78547
78548// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78549func (snls ServiceNowLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
78550	return nil, false
78551}
78552
78553// AsMySQLLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78554func (snls ServiceNowLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
78555	return nil, false
78556}
78557
78558// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78559func (snls ServiceNowLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
78560	return nil, false
78561}
78562
78563// AsOracleLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78564func (snls ServiceNowLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
78565	return nil, false
78566}
78567
78568// AsFileServerLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78569func (snls ServiceNowLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
78570	return nil, false
78571}
78572
78573// AsHDInsightLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78574func (snls ServiceNowLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
78575	return nil, false
78576}
78577
78578// AsDynamicsLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78579func (snls ServiceNowLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
78580	return nil, false
78581}
78582
78583// AsCosmosDbLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78584func (snls ServiceNowLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
78585	return nil, false
78586}
78587
78588// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78589func (snls ServiceNowLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
78590	return nil, false
78591}
78592
78593// AsAzureBatchLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78594func (snls ServiceNowLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
78595	return nil, false
78596}
78597
78598// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78599func (snls ServiceNowLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
78600	return nil, false
78601}
78602
78603// AsSQLServerLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78604func (snls ServiceNowLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
78605	return nil, false
78606}
78607
78608// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78609func (snls ServiceNowLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
78610	return nil, false
78611}
78612
78613// AsAzureStorageLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78614func (snls ServiceNowLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
78615	return nil, false
78616}
78617
78618// AsLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78619func (snls ServiceNowLinkedService) AsLinkedService() (*LinkedService, bool) {
78620	return nil, false
78621}
78622
78623// AsBasicLinkedService is the BasicLinkedService implementation for ServiceNowLinkedService.
78624func (snls ServiceNowLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
78625	return &snls, true
78626}
78627
78628// UnmarshalJSON is the custom unmarshaler for ServiceNowLinkedService struct.
78629func (snls *ServiceNowLinkedService) UnmarshalJSON(body []byte) error {
78630	var m map[string]*json.RawMessage
78631	err := json.Unmarshal(body, &m)
78632	if err != nil {
78633		return err
78634	}
78635	for k, v := range m {
78636		switch k {
78637		case "typeProperties":
78638			if v != nil {
78639				var serviceNowLinkedServiceTypeProperties ServiceNowLinkedServiceTypeProperties
78640				err = json.Unmarshal(*v, &serviceNowLinkedServiceTypeProperties)
78641				if err != nil {
78642					return err
78643				}
78644				snls.ServiceNowLinkedServiceTypeProperties = &serviceNowLinkedServiceTypeProperties
78645			}
78646		default:
78647			if v != nil {
78648				var additionalProperties interface{}
78649				err = json.Unmarshal(*v, &additionalProperties)
78650				if err != nil {
78651					return err
78652				}
78653				if snls.AdditionalProperties == nil {
78654					snls.AdditionalProperties = make(map[string]interface{})
78655				}
78656				snls.AdditionalProperties[k] = additionalProperties
78657			}
78658		case "connectVia":
78659			if v != nil {
78660				var connectVia IntegrationRuntimeReference
78661				err = json.Unmarshal(*v, &connectVia)
78662				if err != nil {
78663					return err
78664				}
78665				snls.ConnectVia = &connectVia
78666			}
78667		case "description":
78668			if v != nil {
78669				var description string
78670				err = json.Unmarshal(*v, &description)
78671				if err != nil {
78672					return err
78673				}
78674				snls.Description = &description
78675			}
78676		case "parameters":
78677			if v != nil {
78678				var parameters map[string]*ParameterSpecification
78679				err = json.Unmarshal(*v, &parameters)
78680				if err != nil {
78681					return err
78682				}
78683				snls.Parameters = parameters
78684			}
78685		case "annotations":
78686			if v != nil {
78687				var annotations []interface{}
78688				err = json.Unmarshal(*v, &annotations)
78689				if err != nil {
78690					return err
78691				}
78692				snls.Annotations = &annotations
78693			}
78694		case "type":
78695			if v != nil {
78696				var typeVar TypeBasicLinkedService
78697				err = json.Unmarshal(*v, &typeVar)
78698				if err != nil {
78699					return err
78700				}
78701				snls.Type = typeVar
78702			}
78703		}
78704	}
78705
78706	return nil
78707}
78708
78709// ServiceNowLinkedServiceTypeProperties serviceNow server linked service properties.
78710type ServiceNowLinkedServiceTypeProperties struct {
78711	// Endpoint - The endpoint of the ServiceNow server. (i.e. ServiceNowData.com)
78712	Endpoint interface{} `json:"endpoint,omitempty"`
78713	// AuthenticationType - The authentication type to use. Possible values include: 'ServiceNowAuthenticationTypeBasic', 'ServiceNowAuthenticationTypeOAuth2'
78714	AuthenticationType ServiceNowAuthenticationType `json:"authenticationType,omitempty"`
78715	// Username - The user name used to connect to the ServiceNow server for Basic and OAuth2 authentication.
78716	Username interface{} `json:"username,omitempty"`
78717	// Password - The password corresponding to the user name for Basic and OAuth2 authentication.
78718	Password BasicSecretBase `json:"password,omitempty"`
78719	// ClientID - The client id for OAuth2 authentication.
78720	ClientID interface{} `json:"clientId,omitempty"`
78721	// ClientSecret - The client secret for OAuth2 authentication.
78722	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
78723	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
78724	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
78725	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
78726	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
78727	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
78728	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
78729	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
78730	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
78731}
78732
78733// UnmarshalJSON is the custom unmarshaler for ServiceNowLinkedServiceTypeProperties struct.
78734func (snlstp *ServiceNowLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
78735	var m map[string]*json.RawMessage
78736	err := json.Unmarshal(body, &m)
78737	if err != nil {
78738		return err
78739	}
78740	for k, v := range m {
78741		switch k {
78742		case "endpoint":
78743			if v != nil {
78744				var endpoint interface{}
78745				err = json.Unmarshal(*v, &endpoint)
78746				if err != nil {
78747					return err
78748				}
78749				snlstp.Endpoint = endpoint
78750			}
78751		case "authenticationType":
78752			if v != nil {
78753				var authenticationType ServiceNowAuthenticationType
78754				err = json.Unmarshal(*v, &authenticationType)
78755				if err != nil {
78756					return err
78757				}
78758				snlstp.AuthenticationType = authenticationType
78759			}
78760		case "username":
78761			if v != nil {
78762				var username interface{}
78763				err = json.Unmarshal(*v, &username)
78764				if err != nil {
78765					return err
78766				}
78767				snlstp.Username = username
78768			}
78769		case "password":
78770			if v != nil {
78771				password, err := unmarshalBasicSecretBase(*v)
78772				if err != nil {
78773					return err
78774				}
78775				snlstp.Password = password
78776			}
78777		case "clientId":
78778			if v != nil {
78779				var clientID interface{}
78780				err = json.Unmarshal(*v, &clientID)
78781				if err != nil {
78782					return err
78783				}
78784				snlstp.ClientID = clientID
78785			}
78786		case "clientSecret":
78787			if v != nil {
78788				clientSecret, err := unmarshalBasicSecretBase(*v)
78789				if err != nil {
78790					return err
78791				}
78792				snlstp.ClientSecret = clientSecret
78793			}
78794		case "useEncryptedEndpoints":
78795			if v != nil {
78796				var useEncryptedEndpoints interface{}
78797				err = json.Unmarshal(*v, &useEncryptedEndpoints)
78798				if err != nil {
78799					return err
78800				}
78801				snlstp.UseEncryptedEndpoints = useEncryptedEndpoints
78802			}
78803		case "useHostVerification":
78804			if v != nil {
78805				var useHostVerification interface{}
78806				err = json.Unmarshal(*v, &useHostVerification)
78807				if err != nil {
78808					return err
78809				}
78810				snlstp.UseHostVerification = useHostVerification
78811			}
78812		case "usePeerVerification":
78813			if v != nil {
78814				var usePeerVerification interface{}
78815				err = json.Unmarshal(*v, &usePeerVerification)
78816				if err != nil {
78817					return err
78818				}
78819				snlstp.UsePeerVerification = usePeerVerification
78820			}
78821		case "encryptedCredential":
78822			if v != nil {
78823				var encryptedCredential interface{}
78824				err = json.Unmarshal(*v, &encryptedCredential)
78825				if err != nil {
78826					return err
78827				}
78828				snlstp.EncryptedCredential = encryptedCredential
78829			}
78830		}
78831	}
78832
78833	return nil
78834}
78835
78836// ServiceNowObjectDataset serviceNow server dataset.
78837type ServiceNowObjectDataset struct {
78838	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
78839	AdditionalProperties map[string]interface{} `json:""`
78840	// Description - Dataset description.
78841	Description *string `json:"description,omitempty"`
78842	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
78843	Structure interface{} `json:"structure,omitempty"`
78844	// LinkedServiceName - Linked service reference.
78845	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
78846	// Parameters - Parameters for dataset.
78847	Parameters map[string]*ParameterSpecification `json:"parameters"`
78848	// Annotations - List of tags that can be used for describing the Dataset.
78849	Annotations *[]interface{} `json:"annotations,omitempty"`
78850	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
78851	Type TypeBasicDataset `json:"type,omitempty"`
78852}
78853
78854// MarshalJSON is the custom marshaler for ServiceNowObjectDataset.
78855func (snod ServiceNowObjectDataset) MarshalJSON() ([]byte, error) {
78856	snod.Type = TypeServiceNowObject
78857	objectMap := make(map[string]interface{})
78858	if snod.Description != nil {
78859		objectMap["description"] = snod.Description
78860	}
78861	objectMap["structure"] = snod.Structure
78862	if snod.LinkedServiceName != nil {
78863		objectMap["linkedServiceName"] = snod.LinkedServiceName
78864	}
78865	if snod.Parameters != nil {
78866		objectMap["parameters"] = snod.Parameters
78867	}
78868	if snod.Annotations != nil {
78869		objectMap["annotations"] = snod.Annotations
78870	}
78871	if snod.Type != "" {
78872		objectMap["type"] = snod.Type
78873	}
78874	for k, v := range snod.AdditionalProperties {
78875		objectMap[k] = v
78876	}
78877	return json.Marshal(objectMap)
78878}
78879
78880// AsResponsysObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78881func (snod ServiceNowObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
78882	return nil, false
78883}
78884
78885// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78886func (snod ServiceNowObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
78887	return nil, false
78888}
78889
78890// AsVerticaTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78891func (snod ServiceNowObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
78892	return nil, false
78893}
78894
78895// AsNetezzaTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78896func (snod ServiceNowObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
78897	return nil, false
78898}
78899
78900// AsZohoObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78901func (snod ServiceNowObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
78902	return nil, false
78903}
78904
78905// AsXeroObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78906func (snod ServiceNowObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
78907	return nil, false
78908}
78909
78910// AsSquareObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78911func (snod ServiceNowObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
78912	return nil, false
78913}
78914
78915// AsSparkObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78916func (snod ServiceNowObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
78917	return nil, false
78918}
78919
78920// AsShopifyObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78921func (snod ServiceNowObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
78922	return nil, false
78923}
78924
78925// AsServiceNowObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78926func (snod ServiceNowObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
78927	return &snod, true
78928}
78929
78930// AsQuickBooksObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78931func (snod ServiceNowObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
78932	return nil, false
78933}
78934
78935// AsPrestoObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78936func (snod ServiceNowObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
78937	return nil, false
78938}
78939
78940// AsPhoenixObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78941func (snod ServiceNowObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
78942	return nil, false
78943}
78944
78945// AsPaypalObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78946func (snod ServiceNowObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
78947	return nil, false
78948}
78949
78950// AsMarketoObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78951func (snod ServiceNowObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
78952	return nil, false
78953}
78954
78955// AsMariaDBTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78956func (snod ServiceNowObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
78957	return nil, false
78958}
78959
78960// AsMagentoObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78961func (snod ServiceNowObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
78962	return nil, false
78963}
78964
78965// AsJiraObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78966func (snod ServiceNowObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
78967	return nil, false
78968}
78969
78970// AsImpalaObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78971func (snod ServiceNowObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
78972	return nil, false
78973}
78974
78975// AsHubspotObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78976func (snod ServiceNowObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
78977	return nil, false
78978}
78979
78980// AsHiveObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78981func (snod ServiceNowObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
78982	return nil, false
78983}
78984
78985// AsHBaseObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78986func (snod ServiceNowObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
78987	return nil, false
78988}
78989
78990// AsGreenplumTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78991func (snod ServiceNowObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
78992	return nil, false
78993}
78994
78995// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
78996func (snod ServiceNowObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
78997	return nil, false
78998}
78999
79000// AsEloquaObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79001func (snod ServiceNowObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
79002	return nil, false
79003}
79004
79005// AsDrillTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79006func (snod ServiceNowObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
79007	return nil, false
79008}
79009
79010// AsCouchbaseTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79011func (snod ServiceNowObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
79012	return nil, false
79013}
79014
79015// AsConcurObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79016func (snod ServiceNowObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
79017	return nil, false
79018}
79019
79020// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79021func (snod ServiceNowObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
79022	return nil, false
79023}
79024
79025// AsAmazonMWSObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79026func (snod ServiceNowObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
79027	return nil, false
79028}
79029
79030// AsHTTPDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79031func (snod ServiceNowObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
79032	return nil, false
79033}
79034
79035// AsAzureSearchIndexDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79036func (snod ServiceNowObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
79037	return nil, false
79038}
79039
79040// AsWebTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79041func (snod ServiceNowObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
79042	return nil, false
79043}
79044
79045// AsSQLServerTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79046func (snod ServiceNowObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
79047	return nil, false
79048}
79049
79050// AsSapEccResourceDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79051func (snod ServiceNowObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
79052	return nil, false
79053}
79054
79055// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79056func (snod ServiceNowObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
79057	return nil, false
79058}
79059
79060// AsSalesforceObjectDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79061func (snod ServiceNowObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
79062	return nil, false
79063}
79064
79065// AsRelationalTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79066func (snod ServiceNowObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
79067	return nil, false
79068}
79069
79070// AsAzureMySQLTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79071func (snod ServiceNowObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
79072	return nil, false
79073}
79074
79075// AsOracleTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79076func (snod ServiceNowObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
79077	return nil, false
79078}
79079
79080// AsODataResourceDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79081func (snod ServiceNowObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
79082	return nil, false
79083}
79084
79085// AsMongoDbCollectionDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79086func (snod ServiceNowObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
79087	return nil, false
79088}
79089
79090// AsFileShareDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79091func (snod ServiceNowObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
79092	return nil, false
79093}
79094
79095// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79096func (snod ServiceNowObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
79097	return nil, false
79098}
79099
79100// AsDynamicsEntityDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79101func (snod ServiceNowObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
79102	return nil, false
79103}
79104
79105// AsDocumentDbCollectionDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79106func (snod ServiceNowObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
79107	return nil, false
79108}
79109
79110// AsCustomDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79111func (snod ServiceNowObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
79112	return nil, false
79113}
79114
79115// AsCassandraTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79116func (snod ServiceNowObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
79117	return nil, false
79118}
79119
79120// AsAzureSQLDWTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79121func (snod ServiceNowObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
79122	return nil, false
79123}
79124
79125// AsAzureSQLTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79126func (snod ServiceNowObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
79127	return nil, false
79128}
79129
79130// AsAzureTableDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79131func (snod ServiceNowObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
79132	return nil, false
79133}
79134
79135// AsAzureBlobDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79136func (snod ServiceNowObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
79137	return nil, false
79138}
79139
79140// AsAmazonS3Dataset is the BasicDataset implementation for ServiceNowObjectDataset.
79141func (snod ServiceNowObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
79142	return nil, false
79143}
79144
79145// AsDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79146func (snod ServiceNowObjectDataset) AsDataset() (*Dataset, bool) {
79147	return nil, false
79148}
79149
79150// AsBasicDataset is the BasicDataset implementation for ServiceNowObjectDataset.
79151func (snod ServiceNowObjectDataset) AsBasicDataset() (BasicDataset, bool) {
79152	return &snod, true
79153}
79154
79155// ServiceNowSource a copy activity ServiceNow server source.
79156type ServiceNowSource struct {
79157	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
79158	Query interface{} `json:"query,omitempty"`
79159	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
79160	AdditionalProperties map[string]interface{} `json:""`
79161	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
79162	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
79163	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
79164	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
79165	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
79166	Type TypeBasicCopySource `json:"type,omitempty"`
79167}
79168
79169// MarshalJSON is the custom marshaler for ServiceNowSource.
79170func (sns ServiceNowSource) MarshalJSON() ([]byte, error) {
79171	sns.Type = TypeServiceNowSource
79172	objectMap := make(map[string]interface{})
79173	objectMap["query"] = sns.Query
79174	objectMap["sourceRetryCount"] = sns.SourceRetryCount
79175	objectMap["sourceRetryWait"] = sns.SourceRetryWait
79176	if sns.Type != "" {
79177		objectMap["type"] = sns.Type
79178	}
79179	for k, v := range sns.AdditionalProperties {
79180		objectMap[k] = v
79181	}
79182	return json.Marshal(objectMap)
79183}
79184
79185// AsAmazonRedshiftSource is the BasicCopySource implementation for ServiceNowSource.
79186func (sns ServiceNowSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
79187	return nil, false
79188}
79189
79190// AsResponsysSource is the BasicCopySource implementation for ServiceNowSource.
79191func (sns ServiceNowSource) AsResponsysSource() (*ResponsysSource, bool) {
79192	return nil, false
79193}
79194
79195// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ServiceNowSource.
79196func (sns ServiceNowSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
79197	return nil, false
79198}
79199
79200// AsVerticaSource is the BasicCopySource implementation for ServiceNowSource.
79201func (sns ServiceNowSource) AsVerticaSource() (*VerticaSource, bool) {
79202	return nil, false
79203}
79204
79205// AsNetezzaSource is the BasicCopySource implementation for ServiceNowSource.
79206func (sns ServiceNowSource) AsNetezzaSource() (*NetezzaSource, bool) {
79207	return nil, false
79208}
79209
79210// AsZohoSource is the BasicCopySource implementation for ServiceNowSource.
79211func (sns ServiceNowSource) AsZohoSource() (*ZohoSource, bool) {
79212	return nil, false
79213}
79214
79215// AsXeroSource is the BasicCopySource implementation for ServiceNowSource.
79216func (sns ServiceNowSource) AsXeroSource() (*XeroSource, bool) {
79217	return nil, false
79218}
79219
79220// AsSquareSource is the BasicCopySource implementation for ServiceNowSource.
79221func (sns ServiceNowSource) AsSquareSource() (*SquareSource, bool) {
79222	return nil, false
79223}
79224
79225// AsSparkSource is the BasicCopySource implementation for ServiceNowSource.
79226func (sns ServiceNowSource) AsSparkSource() (*SparkSource, bool) {
79227	return nil, false
79228}
79229
79230// AsShopifySource is the BasicCopySource implementation for ServiceNowSource.
79231func (sns ServiceNowSource) AsShopifySource() (*ShopifySource, bool) {
79232	return nil, false
79233}
79234
79235// AsServiceNowSource is the BasicCopySource implementation for ServiceNowSource.
79236func (sns ServiceNowSource) AsServiceNowSource() (*ServiceNowSource, bool) {
79237	return &sns, true
79238}
79239
79240// AsQuickBooksSource is the BasicCopySource implementation for ServiceNowSource.
79241func (sns ServiceNowSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
79242	return nil, false
79243}
79244
79245// AsPrestoSource is the BasicCopySource implementation for ServiceNowSource.
79246func (sns ServiceNowSource) AsPrestoSource() (*PrestoSource, bool) {
79247	return nil, false
79248}
79249
79250// AsPhoenixSource is the BasicCopySource implementation for ServiceNowSource.
79251func (sns ServiceNowSource) AsPhoenixSource() (*PhoenixSource, bool) {
79252	return nil, false
79253}
79254
79255// AsPaypalSource is the BasicCopySource implementation for ServiceNowSource.
79256func (sns ServiceNowSource) AsPaypalSource() (*PaypalSource, bool) {
79257	return nil, false
79258}
79259
79260// AsMarketoSource is the BasicCopySource implementation for ServiceNowSource.
79261func (sns ServiceNowSource) AsMarketoSource() (*MarketoSource, bool) {
79262	return nil, false
79263}
79264
79265// AsMariaDBSource is the BasicCopySource implementation for ServiceNowSource.
79266func (sns ServiceNowSource) AsMariaDBSource() (*MariaDBSource, bool) {
79267	return nil, false
79268}
79269
79270// AsMagentoSource is the BasicCopySource implementation for ServiceNowSource.
79271func (sns ServiceNowSource) AsMagentoSource() (*MagentoSource, bool) {
79272	return nil, false
79273}
79274
79275// AsJiraSource is the BasicCopySource implementation for ServiceNowSource.
79276func (sns ServiceNowSource) AsJiraSource() (*JiraSource, bool) {
79277	return nil, false
79278}
79279
79280// AsImpalaSource is the BasicCopySource implementation for ServiceNowSource.
79281func (sns ServiceNowSource) AsImpalaSource() (*ImpalaSource, bool) {
79282	return nil, false
79283}
79284
79285// AsHubspotSource is the BasicCopySource implementation for ServiceNowSource.
79286func (sns ServiceNowSource) AsHubspotSource() (*HubspotSource, bool) {
79287	return nil, false
79288}
79289
79290// AsHiveSource is the BasicCopySource implementation for ServiceNowSource.
79291func (sns ServiceNowSource) AsHiveSource() (*HiveSource, bool) {
79292	return nil, false
79293}
79294
79295// AsHBaseSource is the BasicCopySource implementation for ServiceNowSource.
79296func (sns ServiceNowSource) AsHBaseSource() (*HBaseSource, bool) {
79297	return nil, false
79298}
79299
79300// AsGreenplumSource is the BasicCopySource implementation for ServiceNowSource.
79301func (sns ServiceNowSource) AsGreenplumSource() (*GreenplumSource, bool) {
79302	return nil, false
79303}
79304
79305// AsGoogleBigQuerySource is the BasicCopySource implementation for ServiceNowSource.
79306func (sns ServiceNowSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
79307	return nil, false
79308}
79309
79310// AsEloquaSource is the BasicCopySource implementation for ServiceNowSource.
79311func (sns ServiceNowSource) AsEloquaSource() (*EloquaSource, bool) {
79312	return nil, false
79313}
79314
79315// AsDrillSource is the BasicCopySource implementation for ServiceNowSource.
79316func (sns ServiceNowSource) AsDrillSource() (*DrillSource, bool) {
79317	return nil, false
79318}
79319
79320// AsCouchbaseSource is the BasicCopySource implementation for ServiceNowSource.
79321func (sns ServiceNowSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
79322	return nil, false
79323}
79324
79325// AsConcurSource is the BasicCopySource implementation for ServiceNowSource.
79326func (sns ServiceNowSource) AsConcurSource() (*ConcurSource, bool) {
79327	return nil, false
79328}
79329
79330// AsAzurePostgreSQLSource is the BasicCopySource implementation for ServiceNowSource.
79331func (sns ServiceNowSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
79332	return nil, false
79333}
79334
79335// AsAmazonMWSSource is the BasicCopySource implementation for ServiceNowSource.
79336func (sns ServiceNowSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
79337	return nil, false
79338}
79339
79340// AsHTTPSource is the BasicCopySource implementation for ServiceNowSource.
79341func (sns ServiceNowSource) AsHTTPSource() (*HTTPSource, bool) {
79342	return nil, false
79343}
79344
79345// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ServiceNowSource.
79346func (sns ServiceNowSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
79347	return nil, false
79348}
79349
79350// AsMongoDbSource is the BasicCopySource implementation for ServiceNowSource.
79351func (sns ServiceNowSource) AsMongoDbSource() (*MongoDbSource, bool) {
79352	return nil, false
79353}
79354
79355// AsCassandraSource is the BasicCopySource implementation for ServiceNowSource.
79356func (sns ServiceNowSource) AsCassandraSource() (*CassandraSource, bool) {
79357	return nil, false
79358}
79359
79360// AsWebSource is the BasicCopySource implementation for ServiceNowSource.
79361func (sns ServiceNowSource) AsWebSource() (*WebSource, bool) {
79362	return nil, false
79363}
79364
79365// AsOracleSource is the BasicCopySource implementation for ServiceNowSource.
79366func (sns ServiceNowSource) AsOracleSource() (*OracleSource, bool) {
79367	return nil, false
79368}
79369
79370// AsAzureMySQLSource is the BasicCopySource implementation for ServiceNowSource.
79371func (sns ServiceNowSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
79372	return nil, false
79373}
79374
79375// AsHdfsSource is the BasicCopySource implementation for ServiceNowSource.
79376func (sns ServiceNowSource) AsHdfsSource() (*HdfsSource, bool) {
79377	return nil, false
79378}
79379
79380// AsFileSystemSource is the BasicCopySource implementation for ServiceNowSource.
79381func (sns ServiceNowSource) AsFileSystemSource() (*FileSystemSource, bool) {
79382	return nil, false
79383}
79384
79385// AsSQLDWSource is the BasicCopySource implementation for ServiceNowSource.
79386func (sns ServiceNowSource) AsSQLDWSource() (*SQLDWSource, bool) {
79387	return nil, false
79388}
79389
79390// AsSQLSource is the BasicCopySource implementation for ServiceNowSource.
79391func (sns ServiceNowSource) AsSQLSource() (*SQLSource, bool) {
79392	return nil, false
79393}
79394
79395// AsSapEccSource is the BasicCopySource implementation for ServiceNowSource.
79396func (sns ServiceNowSource) AsSapEccSource() (*SapEccSource, bool) {
79397	return nil, false
79398}
79399
79400// AsSapCloudForCustomerSource is the BasicCopySource implementation for ServiceNowSource.
79401func (sns ServiceNowSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
79402	return nil, false
79403}
79404
79405// AsSalesforceSource is the BasicCopySource implementation for ServiceNowSource.
79406func (sns ServiceNowSource) AsSalesforceSource() (*SalesforceSource, bool) {
79407	return nil, false
79408}
79409
79410// AsRelationalSource is the BasicCopySource implementation for ServiceNowSource.
79411func (sns ServiceNowSource) AsRelationalSource() (*RelationalSource, bool) {
79412	return nil, false
79413}
79414
79415// AsDynamicsSource is the BasicCopySource implementation for ServiceNowSource.
79416func (sns ServiceNowSource) AsDynamicsSource() (*DynamicsSource, bool) {
79417	return nil, false
79418}
79419
79420// AsDocumentDbCollectionSource is the BasicCopySource implementation for ServiceNowSource.
79421func (sns ServiceNowSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
79422	return nil, false
79423}
79424
79425// AsBlobSource is the BasicCopySource implementation for ServiceNowSource.
79426func (sns ServiceNowSource) AsBlobSource() (*BlobSource, bool) {
79427	return nil, false
79428}
79429
79430// AsAzureTableSource is the BasicCopySource implementation for ServiceNowSource.
79431func (sns ServiceNowSource) AsAzureTableSource() (*AzureTableSource, bool) {
79432	return nil, false
79433}
79434
79435// AsCopySource is the BasicCopySource implementation for ServiceNowSource.
79436func (sns ServiceNowSource) AsCopySource() (*CopySource, bool) {
79437	return nil, false
79438}
79439
79440// AsBasicCopySource is the BasicCopySource implementation for ServiceNowSource.
79441func (sns ServiceNowSource) AsBasicCopySource() (BasicCopySource, bool) {
79442	return &sns, true
79443}
79444
79445// SftpServerLinkedService a linked service for an SSH File Transfer Protocol (SFTP) server.
79446type SftpServerLinkedService struct {
79447	// SftpServerLinkedServiceTypeProperties - Properties specific to this linked service type.
79448	*SftpServerLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
79449	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
79450	AdditionalProperties map[string]interface{} `json:""`
79451	// ConnectVia - The integration runtime reference.
79452	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
79453	// Description - Linked service description.
79454	Description *string `json:"description,omitempty"`
79455	// Parameters - Parameters for linked service.
79456	Parameters map[string]*ParameterSpecification `json:"parameters"`
79457	// Annotations - List of tags that can be used for describing the Dataset.
79458	Annotations *[]interface{} `json:"annotations,omitempty"`
79459	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
79460	Type TypeBasicLinkedService `json:"type,omitempty"`
79461}
79462
79463// MarshalJSON is the custom marshaler for SftpServerLinkedService.
79464func (ssls SftpServerLinkedService) MarshalJSON() ([]byte, error) {
79465	ssls.Type = TypeSftp
79466	objectMap := make(map[string]interface{})
79467	if ssls.SftpServerLinkedServiceTypeProperties != nil {
79468		objectMap["typeProperties"] = ssls.SftpServerLinkedServiceTypeProperties
79469	}
79470	if ssls.ConnectVia != nil {
79471		objectMap["connectVia"] = ssls.ConnectVia
79472	}
79473	if ssls.Description != nil {
79474		objectMap["description"] = ssls.Description
79475	}
79476	if ssls.Parameters != nil {
79477		objectMap["parameters"] = ssls.Parameters
79478	}
79479	if ssls.Annotations != nil {
79480		objectMap["annotations"] = ssls.Annotations
79481	}
79482	if ssls.Type != "" {
79483		objectMap["type"] = ssls.Type
79484	}
79485	for k, v := range ssls.AdditionalProperties {
79486		objectMap[k] = v
79487	}
79488	return json.Marshal(objectMap)
79489}
79490
79491// AsResponsysLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79492func (ssls SftpServerLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
79493	return nil, false
79494}
79495
79496// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79497func (ssls SftpServerLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
79498	return nil, false
79499}
79500
79501// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79502func (ssls SftpServerLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
79503	return nil, false
79504}
79505
79506// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79507func (ssls SftpServerLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
79508	return nil, false
79509}
79510
79511// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79512func (ssls SftpServerLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
79513	return nil, false
79514}
79515
79516// AsNetezzaLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79517func (ssls SftpServerLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
79518	return nil, false
79519}
79520
79521// AsVerticaLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79522func (ssls SftpServerLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
79523	return nil, false
79524}
79525
79526// AsZohoLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79527func (ssls SftpServerLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
79528	return nil, false
79529}
79530
79531// AsXeroLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79532func (ssls SftpServerLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
79533	return nil, false
79534}
79535
79536// AsSquareLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79537func (ssls SftpServerLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
79538	return nil, false
79539}
79540
79541// AsSparkLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79542func (ssls SftpServerLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
79543	return nil, false
79544}
79545
79546// AsShopifyLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79547func (ssls SftpServerLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
79548	return nil, false
79549}
79550
79551// AsServiceNowLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79552func (ssls SftpServerLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
79553	return nil, false
79554}
79555
79556// AsQuickBooksLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79557func (ssls SftpServerLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
79558	return nil, false
79559}
79560
79561// AsPrestoLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79562func (ssls SftpServerLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
79563	return nil, false
79564}
79565
79566// AsPhoenixLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79567func (ssls SftpServerLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
79568	return nil, false
79569}
79570
79571// AsPaypalLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79572func (ssls SftpServerLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
79573	return nil, false
79574}
79575
79576// AsMarketoLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79577func (ssls SftpServerLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
79578	return nil, false
79579}
79580
79581// AsMariaDBLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79582func (ssls SftpServerLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
79583	return nil, false
79584}
79585
79586// AsMagentoLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79587func (ssls SftpServerLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
79588	return nil, false
79589}
79590
79591// AsJiraLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79592func (ssls SftpServerLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
79593	return nil, false
79594}
79595
79596// AsImpalaLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79597func (ssls SftpServerLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
79598	return nil, false
79599}
79600
79601// AsHubspotLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79602func (ssls SftpServerLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
79603	return nil, false
79604}
79605
79606// AsHiveLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79607func (ssls SftpServerLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
79608	return nil, false
79609}
79610
79611// AsHBaseLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79612func (ssls SftpServerLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
79613	return nil, false
79614}
79615
79616// AsGreenplumLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79617func (ssls SftpServerLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
79618	return nil, false
79619}
79620
79621// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79622func (ssls SftpServerLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
79623	return nil, false
79624}
79625
79626// AsEloquaLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79627func (ssls SftpServerLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
79628	return nil, false
79629}
79630
79631// AsDrillLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79632func (ssls SftpServerLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
79633	return nil, false
79634}
79635
79636// AsCouchbaseLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79637func (ssls SftpServerLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
79638	return nil, false
79639}
79640
79641// AsConcurLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79642func (ssls SftpServerLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
79643	return nil, false
79644}
79645
79646// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79647func (ssls SftpServerLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
79648	return nil, false
79649}
79650
79651// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79652func (ssls SftpServerLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
79653	return nil, false
79654}
79655
79656// AsSapHanaLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79657func (ssls SftpServerLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
79658	return nil, false
79659}
79660
79661// AsSapBWLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79662func (ssls SftpServerLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
79663	return nil, false
79664}
79665
79666// AsSftpServerLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79667func (ssls SftpServerLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
79668	return &ssls, true
79669}
79670
79671// AsFtpServerLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79672func (ssls SftpServerLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
79673	return nil, false
79674}
79675
79676// AsHTTPLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79677func (ssls SftpServerLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
79678	return nil, false
79679}
79680
79681// AsAzureSearchLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79682func (ssls SftpServerLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
79683	return nil, false
79684}
79685
79686// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79687func (ssls SftpServerLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
79688	return nil, false
79689}
79690
79691// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79692func (ssls SftpServerLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
79693	return nil, false
79694}
79695
79696// AsAmazonS3LinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79697func (ssls SftpServerLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
79698	return nil, false
79699}
79700
79701// AsSapEccLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79702func (ssls SftpServerLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
79703	return nil, false
79704}
79705
79706// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79707func (ssls SftpServerLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
79708	return nil, false
79709}
79710
79711// AsSalesforceLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79712func (ssls SftpServerLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
79713	return nil, false
79714}
79715
79716// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79717func (ssls SftpServerLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
79718	return nil, false
79719}
79720
79721// AsMongoDbLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79722func (ssls SftpServerLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
79723	return nil, false
79724}
79725
79726// AsCassandraLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79727func (ssls SftpServerLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
79728	return nil, false
79729}
79730
79731// AsWebLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79732func (ssls SftpServerLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
79733	return nil, false
79734}
79735
79736// AsODataLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79737func (ssls SftpServerLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
79738	return nil, false
79739}
79740
79741// AsHdfsLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79742func (ssls SftpServerLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
79743	return nil, false
79744}
79745
79746// AsOdbcLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79747func (ssls SftpServerLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
79748	return nil, false
79749}
79750
79751// AsAzureMLLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79752func (ssls SftpServerLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
79753	return nil, false
79754}
79755
79756// AsTeradataLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79757func (ssls SftpServerLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
79758	return nil, false
79759}
79760
79761// AsDb2LinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79762func (ssls SftpServerLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
79763	return nil, false
79764}
79765
79766// AsSybaseLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79767func (ssls SftpServerLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
79768	return nil, false
79769}
79770
79771// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79772func (ssls SftpServerLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
79773	return nil, false
79774}
79775
79776// AsMySQLLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79777func (ssls SftpServerLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
79778	return nil, false
79779}
79780
79781// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79782func (ssls SftpServerLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
79783	return nil, false
79784}
79785
79786// AsOracleLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79787func (ssls SftpServerLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
79788	return nil, false
79789}
79790
79791// AsFileServerLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79792func (ssls SftpServerLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
79793	return nil, false
79794}
79795
79796// AsHDInsightLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79797func (ssls SftpServerLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
79798	return nil, false
79799}
79800
79801// AsDynamicsLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79802func (ssls SftpServerLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
79803	return nil, false
79804}
79805
79806// AsCosmosDbLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79807func (ssls SftpServerLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
79808	return nil, false
79809}
79810
79811// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79812func (ssls SftpServerLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
79813	return nil, false
79814}
79815
79816// AsAzureBatchLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79817func (ssls SftpServerLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
79818	return nil, false
79819}
79820
79821// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79822func (ssls SftpServerLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
79823	return nil, false
79824}
79825
79826// AsSQLServerLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79827func (ssls SftpServerLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
79828	return nil, false
79829}
79830
79831// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79832func (ssls SftpServerLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
79833	return nil, false
79834}
79835
79836// AsAzureStorageLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79837func (ssls SftpServerLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
79838	return nil, false
79839}
79840
79841// AsLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79842func (ssls SftpServerLinkedService) AsLinkedService() (*LinkedService, bool) {
79843	return nil, false
79844}
79845
79846// AsBasicLinkedService is the BasicLinkedService implementation for SftpServerLinkedService.
79847func (ssls SftpServerLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
79848	return &ssls, true
79849}
79850
79851// UnmarshalJSON is the custom unmarshaler for SftpServerLinkedService struct.
79852func (ssls *SftpServerLinkedService) UnmarshalJSON(body []byte) error {
79853	var m map[string]*json.RawMessage
79854	err := json.Unmarshal(body, &m)
79855	if err != nil {
79856		return err
79857	}
79858	for k, v := range m {
79859		switch k {
79860		case "typeProperties":
79861			if v != nil {
79862				var sftpServerLinkedServiceTypeProperties SftpServerLinkedServiceTypeProperties
79863				err = json.Unmarshal(*v, &sftpServerLinkedServiceTypeProperties)
79864				if err != nil {
79865					return err
79866				}
79867				ssls.SftpServerLinkedServiceTypeProperties = &sftpServerLinkedServiceTypeProperties
79868			}
79869		default:
79870			if v != nil {
79871				var additionalProperties interface{}
79872				err = json.Unmarshal(*v, &additionalProperties)
79873				if err != nil {
79874					return err
79875				}
79876				if ssls.AdditionalProperties == nil {
79877					ssls.AdditionalProperties = make(map[string]interface{})
79878				}
79879				ssls.AdditionalProperties[k] = additionalProperties
79880			}
79881		case "connectVia":
79882			if v != nil {
79883				var connectVia IntegrationRuntimeReference
79884				err = json.Unmarshal(*v, &connectVia)
79885				if err != nil {
79886					return err
79887				}
79888				ssls.ConnectVia = &connectVia
79889			}
79890		case "description":
79891			if v != nil {
79892				var description string
79893				err = json.Unmarshal(*v, &description)
79894				if err != nil {
79895					return err
79896				}
79897				ssls.Description = &description
79898			}
79899		case "parameters":
79900			if v != nil {
79901				var parameters map[string]*ParameterSpecification
79902				err = json.Unmarshal(*v, &parameters)
79903				if err != nil {
79904					return err
79905				}
79906				ssls.Parameters = parameters
79907			}
79908		case "annotations":
79909			if v != nil {
79910				var annotations []interface{}
79911				err = json.Unmarshal(*v, &annotations)
79912				if err != nil {
79913					return err
79914				}
79915				ssls.Annotations = &annotations
79916			}
79917		case "type":
79918			if v != nil {
79919				var typeVar TypeBasicLinkedService
79920				err = json.Unmarshal(*v, &typeVar)
79921				if err != nil {
79922					return err
79923				}
79924				ssls.Type = typeVar
79925			}
79926		}
79927	}
79928
79929	return nil
79930}
79931
79932// SftpServerLinkedServiceTypeProperties properties specific to this linked service type.
79933type SftpServerLinkedServiceTypeProperties struct {
79934	// Host - The SFTP server host name. Type: string (or Expression with resultType string).
79935	Host interface{} `json:"host,omitempty"`
79936	// Port - The TCP port number that the SFTP server uses to listen for client connections. Default value is 22. Type: integer (or Expression with resultType integer), minimum: 0.
79937	Port interface{} `json:"port,omitempty"`
79938	// AuthenticationType - The authentication type to be used to connect to the FTP server. Possible values include: 'SftpAuthenticationTypeBasic', 'SftpAuthenticationTypeSSHPublicKey'
79939	AuthenticationType SftpAuthenticationType `json:"authenticationType,omitempty"`
79940	// UserName - The username used to log on to the SFTP server. Type: string (or Expression with resultType string).
79941	UserName interface{} `json:"userName,omitempty"`
79942	// Password - Password to logon the SFTP server for Basic authentication.
79943	Password BasicSecretBase `json:"password,omitempty"`
79944	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
79945	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
79946	// PrivateKeyPath - The SSH private key file path for SshPublicKey authentication. Only valid for on-premises copy. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format. Type: string (or Expression with resultType string).
79947	PrivateKeyPath interface{} `json:"privateKeyPath,omitempty"`
79948	// PrivateKeyContent - Base64 encoded SSH private key content for SshPublicKey authentication. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format.
79949	PrivateKeyContent BasicSecretBase `json:"privateKeyContent,omitempty"`
79950	// PassPhrase - The password to decrypt the SSH private key if the SSH private key is encrypted.
79951	PassPhrase BasicSecretBase `json:"passPhrase,omitempty"`
79952	// SkipHostKeyValidation - If true, skip the SSH host key validation. Default value is false. Type: boolean (or Expression with resultType boolean).
79953	SkipHostKeyValidation interface{} `json:"skipHostKeyValidation,omitempty"`
79954	// HostKeyFingerprint - The host key finger-print of the SFTP server. When SkipHostKeyValidation is false, HostKeyFingerprint should be specified. Type: string (or Expression with resultType string).
79955	HostKeyFingerprint interface{} `json:"hostKeyFingerprint,omitempty"`
79956}
79957
79958// UnmarshalJSON is the custom unmarshaler for SftpServerLinkedServiceTypeProperties struct.
79959func (sslstp *SftpServerLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
79960	var m map[string]*json.RawMessage
79961	err := json.Unmarshal(body, &m)
79962	if err != nil {
79963		return err
79964	}
79965	for k, v := range m {
79966		switch k {
79967		case "host":
79968			if v != nil {
79969				var host interface{}
79970				err = json.Unmarshal(*v, &host)
79971				if err != nil {
79972					return err
79973				}
79974				sslstp.Host = host
79975			}
79976		case "port":
79977			if v != nil {
79978				var port interface{}
79979				err = json.Unmarshal(*v, &port)
79980				if err != nil {
79981					return err
79982				}
79983				sslstp.Port = port
79984			}
79985		case "authenticationType":
79986			if v != nil {
79987				var authenticationType SftpAuthenticationType
79988				err = json.Unmarshal(*v, &authenticationType)
79989				if err != nil {
79990					return err
79991				}
79992				sslstp.AuthenticationType = authenticationType
79993			}
79994		case "userName":
79995			if v != nil {
79996				var userName interface{}
79997				err = json.Unmarshal(*v, &userName)
79998				if err != nil {
79999					return err
80000				}
80001				sslstp.UserName = userName
80002			}
80003		case "password":
80004			if v != nil {
80005				password, err := unmarshalBasicSecretBase(*v)
80006				if err != nil {
80007					return err
80008				}
80009				sslstp.Password = password
80010			}
80011		case "encryptedCredential":
80012			if v != nil {
80013				var encryptedCredential interface{}
80014				err = json.Unmarshal(*v, &encryptedCredential)
80015				if err != nil {
80016					return err
80017				}
80018				sslstp.EncryptedCredential = encryptedCredential
80019			}
80020		case "privateKeyPath":
80021			if v != nil {
80022				var privateKeyPath interface{}
80023				err = json.Unmarshal(*v, &privateKeyPath)
80024				if err != nil {
80025					return err
80026				}
80027				sslstp.PrivateKeyPath = privateKeyPath
80028			}
80029		case "privateKeyContent":
80030			if v != nil {
80031				privateKeyContent, err := unmarshalBasicSecretBase(*v)
80032				if err != nil {
80033					return err
80034				}
80035				sslstp.PrivateKeyContent = privateKeyContent
80036			}
80037		case "passPhrase":
80038			if v != nil {
80039				passPhrase, err := unmarshalBasicSecretBase(*v)
80040				if err != nil {
80041					return err
80042				}
80043				sslstp.PassPhrase = passPhrase
80044			}
80045		case "skipHostKeyValidation":
80046			if v != nil {
80047				var skipHostKeyValidation interface{}
80048				err = json.Unmarshal(*v, &skipHostKeyValidation)
80049				if err != nil {
80050					return err
80051				}
80052				sslstp.SkipHostKeyValidation = skipHostKeyValidation
80053			}
80054		case "hostKeyFingerprint":
80055			if v != nil {
80056				var hostKeyFingerprint interface{}
80057				err = json.Unmarshal(*v, &hostKeyFingerprint)
80058				if err != nil {
80059					return err
80060				}
80061				sslstp.HostKeyFingerprint = hostKeyFingerprint
80062			}
80063		}
80064	}
80065
80066	return nil
80067}
80068
80069// ShopifyLinkedService shopify Serivce linked service.
80070type ShopifyLinkedService struct {
80071	// ShopifyLinkedServiceTypeProperties - Shopify Serivce linked service properties.
80072	*ShopifyLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
80073	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
80074	AdditionalProperties map[string]interface{} `json:""`
80075	// ConnectVia - The integration runtime reference.
80076	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
80077	// Description - Linked service description.
80078	Description *string `json:"description,omitempty"`
80079	// Parameters - Parameters for linked service.
80080	Parameters map[string]*ParameterSpecification `json:"parameters"`
80081	// Annotations - List of tags that can be used for describing the Dataset.
80082	Annotations *[]interface{} `json:"annotations,omitempty"`
80083	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
80084	Type TypeBasicLinkedService `json:"type,omitempty"`
80085}
80086
80087// MarshalJSON is the custom marshaler for ShopifyLinkedService.
80088func (sls ShopifyLinkedService) MarshalJSON() ([]byte, error) {
80089	sls.Type = TypeShopify
80090	objectMap := make(map[string]interface{})
80091	if sls.ShopifyLinkedServiceTypeProperties != nil {
80092		objectMap["typeProperties"] = sls.ShopifyLinkedServiceTypeProperties
80093	}
80094	if sls.ConnectVia != nil {
80095		objectMap["connectVia"] = sls.ConnectVia
80096	}
80097	if sls.Description != nil {
80098		objectMap["description"] = sls.Description
80099	}
80100	if sls.Parameters != nil {
80101		objectMap["parameters"] = sls.Parameters
80102	}
80103	if sls.Annotations != nil {
80104		objectMap["annotations"] = sls.Annotations
80105	}
80106	if sls.Type != "" {
80107		objectMap["type"] = sls.Type
80108	}
80109	for k, v := range sls.AdditionalProperties {
80110		objectMap[k] = v
80111	}
80112	return json.Marshal(objectMap)
80113}
80114
80115// AsResponsysLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80116func (sls ShopifyLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
80117	return nil, false
80118}
80119
80120// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80121func (sls ShopifyLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
80122	return nil, false
80123}
80124
80125// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80126func (sls ShopifyLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
80127	return nil, false
80128}
80129
80130// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80131func (sls ShopifyLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
80132	return nil, false
80133}
80134
80135// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80136func (sls ShopifyLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
80137	return nil, false
80138}
80139
80140// AsNetezzaLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80141func (sls ShopifyLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
80142	return nil, false
80143}
80144
80145// AsVerticaLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80146func (sls ShopifyLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
80147	return nil, false
80148}
80149
80150// AsZohoLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80151func (sls ShopifyLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
80152	return nil, false
80153}
80154
80155// AsXeroLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80156func (sls ShopifyLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
80157	return nil, false
80158}
80159
80160// AsSquareLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80161func (sls ShopifyLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
80162	return nil, false
80163}
80164
80165// AsSparkLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80166func (sls ShopifyLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
80167	return nil, false
80168}
80169
80170// AsShopifyLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80171func (sls ShopifyLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
80172	return &sls, true
80173}
80174
80175// AsServiceNowLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80176func (sls ShopifyLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
80177	return nil, false
80178}
80179
80180// AsQuickBooksLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80181func (sls ShopifyLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
80182	return nil, false
80183}
80184
80185// AsPrestoLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80186func (sls ShopifyLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
80187	return nil, false
80188}
80189
80190// AsPhoenixLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80191func (sls ShopifyLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
80192	return nil, false
80193}
80194
80195// AsPaypalLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80196func (sls ShopifyLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
80197	return nil, false
80198}
80199
80200// AsMarketoLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80201func (sls ShopifyLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
80202	return nil, false
80203}
80204
80205// AsMariaDBLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80206func (sls ShopifyLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
80207	return nil, false
80208}
80209
80210// AsMagentoLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80211func (sls ShopifyLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
80212	return nil, false
80213}
80214
80215// AsJiraLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80216func (sls ShopifyLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
80217	return nil, false
80218}
80219
80220// AsImpalaLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80221func (sls ShopifyLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
80222	return nil, false
80223}
80224
80225// AsHubspotLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80226func (sls ShopifyLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
80227	return nil, false
80228}
80229
80230// AsHiveLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80231func (sls ShopifyLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
80232	return nil, false
80233}
80234
80235// AsHBaseLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80236func (sls ShopifyLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
80237	return nil, false
80238}
80239
80240// AsGreenplumLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80241func (sls ShopifyLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
80242	return nil, false
80243}
80244
80245// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80246func (sls ShopifyLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
80247	return nil, false
80248}
80249
80250// AsEloquaLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80251func (sls ShopifyLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
80252	return nil, false
80253}
80254
80255// AsDrillLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80256func (sls ShopifyLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
80257	return nil, false
80258}
80259
80260// AsCouchbaseLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80261func (sls ShopifyLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
80262	return nil, false
80263}
80264
80265// AsConcurLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80266func (sls ShopifyLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
80267	return nil, false
80268}
80269
80270// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80271func (sls ShopifyLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
80272	return nil, false
80273}
80274
80275// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80276func (sls ShopifyLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
80277	return nil, false
80278}
80279
80280// AsSapHanaLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80281func (sls ShopifyLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
80282	return nil, false
80283}
80284
80285// AsSapBWLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80286func (sls ShopifyLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
80287	return nil, false
80288}
80289
80290// AsSftpServerLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80291func (sls ShopifyLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
80292	return nil, false
80293}
80294
80295// AsFtpServerLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80296func (sls ShopifyLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
80297	return nil, false
80298}
80299
80300// AsHTTPLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80301func (sls ShopifyLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
80302	return nil, false
80303}
80304
80305// AsAzureSearchLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80306func (sls ShopifyLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
80307	return nil, false
80308}
80309
80310// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80311func (sls ShopifyLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
80312	return nil, false
80313}
80314
80315// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80316func (sls ShopifyLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
80317	return nil, false
80318}
80319
80320// AsAmazonS3LinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80321func (sls ShopifyLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
80322	return nil, false
80323}
80324
80325// AsSapEccLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80326func (sls ShopifyLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
80327	return nil, false
80328}
80329
80330// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80331func (sls ShopifyLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
80332	return nil, false
80333}
80334
80335// AsSalesforceLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80336func (sls ShopifyLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
80337	return nil, false
80338}
80339
80340// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80341func (sls ShopifyLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
80342	return nil, false
80343}
80344
80345// AsMongoDbLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80346func (sls ShopifyLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
80347	return nil, false
80348}
80349
80350// AsCassandraLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80351func (sls ShopifyLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
80352	return nil, false
80353}
80354
80355// AsWebLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80356func (sls ShopifyLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
80357	return nil, false
80358}
80359
80360// AsODataLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80361func (sls ShopifyLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
80362	return nil, false
80363}
80364
80365// AsHdfsLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80366func (sls ShopifyLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
80367	return nil, false
80368}
80369
80370// AsOdbcLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80371func (sls ShopifyLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
80372	return nil, false
80373}
80374
80375// AsAzureMLLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80376func (sls ShopifyLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
80377	return nil, false
80378}
80379
80380// AsTeradataLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80381func (sls ShopifyLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
80382	return nil, false
80383}
80384
80385// AsDb2LinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80386func (sls ShopifyLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
80387	return nil, false
80388}
80389
80390// AsSybaseLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80391func (sls ShopifyLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
80392	return nil, false
80393}
80394
80395// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80396func (sls ShopifyLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
80397	return nil, false
80398}
80399
80400// AsMySQLLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80401func (sls ShopifyLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
80402	return nil, false
80403}
80404
80405// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80406func (sls ShopifyLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
80407	return nil, false
80408}
80409
80410// AsOracleLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80411func (sls ShopifyLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
80412	return nil, false
80413}
80414
80415// AsFileServerLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80416func (sls ShopifyLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
80417	return nil, false
80418}
80419
80420// AsHDInsightLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80421func (sls ShopifyLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
80422	return nil, false
80423}
80424
80425// AsDynamicsLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80426func (sls ShopifyLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
80427	return nil, false
80428}
80429
80430// AsCosmosDbLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80431func (sls ShopifyLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
80432	return nil, false
80433}
80434
80435// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80436func (sls ShopifyLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
80437	return nil, false
80438}
80439
80440// AsAzureBatchLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80441func (sls ShopifyLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
80442	return nil, false
80443}
80444
80445// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80446func (sls ShopifyLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
80447	return nil, false
80448}
80449
80450// AsSQLServerLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80451func (sls ShopifyLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
80452	return nil, false
80453}
80454
80455// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80456func (sls ShopifyLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
80457	return nil, false
80458}
80459
80460// AsAzureStorageLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80461func (sls ShopifyLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
80462	return nil, false
80463}
80464
80465// AsLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80466func (sls ShopifyLinkedService) AsLinkedService() (*LinkedService, bool) {
80467	return nil, false
80468}
80469
80470// AsBasicLinkedService is the BasicLinkedService implementation for ShopifyLinkedService.
80471func (sls ShopifyLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
80472	return &sls, true
80473}
80474
80475// UnmarshalJSON is the custom unmarshaler for ShopifyLinkedService struct.
80476func (sls *ShopifyLinkedService) UnmarshalJSON(body []byte) error {
80477	var m map[string]*json.RawMessage
80478	err := json.Unmarshal(body, &m)
80479	if err != nil {
80480		return err
80481	}
80482	for k, v := range m {
80483		switch k {
80484		case "typeProperties":
80485			if v != nil {
80486				var shopifyLinkedServiceTypeProperties ShopifyLinkedServiceTypeProperties
80487				err = json.Unmarshal(*v, &shopifyLinkedServiceTypeProperties)
80488				if err != nil {
80489					return err
80490				}
80491				sls.ShopifyLinkedServiceTypeProperties = &shopifyLinkedServiceTypeProperties
80492			}
80493		default:
80494			if v != nil {
80495				var additionalProperties interface{}
80496				err = json.Unmarshal(*v, &additionalProperties)
80497				if err != nil {
80498					return err
80499				}
80500				if sls.AdditionalProperties == nil {
80501					sls.AdditionalProperties = make(map[string]interface{})
80502				}
80503				sls.AdditionalProperties[k] = additionalProperties
80504			}
80505		case "connectVia":
80506			if v != nil {
80507				var connectVia IntegrationRuntimeReference
80508				err = json.Unmarshal(*v, &connectVia)
80509				if err != nil {
80510					return err
80511				}
80512				sls.ConnectVia = &connectVia
80513			}
80514		case "description":
80515			if v != nil {
80516				var description string
80517				err = json.Unmarshal(*v, &description)
80518				if err != nil {
80519					return err
80520				}
80521				sls.Description = &description
80522			}
80523		case "parameters":
80524			if v != nil {
80525				var parameters map[string]*ParameterSpecification
80526				err = json.Unmarshal(*v, &parameters)
80527				if err != nil {
80528					return err
80529				}
80530				sls.Parameters = parameters
80531			}
80532		case "annotations":
80533			if v != nil {
80534				var annotations []interface{}
80535				err = json.Unmarshal(*v, &annotations)
80536				if err != nil {
80537					return err
80538				}
80539				sls.Annotations = &annotations
80540			}
80541		case "type":
80542			if v != nil {
80543				var typeVar TypeBasicLinkedService
80544				err = json.Unmarshal(*v, &typeVar)
80545				if err != nil {
80546					return err
80547				}
80548				sls.Type = typeVar
80549			}
80550		}
80551	}
80552
80553	return nil
80554}
80555
80556// ShopifyLinkedServiceTypeProperties shopify Serivce linked service properties.
80557type ShopifyLinkedServiceTypeProperties struct {
80558	// Host - The endpoint of the Shopify server. (i.e. mystore.myshopify.com)
80559	Host interface{} `json:"host,omitempty"`
80560	// AccessToken - The API access token that can be used to access Shopify’s data. The token won't expire if it is offline mode.
80561	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
80562	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
80563	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
80564	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
80565	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
80566	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
80567	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
80568	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
80569	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
80570}
80571
80572// UnmarshalJSON is the custom unmarshaler for ShopifyLinkedServiceTypeProperties struct.
80573func (slstp *ShopifyLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
80574	var m map[string]*json.RawMessage
80575	err := json.Unmarshal(body, &m)
80576	if err != nil {
80577		return err
80578	}
80579	for k, v := range m {
80580		switch k {
80581		case "host":
80582			if v != nil {
80583				var host interface{}
80584				err = json.Unmarshal(*v, &host)
80585				if err != nil {
80586					return err
80587				}
80588				slstp.Host = host
80589			}
80590		case "accessToken":
80591			if v != nil {
80592				accessToken, err := unmarshalBasicSecretBase(*v)
80593				if err != nil {
80594					return err
80595				}
80596				slstp.AccessToken = accessToken
80597			}
80598		case "useEncryptedEndpoints":
80599			if v != nil {
80600				var useEncryptedEndpoints interface{}
80601				err = json.Unmarshal(*v, &useEncryptedEndpoints)
80602				if err != nil {
80603					return err
80604				}
80605				slstp.UseEncryptedEndpoints = useEncryptedEndpoints
80606			}
80607		case "useHostVerification":
80608			if v != nil {
80609				var useHostVerification interface{}
80610				err = json.Unmarshal(*v, &useHostVerification)
80611				if err != nil {
80612					return err
80613				}
80614				slstp.UseHostVerification = useHostVerification
80615			}
80616		case "usePeerVerification":
80617			if v != nil {
80618				var usePeerVerification interface{}
80619				err = json.Unmarshal(*v, &usePeerVerification)
80620				if err != nil {
80621					return err
80622				}
80623				slstp.UsePeerVerification = usePeerVerification
80624			}
80625		case "encryptedCredential":
80626			if v != nil {
80627				var encryptedCredential interface{}
80628				err = json.Unmarshal(*v, &encryptedCredential)
80629				if err != nil {
80630					return err
80631				}
80632				slstp.EncryptedCredential = encryptedCredential
80633			}
80634		}
80635	}
80636
80637	return nil
80638}
80639
80640// ShopifyObjectDataset shopify Serivce dataset.
80641type ShopifyObjectDataset struct {
80642	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
80643	AdditionalProperties map[string]interface{} `json:""`
80644	// Description - Dataset description.
80645	Description *string `json:"description,omitempty"`
80646	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
80647	Structure interface{} `json:"structure,omitempty"`
80648	// LinkedServiceName - Linked service reference.
80649	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
80650	// Parameters - Parameters for dataset.
80651	Parameters map[string]*ParameterSpecification `json:"parameters"`
80652	// Annotations - List of tags that can be used for describing the Dataset.
80653	Annotations *[]interface{} `json:"annotations,omitempty"`
80654	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
80655	Type TypeBasicDataset `json:"type,omitempty"`
80656}
80657
80658// MarshalJSON is the custom marshaler for ShopifyObjectDataset.
80659func (sod ShopifyObjectDataset) MarshalJSON() ([]byte, error) {
80660	sod.Type = TypeShopifyObject
80661	objectMap := make(map[string]interface{})
80662	if sod.Description != nil {
80663		objectMap["description"] = sod.Description
80664	}
80665	objectMap["structure"] = sod.Structure
80666	if sod.LinkedServiceName != nil {
80667		objectMap["linkedServiceName"] = sod.LinkedServiceName
80668	}
80669	if sod.Parameters != nil {
80670		objectMap["parameters"] = sod.Parameters
80671	}
80672	if sod.Annotations != nil {
80673		objectMap["annotations"] = sod.Annotations
80674	}
80675	if sod.Type != "" {
80676		objectMap["type"] = sod.Type
80677	}
80678	for k, v := range sod.AdditionalProperties {
80679		objectMap[k] = v
80680	}
80681	return json.Marshal(objectMap)
80682}
80683
80684// AsResponsysObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80685func (sod ShopifyObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
80686	return nil, false
80687}
80688
80689// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80690func (sod ShopifyObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
80691	return nil, false
80692}
80693
80694// AsVerticaTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80695func (sod ShopifyObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
80696	return nil, false
80697}
80698
80699// AsNetezzaTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80700func (sod ShopifyObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
80701	return nil, false
80702}
80703
80704// AsZohoObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80705func (sod ShopifyObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
80706	return nil, false
80707}
80708
80709// AsXeroObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80710func (sod ShopifyObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
80711	return nil, false
80712}
80713
80714// AsSquareObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80715func (sod ShopifyObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
80716	return nil, false
80717}
80718
80719// AsSparkObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80720func (sod ShopifyObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
80721	return nil, false
80722}
80723
80724// AsShopifyObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80725func (sod ShopifyObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
80726	return &sod, true
80727}
80728
80729// AsServiceNowObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80730func (sod ShopifyObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
80731	return nil, false
80732}
80733
80734// AsQuickBooksObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80735func (sod ShopifyObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
80736	return nil, false
80737}
80738
80739// AsPrestoObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80740func (sod ShopifyObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
80741	return nil, false
80742}
80743
80744// AsPhoenixObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80745func (sod ShopifyObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
80746	return nil, false
80747}
80748
80749// AsPaypalObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80750func (sod ShopifyObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
80751	return nil, false
80752}
80753
80754// AsMarketoObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80755func (sod ShopifyObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
80756	return nil, false
80757}
80758
80759// AsMariaDBTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80760func (sod ShopifyObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
80761	return nil, false
80762}
80763
80764// AsMagentoObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80765func (sod ShopifyObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
80766	return nil, false
80767}
80768
80769// AsJiraObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80770func (sod ShopifyObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
80771	return nil, false
80772}
80773
80774// AsImpalaObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80775func (sod ShopifyObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
80776	return nil, false
80777}
80778
80779// AsHubspotObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80780func (sod ShopifyObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
80781	return nil, false
80782}
80783
80784// AsHiveObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80785func (sod ShopifyObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
80786	return nil, false
80787}
80788
80789// AsHBaseObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80790func (sod ShopifyObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
80791	return nil, false
80792}
80793
80794// AsGreenplumTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80795func (sod ShopifyObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
80796	return nil, false
80797}
80798
80799// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80800func (sod ShopifyObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
80801	return nil, false
80802}
80803
80804// AsEloquaObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80805func (sod ShopifyObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
80806	return nil, false
80807}
80808
80809// AsDrillTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80810func (sod ShopifyObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
80811	return nil, false
80812}
80813
80814// AsCouchbaseTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80815func (sod ShopifyObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
80816	return nil, false
80817}
80818
80819// AsConcurObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80820func (sod ShopifyObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
80821	return nil, false
80822}
80823
80824// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80825func (sod ShopifyObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
80826	return nil, false
80827}
80828
80829// AsAmazonMWSObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80830func (sod ShopifyObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
80831	return nil, false
80832}
80833
80834// AsHTTPDataset is the BasicDataset implementation for ShopifyObjectDataset.
80835func (sod ShopifyObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
80836	return nil, false
80837}
80838
80839// AsAzureSearchIndexDataset is the BasicDataset implementation for ShopifyObjectDataset.
80840func (sod ShopifyObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
80841	return nil, false
80842}
80843
80844// AsWebTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80845func (sod ShopifyObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
80846	return nil, false
80847}
80848
80849// AsSQLServerTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80850func (sod ShopifyObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
80851	return nil, false
80852}
80853
80854// AsSapEccResourceDataset is the BasicDataset implementation for ShopifyObjectDataset.
80855func (sod ShopifyObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
80856	return nil, false
80857}
80858
80859// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ShopifyObjectDataset.
80860func (sod ShopifyObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
80861	return nil, false
80862}
80863
80864// AsSalesforceObjectDataset is the BasicDataset implementation for ShopifyObjectDataset.
80865func (sod ShopifyObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
80866	return nil, false
80867}
80868
80869// AsRelationalTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80870func (sod ShopifyObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
80871	return nil, false
80872}
80873
80874// AsAzureMySQLTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80875func (sod ShopifyObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
80876	return nil, false
80877}
80878
80879// AsOracleTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80880func (sod ShopifyObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
80881	return nil, false
80882}
80883
80884// AsODataResourceDataset is the BasicDataset implementation for ShopifyObjectDataset.
80885func (sod ShopifyObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
80886	return nil, false
80887}
80888
80889// AsMongoDbCollectionDataset is the BasicDataset implementation for ShopifyObjectDataset.
80890func (sod ShopifyObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
80891	return nil, false
80892}
80893
80894// AsFileShareDataset is the BasicDataset implementation for ShopifyObjectDataset.
80895func (sod ShopifyObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
80896	return nil, false
80897}
80898
80899// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ShopifyObjectDataset.
80900func (sod ShopifyObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
80901	return nil, false
80902}
80903
80904// AsDynamicsEntityDataset is the BasicDataset implementation for ShopifyObjectDataset.
80905func (sod ShopifyObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
80906	return nil, false
80907}
80908
80909// AsDocumentDbCollectionDataset is the BasicDataset implementation for ShopifyObjectDataset.
80910func (sod ShopifyObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
80911	return nil, false
80912}
80913
80914// AsCustomDataset is the BasicDataset implementation for ShopifyObjectDataset.
80915func (sod ShopifyObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
80916	return nil, false
80917}
80918
80919// AsCassandraTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80920func (sod ShopifyObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
80921	return nil, false
80922}
80923
80924// AsAzureSQLDWTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80925func (sod ShopifyObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
80926	return nil, false
80927}
80928
80929// AsAzureSQLTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80930func (sod ShopifyObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
80931	return nil, false
80932}
80933
80934// AsAzureTableDataset is the BasicDataset implementation for ShopifyObjectDataset.
80935func (sod ShopifyObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
80936	return nil, false
80937}
80938
80939// AsAzureBlobDataset is the BasicDataset implementation for ShopifyObjectDataset.
80940func (sod ShopifyObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
80941	return nil, false
80942}
80943
80944// AsAmazonS3Dataset is the BasicDataset implementation for ShopifyObjectDataset.
80945func (sod ShopifyObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
80946	return nil, false
80947}
80948
80949// AsDataset is the BasicDataset implementation for ShopifyObjectDataset.
80950func (sod ShopifyObjectDataset) AsDataset() (*Dataset, bool) {
80951	return nil, false
80952}
80953
80954// AsBasicDataset is the BasicDataset implementation for ShopifyObjectDataset.
80955func (sod ShopifyObjectDataset) AsBasicDataset() (BasicDataset, bool) {
80956	return &sod, true
80957}
80958
80959// ShopifySource a copy activity Shopify Serivce source.
80960type ShopifySource struct {
80961	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
80962	Query interface{} `json:"query,omitempty"`
80963	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
80964	AdditionalProperties map[string]interface{} `json:""`
80965	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
80966	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
80967	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
80968	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
80969	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
80970	Type TypeBasicCopySource `json:"type,omitempty"`
80971}
80972
80973// MarshalJSON is the custom marshaler for ShopifySource.
80974func (ss ShopifySource) MarshalJSON() ([]byte, error) {
80975	ss.Type = TypeShopifySource
80976	objectMap := make(map[string]interface{})
80977	objectMap["query"] = ss.Query
80978	objectMap["sourceRetryCount"] = ss.SourceRetryCount
80979	objectMap["sourceRetryWait"] = ss.SourceRetryWait
80980	if ss.Type != "" {
80981		objectMap["type"] = ss.Type
80982	}
80983	for k, v := range ss.AdditionalProperties {
80984		objectMap[k] = v
80985	}
80986	return json.Marshal(objectMap)
80987}
80988
80989// AsAmazonRedshiftSource is the BasicCopySource implementation for ShopifySource.
80990func (ss ShopifySource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
80991	return nil, false
80992}
80993
80994// AsResponsysSource is the BasicCopySource implementation for ShopifySource.
80995func (ss ShopifySource) AsResponsysSource() (*ResponsysSource, bool) {
80996	return nil, false
80997}
80998
80999// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ShopifySource.
81000func (ss ShopifySource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
81001	return nil, false
81002}
81003
81004// AsVerticaSource is the BasicCopySource implementation for ShopifySource.
81005func (ss ShopifySource) AsVerticaSource() (*VerticaSource, bool) {
81006	return nil, false
81007}
81008
81009// AsNetezzaSource is the BasicCopySource implementation for ShopifySource.
81010func (ss ShopifySource) AsNetezzaSource() (*NetezzaSource, bool) {
81011	return nil, false
81012}
81013
81014// AsZohoSource is the BasicCopySource implementation for ShopifySource.
81015func (ss ShopifySource) AsZohoSource() (*ZohoSource, bool) {
81016	return nil, false
81017}
81018
81019// AsXeroSource is the BasicCopySource implementation for ShopifySource.
81020func (ss ShopifySource) AsXeroSource() (*XeroSource, bool) {
81021	return nil, false
81022}
81023
81024// AsSquareSource is the BasicCopySource implementation for ShopifySource.
81025func (ss ShopifySource) AsSquareSource() (*SquareSource, bool) {
81026	return nil, false
81027}
81028
81029// AsSparkSource is the BasicCopySource implementation for ShopifySource.
81030func (ss ShopifySource) AsSparkSource() (*SparkSource, bool) {
81031	return nil, false
81032}
81033
81034// AsShopifySource is the BasicCopySource implementation for ShopifySource.
81035func (ss ShopifySource) AsShopifySource() (*ShopifySource, bool) {
81036	return &ss, true
81037}
81038
81039// AsServiceNowSource is the BasicCopySource implementation for ShopifySource.
81040func (ss ShopifySource) AsServiceNowSource() (*ServiceNowSource, bool) {
81041	return nil, false
81042}
81043
81044// AsQuickBooksSource is the BasicCopySource implementation for ShopifySource.
81045func (ss ShopifySource) AsQuickBooksSource() (*QuickBooksSource, bool) {
81046	return nil, false
81047}
81048
81049// AsPrestoSource is the BasicCopySource implementation for ShopifySource.
81050func (ss ShopifySource) AsPrestoSource() (*PrestoSource, bool) {
81051	return nil, false
81052}
81053
81054// AsPhoenixSource is the BasicCopySource implementation for ShopifySource.
81055func (ss ShopifySource) AsPhoenixSource() (*PhoenixSource, bool) {
81056	return nil, false
81057}
81058
81059// AsPaypalSource is the BasicCopySource implementation for ShopifySource.
81060func (ss ShopifySource) AsPaypalSource() (*PaypalSource, bool) {
81061	return nil, false
81062}
81063
81064// AsMarketoSource is the BasicCopySource implementation for ShopifySource.
81065func (ss ShopifySource) AsMarketoSource() (*MarketoSource, bool) {
81066	return nil, false
81067}
81068
81069// AsMariaDBSource is the BasicCopySource implementation for ShopifySource.
81070func (ss ShopifySource) AsMariaDBSource() (*MariaDBSource, bool) {
81071	return nil, false
81072}
81073
81074// AsMagentoSource is the BasicCopySource implementation for ShopifySource.
81075func (ss ShopifySource) AsMagentoSource() (*MagentoSource, bool) {
81076	return nil, false
81077}
81078
81079// AsJiraSource is the BasicCopySource implementation for ShopifySource.
81080func (ss ShopifySource) AsJiraSource() (*JiraSource, bool) {
81081	return nil, false
81082}
81083
81084// AsImpalaSource is the BasicCopySource implementation for ShopifySource.
81085func (ss ShopifySource) AsImpalaSource() (*ImpalaSource, bool) {
81086	return nil, false
81087}
81088
81089// AsHubspotSource is the BasicCopySource implementation for ShopifySource.
81090func (ss ShopifySource) AsHubspotSource() (*HubspotSource, bool) {
81091	return nil, false
81092}
81093
81094// AsHiveSource is the BasicCopySource implementation for ShopifySource.
81095func (ss ShopifySource) AsHiveSource() (*HiveSource, bool) {
81096	return nil, false
81097}
81098
81099// AsHBaseSource is the BasicCopySource implementation for ShopifySource.
81100func (ss ShopifySource) AsHBaseSource() (*HBaseSource, bool) {
81101	return nil, false
81102}
81103
81104// AsGreenplumSource is the BasicCopySource implementation for ShopifySource.
81105func (ss ShopifySource) AsGreenplumSource() (*GreenplumSource, bool) {
81106	return nil, false
81107}
81108
81109// AsGoogleBigQuerySource is the BasicCopySource implementation for ShopifySource.
81110func (ss ShopifySource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
81111	return nil, false
81112}
81113
81114// AsEloquaSource is the BasicCopySource implementation for ShopifySource.
81115func (ss ShopifySource) AsEloquaSource() (*EloquaSource, bool) {
81116	return nil, false
81117}
81118
81119// AsDrillSource is the BasicCopySource implementation for ShopifySource.
81120func (ss ShopifySource) AsDrillSource() (*DrillSource, bool) {
81121	return nil, false
81122}
81123
81124// AsCouchbaseSource is the BasicCopySource implementation for ShopifySource.
81125func (ss ShopifySource) AsCouchbaseSource() (*CouchbaseSource, bool) {
81126	return nil, false
81127}
81128
81129// AsConcurSource is the BasicCopySource implementation for ShopifySource.
81130func (ss ShopifySource) AsConcurSource() (*ConcurSource, bool) {
81131	return nil, false
81132}
81133
81134// AsAzurePostgreSQLSource is the BasicCopySource implementation for ShopifySource.
81135func (ss ShopifySource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
81136	return nil, false
81137}
81138
81139// AsAmazonMWSSource is the BasicCopySource implementation for ShopifySource.
81140func (ss ShopifySource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
81141	return nil, false
81142}
81143
81144// AsHTTPSource is the BasicCopySource implementation for ShopifySource.
81145func (ss ShopifySource) AsHTTPSource() (*HTTPSource, bool) {
81146	return nil, false
81147}
81148
81149// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ShopifySource.
81150func (ss ShopifySource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
81151	return nil, false
81152}
81153
81154// AsMongoDbSource is the BasicCopySource implementation for ShopifySource.
81155func (ss ShopifySource) AsMongoDbSource() (*MongoDbSource, bool) {
81156	return nil, false
81157}
81158
81159// AsCassandraSource is the BasicCopySource implementation for ShopifySource.
81160func (ss ShopifySource) AsCassandraSource() (*CassandraSource, bool) {
81161	return nil, false
81162}
81163
81164// AsWebSource is the BasicCopySource implementation for ShopifySource.
81165func (ss ShopifySource) AsWebSource() (*WebSource, bool) {
81166	return nil, false
81167}
81168
81169// AsOracleSource is the BasicCopySource implementation for ShopifySource.
81170func (ss ShopifySource) AsOracleSource() (*OracleSource, bool) {
81171	return nil, false
81172}
81173
81174// AsAzureMySQLSource is the BasicCopySource implementation for ShopifySource.
81175func (ss ShopifySource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
81176	return nil, false
81177}
81178
81179// AsHdfsSource is the BasicCopySource implementation for ShopifySource.
81180func (ss ShopifySource) AsHdfsSource() (*HdfsSource, bool) {
81181	return nil, false
81182}
81183
81184// AsFileSystemSource is the BasicCopySource implementation for ShopifySource.
81185func (ss ShopifySource) AsFileSystemSource() (*FileSystemSource, bool) {
81186	return nil, false
81187}
81188
81189// AsSQLDWSource is the BasicCopySource implementation for ShopifySource.
81190func (ss ShopifySource) AsSQLDWSource() (*SQLDWSource, bool) {
81191	return nil, false
81192}
81193
81194// AsSQLSource is the BasicCopySource implementation for ShopifySource.
81195func (ss ShopifySource) AsSQLSource() (*SQLSource, bool) {
81196	return nil, false
81197}
81198
81199// AsSapEccSource is the BasicCopySource implementation for ShopifySource.
81200func (ss ShopifySource) AsSapEccSource() (*SapEccSource, bool) {
81201	return nil, false
81202}
81203
81204// AsSapCloudForCustomerSource is the BasicCopySource implementation for ShopifySource.
81205func (ss ShopifySource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
81206	return nil, false
81207}
81208
81209// AsSalesforceSource is the BasicCopySource implementation for ShopifySource.
81210func (ss ShopifySource) AsSalesforceSource() (*SalesforceSource, bool) {
81211	return nil, false
81212}
81213
81214// AsRelationalSource is the BasicCopySource implementation for ShopifySource.
81215func (ss ShopifySource) AsRelationalSource() (*RelationalSource, bool) {
81216	return nil, false
81217}
81218
81219// AsDynamicsSource is the BasicCopySource implementation for ShopifySource.
81220func (ss ShopifySource) AsDynamicsSource() (*DynamicsSource, bool) {
81221	return nil, false
81222}
81223
81224// AsDocumentDbCollectionSource is the BasicCopySource implementation for ShopifySource.
81225func (ss ShopifySource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
81226	return nil, false
81227}
81228
81229// AsBlobSource is the BasicCopySource implementation for ShopifySource.
81230func (ss ShopifySource) AsBlobSource() (*BlobSource, bool) {
81231	return nil, false
81232}
81233
81234// AsAzureTableSource is the BasicCopySource implementation for ShopifySource.
81235func (ss ShopifySource) AsAzureTableSource() (*AzureTableSource, bool) {
81236	return nil, false
81237}
81238
81239// AsCopySource is the BasicCopySource implementation for ShopifySource.
81240func (ss ShopifySource) AsCopySource() (*CopySource, bool) {
81241	return nil, false
81242}
81243
81244// AsBasicCopySource is the BasicCopySource implementation for ShopifySource.
81245func (ss ShopifySource) AsBasicCopySource() (BasicCopySource, bool) {
81246	return &ss, true
81247}
81248
81249// SparkLinkedService spark Server linked service.
81250type SparkLinkedService struct {
81251	// SparkLinkedServiceTypeProperties - Spark Server linked service properties.
81252	*SparkLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
81253	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
81254	AdditionalProperties map[string]interface{} `json:""`
81255	// ConnectVia - The integration runtime reference.
81256	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
81257	// Description - Linked service description.
81258	Description *string `json:"description,omitempty"`
81259	// Parameters - Parameters for linked service.
81260	Parameters map[string]*ParameterSpecification `json:"parameters"`
81261	// Annotations - List of tags that can be used for describing the Dataset.
81262	Annotations *[]interface{} `json:"annotations,omitempty"`
81263	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
81264	Type TypeBasicLinkedService `json:"type,omitempty"`
81265}
81266
81267// MarshalJSON is the custom marshaler for SparkLinkedService.
81268func (sls SparkLinkedService) MarshalJSON() ([]byte, error) {
81269	sls.Type = TypeSpark
81270	objectMap := make(map[string]interface{})
81271	if sls.SparkLinkedServiceTypeProperties != nil {
81272		objectMap["typeProperties"] = sls.SparkLinkedServiceTypeProperties
81273	}
81274	if sls.ConnectVia != nil {
81275		objectMap["connectVia"] = sls.ConnectVia
81276	}
81277	if sls.Description != nil {
81278		objectMap["description"] = sls.Description
81279	}
81280	if sls.Parameters != nil {
81281		objectMap["parameters"] = sls.Parameters
81282	}
81283	if sls.Annotations != nil {
81284		objectMap["annotations"] = sls.Annotations
81285	}
81286	if sls.Type != "" {
81287		objectMap["type"] = sls.Type
81288	}
81289	for k, v := range sls.AdditionalProperties {
81290		objectMap[k] = v
81291	}
81292	return json.Marshal(objectMap)
81293}
81294
81295// AsResponsysLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81296func (sls SparkLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
81297	return nil, false
81298}
81299
81300// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81301func (sls SparkLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
81302	return nil, false
81303}
81304
81305// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81306func (sls SparkLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
81307	return nil, false
81308}
81309
81310// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81311func (sls SparkLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
81312	return nil, false
81313}
81314
81315// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81316func (sls SparkLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
81317	return nil, false
81318}
81319
81320// AsNetezzaLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81321func (sls SparkLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
81322	return nil, false
81323}
81324
81325// AsVerticaLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81326func (sls SparkLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
81327	return nil, false
81328}
81329
81330// AsZohoLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81331func (sls SparkLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
81332	return nil, false
81333}
81334
81335// AsXeroLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81336func (sls SparkLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
81337	return nil, false
81338}
81339
81340// AsSquareLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81341func (sls SparkLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
81342	return nil, false
81343}
81344
81345// AsSparkLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81346func (sls SparkLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
81347	return &sls, true
81348}
81349
81350// AsShopifyLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81351func (sls SparkLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
81352	return nil, false
81353}
81354
81355// AsServiceNowLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81356func (sls SparkLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
81357	return nil, false
81358}
81359
81360// AsQuickBooksLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81361func (sls SparkLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
81362	return nil, false
81363}
81364
81365// AsPrestoLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81366func (sls SparkLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
81367	return nil, false
81368}
81369
81370// AsPhoenixLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81371func (sls SparkLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
81372	return nil, false
81373}
81374
81375// AsPaypalLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81376func (sls SparkLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
81377	return nil, false
81378}
81379
81380// AsMarketoLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81381func (sls SparkLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
81382	return nil, false
81383}
81384
81385// AsMariaDBLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81386func (sls SparkLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
81387	return nil, false
81388}
81389
81390// AsMagentoLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81391func (sls SparkLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
81392	return nil, false
81393}
81394
81395// AsJiraLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81396func (sls SparkLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
81397	return nil, false
81398}
81399
81400// AsImpalaLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81401func (sls SparkLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
81402	return nil, false
81403}
81404
81405// AsHubspotLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81406func (sls SparkLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
81407	return nil, false
81408}
81409
81410// AsHiveLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81411func (sls SparkLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
81412	return nil, false
81413}
81414
81415// AsHBaseLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81416func (sls SparkLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
81417	return nil, false
81418}
81419
81420// AsGreenplumLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81421func (sls SparkLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
81422	return nil, false
81423}
81424
81425// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81426func (sls SparkLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
81427	return nil, false
81428}
81429
81430// AsEloquaLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81431func (sls SparkLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
81432	return nil, false
81433}
81434
81435// AsDrillLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81436func (sls SparkLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
81437	return nil, false
81438}
81439
81440// AsCouchbaseLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81441func (sls SparkLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
81442	return nil, false
81443}
81444
81445// AsConcurLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81446func (sls SparkLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
81447	return nil, false
81448}
81449
81450// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81451func (sls SparkLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
81452	return nil, false
81453}
81454
81455// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81456func (sls SparkLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
81457	return nil, false
81458}
81459
81460// AsSapHanaLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81461func (sls SparkLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
81462	return nil, false
81463}
81464
81465// AsSapBWLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81466func (sls SparkLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
81467	return nil, false
81468}
81469
81470// AsSftpServerLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81471func (sls SparkLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
81472	return nil, false
81473}
81474
81475// AsFtpServerLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81476func (sls SparkLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
81477	return nil, false
81478}
81479
81480// AsHTTPLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81481func (sls SparkLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
81482	return nil, false
81483}
81484
81485// AsAzureSearchLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81486func (sls SparkLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
81487	return nil, false
81488}
81489
81490// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81491func (sls SparkLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
81492	return nil, false
81493}
81494
81495// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81496func (sls SparkLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
81497	return nil, false
81498}
81499
81500// AsAmazonS3LinkedService is the BasicLinkedService implementation for SparkLinkedService.
81501func (sls SparkLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
81502	return nil, false
81503}
81504
81505// AsSapEccLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81506func (sls SparkLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
81507	return nil, false
81508}
81509
81510// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81511func (sls SparkLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
81512	return nil, false
81513}
81514
81515// AsSalesforceLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81516func (sls SparkLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
81517	return nil, false
81518}
81519
81520// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81521func (sls SparkLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
81522	return nil, false
81523}
81524
81525// AsMongoDbLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81526func (sls SparkLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
81527	return nil, false
81528}
81529
81530// AsCassandraLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81531func (sls SparkLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
81532	return nil, false
81533}
81534
81535// AsWebLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81536func (sls SparkLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
81537	return nil, false
81538}
81539
81540// AsODataLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81541func (sls SparkLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
81542	return nil, false
81543}
81544
81545// AsHdfsLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81546func (sls SparkLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
81547	return nil, false
81548}
81549
81550// AsOdbcLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81551func (sls SparkLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
81552	return nil, false
81553}
81554
81555// AsAzureMLLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81556func (sls SparkLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
81557	return nil, false
81558}
81559
81560// AsTeradataLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81561func (sls SparkLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
81562	return nil, false
81563}
81564
81565// AsDb2LinkedService is the BasicLinkedService implementation for SparkLinkedService.
81566func (sls SparkLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
81567	return nil, false
81568}
81569
81570// AsSybaseLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81571func (sls SparkLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
81572	return nil, false
81573}
81574
81575// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81576func (sls SparkLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
81577	return nil, false
81578}
81579
81580// AsMySQLLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81581func (sls SparkLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
81582	return nil, false
81583}
81584
81585// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81586func (sls SparkLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
81587	return nil, false
81588}
81589
81590// AsOracleLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81591func (sls SparkLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
81592	return nil, false
81593}
81594
81595// AsFileServerLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81596func (sls SparkLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
81597	return nil, false
81598}
81599
81600// AsHDInsightLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81601func (sls SparkLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
81602	return nil, false
81603}
81604
81605// AsDynamicsLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81606func (sls SparkLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
81607	return nil, false
81608}
81609
81610// AsCosmosDbLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81611func (sls SparkLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
81612	return nil, false
81613}
81614
81615// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81616func (sls SparkLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
81617	return nil, false
81618}
81619
81620// AsAzureBatchLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81621func (sls SparkLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
81622	return nil, false
81623}
81624
81625// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81626func (sls SparkLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
81627	return nil, false
81628}
81629
81630// AsSQLServerLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81631func (sls SparkLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
81632	return nil, false
81633}
81634
81635// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81636func (sls SparkLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
81637	return nil, false
81638}
81639
81640// AsAzureStorageLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81641func (sls SparkLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
81642	return nil, false
81643}
81644
81645// AsLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81646func (sls SparkLinkedService) AsLinkedService() (*LinkedService, bool) {
81647	return nil, false
81648}
81649
81650// AsBasicLinkedService is the BasicLinkedService implementation for SparkLinkedService.
81651func (sls SparkLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
81652	return &sls, true
81653}
81654
81655// UnmarshalJSON is the custom unmarshaler for SparkLinkedService struct.
81656func (sls *SparkLinkedService) UnmarshalJSON(body []byte) error {
81657	var m map[string]*json.RawMessage
81658	err := json.Unmarshal(body, &m)
81659	if err != nil {
81660		return err
81661	}
81662	for k, v := range m {
81663		switch k {
81664		case "typeProperties":
81665			if v != nil {
81666				var sparkLinkedServiceTypeProperties SparkLinkedServiceTypeProperties
81667				err = json.Unmarshal(*v, &sparkLinkedServiceTypeProperties)
81668				if err != nil {
81669					return err
81670				}
81671				sls.SparkLinkedServiceTypeProperties = &sparkLinkedServiceTypeProperties
81672			}
81673		default:
81674			if v != nil {
81675				var additionalProperties interface{}
81676				err = json.Unmarshal(*v, &additionalProperties)
81677				if err != nil {
81678					return err
81679				}
81680				if sls.AdditionalProperties == nil {
81681					sls.AdditionalProperties = make(map[string]interface{})
81682				}
81683				sls.AdditionalProperties[k] = additionalProperties
81684			}
81685		case "connectVia":
81686			if v != nil {
81687				var connectVia IntegrationRuntimeReference
81688				err = json.Unmarshal(*v, &connectVia)
81689				if err != nil {
81690					return err
81691				}
81692				sls.ConnectVia = &connectVia
81693			}
81694		case "description":
81695			if v != nil {
81696				var description string
81697				err = json.Unmarshal(*v, &description)
81698				if err != nil {
81699					return err
81700				}
81701				sls.Description = &description
81702			}
81703		case "parameters":
81704			if v != nil {
81705				var parameters map[string]*ParameterSpecification
81706				err = json.Unmarshal(*v, &parameters)
81707				if err != nil {
81708					return err
81709				}
81710				sls.Parameters = parameters
81711			}
81712		case "annotations":
81713			if v != nil {
81714				var annotations []interface{}
81715				err = json.Unmarshal(*v, &annotations)
81716				if err != nil {
81717					return err
81718				}
81719				sls.Annotations = &annotations
81720			}
81721		case "type":
81722			if v != nil {
81723				var typeVar TypeBasicLinkedService
81724				err = json.Unmarshal(*v, &typeVar)
81725				if err != nil {
81726					return err
81727				}
81728				sls.Type = typeVar
81729			}
81730		}
81731	}
81732
81733	return nil
81734}
81735
81736// SparkLinkedServiceTypeProperties spark Server linked service properties.
81737type SparkLinkedServiceTypeProperties struct {
81738	// Host - IP address or host name of the Spark server
81739	Host interface{} `json:"host,omitempty"`
81740	// Port - The TCP port that the Spark server uses to listen for client connections.
81741	Port interface{} `json:"port,omitempty"`
81742	// ServerType - The type of Spark server. Possible values include: 'SharkServer', 'SharkServer2', 'SparkThriftServer'
81743	ServerType SparkServerType `json:"serverType,omitempty"`
81744	// ThriftTransportProtocol - The transport protocol to use in the Thrift layer. Possible values include: 'SparkThriftTransportProtocolBinary', 'SparkThriftTransportProtocolSASL', 'SparkThriftTransportProtocolHTTP'
81745	ThriftTransportProtocol SparkThriftTransportProtocol `json:"thriftTransportProtocol,omitempty"`
81746	// AuthenticationType - The authentication method used to access the Spark server. Possible values include: 'SparkAuthenticationTypeAnonymous', 'SparkAuthenticationTypeUsername', 'SparkAuthenticationTypeUsernameAndPassword', 'SparkAuthenticationTypeWindowsAzureHDInsightService'
81747	AuthenticationType SparkAuthenticationType `json:"authenticationType,omitempty"`
81748	// Username - The user name that you use to access Spark Server.
81749	Username interface{} `json:"username,omitempty"`
81750	// Password - The password corresponding to the user name that you provided in the Username field
81751	Password BasicSecretBase `json:"password,omitempty"`
81752	// HTTPPath - The partial URL corresponding to the Spark server.
81753	HTTPPath interface{} `json:"httpPath,omitempty"`
81754	// EnableSsl - Specifies whether the connections to the server are encrypted using SSL. The default value is false.
81755	EnableSsl interface{} `json:"enableSsl,omitempty"`
81756	// TrustedCertPath - The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
81757	TrustedCertPath interface{} `json:"trustedCertPath,omitempty"`
81758	// UseSystemTrustStore - Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
81759	UseSystemTrustStore interface{} `json:"useSystemTrustStore,omitempty"`
81760	// AllowHostNameCNMismatch - Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
81761	AllowHostNameCNMismatch interface{} `json:"allowHostNameCNMismatch,omitempty"`
81762	// AllowSelfSignedServerCert - Specifies whether to allow self-signed certificates from the server. The default value is false.
81763	AllowSelfSignedServerCert interface{} `json:"allowSelfSignedServerCert,omitempty"`
81764	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
81765	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
81766}
81767
81768// UnmarshalJSON is the custom unmarshaler for SparkLinkedServiceTypeProperties struct.
81769func (slstp *SparkLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
81770	var m map[string]*json.RawMessage
81771	err := json.Unmarshal(body, &m)
81772	if err != nil {
81773		return err
81774	}
81775	for k, v := range m {
81776		switch k {
81777		case "host":
81778			if v != nil {
81779				var host interface{}
81780				err = json.Unmarshal(*v, &host)
81781				if err != nil {
81782					return err
81783				}
81784				slstp.Host = host
81785			}
81786		case "port":
81787			if v != nil {
81788				var port interface{}
81789				err = json.Unmarshal(*v, &port)
81790				if err != nil {
81791					return err
81792				}
81793				slstp.Port = port
81794			}
81795		case "serverType":
81796			if v != nil {
81797				var serverType SparkServerType
81798				err = json.Unmarshal(*v, &serverType)
81799				if err != nil {
81800					return err
81801				}
81802				slstp.ServerType = serverType
81803			}
81804		case "thriftTransportProtocol":
81805			if v != nil {
81806				var thriftTransportProtocol SparkThriftTransportProtocol
81807				err = json.Unmarshal(*v, &thriftTransportProtocol)
81808				if err != nil {
81809					return err
81810				}
81811				slstp.ThriftTransportProtocol = thriftTransportProtocol
81812			}
81813		case "authenticationType":
81814			if v != nil {
81815				var authenticationType SparkAuthenticationType
81816				err = json.Unmarshal(*v, &authenticationType)
81817				if err != nil {
81818					return err
81819				}
81820				slstp.AuthenticationType = authenticationType
81821			}
81822		case "username":
81823			if v != nil {
81824				var username interface{}
81825				err = json.Unmarshal(*v, &username)
81826				if err != nil {
81827					return err
81828				}
81829				slstp.Username = username
81830			}
81831		case "password":
81832			if v != nil {
81833				password, err := unmarshalBasicSecretBase(*v)
81834				if err != nil {
81835					return err
81836				}
81837				slstp.Password = password
81838			}
81839		case "httpPath":
81840			if v != nil {
81841				var HTTPPath interface{}
81842				err = json.Unmarshal(*v, &HTTPPath)
81843				if err != nil {
81844					return err
81845				}
81846				slstp.HTTPPath = HTTPPath
81847			}
81848		case "enableSsl":
81849			if v != nil {
81850				var enableSsl interface{}
81851				err = json.Unmarshal(*v, &enableSsl)
81852				if err != nil {
81853					return err
81854				}
81855				slstp.EnableSsl = enableSsl
81856			}
81857		case "trustedCertPath":
81858			if v != nil {
81859				var trustedCertPath interface{}
81860				err = json.Unmarshal(*v, &trustedCertPath)
81861				if err != nil {
81862					return err
81863				}
81864				slstp.TrustedCertPath = trustedCertPath
81865			}
81866		case "useSystemTrustStore":
81867			if v != nil {
81868				var useSystemTrustStore interface{}
81869				err = json.Unmarshal(*v, &useSystemTrustStore)
81870				if err != nil {
81871					return err
81872				}
81873				slstp.UseSystemTrustStore = useSystemTrustStore
81874			}
81875		case "allowHostNameCNMismatch":
81876			if v != nil {
81877				var allowHostNameCNMismatch interface{}
81878				err = json.Unmarshal(*v, &allowHostNameCNMismatch)
81879				if err != nil {
81880					return err
81881				}
81882				slstp.AllowHostNameCNMismatch = allowHostNameCNMismatch
81883			}
81884		case "allowSelfSignedServerCert":
81885			if v != nil {
81886				var allowSelfSignedServerCert interface{}
81887				err = json.Unmarshal(*v, &allowSelfSignedServerCert)
81888				if err != nil {
81889					return err
81890				}
81891				slstp.AllowSelfSignedServerCert = allowSelfSignedServerCert
81892			}
81893		case "encryptedCredential":
81894			if v != nil {
81895				var encryptedCredential interface{}
81896				err = json.Unmarshal(*v, &encryptedCredential)
81897				if err != nil {
81898					return err
81899				}
81900				slstp.EncryptedCredential = encryptedCredential
81901			}
81902		}
81903	}
81904
81905	return nil
81906}
81907
81908// SparkObjectDataset spark Server dataset.
81909type SparkObjectDataset struct {
81910	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
81911	AdditionalProperties map[string]interface{} `json:""`
81912	// Description - Dataset description.
81913	Description *string `json:"description,omitempty"`
81914	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
81915	Structure interface{} `json:"structure,omitempty"`
81916	// LinkedServiceName - Linked service reference.
81917	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
81918	// Parameters - Parameters for dataset.
81919	Parameters map[string]*ParameterSpecification `json:"parameters"`
81920	// Annotations - List of tags that can be used for describing the Dataset.
81921	Annotations *[]interface{} `json:"annotations,omitempty"`
81922	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
81923	Type TypeBasicDataset `json:"type,omitempty"`
81924}
81925
81926// MarshalJSON is the custom marshaler for SparkObjectDataset.
81927func (sod SparkObjectDataset) MarshalJSON() ([]byte, error) {
81928	sod.Type = TypeSparkObject
81929	objectMap := make(map[string]interface{})
81930	if sod.Description != nil {
81931		objectMap["description"] = sod.Description
81932	}
81933	objectMap["structure"] = sod.Structure
81934	if sod.LinkedServiceName != nil {
81935		objectMap["linkedServiceName"] = sod.LinkedServiceName
81936	}
81937	if sod.Parameters != nil {
81938		objectMap["parameters"] = sod.Parameters
81939	}
81940	if sod.Annotations != nil {
81941		objectMap["annotations"] = sod.Annotations
81942	}
81943	if sod.Type != "" {
81944		objectMap["type"] = sod.Type
81945	}
81946	for k, v := range sod.AdditionalProperties {
81947		objectMap[k] = v
81948	}
81949	return json.Marshal(objectMap)
81950}
81951
81952// AsResponsysObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81953func (sod SparkObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
81954	return nil, false
81955}
81956
81957// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81958func (sod SparkObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
81959	return nil, false
81960}
81961
81962// AsVerticaTableDataset is the BasicDataset implementation for SparkObjectDataset.
81963func (sod SparkObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
81964	return nil, false
81965}
81966
81967// AsNetezzaTableDataset is the BasicDataset implementation for SparkObjectDataset.
81968func (sod SparkObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
81969	return nil, false
81970}
81971
81972// AsZohoObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81973func (sod SparkObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
81974	return nil, false
81975}
81976
81977// AsXeroObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81978func (sod SparkObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
81979	return nil, false
81980}
81981
81982// AsSquareObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81983func (sod SparkObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
81984	return nil, false
81985}
81986
81987// AsSparkObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81988func (sod SparkObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
81989	return &sod, true
81990}
81991
81992// AsShopifyObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81993func (sod SparkObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
81994	return nil, false
81995}
81996
81997// AsServiceNowObjectDataset is the BasicDataset implementation for SparkObjectDataset.
81998func (sod SparkObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
81999	return nil, false
82000}
82001
82002// AsQuickBooksObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82003func (sod SparkObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
82004	return nil, false
82005}
82006
82007// AsPrestoObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82008func (sod SparkObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
82009	return nil, false
82010}
82011
82012// AsPhoenixObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82013func (sod SparkObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
82014	return nil, false
82015}
82016
82017// AsPaypalObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82018func (sod SparkObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
82019	return nil, false
82020}
82021
82022// AsMarketoObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82023func (sod SparkObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
82024	return nil, false
82025}
82026
82027// AsMariaDBTableDataset is the BasicDataset implementation for SparkObjectDataset.
82028func (sod SparkObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
82029	return nil, false
82030}
82031
82032// AsMagentoObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82033func (sod SparkObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
82034	return nil, false
82035}
82036
82037// AsJiraObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82038func (sod SparkObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
82039	return nil, false
82040}
82041
82042// AsImpalaObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82043func (sod SparkObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
82044	return nil, false
82045}
82046
82047// AsHubspotObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82048func (sod SparkObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
82049	return nil, false
82050}
82051
82052// AsHiveObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82053func (sod SparkObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
82054	return nil, false
82055}
82056
82057// AsHBaseObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82058func (sod SparkObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
82059	return nil, false
82060}
82061
82062// AsGreenplumTableDataset is the BasicDataset implementation for SparkObjectDataset.
82063func (sod SparkObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
82064	return nil, false
82065}
82066
82067// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82068func (sod SparkObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
82069	return nil, false
82070}
82071
82072// AsEloquaObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82073func (sod SparkObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
82074	return nil, false
82075}
82076
82077// AsDrillTableDataset is the BasicDataset implementation for SparkObjectDataset.
82078func (sod SparkObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
82079	return nil, false
82080}
82081
82082// AsCouchbaseTableDataset is the BasicDataset implementation for SparkObjectDataset.
82083func (sod SparkObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
82084	return nil, false
82085}
82086
82087// AsConcurObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82088func (sod SparkObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
82089	return nil, false
82090}
82091
82092// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SparkObjectDataset.
82093func (sod SparkObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
82094	return nil, false
82095}
82096
82097// AsAmazonMWSObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82098func (sod SparkObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
82099	return nil, false
82100}
82101
82102// AsHTTPDataset is the BasicDataset implementation for SparkObjectDataset.
82103func (sod SparkObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
82104	return nil, false
82105}
82106
82107// AsAzureSearchIndexDataset is the BasicDataset implementation for SparkObjectDataset.
82108func (sod SparkObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
82109	return nil, false
82110}
82111
82112// AsWebTableDataset is the BasicDataset implementation for SparkObjectDataset.
82113func (sod SparkObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
82114	return nil, false
82115}
82116
82117// AsSQLServerTableDataset is the BasicDataset implementation for SparkObjectDataset.
82118func (sod SparkObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
82119	return nil, false
82120}
82121
82122// AsSapEccResourceDataset is the BasicDataset implementation for SparkObjectDataset.
82123func (sod SparkObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
82124	return nil, false
82125}
82126
82127// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SparkObjectDataset.
82128func (sod SparkObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
82129	return nil, false
82130}
82131
82132// AsSalesforceObjectDataset is the BasicDataset implementation for SparkObjectDataset.
82133func (sod SparkObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
82134	return nil, false
82135}
82136
82137// AsRelationalTableDataset is the BasicDataset implementation for SparkObjectDataset.
82138func (sod SparkObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
82139	return nil, false
82140}
82141
82142// AsAzureMySQLTableDataset is the BasicDataset implementation for SparkObjectDataset.
82143func (sod SparkObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
82144	return nil, false
82145}
82146
82147// AsOracleTableDataset is the BasicDataset implementation for SparkObjectDataset.
82148func (sod SparkObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
82149	return nil, false
82150}
82151
82152// AsODataResourceDataset is the BasicDataset implementation for SparkObjectDataset.
82153func (sod SparkObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
82154	return nil, false
82155}
82156
82157// AsMongoDbCollectionDataset is the BasicDataset implementation for SparkObjectDataset.
82158func (sod SparkObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
82159	return nil, false
82160}
82161
82162// AsFileShareDataset is the BasicDataset implementation for SparkObjectDataset.
82163func (sod SparkObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
82164	return nil, false
82165}
82166
82167// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SparkObjectDataset.
82168func (sod SparkObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
82169	return nil, false
82170}
82171
82172// AsDynamicsEntityDataset is the BasicDataset implementation for SparkObjectDataset.
82173func (sod SparkObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
82174	return nil, false
82175}
82176
82177// AsDocumentDbCollectionDataset is the BasicDataset implementation for SparkObjectDataset.
82178func (sod SparkObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
82179	return nil, false
82180}
82181
82182// AsCustomDataset is the BasicDataset implementation for SparkObjectDataset.
82183func (sod SparkObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
82184	return nil, false
82185}
82186
82187// AsCassandraTableDataset is the BasicDataset implementation for SparkObjectDataset.
82188func (sod SparkObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
82189	return nil, false
82190}
82191
82192// AsAzureSQLDWTableDataset is the BasicDataset implementation for SparkObjectDataset.
82193func (sod SparkObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
82194	return nil, false
82195}
82196
82197// AsAzureSQLTableDataset is the BasicDataset implementation for SparkObjectDataset.
82198func (sod SparkObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
82199	return nil, false
82200}
82201
82202// AsAzureTableDataset is the BasicDataset implementation for SparkObjectDataset.
82203func (sod SparkObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
82204	return nil, false
82205}
82206
82207// AsAzureBlobDataset is the BasicDataset implementation for SparkObjectDataset.
82208func (sod SparkObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
82209	return nil, false
82210}
82211
82212// AsAmazonS3Dataset is the BasicDataset implementation for SparkObjectDataset.
82213func (sod SparkObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
82214	return nil, false
82215}
82216
82217// AsDataset is the BasicDataset implementation for SparkObjectDataset.
82218func (sod SparkObjectDataset) AsDataset() (*Dataset, bool) {
82219	return nil, false
82220}
82221
82222// AsBasicDataset is the BasicDataset implementation for SparkObjectDataset.
82223func (sod SparkObjectDataset) AsBasicDataset() (BasicDataset, bool) {
82224	return &sod, true
82225}
82226
82227// SparkSource a copy activity Spark Server source.
82228type SparkSource struct {
82229	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
82230	Query interface{} `json:"query,omitempty"`
82231	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
82232	AdditionalProperties map[string]interface{} `json:""`
82233	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
82234	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
82235	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
82236	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
82237	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
82238	Type TypeBasicCopySource `json:"type,omitempty"`
82239}
82240
82241// MarshalJSON is the custom marshaler for SparkSource.
82242func (ss SparkSource) MarshalJSON() ([]byte, error) {
82243	ss.Type = TypeSparkSource
82244	objectMap := make(map[string]interface{})
82245	objectMap["query"] = ss.Query
82246	objectMap["sourceRetryCount"] = ss.SourceRetryCount
82247	objectMap["sourceRetryWait"] = ss.SourceRetryWait
82248	if ss.Type != "" {
82249		objectMap["type"] = ss.Type
82250	}
82251	for k, v := range ss.AdditionalProperties {
82252		objectMap[k] = v
82253	}
82254	return json.Marshal(objectMap)
82255}
82256
82257// AsAmazonRedshiftSource is the BasicCopySource implementation for SparkSource.
82258func (ss SparkSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
82259	return nil, false
82260}
82261
82262// AsResponsysSource is the BasicCopySource implementation for SparkSource.
82263func (ss SparkSource) AsResponsysSource() (*ResponsysSource, bool) {
82264	return nil, false
82265}
82266
82267// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SparkSource.
82268func (ss SparkSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
82269	return nil, false
82270}
82271
82272// AsVerticaSource is the BasicCopySource implementation for SparkSource.
82273func (ss SparkSource) AsVerticaSource() (*VerticaSource, bool) {
82274	return nil, false
82275}
82276
82277// AsNetezzaSource is the BasicCopySource implementation for SparkSource.
82278func (ss SparkSource) AsNetezzaSource() (*NetezzaSource, bool) {
82279	return nil, false
82280}
82281
82282// AsZohoSource is the BasicCopySource implementation for SparkSource.
82283func (ss SparkSource) AsZohoSource() (*ZohoSource, bool) {
82284	return nil, false
82285}
82286
82287// AsXeroSource is the BasicCopySource implementation for SparkSource.
82288func (ss SparkSource) AsXeroSource() (*XeroSource, bool) {
82289	return nil, false
82290}
82291
82292// AsSquareSource is the BasicCopySource implementation for SparkSource.
82293func (ss SparkSource) AsSquareSource() (*SquareSource, bool) {
82294	return nil, false
82295}
82296
82297// AsSparkSource is the BasicCopySource implementation for SparkSource.
82298func (ss SparkSource) AsSparkSource() (*SparkSource, bool) {
82299	return &ss, true
82300}
82301
82302// AsShopifySource is the BasicCopySource implementation for SparkSource.
82303func (ss SparkSource) AsShopifySource() (*ShopifySource, bool) {
82304	return nil, false
82305}
82306
82307// AsServiceNowSource is the BasicCopySource implementation for SparkSource.
82308func (ss SparkSource) AsServiceNowSource() (*ServiceNowSource, bool) {
82309	return nil, false
82310}
82311
82312// AsQuickBooksSource is the BasicCopySource implementation for SparkSource.
82313func (ss SparkSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
82314	return nil, false
82315}
82316
82317// AsPrestoSource is the BasicCopySource implementation for SparkSource.
82318func (ss SparkSource) AsPrestoSource() (*PrestoSource, bool) {
82319	return nil, false
82320}
82321
82322// AsPhoenixSource is the BasicCopySource implementation for SparkSource.
82323func (ss SparkSource) AsPhoenixSource() (*PhoenixSource, bool) {
82324	return nil, false
82325}
82326
82327// AsPaypalSource is the BasicCopySource implementation for SparkSource.
82328func (ss SparkSource) AsPaypalSource() (*PaypalSource, bool) {
82329	return nil, false
82330}
82331
82332// AsMarketoSource is the BasicCopySource implementation for SparkSource.
82333func (ss SparkSource) AsMarketoSource() (*MarketoSource, bool) {
82334	return nil, false
82335}
82336
82337// AsMariaDBSource is the BasicCopySource implementation for SparkSource.
82338func (ss SparkSource) AsMariaDBSource() (*MariaDBSource, bool) {
82339	return nil, false
82340}
82341
82342// AsMagentoSource is the BasicCopySource implementation for SparkSource.
82343func (ss SparkSource) AsMagentoSource() (*MagentoSource, bool) {
82344	return nil, false
82345}
82346
82347// AsJiraSource is the BasicCopySource implementation for SparkSource.
82348func (ss SparkSource) AsJiraSource() (*JiraSource, bool) {
82349	return nil, false
82350}
82351
82352// AsImpalaSource is the BasicCopySource implementation for SparkSource.
82353func (ss SparkSource) AsImpalaSource() (*ImpalaSource, bool) {
82354	return nil, false
82355}
82356
82357// AsHubspotSource is the BasicCopySource implementation for SparkSource.
82358func (ss SparkSource) AsHubspotSource() (*HubspotSource, bool) {
82359	return nil, false
82360}
82361
82362// AsHiveSource is the BasicCopySource implementation for SparkSource.
82363func (ss SparkSource) AsHiveSource() (*HiveSource, bool) {
82364	return nil, false
82365}
82366
82367// AsHBaseSource is the BasicCopySource implementation for SparkSource.
82368func (ss SparkSource) AsHBaseSource() (*HBaseSource, bool) {
82369	return nil, false
82370}
82371
82372// AsGreenplumSource is the BasicCopySource implementation for SparkSource.
82373func (ss SparkSource) AsGreenplumSource() (*GreenplumSource, bool) {
82374	return nil, false
82375}
82376
82377// AsGoogleBigQuerySource is the BasicCopySource implementation for SparkSource.
82378func (ss SparkSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
82379	return nil, false
82380}
82381
82382// AsEloquaSource is the BasicCopySource implementation for SparkSource.
82383func (ss SparkSource) AsEloquaSource() (*EloquaSource, bool) {
82384	return nil, false
82385}
82386
82387// AsDrillSource is the BasicCopySource implementation for SparkSource.
82388func (ss SparkSource) AsDrillSource() (*DrillSource, bool) {
82389	return nil, false
82390}
82391
82392// AsCouchbaseSource is the BasicCopySource implementation for SparkSource.
82393func (ss SparkSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
82394	return nil, false
82395}
82396
82397// AsConcurSource is the BasicCopySource implementation for SparkSource.
82398func (ss SparkSource) AsConcurSource() (*ConcurSource, bool) {
82399	return nil, false
82400}
82401
82402// AsAzurePostgreSQLSource is the BasicCopySource implementation for SparkSource.
82403func (ss SparkSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
82404	return nil, false
82405}
82406
82407// AsAmazonMWSSource is the BasicCopySource implementation for SparkSource.
82408func (ss SparkSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
82409	return nil, false
82410}
82411
82412// AsHTTPSource is the BasicCopySource implementation for SparkSource.
82413func (ss SparkSource) AsHTTPSource() (*HTTPSource, bool) {
82414	return nil, false
82415}
82416
82417// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SparkSource.
82418func (ss SparkSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
82419	return nil, false
82420}
82421
82422// AsMongoDbSource is the BasicCopySource implementation for SparkSource.
82423func (ss SparkSource) AsMongoDbSource() (*MongoDbSource, bool) {
82424	return nil, false
82425}
82426
82427// AsCassandraSource is the BasicCopySource implementation for SparkSource.
82428func (ss SparkSource) AsCassandraSource() (*CassandraSource, bool) {
82429	return nil, false
82430}
82431
82432// AsWebSource is the BasicCopySource implementation for SparkSource.
82433func (ss SparkSource) AsWebSource() (*WebSource, bool) {
82434	return nil, false
82435}
82436
82437// AsOracleSource is the BasicCopySource implementation for SparkSource.
82438func (ss SparkSource) AsOracleSource() (*OracleSource, bool) {
82439	return nil, false
82440}
82441
82442// AsAzureMySQLSource is the BasicCopySource implementation for SparkSource.
82443func (ss SparkSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
82444	return nil, false
82445}
82446
82447// AsHdfsSource is the BasicCopySource implementation for SparkSource.
82448func (ss SparkSource) AsHdfsSource() (*HdfsSource, bool) {
82449	return nil, false
82450}
82451
82452// AsFileSystemSource is the BasicCopySource implementation for SparkSource.
82453func (ss SparkSource) AsFileSystemSource() (*FileSystemSource, bool) {
82454	return nil, false
82455}
82456
82457// AsSQLDWSource is the BasicCopySource implementation for SparkSource.
82458func (ss SparkSource) AsSQLDWSource() (*SQLDWSource, bool) {
82459	return nil, false
82460}
82461
82462// AsSQLSource is the BasicCopySource implementation for SparkSource.
82463func (ss SparkSource) AsSQLSource() (*SQLSource, bool) {
82464	return nil, false
82465}
82466
82467// AsSapEccSource is the BasicCopySource implementation for SparkSource.
82468func (ss SparkSource) AsSapEccSource() (*SapEccSource, bool) {
82469	return nil, false
82470}
82471
82472// AsSapCloudForCustomerSource is the BasicCopySource implementation for SparkSource.
82473func (ss SparkSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
82474	return nil, false
82475}
82476
82477// AsSalesforceSource is the BasicCopySource implementation for SparkSource.
82478func (ss SparkSource) AsSalesforceSource() (*SalesforceSource, bool) {
82479	return nil, false
82480}
82481
82482// AsRelationalSource is the BasicCopySource implementation for SparkSource.
82483func (ss SparkSource) AsRelationalSource() (*RelationalSource, bool) {
82484	return nil, false
82485}
82486
82487// AsDynamicsSource is the BasicCopySource implementation for SparkSource.
82488func (ss SparkSource) AsDynamicsSource() (*DynamicsSource, bool) {
82489	return nil, false
82490}
82491
82492// AsDocumentDbCollectionSource is the BasicCopySource implementation for SparkSource.
82493func (ss SparkSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
82494	return nil, false
82495}
82496
82497// AsBlobSource is the BasicCopySource implementation for SparkSource.
82498func (ss SparkSource) AsBlobSource() (*BlobSource, bool) {
82499	return nil, false
82500}
82501
82502// AsAzureTableSource is the BasicCopySource implementation for SparkSource.
82503func (ss SparkSource) AsAzureTableSource() (*AzureTableSource, bool) {
82504	return nil, false
82505}
82506
82507// AsCopySource is the BasicCopySource implementation for SparkSource.
82508func (ss SparkSource) AsCopySource() (*CopySource, bool) {
82509	return nil, false
82510}
82511
82512// AsBasicCopySource is the BasicCopySource implementation for SparkSource.
82513func (ss SparkSource) AsBasicCopySource() (BasicCopySource, bool) {
82514	return &ss, true
82515}
82516
82517// SQLDWSink a copy activity SQL Data Warehouse sink.
82518type SQLDWSink struct {
82519	// PreCopyScript - SQL pre-copy script. Type: string (or Expression with resultType string).
82520	PreCopyScript interface{} `json:"preCopyScript,omitempty"`
82521	// AllowPolyBase - Indicates to use PolyBase to copy data into SQL Data Warehouse when applicable. Type: boolean (or Expression with resultType boolean).
82522	AllowPolyBase interface{} `json:"allowPolyBase,omitempty"`
82523	// PolyBaseSettings - Specifies PolyBase-related settings when allowPolyBase is true.
82524	PolyBaseSettings *PolybaseSettings `json:"polyBaseSettings,omitempty"`
82525	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
82526	AdditionalProperties map[string]interface{} `json:""`
82527	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
82528	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
82529	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
82530	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
82531	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
82532	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
82533	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
82534	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
82535	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
82536	Type TypeBasicCopySink `json:"type,omitempty"`
82537}
82538
82539// MarshalJSON is the custom marshaler for SQLDWSink.
82540func (sds SQLDWSink) MarshalJSON() ([]byte, error) {
82541	sds.Type = TypeSQLDWSink
82542	objectMap := make(map[string]interface{})
82543	objectMap["preCopyScript"] = sds.PreCopyScript
82544	objectMap["allowPolyBase"] = sds.AllowPolyBase
82545	if sds.PolyBaseSettings != nil {
82546		objectMap["polyBaseSettings"] = sds.PolyBaseSettings
82547	}
82548	objectMap["writeBatchSize"] = sds.WriteBatchSize
82549	objectMap["writeBatchTimeout"] = sds.WriteBatchTimeout
82550	objectMap["sinkRetryCount"] = sds.SinkRetryCount
82551	objectMap["sinkRetryWait"] = sds.SinkRetryWait
82552	if sds.Type != "" {
82553		objectMap["type"] = sds.Type
82554	}
82555	for k, v := range sds.AdditionalProperties {
82556		objectMap[k] = v
82557	}
82558	return json.Marshal(objectMap)
82559}
82560
82561// AsSalesforceSink is the BasicCopySink implementation for SQLDWSink.
82562func (sds SQLDWSink) AsSalesforceSink() (*SalesforceSink, bool) {
82563	return nil, false
82564}
82565
82566// AsDynamicsSink is the BasicCopySink implementation for SQLDWSink.
82567func (sds SQLDWSink) AsDynamicsSink() (*DynamicsSink, bool) {
82568	return nil, false
82569}
82570
82571// AsOdbcSink is the BasicCopySink implementation for SQLDWSink.
82572func (sds SQLDWSink) AsOdbcSink() (*OdbcSink, bool) {
82573	return nil, false
82574}
82575
82576// AsAzureSearchIndexSink is the BasicCopySink implementation for SQLDWSink.
82577func (sds SQLDWSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
82578	return nil, false
82579}
82580
82581// AsAzureDataLakeStoreSink is the BasicCopySink implementation for SQLDWSink.
82582func (sds SQLDWSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
82583	return nil, false
82584}
82585
82586// AsOracleSink is the BasicCopySink implementation for SQLDWSink.
82587func (sds SQLDWSink) AsOracleSink() (*OracleSink, bool) {
82588	return nil, false
82589}
82590
82591// AsSQLDWSink is the BasicCopySink implementation for SQLDWSink.
82592func (sds SQLDWSink) AsSQLDWSink() (*SQLDWSink, bool) {
82593	return &sds, true
82594}
82595
82596// AsSQLSink is the BasicCopySink implementation for SQLDWSink.
82597func (sds SQLDWSink) AsSQLSink() (*SQLSink, bool) {
82598	return nil, false
82599}
82600
82601// AsDocumentDbCollectionSink is the BasicCopySink implementation for SQLDWSink.
82602func (sds SQLDWSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
82603	return nil, false
82604}
82605
82606// AsFileSystemSink is the BasicCopySink implementation for SQLDWSink.
82607func (sds SQLDWSink) AsFileSystemSink() (*FileSystemSink, bool) {
82608	return nil, false
82609}
82610
82611// AsBlobSink is the BasicCopySink implementation for SQLDWSink.
82612func (sds SQLDWSink) AsBlobSink() (*BlobSink, bool) {
82613	return nil, false
82614}
82615
82616// AsAzureTableSink is the BasicCopySink implementation for SQLDWSink.
82617func (sds SQLDWSink) AsAzureTableSink() (*AzureTableSink, bool) {
82618	return nil, false
82619}
82620
82621// AsAzureQueueSink is the BasicCopySink implementation for SQLDWSink.
82622func (sds SQLDWSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
82623	return nil, false
82624}
82625
82626// AsSapCloudForCustomerSink is the BasicCopySink implementation for SQLDWSink.
82627func (sds SQLDWSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
82628	return nil, false
82629}
82630
82631// AsCopySink is the BasicCopySink implementation for SQLDWSink.
82632func (sds SQLDWSink) AsCopySink() (*CopySink, bool) {
82633	return nil, false
82634}
82635
82636// AsBasicCopySink is the BasicCopySink implementation for SQLDWSink.
82637func (sds SQLDWSink) AsBasicCopySink() (BasicCopySink, bool) {
82638	return &sds, true
82639}
82640
82641// SQLDWSource a copy activity SQL Data Warehouse source.
82642type SQLDWSource struct {
82643	// SQLReaderQuery - SQL Data Warehouse reader query. Type: string (or Expression with resultType string).
82644	SQLReaderQuery interface{} `json:"sqlReaderQuery,omitempty"`
82645	// SQLReaderStoredProcedureName - Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string).
82646	SQLReaderStoredProcedureName interface{} `json:"sqlReaderStoredProcedureName,omitempty"`
82647	// StoredProcedureParameters - Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter.
82648	StoredProcedureParameters interface{} `json:"storedProcedureParameters,omitempty"`
82649	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
82650	AdditionalProperties map[string]interface{} `json:""`
82651	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
82652	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
82653	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
82654	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
82655	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
82656	Type TypeBasicCopySource `json:"type,omitempty"`
82657}
82658
82659// MarshalJSON is the custom marshaler for SQLDWSource.
82660func (sds SQLDWSource) MarshalJSON() ([]byte, error) {
82661	sds.Type = TypeSQLDWSource
82662	objectMap := make(map[string]interface{})
82663	objectMap["sqlReaderQuery"] = sds.SQLReaderQuery
82664	objectMap["sqlReaderStoredProcedureName"] = sds.SQLReaderStoredProcedureName
82665	objectMap["storedProcedureParameters"] = sds.StoredProcedureParameters
82666	objectMap["sourceRetryCount"] = sds.SourceRetryCount
82667	objectMap["sourceRetryWait"] = sds.SourceRetryWait
82668	if sds.Type != "" {
82669		objectMap["type"] = sds.Type
82670	}
82671	for k, v := range sds.AdditionalProperties {
82672		objectMap[k] = v
82673	}
82674	return json.Marshal(objectMap)
82675}
82676
82677// AsAmazonRedshiftSource is the BasicCopySource implementation for SQLDWSource.
82678func (sds SQLDWSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
82679	return nil, false
82680}
82681
82682// AsResponsysSource is the BasicCopySource implementation for SQLDWSource.
82683func (sds SQLDWSource) AsResponsysSource() (*ResponsysSource, bool) {
82684	return nil, false
82685}
82686
82687// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SQLDWSource.
82688func (sds SQLDWSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
82689	return nil, false
82690}
82691
82692// AsVerticaSource is the BasicCopySource implementation for SQLDWSource.
82693func (sds SQLDWSource) AsVerticaSource() (*VerticaSource, bool) {
82694	return nil, false
82695}
82696
82697// AsNetezzaSource is the BasicCopySource implementation for SQLDWSource.
82698func (sds SQLDWSource) AsNetezzaSource() (*NetezzaSource, bool) {
82699	return nil, false
82700}
82701
82702// AsZohoSource is the BasicCopySource implementation for SQLDWSource.
82703func (sds SQLDWSource) AsZohoSource() (*ZohoSource, bool) {
82704	return nil, false
82705}
82706
82707// AsXeroSource is the BasicCopySource implementation for SQLDWSource.
82708func (sds SQLDWSource) AsXeroSource() (*XeroSource, bool) {
82709	return nil, false
82710}
82711
82712// AsSquareSource is the BasicCopySource implementation for SQLDWSource.
82713func (sds SQLDWSource) AsSquareSource() (*SquareSource, bool) {
82714	return nil, false
82715}
82716
82717// AsSparkSource is the BasicCopySource implementation for SQLDWSource.
82718func (sds SQLDWSource) AsSparkSource() (*SparkSource, bool) {
82719	return nil, false
82720}
82721
82722// AsShopifySource is the BasicCopySource implementation for SQLDWSource.
82723func (sds SQLDWSource) AsShopifySource() (*ShopifySource, bool) {
82724	return nil, false
82725}
82726
82727// AsServiceNowSource is the BasicCopySource implementation for SQLDWSource.
82728func (sds SQLDWSource) AsServiceNowSource() (*ServiceNowSource, bool) {
82729	return nil, false
82730}
82731
82732// AsQuickBooksSource is the BasicCopySource implementation for SQLDWSource.
82733func (sds SQLDWSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
82734	return nil, false
82735}
82736
82737// AsPrestoSource is the BasicCopySource implementation for SQLDWSource.
82738func (sds SQLDWSource) AsPrestoSource() (*PrestoSource, bool) {
82739	return nil, false
82740}
82741
82742// AsPhoenixSource is the BasicCopySource implementation for SQLDWSource.
82743func (sds SQLDWSource) AsPhoenixSource() (*PhoenixSource, bool) {
82744	return nil, false
82745}
82746
82747// AsPaypalSource is the BasicCopySource implementation for SQLDWSource.
82748func (sds SQLDWSource) AsPaypalSource() (*PaypalSource, bool) {
82749	return nil, false
82750}
82751
82752// AsMarketoSource is the BasicCopySource implementation for SQLDWSource.
82753func (sds SQLDWSource) AsMarketoSource() (*MarketoSource, bool) {
82754	return nil, false
82755}
82756
82757// AsMariaDBSource is the BasicCopySource implementation for SQLDWSource.
82758func (sds SQLDWSource) AsMariaDBSource() (*MariaDBSource, bool) {
82759	return nil, false
82760}
82761
82762// AsMagentoSource is the BasicCopySource implementation for SQLDWSource.
82763func (sds SQLDWSource) AsMagentoSource() (*MagentoSource, bool) {
82764	return nil, false
82765}
82766
82767// AsJiraSource is the BasicCopySource implementation for SQLDWSource.
82768func (sds SQLDWSource) AsJiraSource() (*JiraSource, bool) {
82769	return nil, false
82770}
82771
82772// AsImpalaSource is the BasicCopySource implementation for SQLDWSource.
82773func (sds SQLDWSource) AsImpalaSource() (*ImpalaSource, bool) {
82774	return nil, false
82775}
82776
82777// AsHubspotSource is the BasicCopySource implementation for SQLDWSource.
82778func (sds SQLDWSource) AsHubspotSource() (*HubspotSource, bool) {
82779	return nil, false
82780}
82781
82782// AsHiveSource is the BasicCopySource implementation for SQLDWSource.
82783func (sds SQLDWSource) AsHiveSource() (*HiveSource, bool) {
82784	return nil, false
82785}
82786
82787// AsHBaseSource is the BasicCopySource implementation for SQLDWSource.
82788func (sds SQLDWSource) AsHBaseSource() (*HBaseSource, bool) {
82789	return nil, false
82790}
82791
82792// AsGreenplumSource is the BasicCopySource implementation for SQLDWSource.
82793func (sds SQLDWSource) AsGreenplumSource() (*GreenplumSource, bool) {
82794	return nil, false
82795}
82796
82797// AsGoogleBigQuerySource is the BasicCopySource implementation for SQLDWSource.
82798func (sds SQLDWSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
82799	return nil, false
82800}
82801
82802// AsEloquaSource is the BasicCopySource implementation for SQLDWSource.
82803func (sds SQLDWSource) AsEloquaSource() (*EloquaSource, bool) {
82804	return nil, false
82805}
82806
82807// AsDrillSource is the BasicCopySource implementation for SQLDWSource.
82808func (sds SQLDWSource) AsDrillSource() (*DrillSource, bool) {
82809	return nil, false
82810}
82811
82812// AsCouchbaseSource is the BasicCopySource implementation for SQLDWSource.
82813func (sds SQLDWSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
82814	return nil, false
82815}
82816
82817// AsConcurSource is the BasicCopySource implementation for SQLDWSource.
82818func (sds SQLDWSource) AsConcurSource() (*ConcurSource, bool) {
82819	return nil, false
82820}
82821
82822// AsAzurePostgreSQLSource is the BasicCopySource implementation for SQLDWSource.
82823func (sds SQLDWSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
82824	return nil, false
82825}
82826
82827// AsAmazonMWSSource is the BasicCopySource implementation for SQLDWSource.
82828func (sds SQLDWSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
82829	return nil, false
82830}
82831
82832// AsHTTPSource is the BasicCopySource implementation for SQLDWSource.
82833func (sds SQLDWSource) AsHTTPSource() (*HTTPSource, bool) {
82834	return nil, false
82835}
82836
82837// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SQLDWSource.
82838func (sds SQLDWSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
82839	return nil, false
82840}
82841
82842// AsMongoDbSource is the BasicCopySource implementation for SQLDWSource.
82843func (sds SQLDWSource) AsMongoDbSource() (*MongoDbSource, bool) {
82844	return nil, false
82845}
82846
82847// AsCassandraSource is the BasicCopySource implementation for SQLDWSource.
82848func (sds SQLDWSource) AsCassandraSource() (*CassandraSource, bool) {
82849	return nil, false
82850}
82851
82852// AsWebSource is the BasicCopySource implementation for SQLDWSource.
82853func (sds SQLDWSource) AsWebSource() (*WebSource, bool) {
82854	return nil, false
82855}
82856
82857// AsOracleSource is the BasicCopySource implementation for SQLDWSource.
82858func (sds SQLDWSource) AsOracleSource() (*OracleSource, bool) {
82859	return nil, false
82860}
82861
82862// AsAzureMySQLSource is the BasicCopySource implementation for SQLDWSource.
82863func (sds SQLDWSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
82864	return nil, false
82865}
82866
82867// AsHdfsSource is the BasicCopySource implementation for SQLDWSource.
82868func (sds SQLDWSource) AsHdfsSource() (*HdfsSource, bool) {
82869	return nil, false
82870}
82871
82872// AsFileSystemSource is the BasicCopySource implementation for SQLDWSource.
82873func (sds SQLDWSource) AsFileSystemSource() (*FileSystemSource, bool) {
82874	return nil, false
82875}
82876
82877// AsSQLDWSource is the BasicCopySource implementation for SQLDWSource.
82878func (sds SQLDWSource) AsSQLDWSource() (*SQLDWSource, bool) {
82879	return &sds, true
82880}
82881
82882// AsSQLSource is the BasicCopySource implementation for SQLDWSource.
82883func (sds SQLDWSource) AsSQLSource() (*SQLSource, bool) {
82884	return nil, false
82885}
82886
82887// AsSapEccSource is the BasicCopySource implementation for SQLDWSource.
82888func (sds SQLDWSource) AsSapEccSource() (*SapEccSource, bool) {
82889	return nil, false
82890}
82891
82892// AsSapCloudForCustomerSource is the BasicCopySource implementation for SQLDWSource.
82893func (sds SQLDWSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
82894	return nil, false
82895}
82896
82897// AsSalesforceSource is the BasicCopySource implementation for SQLDWSource.
82898func (sds SQLDWSource) AsSalesforceSource() (*SalesforceSource, bool) {
82899	return nil, false
82900}
82901
82902// AsRelationalSource is the BasicCopySource implementation for SQLDWSource.
82903func (sds SQLDWSource) AsRelationalSource() (*RelationalSource, bool) {
82904	return nil, false
82905}
82906
82907// AsDynamicsSource is the BasicCopySource implementation for SQLDWSource.
82908func (sds SQLDWSource) AsDynamicsSource() (*DynamicsSource, bool) {
82909	return nil, false
82910}
82911
82912// AsDocumentDbCollectionSource is the BasicCopySource implementation for SQLDWSource.
82913func (sds SQLDWSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
82914	return nil, false
82915}
82916
82917// AsBlobSource is the BasicCopySource implementation for SQLDWSource.
82918func (sds SQLDWSource) AsBlobSource() (*BlobSource, bool) {
82919	return nil, false
82920}
82921
82922// AsAzureTableSource is the BasicCopySource implementation for SQLDWSource.
82923func (sds SQLDWSource) AsAzureTableSource() (*AzureTableSource, bool) {
82924	return nil, false
82925}
82926
82927// AsCopySource is the BasicCopySource implementation for SQLDWSource.
82928func (sds SQLDWSource) AsCopySource() (*CopySource, bool) {
82929	return nil, false
82930}
82931
82932// AsBasicCopySource is the BasicCopySource implementation for SQLDWSource.
82933func (sds SQLDWSource) AsBasicCopySource() (BasicCopySource, bool) {
82934	return &sds, true
82935}
82936
82937// SQLServerLinkedService SQL Server linked service.
82938type SQLServerLinkedService struct {
82939	// SQLServerLinkedServiceTypeProperties - SQL Server linked service properties.
82940	*SQLServerLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
82941	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
82942	AdditionalProperties map[string]interface{} `json:""`
82943	// ConnectVia - The integration runtime reference.
82944	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
82945	// Description - Linked service description.
82946	Description *string `json:"description,omitempty"`
82947	// Parameters - Parameters for linked service.
82948	Parameters map[string]*ParameterSpecification `json:"parameters"`
82949	// Annotations - List of tags that can be used for describing the Dataset.
82950	Annotations *[]interface{} `json:"annotations,omitempty"`
82951	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
82952	Type TypeBasicLinkedService `json:"type,omitempty"`
82953}
82954
82955// MarshalJSON is the custom marshaler for SQLServerLinkedService.
82956func (ssls SQLServerLinkedService) MarshalJSON() ([]byte, error) {
82957	ssls.Type = TypeSQLServer
82958	objectMap := make(map[string]interface{})
82959	if ssls.SQLServerLinkedServiceTypeProperties != nil {
82960		objectMap["typeProperties"] = ssls.SQLServerLinkedServiceTypeProperties
82961	}
82962	if ssls.ConnectVia != nil {
82963		objectMap["connectVia"] = ssls.ConnectVia
82964	}
82965	if ssls.Description != nil {
82966		objectMap["description"] = ssls.Description
82967	}
82968	if ssls.Parameters != nil {
82969		objectMap["parameters"] = ssls.Parameters
82970	}
82971	if ssls.Annotations != nil {
82972		objectMap["annotations"] = ssls.Annotations
82973	}
82974	if ssls.Type != "" {
82975		objectMap["type"] = ssls.Type
82976	}
82977	for k, v := range ssls.AdditionalProperties {
82978		objectMap[k] = v
82979	}
82980	return json.Marshal(objectMap)
82981}
82982
82983// AsResponsysLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
82984func (ssls SQLServerLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
82985	return nil, false
82986}
82987
82988// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
82989func (ssls SQLServerLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
82990	return nil, false
82991}
82992
82993// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
82994func (ssls SQLServerLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
82995	return nil, false
82996}
82997
82998// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
82999func (ssls SQLServerLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
83000	return nil, false
83001}
83002
83003// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83004func (ssls SQLServerLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
83005	return nil, false
83006}
83007
83008// AsNetezzaLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83009func (ssls SQLServerLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
83010	return nil, false
83011}
83012
83013// AsVerticaLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83014func (ssls SQLServerLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
83015	return nil, false
83016}
83017
83018// AsZohoLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83019func (ssls SQLServerLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
83020	return nil, false
83021}
83022
83023// AsXeroLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83024func (ssls SQLServerLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
83025	return nil, false
83026}
83027
83028// AsSquareLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83029func (ssls SQLServerLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
83030	return nil, false
83031}
83032
83033// AsSparkLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83034func (ssls SQLServerLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
83035	return nil, false
83036}
83037
83038// AsShopifyLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83039func (ssls SQLServerLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
83040	return nil, false
83041}
83042
83043// AsServiceNowLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83044func (ssls SQLServerLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
83045	return nil, false
83046}
83047
83048// AsQuickBooksLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83049func (ssls SQLServerLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
83050	return nil, false
83051}
83052
83053// AsPrestoLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83054func (ssls SQLServerLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
83055	return nil, false
83056}
83057
83058// AsPhoenixLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83059func (ssls SQLServerLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
83060	return nil, false
83061}
83062
83063// AsPaypalLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83064func (ssls SQLServerLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
83065	return nil, false
83066}
83067
83068// AsMarketoLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83069func (ssls SQLServerLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
83070	return nil, false
83071}
83072
83073// AsMariaDBLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83074func (ssls SQLServerLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
83075	return nil, false
83076}
83077
83078// AsMagentoLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83079func (ssls SQLServerLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
83080	return nil, false
83081}
83082
83083// AsJiraLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83084func (ssls SQLServerLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
83085	return nil, false
83086}
83087
83088// AsImpalaLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83089func (ssls SQLServerLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
83090	return nil, false
83091}
83092
83093// AsHubspotLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83094func (ssls SQLServerLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
83095	return nil, false
83096}
83097
83098// AsHiveLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83099func (ssls SQLServerLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
83100	return nil, false
83101}
83102
83103// AsHBaseLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83104func (ssls SQLServerLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
83105	return nil, false
83106}
83107
83108// AsGreenplumLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83109func (ssls SQLServerLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
83110	return nil, false
83111}
83112
83113// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83114func (ssls SQLServerLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
83115	return nil, false
83116}
83117
83118// AsEloquaLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83119func (ssls SQLServerLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
83120	return nil, false
83121}
83122
83123// AsDrillLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83124func (ssls SQLServerLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
83125	return nil, false
83126}
83127
83128// AsCouchbaseLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83129func (ssls SQLServerLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
83130	return nil, false
83131}
83132
83133// AsConcurLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83134func (ssls SQLServerLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
83135	return nil, false
83136}
83137
83138// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83139func (ssls SQLServerLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
83140	return nil, false
83141}
83142
83143// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83144func (ssls SQLServerLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
83145	return nil, false
83146}
83147
83148// AsSapHanaLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83149func (ssls SQLServerLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
83150	return nil, false
83151}
83152
83153// AsSapBWLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83154func (ssls SQLServerLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
83155	return nil, false
83156}
83157
83158// AsSftpServerLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83159func (ssls SQLServerLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
83160	return nil, false
83161}
83162
83163// AsFtpServerLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83164func (ssls SQLServerLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
83165	return nil, false
83166}
83167
83168// AsHTTPLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83169func (ssls SQLServerLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
83170	return nil, false
83171}
83172
83173// AsAzureSearchLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83174func (ssls SQLServerLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
83175	return nil, false
83176}
83177
83178// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83179func (ssls SQLServerLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
83180	return nil, false
83181}
83182
83183// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83184func (ssls SQLServerLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
83185	return nil, false
83186}
83187
83188// AsAmazonS3LinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83189func (ssls SQLServerLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
83190	return nil, false
83191}
83192
83193// AsSapEccLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83194func (ssls SQLServerLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
83195	return nil, false
83196}
83197
83198// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83199func (ssls SQLServerLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
83200	return nil, false
83201}
83202
83203// AsSalesforceLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83204func (ssls SQLServerLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
83205	return nil, false
83206}
83207
83208// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83209func (ssls SQLServerLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
83210	return nil, false
83211}
83212
83213// AsMongoDbLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83214func (ssls SQLServerLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
83215	return nil, false
83216}
83217
83218// AsCassandraLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83219func (ssls SQLServerLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
83220	return nil, false
83221}
83222
83223// AsWebLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83224func (ssls SQLServerLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
83225	return nil, false
83226}
83227
83228// AsODataLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83229func (ssls SQLServerLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
83230	return nil, false
83231}
83232
83233// AsHdfsLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83234func (ssls SQLServerLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
83235	return nil, false
83236}
83237
83238// AsOdbcLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83239func (ssls SQLServerLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
83240	return nil, false
83241}
83242
83243// AsAzureMLLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83244func (ssls SQLServerLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
83245	return nil, false
83246}
83247
83248// AsTeradataLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83249func (ssls SQLServerLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
83250	return nil, false
83251}
83252
83253// AsDb2LinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83254func (ssls SQLServerLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
83255	return nil, false
83256}
83257
83258// AsSybaseLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83259func (ssls SQLServerLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
83260	return nil, false
83261}
83262
83263// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83264func (ssls SQLServerLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
83265	return nil, false
83266}
83267
83268// AsMySQLLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83269func (ssls SQLServerLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
83270	return nil, false
83271}
83272
83273// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83274func (ssls SQLServerLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
83275	return nil, false
83276}
83277
83278// AsOracleLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83279func (ssls SQLServerLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
83280	return nil, false
83281}
83282
83283// AsFileServerLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83284func (ssls SQLServerLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
83285	return nil, false
83286}
83287
83288// AsHDInsightLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83289func (ssls SQLServerLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
83290	return nil, false
83291}
83292
83293// AsDynamicsLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83294func (ssls SQLServerLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
83295	return nil, false
83296}
83297
83298// AsCosmosDbLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83299func (ssls SQLServerLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
83300	return nil, false
83301}
83302
83303// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83304func (ssls SQLServerLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
83305	return nil, false
83306}
83307
83308// AsAzureBatchLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83309func (ssls SQLServerLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
83310	return nil, false
83311}
83312
83313// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83314func (ssls SQLServerLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
83315	return nil, false
83316}
83317
83318// AsSQLServerLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83319func (ssls SQLServerLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
83320	return &ssls, true
83321}
83322
83323// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83324func (ssls SQLServerLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
83325	return nil, false
83326}
83327
83328// AsAzureStorageLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83329func (ssls SQLServerLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
83330	return nil, false
83331}
83332
83333// AsLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83334func (ssls SQLServerLinkedService) AsLinkedService() (*LinkedService, bool) {
83335	return nil, false
83336}
83337
83338// AsBasicLinkedService is the BasicLinkedService implementation for SQLServerLinkedService.
83339func (ssls SQLServerLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
83340	return &ssls, true
83341}
83342
83343// UnmarshalJSON is the custom unmarshaler for SQLServerLinkedService struct.
83344func (ssls *SQLServerLinkedService) UnmarshalJSON(body []byte) error {
83345	var m map[string]*json.RawMessage
83346	err := json.Unmarshal(body, &m)
83347	if err != nil {
83348		return err
83349	}
83350	for k, v := range m {
83351		switch k {
83352		case "typeProperties":
83353			if v != nil {
83354				var SQLServerLinkedServiceTypeProperties SQLServerLinkedServiceTypeProperties
83355				err = json.Unmarshal(*v, &SQLServerLinkedServiceTypeProperties)
83356				if err != nil {
83357					return err
83358				}
83359				ssls.SQLServerLinkedServiceTypeProperties = &SQLServerLinkedServiceTypeProperties
83360			}
83361		default:
83362			if v != nil {
83363				var additionalProperties interface{}
83364				err = json.Unmarshal(*v, &additionalProperties)
83365				if err != nil {
83366					return err
83367				}
83368				if ssls.AdditionalProperties == nil {
83369					ssls.AdditionalProperties = make(map[string]interface{})
83370				}
83371				ssls.AdditionalProperties[k] = additionalProperties
83372			}
83373		case "connectVia":
83374			if v != nil {
83375				var connectVia IntegrationRuntimeReference
83376				err = json.Unmarshal(*v, &connectVia)
83377				if err != nil {
83378					return err
83379				}
83380				ssls.ConnectVia = &connectVia
83381			}
83382		case "description":
83383			if v != nil {
83384				var description string
83385				err = json.Unmarshal(*v, &description)
83386				if err != nil {
83387					return err
83388				}
83389				ssls.Description = &description
83390			}
83391		case "parameters":
83392			if v != nil {
83393				var parameters map[string]*ParameterSpecification
83394				err = json.Unmarshal(*v, &parameters)
83395				if err != nil {
83396					return err
83397				}
83398				ssls.Parameters = parameters
83399			}
83400		case "annotations":
83401			if v != nil {
83402				var annotations []interface{}
83403				err = json.Unmarshal(*v, &annotations)
83404				if err != nil {
83405					return err
83406				}
83407				ssls.Annotations = &annotations
83408			}
83409		case "type":
83410			if v != nil {
83411				var typeVar TypeBasicLinkedService
83412				err = json.Unmarshal(*v, &typeVar)
83413				if err != nil {
83414					return err
83415				}
83416				ssls.Type = typeVar
83417			}
83418		}
83419	}
83420
83421	return nil
83422}
83423
83424// SQLServerLinkedServiceTypeProperties SQL Server linked service properties.
83425type SQLServerLinkedServiceTypeProperties struct {
83426	// ConnectionString - The connection string.
83427	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
83428	// UserName - The on-premises Windows authentication user name. Type: string (or Expression with resultType string).
83429	UserName interface{} `json:"userName,omitempty"`
83430	// Password - The on-premises Windows authentication password.
83431	Password BasicSecretBase `json:"password,omitempty"`
83432	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
83433	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
83434}
83435
83436// UnmarshalJSON is the custom unmarshaler for SQLServerLinkedServiceTypeProperties struct.
83437func (sslstp *SQLServerLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
83438	var m map[string]*json.RawMessage
83439	err := json.Unmarshal(body, &m)
83440	if err != nil {
83441		return err
83442	}
83443	for k, v := range m {
83444		switch k {
83445		case "connectionString":
83446			if v != nil {
83447				connectionString, err := unmarshalBasicSecretBase(*v)
83448				if err != nil {
83449					return err
83450				}
83451				sslstp.ConnectionString = connectionString
83452			}
83453		case "userName":
83454			if v != nil {
83455				var userName interface{}
83456				err = json.Unmarshal(*v, &userName)
83457				if err != nil {
83458					return err
83459				}
83460				sslstp.UserName = userName
83461			}
83462		case "password":
83463			if v != nil {
83464				password, err := unmarshalBasicSecretBase(*v)
83465				if err != nil {
83466					return err
83467				}
83468				sslstp.Password = password
83469			}
83470		case "encryptedCredential":
83471			if v != nil {
83472				var encryptedCredential interface{}
83473				err = json.Unmarshal(*v, &encryptedCredential)
83474				if err != nil {
83475					return err
83476				}
83477				sslstp.EncryptedCredential = encryptedCredential
83478			}
83479		}
83480	}
83481
83482	return nil
83483}
83484
83485// SQLServerStoredProcedureActivity SQL stored procedure activity type.
83486type SQLServerStoredProcedureActivity struct {
83487	// SQLServerStoredProcedureActivityTypeProperties - SQL stored procedure activity properties.
83488	*SQLServerStoredProcedureActivityTypeProperties `json:"typeProperties,omitempty"`
83489	// LinkedServiceName - Linked service reference.
83490	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
83491	// Policy - Activity policy.
83492	Policy *ActivityPolicy `json:"policy,omitempty"`
83493	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
83494	AdditionalProperties map[string]interface{} `json:""`
83495	// Name - Activity name.
83496	Name *string `json:"name,omitempty"`
83497	// Description - Activity description.
83498	Description *string `json:"description,omitempty"`
83499	// DependsOn - Activity depends on condition.
83500	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
83501	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
83502	Type TypeBasicActivity `json:"type,omitempty"`
83503}
83504
83505// MarshalJSON is the custom marshaler for SQLServerStoredProcedureActivity.
83506func (ssspa SQLServerStoredProcedureActivity) MarshalJSON() ([]byte, error) {
83507	ssspa.Type = TypeSQLServerStoredProcedure
83508	objectMap := make(map[string]interface{})
83509	if ssspa.SQLServerStoredProcedureActivityTypeProperties != nil {
83510		objectMap["typeProperties"] = ssspa.SQLServerStoredProcedureActivityTypeProperties
83511	}
83512	if ssspa.LinkedServiceName != nil {
83513		objectMap["linkedServiceName"] = ssspa.LinkedServiceName
83514	}
83515	if ssspa.Policy != nil {
83516		objectMap["policy"] = ssspa.Policy
83517	}
83518	if ssspa.Name != nil {
83519		objectMap["name"] = ssspa.Name
83520	}
83521	if ssspa.Description != nil {
83522		objectMap["description"] = ssspa.Description
83523	}
83524	if ssspa.DependsOn != nil {
83525		objectMap["dependsOn"] = ssspa.DependsOn
83526	}
83527	if ssspa.Type != "" {
83528		objectMap["type"] = ssspa.Type
83529	}
83530	for k, v := range ssspa.AdditionalProperties {
83531		objectMap[k] = v
83532	}
83533	return json.Marshal(objectMap)
83534}
83535
83536// AsDatabricksNotebookActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83537func (ssspa SQLServerStoredProcedureActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
83538	return nil, false
83539}
83540
83541// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83542func (ssspa SQLServerStoredProcedureActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
83543	return nil, false
83544}
83545
83546// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83547func (ssspa SQLServerStoredProcedureActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
83548	return nil, false
83549}
83550
83551// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83552func (ssspa SQLServerStoredProcedureActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
83553	return nil, false
83554}
83555
83556// AsGetMetadataActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83557func (ssspa SQLServerStoredProcedureActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
83558	return nil, false
83559}
83560
83561// AsWebActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83562func (ssspa SQLServerStoredProcedureActivity) AsWebActivity() (*WebActivity, bool) {
83563	return nil, false
83564}
83565
83566// AsLookupActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83567func (ssspa SQLServerStoredProcedureActivity) AsLookupActivity() (*LookupActivity, bool) {
83568	return nil, false
83569}
83570
83571// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83572func (ssspa SQLServerStoredProcedureActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
83573	return &ssspa, true
83574}
83575
83576// AsCustomActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83577func (ssspa SQLServerStoredProcedureActivity) AsCustomActivity() (*CustomActivity, bool) {
83578	return nil, false
83579}
83580
83581// AsExecuteSSISPackageActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83582func (ssspa SQLServerStoredProcedureActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
83583	return nil, false
83584}
83585
83586// AsHDInsightSparkActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83587func (ssspa SQLServerStoredProcedureActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
83588	return nil, false
83589}
83590
83591// AsHDInsightStreamingActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83592func (ssspa SQLServerStoredProcedureActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
83593	return nil, false
83594}
83595
83596// AsHDInsightMapReduceActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83597func (ssspa SQLServerStoredProcedureActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
83598	return nil, false
83599}
83600
83601// AsHDInsightPigActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83602func (ssspa SQLServerStoredProcedureActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
83603	return nil, false
83604}
83605
83606// AsHDInsightHiveActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83607func (ssspa SQLServerStoredProcedureActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
83608	return nil, false
83609}
83610
83611// AsCopyActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83612func (ssspa SQLServerStoredProcedureActivity) AsCopyActivity() (*CopyActivity, bool) {
83613	return nil, false
83614}
83615
83616// AsExecutionActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83617func (ssspa SQLServerStoredProcedureActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
83618	return nil, false
83619}
83620
83621// AsBasicExecutionActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83622func (ssspa SQLServerStoredProcedureActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
83623	return &ssspa, true
83624}
83625
83626// AsFilterActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83627func (ssspa SQLServerStoredProcedureActivity) AsFilterActivity() (*FilterActivity, bool) {
83628	return nil, false
83629}
83630
83631// AsUntilActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83632func (ssspa SQLServerStoredProcedureActivity) AsUntilActivity() (*UntilActivity, bool) {
83633	return nil, false
83634}
83635
83636// AsWaitActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83637func (ssspa SQLServerStoredProcedureActivity) AsWaitActivity() (*WaitActivity, bool) {
83638	return nil, false
83639}
83640
83641// AsForEachActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83642func (ssspa SQLServerStoredProcedureActivity) AsForEachActivity() (*ForEachActivity, bool) {
83643	return nil, false
83644}
83645
83646// AsIfConditionActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83647func (ssspa SQLServerStoredProcedureActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
83648	return nil, false
83649}
83650
83651// AsExecutePipelineActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83652func (ssspa SQLServerStoredProcedureActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
83653	return nil, false
83654}
83655
83656// AsControlActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83657func (ssspa SQLServerStoredProcedureActivity) AsControlActivity() (*ControlActivity, bool) {
83658	return nil, false
83659}
83660
83661// AsBasicControlActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83662func (ssspa SQLServerStoredProcedureActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
83663	return nil, false
83664}
83665
83666// AsActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83667func (ssspa SQLServerStoredProcedureActivity) AsActivity() (*Activity, bool) {
83668	return nil, false
83669}
83670
83671// AsBasicActivity is the BasicActivity implementation for SQLServerStoredProcedureActivity.
83672func (ssspa SQLServerStoredProcedureActivity) AsBasicActivity() (BasicActivity, bool) {
83673	return &ssspa, true
83674}
83675
83676// UnmarshalJSON is the custom unmarshaler for SQLServerStoredProcedureActivity struct.
83677func (ssspa *SQLServerStoredProcedureActivity) UnmarshalJSON(body []byte) error {
83678	var m map[string]*json.RawMessage
83679	err := json.Unmarshal(body, &m)
83680	if err != nil {
83681		return err
83682	}
83683	for k, v := range m {
83684		switch k {
83685		case "typeProperties":
83686			if v != nil {
83687				var SQLServerStoredProcedureActivityTypeProperties SQLServerStoredProcedureActivityTypeProperties
83688				err = json.Unmarshal(*v, &SQLServerStoredProcedureActivityTypeProperties)
83689				if err != nil {
83690					return err
83691				}
83692				ssspa.SQLServerStoredProcedureActivityTypeProperties = &SQLServerStoredProcedureActivityTypeProperties
83693			}
83694		case "linkedServiceName":
83695			if v != nil {
83696				var linkedServiceName LinkedServiceReference
83697				err = json.Unmarshal(*v, &linkedServiceName)
83698				if err != nil {
83699					return err
83700				}
83701				ssspa.LinkedServiceName = &linkedServiceName
83702			}
83703		case "policy":
83704			if v != nil {
83705				var policy ActivityPolicy
83706				err = json.Unmarshal(*v, &policy)
83707				if err != nil {
83708					return err
83709				}
83710				ssspa.Policy = &policy
83711			}
83712		default:
83713			if v != nil {
83714				var additionalProperties interface{}
83715				err = json.Unmarshal(*v, &additionalProperties)
83716				if err != nil {
83717					return err
83718				}
83719				if ssspa.AdditionalProperties == nil {
83720					ssspa.AdditionalProperties = make(map[string]interface{})
83721				}
83722				ssspa.AdditionalProperties[k] = additionalProperties
83723			}
83724		case "name":
83725			if v != nil {
83726				var name string
83727				err = json.Unmarshal(*v, &name)
83728				if err != nil {
83729					return err
83730				}
83731				ssspa.Name = &name
83732			}
83733		case "description":
83734			if v != nil {
83735				var description string
83736				err = json.Unmarshal(*v, &description)
83737				if err != nil {
83738					return err
83739				}
83740				ssspa.Description = &description
83741			}
83742		case "dependsOn":
83743			if v != nil {
83744				var dependsOn []ActivityDependency
83745				err = json.Unmarshal(*v, &dependsOn)
83746				if err != nil {
83747					return err
83748				}
83749				ssspa.DependsOn = &dependsOn
83750			}
83751		case "type":
83752			if v != nil {
83753				var typeVar TypeBasicActivity
83754				err = json.Unmarshal(*v, &typeVar)
83755				if err != nil {
83756					return err
83757				}
83758				ssspa.Type = typeVar
83759			}
83760		}
83761	}
83762
83763	return nil
83764}
83765
83766// SQLServerStoredProcedureActivityTypeProperties SQL stored procedure activity properties.
83767type SQLServerStoredProcedureActivityTypeProperties struct {
83768	// StoredProcedureName - Stored procedure name. Type: string (or Expression with resultType string).
83769	StoredProcedureName interface{} `json:"storedProcedureName,omitempty"`
83770	// StoredProcedureParameters - Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}".
83771	StoredProcedureParameters map[string]*StoredProcedureParameter `json:"storedProcedureParameters"`
83772}
83773
83774// MarshalJSON is the custom marshaler for SQLServerStoredProcedureActivityTypeProperties.
83775func (ssspatp SQLServerStoredProcedureActivityTypeProperties) MarshalJSON() ([]byte, error) {
83776	objectMap := make(map[string]interface{})
83777	objectMap["storedProcedureName"] = ssspatp.StoredProcedureName
83778	if ssspatp.StoredProcedureParameters != nil {
83779		objectMap["storedProcedureParameters"] = ssspatp.StoredProcedureParameters
83780	}
83781	return json.Marshal(objectMap)
83782}
83783
83784// SQLServerTableDataset the on-premises SQL Server dataset.
83785type SQLServerTableDataset struct {
83786	// SQLServerTableDatasetTypeProperties - On-premises SQL Server dataset properties.
83787	*SQLServerTableDatasetTypeProperties `json:"typeProperties,omitempty"`
83788	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
83789	AdditionalProperties map[string]interface{} `json:""`
83790	// Description - Dataset description.
83791	Description *string `json:"description,omitempty"`
83792	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
83793	Structure interface{} `json:"structure,omitempty"`
83794	// LinkedServiceName - Linked service reference.
83795	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
83796	// Parameters - Parameters for dataset.
83797	Parameters map[string]*ParameterSpecification `json:"parameters"`
83798	// Annotations - List of tags that can be used for describing the Dataset.
83799	Annotations *[]interface{} `json:"annotations,omitempty"`
83800	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
83801	Type TypeBasicDataset `json:"type,omitempty"`
83802}
83803
83804// MarshalJSON is the custom marshaler for SQLServerTableDataset.
83805func (sstd SQLServerTableDataset) MarshalJSON() ([]byte, error) {
83806	sstd.Type = TypeSQLServerTable
83807	objectMap := make(map[string]interface{})
83808	if sstd.SQLServerTableDatasetTypeProperties != nil {
83809		objectMap["typeProperties"] = sstd.SQLServerTableDatasetTypeProperties
83810	}
83811	if sstd.Description != nil {
83812		objectMap["description"] = sstd.Description
83813	}
83814	objectMap["structure"] = sstd.Structure
83815	if sstd.LinkedServiceName != nil {
83816		objectMap["linkedServiceName"] = sstd.LinkedServiceName
83817	}
83818	if sstd.Parameters != nil {
83819		objectMap["parameters"] = sstd.Parameters
83820	}
83821	if sstd.Annotations != nil {
83822		objectMap["annotations"] = sstd.Annotations
83823	}
83824	if sstd.Type != "" {
83825		objectMap["type"] = sstd.Type
83826	}
83827	for k, v := range sstd.AdditionalProperties {
83828		objectMap[k] = v
83829	}
83830	return json.Marshal(objectMap)
83831}
83832
83833// AsResponsysObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83834func (sstd SQLServerTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
83835	return nil, false
83836}
83837
83838// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83839func (sstd SQLServerTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
83840	return nil, false
83841}
83842
83843// AsVerticaTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83844func (sstd SQLServerTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
83845	return nil, false
83846}
83847
83848// AsNetezzaTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83849func (sstd SQLServerTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
83850	return nil, false
83851}
83852
83853// AsZohoObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83854func (sstd SQLServerTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
83855	return nil, false
83856}
83857
83858// AsXeroObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83859func (sstd SQLServerTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
83860	return nil, false
83861}
83862
83863// AsSquareObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83864func (sstd SQLServerTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
83865	return nil, false
83866}
83867
83868// AsSparkObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83869func (sstd SQLServerTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
83870	return nil, false
83871}
83872
83873// AsShopifyObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83874func (sstd SQLServerTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
83875	return nil, false
83876}
83877
83878// AsServiceNowObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83879func (sstd SQLServerTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
83880	return nil, false
83881}
83882
83883// AsQuickBooksObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83884func (sstd SQLServerTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
83885	return nil, false
83886}
83887
83888// AsPrestoObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83889func (sstd SQLServerTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
83890	return nil, false
83891}
83892
83893// AsPhoenixObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83894func (sstd SQLServerTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
83895	return nil, false
83896}
83897
83898// AsPaypalObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83899func (sstd SQLServerTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
83900	return nil, false
83901}
83902
83903// AsMarketoObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83904func (sstd SQLServerTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
83905	return nil, false
83906}
83907
83908// AsMariaDBTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83909func (sstd SQLServerTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
83910	return nil, false
83911}
83912
83913// AsMagentoObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83914func (sstd SQLServerTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
83915	return nil, false
83916}
83917
83918// AsJiraObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83919func (sstd SQLServerTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
83920	return nil, false
83921}
83922
83923// AsImpalaObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83924func (sstd SQLServerTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
83925	return nil, false
83926}
83927
83928// AsHubspotObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83929func (sstd SQLServerTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
83930	return nil, false
83931}
83932
83933// AsHiveObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83934func (sstd SQLServerTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
83935	return nil, false
83936}
83937
83938// AsHBaseObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83939func (sstd SQLServerTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
83940	return nil, false
83941}
83942
83943// AsGreenplumTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83944func (sstd SQLServerTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
83945	return nil, false
83946}
83947
83948// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83949func (sstd SQLServerTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
83950	return nil, false
83951}
83952
83953// AsEloquaObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83954func (sstd SQLServerTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
83955	return nil, false
83956}
83957
83958// AsDrillTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83959func (sstd SQLServerTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
83960	return nil, false
83961}
83962
83963// AsCouchbaseTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83964func (sstd SQLServerTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
83965	return nil, false
83966}
83967
83968// AsConcurObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83969func (sstd SQLServerTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
83970	return nil, false
83971}
83972
83973// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83974func (sstd SQLServerTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
83975	return nil, false
83976}
83977
83978// AsAmazonMWSObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
83979func (sstd SQLServerTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
83980	return nil, false
83981}
83982
83983// AsHTTPDataset is the BasicDataset implementation for SQLServerTableDataset.
83984func (sstd SQLServerTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
83985	return nil, false
83986}
83987
83988// AsAzureSearchIndexDataset is the BasicDataset implementation for SQLServerTableDataset.
83989func (sstd SQLServerTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
83990	return nil, false
83991}
83992
83993// AsWebTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83994func (sstd SQLServerTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
83995	return nil, false
83996}
83997
83998// AsSQLServerTableDataset is the BasicDataset implementation for SQLServerTableDataset.
83999func (sstd SQLServerTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
84000	return &sstd, true
84001}
84002
84003// AsSapEccResourceDataset is the BasicDataset implementation for SQLServerTableDataset.
84004func (sstd SQLServerTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
84005	return nil, false
84006}
84007
84008// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SQLServerTableDataset.
84009func (sstd SQLServerTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
84010	return nil, false
84011}
84012
84013// AsSalesforceObjectDataset is the BasicDataset implementation for SQLServerTableDataset.
84014func (sstd SQLServerTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
84015	return nil, false
84016}
84017
84018// AsRelationalTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84019func (sstd SQLServerTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
84020	return nil, false
84021}
84022
84023// AsAzureMySQLTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84024func (sstd SQLServerTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
84025	return nil, false
84026}
84027
84028// AsOracleTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84029func (sstd SQLServerTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
84030	return nil, false
84031}
84032
84033// AsODataResourceDataset is the BasicDataset implementation for SQLServerTableDataset.
84034func (sstd SQLServerTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
84035	return nil, false
84036}
84037
84038// AsMongoDbCollectionDataset is the BasicDataset implementation for SQLServerTableDataset.
84039func (sstd SQLServerTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
84040	return nil, false
84041}
84042
84043// AsFileShareDataset is the BasicDataset implementation for SQLServerTableDataset.
84044func (sstd SQLServerTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
84045	return nil, false
84046}
84047
84048// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SQLServerTableDataset.
84049func (sstd SQLServerTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
84050	return nil, false
84051}
84052
84053// AsDynamicsEntityDataset is the BasicDataset implementation for SQLServerTableDataset.
84054func (sstd SQLServerTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
84055	return nil, false
84056}
84057
84058// AsDocumentDbCollectionDataset is the BasicDataset implementation for SQLServerTableDataset.
84059func (sstd SQLServerTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
84060	return nil, false
84061}
84062
84063// AsCustomDataset is the BasicDataset implementation for SQLServerTableDataset.
84064func (sstd SQLServerTableDataset) AsCustomDataset() (*CustomDataset, bool) {
84065	return nil, false
84066}
84067
84068// AsCassandraTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84069func (sstd SQLServerTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
84070	return nil, false
84071}
84072
84073// AsAzureSQLDWTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84074func (sstd SQLServerTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
84075	return nil, false
84076}
84077
84078// AsAzureSQLTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84079func (sstd SQLServerTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
84080	return nil, false
84081}
84082
84083// AsAzureTableDataset is the BasicDataset implementation for SQLServerTableDataset.
84084func (sstd SQLServerTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
84085	return nil, false
84086}
84087
84088// AsAzureBlobDataset is the BasicDataset implementation for SQLServerTableDataset.
84089func (sstd SQLServerTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
84090	return nil, false
84091}
84092
84093// AsAmazonS3Dataset is the BasicDataset implementation for SQLServerTableDataset.
84094func (sstd SQLServerTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
84095	return nil, false
84096}
84097
84098// AsDataset is the BasicDataset implementation for SQLServerTableDataset.
84099func (sstd SQLServerTableDataset) AsDataset() (*Dataset, bool) {
84100	return nil, false
84101}
84102
84103// AsBasicDataset is the BasicDataset implementation for SQLServerTableDataset.
84104func (sstd SQLServerTableDataset) AsBasicDataset() (BasicDataset, bool) {
84105	return &sstd, true
84106}
84107
84108// UnmarshalJSON is the custom unmarshaler for SQLServerTableDataset struct.
84109func (sstd *SQLServerTableDataset) UnmarshalJSON(body []byte) error {
84110	var m map[string]*json.RawMessage
84111	err := json.Unmarshal(body, &m)
84112	if err != nil {
84113		return err
84114	}
84115	for k, v := range m {
84116		switch k {
84117		case "typeProperties":
84118			if v != nil {
84119				var SQLServerTableDatasetTypeProperties SQLServerTableDatasetTypeProperties
84120				err = json.Unmarshal(*v, &SQLServerTableDatasetTypeProperties)
84121				if err != nil {
84122					return err
84123				}
84124				sstd.SQLServerTableDatasetTypeProperties = &SQLServerTableDatasetTypeProperties
84125			}
84126		default:
84127			if v != nil {
84128				var additionalProperties interface{}
84129				err = json.Unmarshal(*v, &additionalProperties)
84130				if err != nil {
84131					return err
84132				}
84133				if sstd.AdditionalProperties == nil {
84134					sstd.AdditionalProperties = make(map[string]interface{})
84135				}
84136				sstd.AdditionalProperties[k] = additionalProperties
84137			}
84138		case "description":
84139			if v != nil {
84140				var description string
84141				err = json.Unmarshal(*v, &description)
84142				if err != nil {
84143					return err
84144				}
84145				sstd.Description = &description
84146			}
84147		case "structure":
84148			if v != nil {
84149				var structure interface{}
84150				err = json.Unmarshal(*v, &structure)
84151				if err != nil {
84152					return err
84153				}
84154				sstd.Structure = structure
84155			}
84156		case "linkedServiceName":
84157			if v != nil {
84158				var linkedServiceName LinkedServiceReference
84159				err = json.Unmarshal(*v, &linkedServiceName)
84160				if err != nil {
84161					return err
84162				}
84163				sstd.LinkedServiceName = &linkedServiceName
84164			}
84165		case "parameters":
84166			if v != nil {
84167				var parameters map[string]*ParameterSpecification
84168				err = json.Unmarshal(*v, &parameters)
84169				if err != nil {
84170					return err
84171				}
84172				sstd.Parameters = parameters
84173			}
84174		case "annotations":
84175			if v != nil {
84176				var annotations []interface{}
84177				err = json.Unmarshal(*v, &annotations)
84178				if err != nil {
84179					return err
84180				}
84181				sstd.Annotations = &annotations
84182			}
84183		case "type":
84184			if v != nil {
84185				var typeVar TypeBasicDataset
84186				err = json.Unmarshal(*v, &typeVar)
84187				if err != nil {
84188					return err
84189				}
84190				sstd.Type = typeVar
84191			}
84192		}
84193	}
84194
84195	return nil
84196}
84197
84198// SQLServerTableDatasetTypeProperties on-premises SQL Server dataset properties.
84199type SQLServerTableDatasetTypeProperties struct {
84200	// TableName - The table name of the SQL Server dataset. Type: string (or Expression with resultType string).
84201	TableName interface{} `json:"tableName,omitempty"`
84202}
84203
84204// SQLSink a copy activity SQL sink.
84205type SQLSink struct {
84206	// SQLWriterStoredProcedureName - SQL writer stored procedure name. Type: string (or Expression with resultType string).
84207	SQLWriterStoredProcedureName interface{} `json:"sqlWriterStoredProcedureName,omitempty"`
84208	// SQLWriterTableType - SQL writer table type. Type: string (or Expression with resultType string).
84209	SQLWriterTableType interface{} `json:"sqlWriterTableType,omitempty"`
84210	// PreCopyScript - SQL pre-copy script. Type: string (or Expression with resultType string).
84211	PreCopyScript interface{} `json:"preCopyScript,omitempty"`
84212	// StoredProcedureParameters - SQL stored procedure parameters.
84213	StoredProcedureParameters map[string]*StoredProcedureParameter `json:"storedProcedureParameters"`
84214	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
84215	AdditionalProperties map[string]interface{} `json:""`
84216	// WriteBatchSize - Write batch size. Type: integer (or Expression with resultType integer), minimum: 0.
84217	WriteBatchSize interface{} `json:"writeBatchSize,omitempty"`
84218	// WriteBatchTimeout - Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
84219	WriteBatchTimeout interface{} `json:"writeBatchTimeout,omitempty"`
84220	// SinkRetryCount - Sink retry count. Type: integer (or Expression with resultType integer).
84221	SinkRetryCount interface{} `json:"sinkRetryCount,omitempty"`
84222	// SinkRetryWait - Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
84223	SinkRetryWait interface{} `json:"sinkRetryWait,omitempty"`
84224	// Type - Possible values include: 'TypeCopySink', 'TypeSalesforceSink', 'TypeDynamicsSink', 'TypeOdbcSink', 'TypeAzureSearchIndexSink', 'TypeAzureDataLakeStoreSink', 'TypeOracleSink', 'TypeSQLDWSink', 'TypeSQLSink', 'TypeDocumentDbCollectionSink', 'TypeFileSystemSink', 'TypeBlobSink', 'TypeAzureTableSink', 'TypeAzureQueueSink', 'TypeSapCloudForCustomerSink'
84225	Type TypeBasicCopySink `json:"type,omitempty"`
84226}
84227
84228// MarshalJSON is the custom marshaler for SQLSink.
84229func (ss SQLSink) MarshalJSON() ([]byte, error) {
84230	ss.Type = TypeSQLSink
84231	objectMap := make(map[string]interface{})
84232	objectMap["sqlWriterStoredProcedureName"] = ss.SQLWriterStoredProcedureName
84233	objectMap["sqlWriterTableType"] = ss.SQLWriterTableType
84234	objectMap["preCopyScript"] = ss.PreCopyScript
84235	if ss.StoredProcedureParameters != nil {
84236		objectMap["storedProcedureParameters"] = ss.StoredProcedureParameters
84237	}
84238	objectMap["writeBatchSize"] = ss.WriteBatchSize
84239	objectMap["writeBatchTimeout"] = ss.WriteBatchTimeout
84240	objectMap["sinkRetryCount"] = ss.SinkRetryCount
84241	objectMap["sinkRetryWait"] = ss.SinkRetryWait
84242	if ss.Type != "" {
84243		objectMap["type"] = ss.Type
84244	}
84245	for k, v := range ss.AdditionalProperties {
84246		objectMap[k] = v
84247	}
84248	return json.Marshal(objectMap)
84249}
84250
84251// AsSalesforceSink is the BasicCopySink implementation for SQLSink.
84252func (ss SQLSink) AsSalesforceSink() (*SalesforceSink, bool) {
84253	return nil, false
84254}
84255
84256// AsDynamicsSink is the BasicCopySink implementation for SQLSink.
84257func (ss SQLSink) AsDynamicsSink() (*DynamicsSink, bool) {
84258	return nil, false
84259}
84260
84261// AsOdbcSink is the BasicCopySink implementation for SQLSink.
84262func (ss SQLSink) AsOdbcSink() (*OdbcSink, bool) {
84263	return nil, false
84264}
84265
84266// AsAzureSearchIndexSink is the BasicCopySink implementation for SQLSink.
84267func (ss SQLSink) AsAzureSearchIndexSink() (*AzureSearchIndexSink, bool) {
84268	return nil, false
84269}
84270
84271// AsAzureDataLakeStoreSink is the BasicCopySink implementation for SQLSink.
84272func (ss SQLSink) AsAzureDataLakeStoreSink() (*AzureDataLakeStoreSink, bool) {
84273	return nil, false
84274}
84275
84276// AsOracleSink is the BasicCopySink implementation for SQLSink.
84277func (ss SQLSink) AsOracleSink() (*OracleSink, bool) {
84278	return nil, false
84279}
84280
84281// AsSQLDWSink is the BasicCopySink implementation for SQLSink.
84282func (ss SQLSink) AsSQLDWSink() (*SQLDWSink, bool) {
84283	return nil, false
84284}
84285
84286// AsSQLSink is the BasicCopySink implementation for SQLSink.
84287func (ss SQLSink) AsSQLSink() (*SQLSink, bool) {
84288	return &ss, true
84289}
84290
84291// AsDocumentDbCollectionSink is the BasicCopySink implementation for SQLSink.
84292func (ss SQLSink) AsDocumentDbCollectionSink() (*DocumentDbCollectionSink, bool) {
84293	return nil, false
84294}
84295
84296// AsFileSystemSink is the BasicCopySink implementation for SQLSink.
84297func (ss SQLSink) AsFileSystemSink() (*FileSystemSink, bool) {
84298	return nil, false
84299}
84300
84301// AsBlobSink is the BasicCopySink implementation for SQLSink.
84302func (ss SQLSink) AsBlobSink() (*BlobSink, bool) {
84303	return nil, false
84304}
84305
84306// AsAzureTableSink is the BasicCopySink implementation for SQLSink.
84307func (ss SQLSink) AsAzureTableSink() (*AzureTableSink, bool) {
84308	return nil, false
84309}
84310
84311// AsAzureQueueSink is the BasicCopySink implementation for SQLSink.
84312func (ss SQLSink) AsAzureQueueSink() (*AzureQueueSink, bool) {
84313	return nil, false
84314}
84315
84316// AsSapCloudForCustomerSink is the BasicCopySink implementation for SQLSink.
84317func (ss SQLSink) AsSapCloudForCustomerSink() (*SapCloudForCustomerSink, bool) {
84318	return nil, false
84319}
84320
84321// AsCopySink is the BasicCopySink implementation for SQLSink.
84322func (ss SQLSink) AsCopySink() (*CopySink, bool) {
84323	return nil, false
84324}
84325
84326// AsBasicCopySink is the BasicCopySink implementation for SQLSink.
84327func (ss SQLSink) AsBasicCopySink() (BasicCopySink, bool) {
84328	return &ss, true
84329}
84330
84331// SQLSource a copy activity SQL source.
84332type SQLSource struct {
84333	// SQLReaderQuery - SQL reader query. Type: string (or Expression with resultType string).
84334	SQLReaderQuery interface{} `json:"sqlReaderQuery,omitempty"`
84335	// SQLReaderStoredProcedureName - Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string).
84336	SQLReaderStoredProcedureName interface{} `json:"sqlReaderStoredProcedureName,omitempty"`
84337	// StoredProcedureParameters - Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}".
84338	StoredProcedureParameters map[string]*StoredProcedureParameter `json:"storedProcedureParameters"`
84339	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
84340	AdditionalProperties map[string]interface{} `json:""`
84341	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
84342	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
84343	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
84344	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
84345	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
84346	Type TypeBasicCopySource `json:"type,omitempty"`
84347}
84348
84349// MarshalJSON is the custom marshaler for SQLSource.
84350func (ss SQLSource) MarshalJSON() ([]byte, error) {
84351	ss.Type = TypeSQLSource
84352	objectMap := make(map[string]interface{})
84353	objectMap["sqlReaderQuery"] = ss.SQLReaderQuery
84354	objectMap["sqlReaderStoredProcedureName"] = ss.SQLReaderStoredProcedureName
84355	if ss.StoredProcedureParameters != nil {
84356		objectMap["storedProcedureParameters"] = ss.StoredProcedureParameters
84357	}
84358	objectMap["sourceRetryCount"] = ss.SourceRetryCount
84359	objectMap["sourceRetryWait"] = ss.SourceRetryWait
84360	if ss.Type != "" {
84361		objectMap["type"] = ss.Type
84362	}
84363	for k, v := range ss.AdditionalProperties {
84364		objectMap[k] = v
84365	}
84366	return json.Marshal(objectMap)
84367}
84368
84369// AsAmazonRedshiftSource is the BasicCopySource implementation for SQLSource.
84370func (ss SQLSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
84371	return nil, false
84372}
84373
84374// AsResponsysSource is the BasicCopySource implementation for SQLSource.
84375func (ss SQLSource) AsResponsysSource() (*ResponsysSource, bool) {
84376	return nil, false
84377}
84378
84379// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SQLSource.
84380func (ss SQLSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
84381	return nil, false
84382}
84383
84384// AsVerticaSource is the BasicCopySource implementation for SQLSource.
84385func (ss SQLSource) AsVerticaSource() (*VerticaSource, bool) {
84386	return nil, false
84387}
84388
84389// AsNetezzaSource is the BasicCopySource implementation for SQLSource.
84390func (ss SQLSource) AsNetezzaSource() (*NetezzaSource, bool) {
84391	return nil, false
84392}
84393
84394// AsZohoSource is the BasicCopySource implementation for SQLSource.
84395func (ss SQLSource) AsZohoSource() (*ZohoSource, bool) {
84396	return nil, false
84397}
84398
84399// AsXeroSource is the BasicCopySource implementation for SQLSource.
84400func (ss SQLSource) AsXeroSource() (*XeroSource, bool) {
84401	return nil, false
84402}
84403
84404// AsSquareSource is the BasicCopySource implementation for SQLSource.
84405func (ss SQLSource) AsSquareSource() (*SquareSource, bool) {
84406	return nil, false
84407}
84408
84409// AsSparkSource is the BasicCopySource implementation for SQLSource.
84410func (ss SQLSource) AsSparkSource() (*SparkSource, bool) {
84411	return nil, false
84412}
84413
84414// AsShopifySource is the BasicCopySource implementation for SQLSource.
84415func (ss SQLSource) AsShopifySource() (*ShopifySource, bool) {
84416	return nil, false
84417}
84418
84419// AsServiceNowSource is the BasicCopySource implementation for SQLSource.
84420func (ss SQLSource) AsServiceNowSource() (*ServiceNowSource, bool) {
84421	return nil, false
84422}
84423
84424// AsQuickBooksSource is the BasicCopySource implementation for SQLSource.
84425func (ss SQLSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
84426	return nil, false
84427}
84428
84429// AsPrestoSource is the BasicCopySource implementation for SQLSource.
84430func (ss SQLSource) AsPrestoSource() (*PrestoSource, bool) {
84431	return nil, false
84432}
84433
84434// AsPhoenixSource is the BasicCopySource implementation for SQLSource.
84435func (ss SQLSource) AsPhoenixSource() (*PhoenixSource, bool) {
84436	return nil, false
84437}
84438
84439// AsPaypalSource is the BasicCopySource implementation for SQLSource.
84440func (ss SQLSource) AsPaypalSource() (*PaypalSource, bool) {
84441	return nil, false
84442}
84443
84444// AsMarketoSource is the BasicCopySource implementation for SQLSource.
84445func (ss SQLSource) AsMarketoSource() (*MarketoSource, bool) {
84446	return nil, false
84447}
84448
84449// AsMariaDBSource is the BasicCopySource implementation for SQLSource.
84450func (ss SQLSource) AsMariaDBSource() (*MariaDBSource, bool) {
84451	return nil, false
84452}
84453
84454// AsMagentoSource is the BasicCopySource implementation for SQLSource.
84455func (ss SQLSource) AsMagentoSource() (*MagentoSource, bool) {
84456	return nil, false
84457}
84458
84459// AsJiraSource is the BasicCopySource implementation for SQLSource.
84460func (ss SQLSource) AsJiraSource() (*JiraSource, bool) {
84461	return nil, false
84462}
84463
84464// AsImpalaSource is the BasicCopySource implementation for SQLSource.
84465func (ss SQLSource) AsImpalaSource() (*ImpalaSource, bool) {
84466	return nil, false
84467}
84468
84469// AsHubspotSource is the BasicCopySource implementation for SQLSource.
84470func (ss SQLSource) AsHubspotSource() (*HubspotSource, bool) {
84471	return nil, false
84472}
84473
84474// AsHiveSource is the BasicCopySource implementation for SQLSource.
84475func (ss SQLSource) AsHiveSource() (*HiveSource, bool) {
84476	return nil, false
84477}
84478
84479// AsHBaseSource is the BasicCopySource implementation for SQLSource.
84480func (ss SQLSource) AsHBaseSource() (*HBaseSource, bool) {
84481	return nil, false
84482}
84483
84484// AsGreenplumSource is the BasicCopySource implementation for SQLSource.
84485func (ss SQLSource) AsGreenplumSource() (*GreenplumSource, bool) {
84486	return nil, false
84487}
84488
84489// AsGoogleBigQuerySource is the BasicCopySource implementation for SQLSource.
84490func (ss SQLSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
84491	return nil, false
84492}
84493
84494// AsEloquaSource is the BasicCopySource implementation for SQLSource.
84495func (ss SQLSource) AsEloquaSource() (*EloquaSource, bool) {
84496	return nil, false
84497}
84498
84499// AsDrillSource is the BasicCopySource implementation for SQLSource.
84500func (ss SQLSource) AsDrillSource() (*DrillSource, bool) {
84501	return nil, false
84502}
84503
84504// AsCouchbaseSource is the BasicCopySource implementation for SQLSource.
84505func (ss SQLSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
84506	return nil, false
84507}
84508
84509// AsConcurSource is the BasicCopySource implementation for SQLSource.
84510func (ss SQLSource) AsConcurSource() (*ConcurSource, bool) {
84511	return nil, false
84512}
84513
84514// AsAzurePostgreSQLSource is the BasicCopySource implementation for SQLSource.
84515func (ss SQLSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
84516	return nil, false
84517}
84518
84519// AsAmazonMWSSource is the BasicCopySource implementation for SQLSource.
84520func (ss SQLSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
84521	return nil, false
84522}
84523
84524// AsHTTPSource is the BasicCopySource implementation for SQLSource.
84525func (ss SQLSource) AsHTTPSource() (*HTTPSource, bool) {
84526	return nil, false
84527}
84528
84529// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SQLSource.
84530func (ss SQLSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
84531	return nil, false
84532}
84533
84534// AsMongoDbSource is the BasicCopySource implementation for SQLSource.
84535func (ss SQLSource) AsMongoDbSource() (*MongoDbSource, bool) {
84536	return nil, false
84537}
84538
84539// AsCassandraSource is the BasicCopySource implementation for SQLSource.
84540func (ss SQLSource) AsCassandraSource() (*CassandraSource, bool) {
84541	return nil, false
84542}
84543
84544// AsWebSource is the BasicCopySource implementation for SQLSource.
84545func (ss SQLSource) AsWebSource() (*WebSource, bool) {
84546	return nil, false
84547}
84548
84549// AsOracleSource is the BasicCopySource implementation for SQLSource.
84550func (ss SQLSource) AsOracleSource() (*OracleSource, bool) {
84551	return nil, false
84552}
84553
84554// AsAzureMySQLSource is the BasicCopySource implementation for SQLSource.
84555func (ss SQLSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
84556	return nil, false
84557}
84558
84559// AsHdfsSource is the BasicCopySource implementation for SQLSource.
84560func (ss SQLSource) AsHdfsSource() (*HdfsSource, bool) {
84561	return nil, false
84562}
84563
84564// AsFileSystemSource is the BasicCopySource implementation for SQLSource.
84565func (ss SQLSource) AsFileSystemSource() (*FileSystemSource, bool) {
84566	return nil, false
84567}
84568
84569// AsSQLDWSource is the BasicCopySource implementation for SQLSource.
84570func (ss SQLSource) AsSQLDWSource() (*SQLDWSource, bool) {
84571	return nil, false
84572}
84573
84574// AsSQLSource is the BasicCopySource implementation for SQLSource.
84575func (ss SQLSource) AsSQLSource() (*SQLSource, bool) {
84576	return &ss, true
84577}
84578
84579// AsSapEccSource is the BasicCopySource implementation for SQLSource.
84580func (ss SQLSource) AsSapEccSource() (*SapEccSource, bool) {
84581	return nil, false
84582}
84583
84584// AsSapCloudForCustomerSource is the BasicCopySource implementation for SQLSource.
84585func (ss SQLSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
84586	return nil, false
84587}
84588
84589// AsSalesforceSource is the BasicCopySource implementation for SQLSource.
84590func (ss SQLSource) AsSalesforceSource() (*SalesforceSource, bool) {
84591	return nil, false
84592}
84593
84594// AsRelationalSource is the BasicCopySource implementation for SQLSource.
84595func (ss SQLSource) AsRelationalSource() (*RelationalSource, bool) {
84596	return nil, false
84597}
84598
84599// AsDynamicsSource is the BasicCopySource implementation for SQLSource.
84600func (ss SQLSource) AsDynamicsSource() (*DynamicsSource, bool) {
84601	return nil, false
84602}
84603
84604// AsDocumentDbCollectionSource is the BasicCopySource implementation for SQLSource.
84605func (ss SQLSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
84606	return nil, false
84607}
84608
84609// AsBlobSource is the BasicCopySource implementation for SQLSource.
84610func (ss SQLSource) AsBlobSource() (*BlobSource, bool) {
84611	return nil, false
84612}
84613
84614// AsAzureTableSource is the BasicCopySource implementation for SQLSource.
84615func (ss SQLSource) AsAzureTableSource() (*AzureTableSource, bool) {
84616	return nil, false
84617}
84618
84619// AsCopySource is the BasicCopySource implementation for SQLSource.
84620func (ss SQLSource) AsCopySource() (*CopySource, bool) {
84621	return nil, false
84622}
84623
84624// AsBasicCopySource is the BasicCopySource implementation for SQLSource.
84625func (ss SQLSource) AsBasicCopySource() (BasicCopySource, bool) {
84626	return &ss, true
84627}
84628
84629// SquareLinkedService square Serivce linked service.
84630type SquareLinkedService struct {
84631	// SquareLinkedServiceTypeProperties - Square Serivce linked service properties.
84632	*SquareLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
84633	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
84634	AdditionalProperties map[string]interface{} `json:""`
84635	// ConnectVia - The integration runtime reference.
84636	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
84637	// Description - Linked service description.
84638	Description *string `json:"description,omitempty"`
84639	// Parameters - Parameters for linked service.
84640	Parameters map[string]*ParameterSpecification `json:"parameters"`
84641	// Annotations - List of tags that can be used for describing the Dataset.
84642	Annotations *[]interface{} `json:"annotations,omitempty"`
84643	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
84644	Type TypeBasicLinkedService `json:"type,omitempty"`
84645}
84646
84647// MarshalJSON is the custom marshaler for SquareLinkedService.
84648func (sls SquareLinkedService) MarshalJSON() ([]byte, error) {
84649	sls.Type = TypeSquare
84650	objectMap := make(map[string]interface{})
84651	if sls.SquareLinkedServiceTypeProperties != nil {
84652		objectMap["typeProperties"] = sls.SquareLinkedServiceTypeProperties
84653	}
84654	if sls.ConnectVia != nil {
84655		objectMap["connectVia"] = sls.ConnectVia
84656	}
84657	if sls.Description != nil {
84658		objectMap["description"] = sls.Description
84659	}
84660	if sls.Parameters != nil {
84661		objectMap["parameters"] = sls.Parameters
84662	}
84663	if sls.Annotations != nil {
84664		objectMap["annotations"] = sls.Annotations
84665	}
84666	if sls.Type != "" {
84667		objectMap["type"] = sls.Type
84668	}
84669	for k, v := range sls.AdditionalProperties {
84670		objectMap[k] = v
84671	}
84672	return json.Marshal(objectMap)
84673}
84674
84675// AsResponsysLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84676func (sls SquareLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
84677	return nil, false
84678}
84679
84680// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84681func (sls SquareLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
84682	return nil, false
84683}
84684
84685// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84686func (sls SquareLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
84687	return nil, false
84688}
84689
84690// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84691func (sls SquareLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
84692	return nil, false
84693}
84694
84695// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84696func (sls SquareLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
84697	return nil, false
84698}
84699
84700// AsNetezzaLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84701func (sls SquareLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
84702	return nil, false
84703}
84704
84705// AsVerticaLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84706func (sls SquareLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
84707	return nil, false
84708}
84709
84710// AsZohoLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84711func (sls SquareLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
84712	return nil, false
84713}
84714
84715// AsXeroLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84716func (sls SquareLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
84717	return nil, false
84718}
84719
84720// AsSquareLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84721func (sls SquareLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
84722	return &sls, true
84723}
84724
84725// AsSparkLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84726func (sls SquareLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
84727	return nil, false
84728}
84729
84730// AsShopifyLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84731func (sls SquareLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
84732	return nil, false
84733}
84734
84735// AsServiceNowLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84736func (sls SquareLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
84737	return nil, false
84738}
84739
84740// AsQuickBooksLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84741func (sls SquareLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
84742	return nil, false
84743}
84744
84745// AsPrestoLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84746func (sls SquareLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
84747	return nil, false
84748}
84749
84750// AsPhoenixLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84751func (sls SquareLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
84752	return nil, false
84753}
84754
84755// AsPaypalLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84756func (sls SquareLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
84757	return nil, false
84758}
84759
84760// AsMarketoLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84761func (sls SquareLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
84762	return nil, false
84763}
84764
84765// AsMariaDBLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84766func (sls SquareLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
84767	return nil, false
84768}
84769
84770// AsMagentoLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84771func (sls SquareLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
84772	return nil, false
84773}
84774
84775// AsJiraLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84776func (sls SquareLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
84777	return nil, false
84778}
84779
84780// AsImpalaLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84781func (sls SquareLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
84782	return nil, false
84783}
84784
84785// AsHubspotLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84786func (sls SquareLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
84787	return nil, false
84788}
84789
84790// AsHiveLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84791func (sls SquareLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
84792	return nil, false
84793}
84794
84795// AsHBaseLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84796func (sls SquareLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
84797	return nil, false
84798}
84799
84800// AsGreenplumLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84801func (sls SquareLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
84802	return nil, false
84803}
84804
84805// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84806func (sls SquareLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
84807	return nil, false
84808}
84809
84810// AsEloquaLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84811func (sls SquareLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
84812	return nil, false
84813}
84814
84815// AsDrillLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84816func (sls SquareLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
84817	return nil, false
84818}
84819
84820// AsCouchbaseLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84821func (sls SquareLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
84822	return nil, false
84823}
84824
84825// AsConcurLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84826func (sls SquareLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
84827	return nil, false
84828}
84829
84830// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84831func (sls SquareLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
84832	return nil, false
84833}
84834
84835// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84836func (sls SquareLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
84837	return nil, false
84838}
84839
84840// AsSapHanaLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84841func (sls SquareLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
84842	return nil, false
84843}
84844
84845// AsSapBWLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84846func (sls SquareLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
84847	return nil, false
84848}
84849
84850// AsSftpServerLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84851func (sls SquareLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
84852	return nil, false
84853}
84854
84855// AsFtpServerLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84856func (sls SquareLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
84857	return nil, false
84858}
84859
84860// AsHTTPLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84861func (sls SquareLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
84862	return nil, false
84863}
84864
84865// AsAzureSearchLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84866func (sls SquareLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
84867	return nil, false
84868}
84869
84870// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84871func (sls SquareLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
84872	return nil, false
84873}
84874
84875// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84876func (sls SquareLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
84877	return nil, false
84878}
84879
84880// AsAmazonS3LinkedService is the BasicLinkedService implementation for SquareLinkedService.
84881func (sls SquareLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
84882	return nil, false
84883}
84884
84885// AsSapEccLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84886func (sls SquareLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
84887	return nil, false
84888}
84889
84890// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84891func (sls SquareLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
84892	return nil, false
84893}
84894
84895// AsSalesforceLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84896func (sls SquareLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
84897	return nil, false
84898}
84899
84900// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84901func (sls SquareLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
84902	return nil, false
84903}
84904
84905// AsMongoDbLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84906func (sls SquareLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
84907	return nil, false
84908}
84909
84910// AsCassandraLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84911func (sls SquareLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
84912	return nil, false
84913}
84914
84915// AsWebLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84916func (sls SquareLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
84917	return nil, false
84918}
84919
84920// AsODataLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84921func (sls SquareLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
84922	return nil, false
84923}
84924
84925// AsHdfsLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84926func (sls SquareLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
84927	return nil, false
84928}
84929
84930// AsOdbcLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84931func (sls SquareLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
84932	return nil, false
84933}
84934
84935// AsAzureMLLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84936func (sls SquareLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
84937	return nil, false
84938}
84939
84940// AsTeradataLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84941func (sls SquareLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
84942	return nil, false
84943}
84944
84945// AsDb2LinkedService is the BasicLinkedService implementation for SquareLinkedService.
84946func (sls SquareLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
84947	return nil, false
84948}
84949
84950// AsSybaseLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84951func (sls SquareLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
84952	return nil, false
84953}
84954
84955// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84956func (sls SquareLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
84957	return nil, false
84958}
84959
84960// AsMySQLLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84961func (sls SquareLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
84962	return nil, false
84963}
84964
84965// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84966func (sls SquareLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
84967	return nil, false
84968}
84969
84970// AsOracleLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84971func (sls SquareLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
84972	return nil, false
84973}
84974
84975// AsFileServerLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84976func (sls SquareLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
84977	return nil, false
84978}
84979
84980// AsHDInsightLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84981func (sls SquareLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
84982	return nil, false
84983}
84984
84985// AsDynamicsLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84986func (sls SquareLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
84987	return nil, false
84988}
84989
84990// AsCosmosDbLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84991func (sls SquareLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
84992	return nil, false
84993}
84994
84995// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SquareLinkedService.
84996func (sls SquareLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
84997	return nil, false
84998}
84999
85000// AsAzureBatchLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85001func (sls SquareLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
85002	return nil, false
85003}
85004
85005// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85006func (sls SquareLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
85007	return nil, false
85008}
85009
85010// AsSQLServerLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85011func (sls SquareLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
85012	return nil, false
85013}
85014
85015// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85016func (sls SquareLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
85017	return nil, false
85018}
85019
85020// AsAzureStorageLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85021func (sls SquareLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
85022	return nil, false
85023}
85024
85025// AsLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85026func (sls SquareLinkedService) AsLinkedService() (*LinkedService, bool) {
85027	return nil, false
85028}
85029
85030// AsBasicLinkedService is the BasicLinkedService implementation for SquareLinkedService.
85031func (sls SquareLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
85032	return &sls, true
85033}
85034
85035// UnmarshalJSON is the custom unmarshaler for SquareLinkedService struct.
85036func (sls *SquareLinkedService) UnmarshalJSON(body []byte) error {
85037	var m map[string]*json.RawMessage
85038	err := json.Unmarshal(body, &m)
85039	if err != nil {
85040		return err
85041	}
85042	for k, v := range m {
85043		switch k {
85044		case "typeProperties":
85045			if v != nil {
85046				var squareLinkedServiceTypeProperties SquareLinkedServiceTypeProperties
85047				err = json.Unmarshal(*v, &squareLinkedServiceTypeProperties)
85048				if err != nil {
85049					return err
85050				}
85051				sls.SquareLinkedServiceTypeProperties = &squareLinkedServiceTypeProperties
85052			}
85053		default:
85054			if v != nil {
85055				var additionalProperties interface{}
85056				err = json.Unmarshal(*v, &additionalProperties)
85057				if err != nil {
85058					return err
85059				}
85060				if sls.AdditionalProperties == nil {
85061					sls.AdditionalProperties = make(map[string]interface{})
85062				}
85063				sls.AdditionalProperties[k] = additionalProperties
85064			}
85065		case "connectVia":
85066			if v != nil {
85067				var connectVia IntegrationRuntimeReference
85068				err = json.Unmarshal(*v, &connectVia)
85069				if err != nil {
85070					return err
85071				}
85072				sls.ConnectVia = &connectVia
85073			}
85074		case "description":
85075			if v != nil {
85076				var description string
85077				err = json.Unmarshal(*v, &description)
85078				if err != nil {
85079					return err
85080				}
85081				sls.Description = &description
85082			}
85083		case "parameters":
85084			if v != nil {
85085				var parameters map[string]*ParameterSpecification
85086				err = json.Unmarshal(*v, &parameters)
85087				if err != nil {
85088					return err
85089				}
85090				sls.Parameters = parameters
85091			}
85092		case "annotations":
85093			if v != nil {
85094				var annotations []interface{}
85095				err = json.Unmarshal(*v, &annotations)
85096				if err != nil {
85097					return err
85098				}
85099				sls.Annotations = &annotations
85100			}
85101		case "type":
85102			if v != nil {
85103				var typeVar TypeBasicLinkedService
85104				err = json.Unmarshal(*v, &typeVar)
85105				if err != nil {
85106					return err
85107				}
85108				sls.Type = typeVar
85109			}
85110		}
85111	}
85112
85113	return nil
85114}
85115
85116// SquareLinkedServiceTypeProperties square Serivce linked service properties.
85117type SquareLinkedServiceTypeProperties struct {
85118	// Host - The URL of the Square instance. (i.e. mystore.mysquare.com)
85119	Host interface{} `json:"host,omitempty"`
85120	// ClientID - The client ID associated with your Square application.
85121	ClientID interface{} `json:"clientId,omitempty"`
85122	// ClientSecret - The client secret associated with your Square application.
85123	ClientSecret BasicSecretBase `json:"clientSecret,omitempty"`
85124	// RedirectURI - The redirect URL assigned in the Square application dashboard. (i.e. http://localhost:2500)
85125	RedirectURI interface{} `json:"redirectUri,omitempty"`
85126	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
85127	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
85128	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
85129	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
85130	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
85131	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
85132	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
85133	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
85134}
85135
85136// UnmarshalJSON is the custom unmarshaler for SquareLinkedServiceTypeProperties struct.
85137func (slstp *SquareLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
85138	var m map[string]*json.RawMessage
85139	err := json.Unmarshal(body, &m)
85140	if err != nil {
85141		return err
85142	}
85143	for k, v := range m {
85144		switch k {
85145		case "host":
85146			if v != nil {
85147				var host interface{}
85148				err = json.Unmarshal(*v, &host)
85149				if err != nil {
85150					return err
85151				}
85152				slstp.Host = host
85153			}
85154		case "clientId":
85155			if v != nil {
85156				var clientID interface{}
85157				err = json.Unmarshal(*v, &clientID)
85158				if err != nil {
85159					return err
85160				}
85161				slstp.ClientID = clientID
85162			}
85163		case "clientSecret":
85164			if v != nil {
85165				clientSecret, err := unmarshalBasicSecretBase(*v)
85166				if err != nil {
85167					return err
85168				}
85169				slstp.ClientSecret = clientSecret
85170			}
85171		case "redirectUri":
85172			if v != nil {
85173				var redirectURI interface{}
85174				err = json.Unmarshal(*v, &redirectURI)
85175				if err != nil {
85176					return err
85177				}
85178				slstp.RedirectURI = redirectURI
85179			}
85180		case "useEncryptedEndpoints":
85181			if v != nil {
85182				var useEncryptedEndpoints interface{}
85183				err = json.Unmarshal(*v, &useEncryptedEndpoints)
85184				if err != nil {
85185					return err
85186				}
85187				slstp.UseEncryptedEndpoints = useEncryptedEndpoints
85188			}
85189		case "useHostVerification":
85190			if v != nil {
85191				var useHostVerification interface{}
85192				err = json.Unmarshal(*v, &useHostVerification)
85193				if err != nil {
85194					return err
85195				}
85196				slstp.UseHostVerification = useHostVerification
85197			}
85198		case "usePeerVerification":
85199			if v != nil {
85200				var usePeerVerification interface{}
85201				err = json.Unmarshal(*v, &usePeerVerification)
85202				if err != nil {
85203					return err
85204				}
85205				slstp.UsePeerVerification = usePeerVerification
85206			}
85207		case "encryptedCredential":
85208			if v != nil {
85209				var encryptedCredential interface{}
85210				err = json.Unmarshal(*v, &encryptedCredential)
85211				if err != nil {
85212					return err
85213				}
85214				slstp.EncryptedCredential = encryptedCredential
85215			}
85216		}
85217	}
85218
85219	return nil
85220}
85221
85222// SquareObjectDataset square Serivce dataset.
85223type SquareObjectDataset struct {
85224	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
85225	AdditionalProperties map[string]interface{} `json:""`
85226	// Description - Dataset description.
85227	Description *string `json:"description,omitempty"`
85228	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
85229	Structure interface{} `json:"structure,omitempty"`
85230	// LinkedServiceName - Linked service reference.
85231	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
85232	// Parameters - Parameters for dataset.
85233	Parameters map[string]*ParameterSpecification `json:"parameters"`
85234	// Annotations - List of tags that can be used for describing the Dataset.
85235	Annotations *[]interface{} `json:"annotations,omitempty"`
85236	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
85237	Type TypeBasicDataset `json:"type,omitempty"`
85238}
85239
85240// MarshalJSON is the custom marshaler for SquareObjectDataset.
85241func (sod SquareObjectDataset) MarshalJSON() ([]byte, error) {
85242	sod.Type = TypeSquareObject
85243	objectMap := make(map[string]interface{})
85244	if sod.Description != nil {
85245		objectMap["description"] = sod.Description
85246	}
85247	objectMap["structure"] = sod.Structure
85248	if sod.LinkedServiceName != nil {
85249		objectMap["linkedServiceName"] = sod.LinkedServiceName
85250	}
85251	if sod.Parameters != nil {
85252		objectMap["parameters"] = sod.Parameters
85253	}
85254	if sod.Annotations != nil {
85255		objectMap["annotations"] = sod.Annotations
85256	}
85257	if sod.Type != "" {
85258		objectMap["type"] = sod.Type
85259	}
85260	for k, v := range sod.AdditionalProperties {
85261		objectMap[k] = v
85262	}
85263	return json.Marshal(objectMap)
85264}
85265
85266// AsResponsysObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85267func (sod SquareObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
85268	return nil, false
85269}
85270
85271// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85272func (sod SquareObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
85273	return nil, false
85274}
85275
85276// AsVerticaTableDataset is the BasicDataset implementation for SquareObjectDataset.
85277func (sod SquareObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
85278	return nil, false
85279}
85280
85281// AsNetezzaTableDataset is the BasicDataset implementation for SquareObjectDataset.
85282func (sod SquareObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
85283	return nil, false
85284}
85285
85286// AsZohoObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85287func (sod SquareObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
85288	return nil, false
85289}
85290
85291// AsXeroObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85292func (sod SquareObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
85293	return nil, false
85294}
85295
85296// AsSquareObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85297func (sod SquareObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
85298	return &sod, true
85299}
85300
85301// AsSparkObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85302func (sod SquareObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
85303	return nil, false
85304}
85305
85306// AsShopifyObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85307func (sod SquareObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
85308	return nil, false
85309}
85310
85311// AsServiceNowObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85312func (sod SquareObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
85313	return nil, false
85314}
85315
85316// AsQuickBooksObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85317func (sod SquareObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
85318	return nil, false
85319}
85320
85321// AsPrestoObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85322func (sod SquareObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
85323	return nil, false
85324}
85325
85326// AsPhoenixObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85327func (sod SquareObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
85328	return nil, false
85329}
85330
85331// AsPaypalObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85332func (sod SquareObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
85333	return nil, false
85334}
85335
85336// AsMarketoObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85337func (sod SquareObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
85338	return nil, false
85339}
85340
85341// AsMariaDBTableDataset is the BasicDataset implementation for SquareObjectDataset.
85342func (sod SquareObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
85343	return nil, false
85344}
85345
85346// AsMagentoObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85347func (sod SquareObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
85348	return nil, false
85349}
85350
85351// AsJiraObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85352func (sod SquareObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
85353	return nil, false
85354}
85355
85356// AsImpalaObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85357func (sod SquareObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
85358	return nil, false
85359}
85360
85361// AsHubspotObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85362func (sod SquareObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
85363	return nil, false
85364}
85365
85366// AsHiveObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85367func (sod SquareObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
85368	return nil, false
85369}
85370
85371// AsHBaseObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85372func (sod SquareObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
85373	return nil, false
85374}
85375
85376// AsGreenplumTableDataset is the BasicDataset implementation for SquareObjectDataset.
85377func (sod SquareObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
85378	return nil, false
85379}
85380
85381// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85382func (sod SquareObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
85383	return nil, false
85384}
85385
85386// AsEloquaObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85387func (sod SquareObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
85388	return nil, false
85389}
85390
85391// AsDrillTableDataset is the BasicDataset implementation for SquareObjectDataset.
85392func (sod SquareObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
85393	return nil, false
85394}
85395
85396// AsCouchbaseTableDataset is the BasicDataset implementation for SquareObjectDataset.
85397func (sod SquareObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
85398	return nil, false
85399}
85400
85401// AsConcurObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85402func (sod SquareObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
85403	return nil, false
85404}
85405
85406// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for SquareObjectDataset.
85407func (sod SquareObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
85408	return nil, false
85409}
85410
85411// AsAmazonMWSObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85412func (sod SquareObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
85413	return nil, false
85414}
85415
85416// AsHTTPDataset is the BasicDataset implementation for SquareObjectDataset.
85417func (sod SquareObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
85418	return nil, false
85419}
85420
85421// AsAzureSearchIndexDataset is the BasicDataset implementation for SquareObjectDataset.
85422func (sod SquareObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
85423	return nil, false
85424}
85425
85426// AsWebTableDataset is the BasicDataset implementation for SquareObjectDataset.
85427func (sod SquareObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
85428	return nil, false
85429}
85430
85431// AsSQLServerTableDataset is the BasicDataset implementation for SquareObjectDataset.
85432func (sod SquareObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
85433	return nil, false
85434}
85435
85436// AsSapEccResourceDataset is the BasicDataset implementation for SquareObjectDataset.
85437func (sod SquareObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
85438	return nil, false
85439}
85440
85441// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for SquareObjectDataset.
85442func (sod SquareObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
85443	return nil, false
85444}
85445
85446// AsSalesforceObjectDataset is the BasicDataset implementation for SquareObjectDataset.
85447func (sod SquareObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
85448	return nil, false
85449}
85450
85451// AsRelationalTableDataset is the BasicDataset implementation for SquareObjectDataset.
85452func (sod SquareObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
85453	return nil, false
85454}
85455
85456// AsAzureMySQLTableDataset is the BasicDataset implementation for SquareObjectDataset.
85457func (sod SquareObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
85458	return nil, false
85459}
85460
85461// AsOracleTableDataset is the BasicDataset implementation for SquareObjectDataset.
85462func (sod SquareObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
85463	return nil, false
85464}
85465
85466// AsODataResourceDataset is the BasicDataset implementation for SquareObjectDataset.
85467func (sod SquareObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
85468	return nil, false
85469}
85470
85471// AsMongoDbCollectionDataset is the BasicDataset implementation for SquareObjectDataset.
85472func (sod SquareObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
85473	return nil, false
85474}
85475
85476// AsFileShareDataset is the BasicDataset implementation for SquareObjectDataset.
85477func (sod SquareObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
85478	return nil, false
85479}
85480
85481// AsAzureDataLakeStoreDataset is the BasicDataset implementation for SquareObjectDataset.
85482func (sod SquareObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
85483	return nil, false
85484}
85485
85486// AsDynamicsEntityDataset is the BasicDataset implementation for SquareObjectDataset.
85487func (sod SquareObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
85488	return nil, false
85489}
85490
85491// AsDocumentDbCollectionDataset is the BasicDataset implementation for SquareObjectDataset.
85492func (sod SquareObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
85493	return nil, false
85494}
85495
85496// AsCustomDataset is the BasicDataset implementation for SquareObjectDataset.
85497func (sod SquareObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
85498	return nil, false
85499}
85500
85501// AsCassandraTableDataset is the BasicDataset implementation for SquareObjectDataset.
85502func (sod SquareObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
85503	return nil, false
85504}
85505
85506// AsAzureSQLDWTableDataset is the BasicDataset implementation for SquareObjectDataset.
85507func (sod SquareObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
85508	return nil, false
85509}
85510
85511// AsAzureSQLTableDataset is the BasicDataset implementation for SquareObjectDataset.
85512func (sod SquareObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
85513	return nil, false
85514}
85515
85516// AsAzureTableDataset is the BasicDataset implementation for SquareObjectDataset.
85517func (sod SquareObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
85518	return nil, false
85519}
85520
85521// AsAzureBlobDataset is the BasicDataset implementation for SquareObjectDataset.
85522func (sod SquareObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
85523	return nil, false
85524}
85525
85526// AsAmazonS3Dataset is the BasicDataset implementation for SquareObjectDataset.
85527func (sod SquareObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
85528	return nil, false
85529}
85530
85531// AsDataset is the BasicDataset implementation for SquareObjectDataset.
85532func (sod SquareObjectDataset) AsDataset() (*Dataset, bool) {
85533	return nil, false
85534}
85535
85536// AsBasicDataset is the BasicDataset implementation for SquareObjectDataset.
85537func (sod SquareObjectDataset) AsBasicDataset() (BasicDataset, bool) {
85538	return &sod, true
85539}
85540
85541// SquareSource a copy activity Square Serivce source.
85542type SquareSource struct {
85543	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
85544	Query interface{} `json:"query,omitempty"`
85545	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
85546	AdditionalProperties map[string]interface{} `json:""`
85547	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
85548	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
85549	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
85550	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
85551	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
85552	Type TypeBasicCopySource `json:"type,omitempty"`
85553}
85554
85555// MarshalJSON is the custom marshaler for SquareSource.
85556func (ss SquareSource) MarshalJSON() ([]byte, error) {
85557	ss.Type = TypeSquareSource
85558	objectMap := make(map[string]interface{})
85559	objectMap["query"] = ss.Query
85560	objectMap["sourceRetryCount"] = ss.SourceRetryCount
85561	objectMap["sourceRetryWait"] = ss.SourceRetryWait
85562	if ss.Type != "" {
85563		objectMap["type"] = ss.Type
85564	}
85565	for k, v := range ss.AdditionalProperties {
85566		objectMap[k] = v
85567	}
85568	return json.Marshal(objectMap)
85569}
85570
85571// AsAmazonRedshiftSource is the BasicCopySource implementation for SquareSource.
85572func (ss SquareSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
85573	return nil, false
85574}
85575
85576// AsResponsysSource is the BasicCopySource implementation for SquareSource.
85577func (ss SquareSource) AsResponsysSource() (*ResponsysSource, bool) {
85578	return nil, false
85579}
85580
85581// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for SquareSource.
85582func (ss SquareSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
85583	return nil, false
85584}
85585
85586// AsVerticaSource is the BasicCopySource implementation for SquareSource.
85587func (ss SquareSource) AsVerticaSource() (*VerticaSource, bool) {
85588	return nil, false
85589}
85590
85591// AsNetezzaSource is the BasicCopySource implementation for SquareSource.
85592func (ss SquareSource) AsNetezzaSource() (*NetezzaSource, bool) {
85593	return nil, false
85594}
85595
85596// AsZohoSource is the BasicCopySource implementation for SquareSource.
85597func (ss SquareSource) AsZohoSource() (*ZohoSource, bool) {
85598	return nil, false
85599}
85600
85601// AsXeroSource is the BasicCopySource implementation for SquareSource.
85602func (ss SquareSource) AsXeroSource() (*XeroSource, bool) {
85603	return nil, false
85604}
85605
85606// AsSquareSource is the BasicCopySource implementation for SquareSource.
85607func (ss SquareSource) AsSquareSource() (*SquareSource, bool) {
85608	return &ss, true
85609}
85610
85611// AsSparkSource is the BasicCopySource implementation for SquareSource.
85612func (ss SquareSource) AsSparkSource() (*SparkSource, bool) {
85613	return nil, false
85614}
85615
85616// AsShopifySource is the BasicCopySource implementation for SquareSource.
85617func (ss SquareSource) AsShopifySource() (*ShopifySource, bool) {
85618	return nil, false
85619}
85620
85621// AsServiceNowSource is the BasicCopySource implementation for SquareSource.
85622func (ss SquareSource) AsServiceNowSource() (*ServiceNowSource, bool) {
85623	return nil, false
85624}
85625
85626// AsQuickBooksSource is the BasicCopySource implementation for SquareSource.
85627func (ss SquareSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
85628	return nil, false
85629}
85630
85631// AsPrestoSource is the BasicCopySource implementation for SquareSource.
85632func (ss SquareSource) AsPrestoSource() (*PrestoSource, bool) {
85633	return nil, false
85634}
85635
85636// AsPhoenixSource is the BasicCopySource implementation for SquareSource.
85637func (ss SquareSource) AsPhoenixSource() (*PhoenixSource, bool) {
85638	return nil, false
85639}
85640
85641// AsPaypalSource is the BasicCopySource implementation for SquareSource.
85642func (ss SquareSource) AsPaypalSource() (*PaypalSource, bool) {
85643	return nil, false
85644}
85645
85646// AsMarketoSource is the BasicCopySource implementation for SquareSource.
85647func (ss SquareSource) AsMarketoSource() (*MarketoSource, bool) {
85648	return nil, false
85649}
85650
85651// AsMariaDBSource is the BasicCopySource implementation for SquareSource.
85652func (ss SquareSource) AsMariaDBSource() (*MariaDBSource, bool) {
85653	return nil, false
85654}
85655
85656// AsMagentoSource is the BasicCopySource implementation for SquareSource.
85657func (ss SquareSource) AsMagentoSource() (*MagentoSource, bool) {
85658	return nil, false
85659}
85660
85661// AsJiraSource is the BasicCopySource implementation for SquareSource.
85662func (ss SquareSource) AsJiraSource() (*JiraSource, bool) {
85663	return nil, false
85664}
85665
85666// AsImpalaSource is the BasicCopySource implementation for SquareSource.
85667func (ss SquareSource) AsImpalaSource() (*ImpalaSource, bool) {
85668	return nil, false
85669}
85670
85671// AsHubspotSource is the BasicCopySource implementation for SquareSource.
85672func (ss SquareSource) AsHubspotSource() (*HubspotSource, bool) {
85673	return nil, false
85674}
85675
85676// AsHiveSource is the BasicCopySource implementation for SquareSource.
85677func (ss SquareSource) AsHiveSource() (*HiveSource, bool) {
85678	return nil, false
85679}
85680
85681// AsHBaseSource is the BasicCopySource implementation for SquareSource.
85682func (ss SquareSource) AsHBaseSource() (*HBaseSource, bool) {
85683	return nil, false
85684}
85685
85686// AsGreenplumSource is the BasicCopySource implementation for SquareSource.
85687func (ss SquareSource) AsGreenplumSource() (*GreenplumSource, bool) {
85688	return nil, false
85689}
85690
85691// AsGoogleBigQuerySource is the BasicCopySource implementation for SquareSource.
85692func (ss SquareSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
85693	return nil, false
85694}
85695
85696// AsEloquaSource is the BasicCopySource implementation for SquareSource.
85697func (ss SquareSource) AsEloquaSource() (*EloquaSource, bool) {
85698	return nil, false
85699}
85700
85701// AsDrillSource is the BasicCopySource implementation for SquareSource.
85702func (ss SquareSource) AsDrillSource() (*DrillSource, bool) {
85703	return nil, false
85704}
85705
85706// AsCouchbaseSource is the BasicCopySource implementation for SquareSource.
85707func (ss SquareSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
85708	return nil, false
85709}
85710
85711// AsConcurSource is the BasicCopySource implementation for SquareSource.
85712func (ss SquareSource) AsConcurSource() (*ConcurSource, bool) {
85713	return nil, false
85714}
85715
85716// AsAzurePostgreSQLSource is the BasicCopySource implementation for SquareSource.
85717func (ss SquareSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
85718	return nil, false
85719}
85720
85721// AsAmazonMWSSource is the BasicCopySource implementation for SquareSource.
85722func (ss SquareSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
85723	return nil, false
85724}
85725
85726// AsHTTPSource is the BasicCopySource implementation for SquareSource.
85727func (ss SquareSource) AsHTTPSource() (*HTTPSource, bool) {
85728	return nil, false
85729}
85730
85731// AsAzureDataLakeStoreSource is the BasicCopySource implementation for SquareSource.
85732func (ss SquareSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
85733	return nil, false
85734}
85735
85736// AsMongoDbSource is the BasicCopySource implementation for SquareSource.
85737func (ss SquareSource) AsMongoDbSource() (*MongoDbSource, bool) {
85738	return nil, false
85739}
85740
85741// AsCassandraSource is the BasicCopySource implementation for SquareSource.
85742func (ss SquareSource) AsCassandraSource() (*CassandraSource, bool) {
85743	return nil, false
85744}
85745
85746// AsWebSource is the BasicCopySource implementation for SquareSource.
85747func (ss SquareSource) AsWebSource() (*WebSource, bool) {
85748	return nil, false
85749}
85750
85751// AsOracleSource is the BasicCopySource implementation for SquareSource.
85752func (ss SquareSource) AsOracleSource() (*OracleSource, bool) {
85753	return nil, false
85754}
85755
85756// AsAzureMySQLSource is the BasicCopySource implementation for SquareSource.
85757func (ss SquareSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
85758	return nil, false
85759}
85760
85761// AsHdfsSource is the BasicCopySource implementation for SquareSource.
85762func (ss SquareSource) AsHdfsSource() (*HdfsSource, bool) {
85763	return nil, false
85764}
85765
85766// AsFileSystemSource is the BasicCopySource implementation for SquareSource.
85767func (ss SquareSource) AsFileSystemSource() (*FileSystemSource, bool) {
85768	return nil, false
85769}
85770
85771// AsSQLDWSource is the BasicCopySource implementation for SquareSource.
85772func (ss SquareSource) AsSQLDWSource() (*SQLDWSource, bool) {
85773	return nil, false
85774}
85775
85776// AsSQLSource is the BasicCopySource implementation for SquareSource.
85777func (ss SquareSource) AsSQLSource() (*SQLSource, bool) {
85778	return nil, false
85779}
85780
85781// AsSapEccSource is the BasicCopySource implementation for SquareSource.
85782func (ss SquareSource) AsSapEccSource() (*SapEccSource, bool) {
85783	return nil, false
85784}
85785
85786// AsSapCloudForCustomerSource is the BasicCopySource implementation for SquareSource.
85787func (ss SquareSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
85788	return nil, false
85789}
85790
85791// AsSalesforceSource is the BasicCopySource implementation for SquareSource.
85792func (ss SquareSource) AsSalesforceSource() (*SalesforceSource, bool) {
85793	return nil, false
85794}
85795
85796// AsRelationalSource is the BasicCopySource implementation for SquareSource.
85797func (ss SquareSource) AsRelationalSource() (*RelationalSource, bool) {
85798	return nil, false
85799}
85800
85801// AsDynamicsSource is the BasicCopySource implementation for SquareSource.
85802func (ss SquareSource) AsDynamicsSource() (*DynamicsSource, bool) {
85803	return nil, false
85804}
85805
85806// AsDocumentDbCollectionSource is the BasicCopySource implementation for SquareSource.
85807func (ss SquareSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
85808	return nil, false
85809}
85810
85811// AsBlobSource is the BasicCopySource implementation for SquareSource.
85812func (ss SquareSource) AsBlobSource() (*BlobSource, bool) {
85813	return nil, false
85814}
85815
85816// AsAzureTableSource is the BasicCopySource implementation for SquareSource.
85817func (ss SquareSource) AsAzureTableSource() (*AzureTableSource, bool) {
85818	return nil, false
85819}
85820
85821// AsCopySource is the BasicCopySource implementation for SquareSource.
85822func (ss SquareSource) AsCopySource() (*CopySource, bool) {
85823	return nil, false
85824}
85825
85826// AsBasicCopySource is the BasicCopySource implementation for SquareSource.
85827func (ss SquareSource) AsBasicCopySource() (BasicCopySource, bool) {
85828	return &ss, true
85829}
85830
85831// SSISExecutionParameter SSIS execution parameter.
85832type SSISExecutionParameter struct {
85833	// Value - SSIS package execution parameter value. Type: string (or Expression with resultType string).
85834	Value interface{} `json:"value,omitempty"`
85835}
85836
85837// SSISPackageLocation SSIS package location.
85838type SSISPackageLocation struct {
85839	// PackagePath - The SSIS package path.
85840	PackagePath *string `json:"packagePath,omitempty"`
85841}
85842
85843// SSISPropertyOverride SSIS property override.
85844type SSISPropertyOverride struct {
85845	// Value - SSIS package property override value. Type: string (or Expression with resultType string).
85846	Value interface{} `json:"value,omitempty"`
85847	// IsSensitive - Whether SSIS package property override value is sensitive data. Value will be encrypted in SSISDB if it is true
85848	IsSensitive *bool `json:"isSensitive,omitempty"`
85849}
85850
85851// StagingSettings staging settings.
85852type StagingSettings struct {
85853	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
85854	AdditionalProperties map[string]interface{} `json:""`
85855	// LinkedServiceName - Staging linked service reference.
85856	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
85857	// Path - The path to storage for storing the interim data. Type: string (or Expression with resultType string).
85858	Path interface{} `json:"path,omitempty"`
85859	// EnableCompression - Specifies whether to use compression when copying data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean).
85860	EnableCompression interface{} `json:"enableCompression,omitempty"`
85861}
85862
85863// MarshalJSON is the custom marshaler for StagingSettings.
85864func (ss StagingSettings) MarshalJSON() ([]byte, error) {
85865	objectMap := make(map[string]interface{})
85866	if ss.LinkedServiceName != nil {
85867		objectMap["linkedServiceName"] = ss.LinkedServiceName
85868	}
85869	objectMap["path"] = ss.Path
85870	objectMap["enableCompression"] = ss.EnableCompression
85871	for k, v := range ss.AdditionalProperties {
85872		objectMap[k] = v
85873	}
85874	return json.Marshal(objectMap)
85875}
85876
85877// StoredProcedureParameter SQL stored procedure parameter.
85878type StoredProcedureParameter struct {
85879	// Value - Stored procedure parameter value. Type: string (or Expression with resultType string).
85880	Value interface{} `json:"value,omitempty"`
85881	// Type - Stored procedure parameter type. Possible values include: 'String', 'Int', 'Decimal', 'GUID', 'Boolean', 'Date'
85882	Type StoredProcedureParameterType `json:"type,omitempty"`
85883}
85884
85885// SubResource azure Data Factory nested resource, which belongs to a factory.
85886type SubResource struct {
85887	// ID - The resource identifier.
85888	ID *string `json:"id,omitempty"`
85889	// Name - The resource name.
85890	Name *string `json:"name,omitempty"`
85891	// Type - The resource type.
85892	Type *string `json:"type,omitempty"`
85893	// Etag - Etag identifies change in the resource.
85894	Etag *string `json:"etag,omitempty"`
85895}
85896
85897// SybaseLinkedService linked service for Sybase data source.
85898type SybaseLinkedService struct {
85899	// SybaseLinkedServiceTypeProperties - Sybase linked service properties.
85900	*SybaseLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
85901	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
85902	AdditionalProperties map[string]interface{} `json:""`
85903	// ConnectVia - The integration runtime reference.
85904	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
85905	// Description - Linked service description.
85906	Description *string `json:"description,omitempty"`
85907	// Parameters - Parameters for linked service.
85908	Parameters map[string]*ParameterSpecification `json:"parameters"`
85909	// Annotations - List of tags that can be used for describing the Dataset.
85910	Annotations *[]interface{} `json:"annotations,omitempty"`
85911	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
85912	Type TypeBasicLinkedService `json:"type,omitempty"`
85913}
85914
85915// MarshalJSON is the custom marshaler for SybaseLinkedService.
85916func (sls SybaseLinkedService) MarshalJSON() ([]byte, error) {
85917	sls.Type = TypeSybase
85918	objectMap := make(map[string]interface{})
85919	if sls.SybaseLinkedServiceTypeProperties != nil {
85920		objectMap["typeProperties"] = sls.SybaseLinkedServiceTypeProperties
85921	}
85922	if sls.ConnectVia != nil {
85923		objectMap["connectVia"] = sls.ConnectVia
85924	}
85925	if sls.Description != nil {
85926		objectMap["description"] = sls.Description
85927	}
85928	if sls.Parameters != nil {
85929		objectMap["parameters"] = sls.Parameters
85930	}
85931	if sls.Annotations != nil {
85932		objectMap["annotations"] = sls.Annotations
85933	}
85934	if sls.Type != "" {
85935		objectMap["type"] = sls.Type
85936	}
85937	for k, v := range sls.AdditionalProperties {
85938		objectMap[k] = v
85939	}
85940	return json.Marshal(objectMap)
85941}
85942
85943// AsResponsysLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85944func (sls SybaseLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
85945	return nil, false
85946}
85947
85948// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85949func (sls SybaseLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
85950	return nil, false
85951}
85952
85953// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85954func (sls SybaseLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
85955	return nil, false
85956}
85957
85958// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85959func (sls SybaseLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
85960	return nil, false
85961}
85962
85963// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85964func (sls SybaseLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
85965	return nil, false
85966}
85967
85968// AsNetezzaLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85969func (sls SybaseLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
85970	return nil, false
85971}
85972
85973// AsVerticaLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85974func (sls SybaseLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
85975	return nil, false
85976}
85977
85978// AsZohoLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85979func (sls SybaseLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
85980	return nil, false
85981}
85982
85983// AsXeroLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85984func (sls SybaseLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
85985	return nil, false
85986}
85987
85988// AsSquareLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85989func (sls SybaseLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
85990	return nil, false
85991}
85992
85993// AsSparkLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85994func (sls SybaseLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
85995	return nil, false
85996}
85997
85998// AsShopifyLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
85999func (sls SybaseLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
86000	return nil, false
86001}
86002
86003// AsServiceNowLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86004func (sls SybaseLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
86005	return nil, false
86006}
86007
86008// AsQuickBooksLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86009func (sls SybaseLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
86010	return nil, false
86011}
86012
86013// AsPrestoLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86014func (sls SybaseLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
86015	return nil, false
86016}
86017
86018// AsPhoenixLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86019func (sls SybaseLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
86020	return nil, false
86021}
86022
86023// AsPaypalLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86024func (sls SybaseLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
86025	return nil, false
86026}
86027
86028// AsMarketoLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86029func (sls SybaseLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
86030	return nil, false
86031}
86032
86033// AsMariaDBLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86034func (sls SybaseLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
86035	return nil, false
86036}
86037
86038// AsMagentoLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86039func (sls SybaseLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
86040	return nil, false
86041}
86042
86043// AsJiraLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86044func (sls SybaseLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
86045	return nil, false
86046}
86047
86048// AsImpalaLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86049func (sls SybaseLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
86050	return nil, false
86051}
86052
86053// AsHubspotLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86054func (sls SybaseLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
86055	return nil, false
86056}
86057
86058// AsHiveLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86059func (sls SybaseLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
86060	return nil, false
86061}
86062
86063// AsHBaseLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86064func (sls SybaseLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
86065	return nil, false
86066}
86067
86068// AsGreenplumLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86069func (sls SybaseLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
86070	return nil, false
86071}
86072
86073// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86074func (sls SybaseLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
86075	return nil, false
86076}
86077
86078// AsEloquaLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86079func (sls SybaseLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
86080	return nil, false
86081}
86082
86083// AsDrillLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86084func (sls SybaseLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
86085	return nil, false
86086}
86087
86088// AsCouchbaseLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86089func (sls SybaseLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
86090	return nil, false
86091}
86092
86093// AsConcurLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86094func (sls SybaseLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
86095	return nil, false
86096}
86097
86098// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86099func (sls SybaseLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
86100	return nil, false
86101}
86102
86103// AsAmazonMWSLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86104func (sls SybaseLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
86105	return nil, false
86106}
86107
86108// AsSapHanaLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86109func (sls SybaseLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
86110	return nil, false
86111}
86112
86113// AsSapBWLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86114func (sls SybaseLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
86115	return nil, false
86116}
86117
86118// AsSftpServerLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86119func (sls SybaseLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
86120	return nil, false
86121}
86122
86123// AsFtpServerLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86124func (sls SybaseLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
86125	return nil, false
86126}
86127
86128// AsHTTPLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86129func (sls SybaseLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
86130	return nil, false
86131}
86132
86133// AsAzureSearchLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86134func (sls SybaseLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
86135	return nil, false
86136}
86137
86138// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86139func (sls SybaseLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
86140	return nil, false
86141}
86142
86143// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86144func (sls SybaseLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
86145	return nil, false
86146}
86147
86148// AsAmazonS3LinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86149func (sls SybaseLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
86150	return nil, false
86151}
86152
86153// AsSapEccLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86154func (sls SybaseLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
86155	return nil, false
86156}
86157
86158// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86159func (sls SybaseLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
86160	return nil, false
86161}
86162
86163// AsSalesforceLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86164func (sls SybaseLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
86165	return nil, false
86166}
86167
86168// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86169func (sls SybaseLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
86170	return nil, false
86171}
86172
86173// AsMongoDbLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86174func (sls SybaseLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
86175	return nil, false
86176}
86177
86178// AsCassandraLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86179func (sls SybaseLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
86180	return nil, false
86181}
86182
86183// AsWebLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86184func (sls SybaseLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
86185	return nil, false
86186}
86187
86188// AsODataLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86189func (sls SybaseLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
86190	return nil, false
86191}
86192
86193// AsHdfsLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86194func (sls SybaseLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
86195	return nil, false
86196}
86197
86198// AsOdbcLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86199func (sls SybaseLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
86200	return nil, false
86201}
86202
86203// AsAzureMLLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86204func (sls SybaseLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
86205	return nil, false
86206}
86207
86208// AsTeradataLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86209func (sls SybaseLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
86210	return nil, false
86211}
86212
86213// AsDb2LinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86214func (sls SybaseLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
86215	return nil, false
86216}
86217
86218// AsSybaseLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86219func (sls SybaseLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
86220	return &sls, true
86221}
86222
86223// AsPostgreSQLLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86224func (sls SybaseLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
86225	return nil, false
86226}
86227
86228// AsMySQLLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86229func (sls SybaseLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
86230	return nil, false
86231}
86232
86233// AsAzureMySQLLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86234func (sls SybaseLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
86235	return nil, false
86236}
86237
86238// AsOracleLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86239func (sls SybaseLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
86240	return nil, false
86241}
86242
86243// AsFileServerLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86244func (sls SybaseLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
86245	return nil, false
86246}
86247
86248// AsHDInsightLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86249func (sls SybaseLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
86250	return nil, false
86251}
86252
86253// AsDynamicsLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86254func (sls SybaseLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
86255	return nil, false
86256}
86257
86258// AsCosmosDbLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86259func (sls SybaseLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
86260	return nil, false
86261}
86262
86263// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86264func (sls SybaseLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
86265	return nil, false
86266}
86267
86268// AsAzureBatchLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86269func (sls SybaseLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
86270	return nil, false
86271}
86272
86273// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86274func (sls SybaseLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
86275	return nil, false
86276}
86277
86278// AsSQLServerLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86279func (sls SybaseLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
86280	return nil, false
86281}
86282
86283// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86284func (sls SybaseLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
86285	return nil, false
86286}
86287
86288// AsAzureStorageLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86289func (sls SybaseLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
86290	return nil, false
86291}
86292
86293// AsLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86294func (sls SybaseLinkedService) AsLinkedService() (*LinkedService, bool) {
86295	return nil, false
86296}
86297
86298// AsBasicLinkedService is the BasicLinkedService implementation for SybaseLinkedService.
86299func (sls SybaseLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
86300	return &sls, true
86301}
86302
86303// UnmarshalJSON is the custom unmarshaler for SybaseLinkedService struct.
86304func (sls *SybaseLinkedService) UnmarshalJSON(body []byte) error {
86305	var m map[string]*json.RawMessage
86306	err := json.Unmarshal(body, &m)
86307	if err != nil {
86308		return err
86309	}
86310	for k, v := range m {
86311		switch k {
86312		case "typeProperties":
86313			if v != nil {
86314				var sybaseLinkedServiceTypeProperties SybaseLinkedServiceTypeProperties
86315				err = json.Unmarshal(*v, &sybaseLinkedServiceTypeProperties)
86316				if err != nil {
86317					return err
86318				}
86319				sls.SybaseLinkedServiceTypeProperties = &sybaseLinkedServiceTypeProperties
86320			}
86321		default:
86322			if v != nil {
86323				var additionalProperties interface{}
86324				err = json.Unmarshal(*v, &additionalProperties)
86325				if err != nil {
86326					return err
86327				}
86328				if sls.AdditionalProperties == nil {
86329					sls.AdditionalProperties = make(map[string]interface{})
86330				}
86331				sls.AdditionalProperties[k] = additionalProperties
86332			}
86333		case "connectVia":
86334			if v != nil {
86335				var connectVia IntegrationRuntimeReference
86336				err = json.Unmarshal(*v, &connectVia)
86337				if err != nil {
86338					return err
86339				}
86340				sls.ConnectVia = &connectVia
86341			}
86342		case "description":
86343			if v != nil {
86344				var description string
86345				err = json.Unmarshal(*v, &description)
86346				if err != nil {
86347					return err
86348				}
86349				sls.Description = &description
86350			}
86351		case "parameters":
86352			if v != nil {
86353				var parameters map[string]*ParameterSpecification
86354				err = json.Unmarshal(*v, &parameters)
86355				if err != nil {
86356					return err
86357				}
86358				sls.Parameters = parameters
86359			}
86360		case "annotations":
86361			if v != nil {
86362				var annotations []interface{}
86363				err = json.Unmarshal(*v, &annotations)
86364				if err != nil {
86365					return err
86366				}
86367				sls.Annotations = &annotations
86368			}
86369		case "type":
86370			if v != nil {
86371				var typeVar TypeBasicLinkedService
86372				err = json.Unmarshal(*v, &typeVar)
86373				if err != nil {
86374					return err
86375				}
86376				sls.Type = typeVar
86377			}
86378		}
86379	}
86380
86381	return nil
86382}
86383
86384// SybaseLinkedServiceTypeProperties sybase linked service properties.
86385type SybaseLinkedServiceTypeProperties struct {
86386	// Server - Server name for connection. Type: string (or Expression with resultType string).
86387	Server interface{} `json:"server,omitempty"`
86388	// Database - Database name for connection. Type: string (or Expression with resultType string).
86389	Database interface{} `json:"database,omitempty"`
86390	// Schema - Schema name for connection. Type: string (or Expression with resultType string).
86391	Schema interface{} `json:"schema,omitempty"`
86392	// AuthenticationType - AuthenticationType to be used for connection. Possible values include: 'SybaseAuthenticationTypeBasic', 'SybaseAuthenticationTypeWindows'
86393	AuthenticationType SybaseAuthenticationType `json:"authenticationType,omitempty"`
86394	// Username - Username for authentication. Type: string (or Expression with resultType string).
86395	Username interface{} `json:"username,omitempty"`
86396	// Password - Password for authentication.
86397	Password BasicSecretBase `json:"password,omitempty"`
86398	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
86399	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
86400}
86401
86402// UnmarshalJSON is the custom unmarshaler for SybaseLinkedServiceTypeProperties struct.
86403func (slstp *SybaseLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
86404	var m map[string]*json.RawMessage
86405	err := json.Unmarshal(body, &m)
86406	if err != nil {
86407		return err
86408	}
86409	for k, v := range m {
86410		switch k {
86411		case "server":
86412			if v != nil {
86413				var server interface{}
86414				err = json.Unmarshal(*v, &server)
86415				if err != nil {
86416					return err
86417				}
86418				slstp.Server = server
86419			}
86420		case "database":
86421			if v != nil {
86422				var databaseVar interface{}
86423				err = json.Unmarshal(*v, &databaseVar)
86424				if err != nil {
86425					return err
86426				}
86427				slstp.Database = databaseVar
86428			}
86429		case "schema":
86430			if v != nil {
86431				var schema interface{}
86432				err = json.Unmarshal(*v, &schema)
86433				if err != nil {
86434					return err
86435				}
86436				slstp.Schema = schema
86437			}
86438		case "authenticationType":
86439			if v != nil {
86440				var authenticationType SybaseAuthenticationType
86441				err = json.Unmarshal(*v, &authenticationType)
86442				if err != nil {
86443					return err
86444				}
86445				slstp.AuthenticationType = authenticationType
86446			}
86447		case "username":
86448			if v != nil {
86449				var username interface{}
86450				err = json.Unmarshal(*v, &username)
86451				if err != nil {
86452					return err
86453				}
86454				slstp.Username = username
86455			}
86456		case "password":
86457			if v != nil {
86458				password, err := unmarshalBasicSecretBase(*v)
86459				if err != nil {
86460					return err
86461				}
86462				slstp.Password = password
86463			}
86464		case "encryptedCredential":
86465			if v != nil {
86466				var encryptedCredential interface{}
86467				err = json.Unmarshal(*v, &encryptedCredential)
86468				if err != nil {
86469					return err
86470				}
86471				slstp.EncryptedCredential = encryptedCredential
86472			}
86473		}
86474	}
86475
86476	return nil
86477}
86478
86479// TabularTranslator a copy activity tabular translator.
86480type TabularTranslator struct {
86481	// ColumnMappings - Column mappings. Type: string (or Expression with resultType string).
86482	ColumnMappings interface{} `json:"columnMappings,omitempty"`
86483	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
86484	AdditionalProperties map[string]interface{} `json:""`
86485	// Type - Possible values include: 'TypeCopyTranslator', 'TypeTabularTranslator'
86486	Type TypeBasicCopyTranslator `json:"type,omitempty"`
86487}
86488
86489// MarshalJSON is the custom marshaler for TabularTranslator.
86490func (tt TabularTranslator) MarshalJSON() ([]byte, error) {
86491	tt.Type = TypeTabularTranslator
86492	objectMap := make(map[string]interface{})
86493	objectMap["columnMappings"] = tt.ColumnMappings
86494	if tt.Type != "" {
86495		objectMap["type"] = tt.Type
86496	}
86497	for k, v := range tt.AdditionalProperties {
86498		objectMap[k] = v
86499	}
86500	return json.Marshal(objectMap)
86501}
86502
86503// AsTabularTranslator is the BasicCopyTranslator implementation for TabularTranslator.
86504func (tt TabularTranslator) AsTabularTranslator() (*TabularTranslator, bool) {
86505	return &tt, true
86506}
86507
86508// AsCopyTranslator is the BasicCopyTranslator implementation for TabularTranslator.
86509func (tt TabularTranslator) AsCopyTranslator() (*CopyTranslator, bool) {
86510	return nil, false
86511}
86512
86513// AsBasicCopyTranslator is the BasicCopyTranslator implementation for TabularTranslator.
86514func (tt TabularTranslator) AsBasicCopyTranslator() (BasicCopyTranslator, bool) {
86515	return &tt, true
86516}
86517
86518// TeradataLinkedService linked service for Teradata data source.
86519type TeradataLinkedService struct {
86520	// TeradataLinkedServiceTypeProperties - Teradata linked service properties.
86521	*TeradataLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
86522	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
86523	AdditionalProperties map[string]interface{} `json:""`
86524	// ConnectVia - The integration runtime reference.
86525	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
86526	// Description - Linked service description.
86527	Description *string `json:"description,omitempty"`
86528	// Parameters - Parameters for linked service.
86529	Parameters map[string]*ParameterSpecification `json:"parameters"`
86530	// Annotations - List of tags that can be used for describing the Dataset.
86531	Annotations *[]interface{} `json:"annotations,omitempty"`
86532	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
86533	Type TypeBasicLinkedService `json:"type,omitempty"`
86534}
86535
86536// MarshalJSON is the custom marshaler for TeradataLinkedService.
86537func (TLSVar TeradataLinkedService) MarshalJSON() ([]byte, error) {
86538	TLSVar.Type = TypeTeradata
86539	objectMap := make(map[string]interface{})
86540	if TLSVar.TeradataLinkedServiceTypeProperties != nil {
86541		objectMap["typeProperties"] = TLSVar.TeradataLinkedServiceTypeProperties
86542	}
86543	if TLSVar.ConnectVia != nil {
86544		objectMap["connectVia"] = TLSVar.ConnectVia
86545	}
86546	if TLSVar.Description != nil {
86547		objectMap["description"] = TLSVar.Description
86548	}
86549	if TLSVar.Parameters != nil {
86550		objectMap["parameters"] = TLSVar.Parameters
86551	}
86552	if TLSVar.Annotations != nil {
86553		objectMap["annotations"] = TLSVar.Annotations
86554	}
86555	if TLSVar.Type != "" {
86556		objectMap["type"] = TLSVar.Type
86557	}
86558	for k, v := range TLSVar.AdditionalProperties {
86559		objectMap[k] = v
86560	}
86561	return json.Marshal(objectMap)
86562}
86563
86564// AsResponsysLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86565func (TLSVar TeradataLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
86566	return nil, false
86567}
86568
86569// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86570func (TLSVar TeradataLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
86571	return nil, false
86572}
86573
86574// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86575func (TLSVar TeradataLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
86576	return nil, false
86577}
86578
86579// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86580func (TLSVar TeradataLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
86581	return nil, false
86582}
86583
86584// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86585func (TLSVar TeradataLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
86586	return nil, false
86587}
86588
86589// AsNetezzaLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86590func (TLSVar TeradataLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
86591	return nil, false
86592}
86593
86594// AsVerticaLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86595func (TLSVar TeradataLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
86596	return nil, false
86597}
86598
86599// AsZohoLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86600func (TLSVar TeradataLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
86601	return nil, false
86602}
86603
86604// AsXeroLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86605func (TLSVar TeradataLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
86606	return nil, false
86607}
86608
86609// AsSquareLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86610func (TLSVar TeradataLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
86611	return nil, false
86612}
86613
86614// AsSparkLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86615func (TLSVar TeradataLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
86616	return nil, false
86617}
86618
86619// AsShopifyLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86620func (TLSVar TeradataLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
86621	return nil, false
86622}
86623
86624// AsServiceNowLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86625func (TLSVar TeradataLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
86626	return nil, false
86627}
86628
86629// AsQuickBooksLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86630func (TLSVar TeradataLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
86631	return nil, false
86632}
86633
86634// AsPrestoLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86635func (TLSVar TeradataLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
86636	return nil, false
86637}
86638
86639// AsPhoenixLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86640func (TLSVar TeradataLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
86641	return nil, false
86642}
86643
86644// AsPaypalLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86645func (TLSVar TeradataLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
86646	return nil, false
86647}
86648
86649// AsMarketoLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86650func (TLSVar TeradataLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
86651	return nil, false
86652}
86653
86654// AsMariaDBLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86655func (TLSVar TeradataLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
86656	return nil, false
86657}
86658
86659// AsMagentoLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86660func (TLSVar TeradataLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
86661	return nil, false
86662}
86663
86664// AsJiraLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86665func (TLSVar TeradataLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
86666	return nil, false
86667}
86668
86669// AsImpalaLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86670func (TLSVar TeradataLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
86671	return nil, false
86672}
86673
86674// AsHubspotLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86675func (TLSVar TeradataLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
86676	return nil, false
86677}
86678
86679// AsHiveLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86680func (TLSVar TeradataLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
86681	return nil, false
86682}
86683
86684// AsHBaseLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86685func (TLSVar TeradataLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
86686	return nil, false
86687}
86688
86689// AsGreenplumLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86690func (TLSVar TeradataLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
86691	return nil, false
86692}
86693
86694// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86695func (TLSVar TeradataLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
86696	return nil, false
86697}
86698
86699// AsEloquaLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86700func (TLSVar TeradataLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
86701	return nil, false
86702}
86703
86704// AsDrillLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86705func (TLSVar TeradataLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
86706	return nil, false
86707}
86708
86709// AsCouchbaseLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86710func (TLSVar TeradataLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
86711	return nil, false
86712}
86713
86714// AsConcurLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86715func (TLSVar TeradataLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
86716	return nil, false
86717}
86718
86719// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86720func (TLSVar TeradataLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
86721	return nil, false
86722}
86723
86724// AsAmazonMWSLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86725func (TLSVar TeradataLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
86726	return nil, false
86727}
86728
86729// AsSapHanaLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86730func (TLSVar TeradataLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
86731	return nil, false
86732}
86733
86734// AsSapBWLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86735func (TLSVar TeradataLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
86736	return nil, false
86737}
86738
86739// AsSftpServerLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86740func (TLSVar TeradataLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
86741	return nil, false
86742}
86743
86744// AsFtpServerLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86745func (TLSVar TeradataLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
86746	return nil, false
86747}
86748
86749// AsHTTPLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86750func (TLSVar TeradataLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
86751	return nil, false
86752}
86753
86754// AsAzureSearchLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86755func (TLSVar TeradataLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
86756	return nil, false
86757}
86758
86759// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86760func (TLSVar TeradataLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
86761	return nil, false
86762}
86763
86764// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86765func (TLSVar TeradataLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
86766	return nil, false
86767}
86768
86769// AsAmazonS3LinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86770func (TLSVar TeradataLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
86771	return nil, false
86772}
86773
86774// AsSapEccLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86775func (TLSVar TeradataLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
86776	return nil, false
86777}
86778
86779// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86780func (TLSVar TeradataLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
86781	return nil, false
86782}
86783
86784// AsSalesforceLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86785func (TLSVar TeradataLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
86786	return nil, false
86787}
86788
86789// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86790func (TLSVar TeradataLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
86791	return nil, false
86792}
86793
86794// AsMongoDbLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86795func (TLSVar TeradataLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
86796	return nil, false
86797}
86798
86799// AsCassandraLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86800func (TLSVar TeradataLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
86801	return nil, false
86802}
86803
86804// AsWebLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86805func (TLSVar TeradataLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
86806	return nil, false
86807}
86808
86809// AsODataLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86810func (TLSVar TeradataLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
86811	return nil, false
86812}
86813
86814// AsHdfsLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86815func (TLSVar TeradataLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
86816	return nil, false
86817}
86818
86819// AsOdbcLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86820func (TLSVar TeradataLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
86821	return nil, false
86822}
86823
86824// AsAzureMLLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86825func (TLSVar TeradataLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
86826	return nil, false
86827}
86828
86829// AsTeradataLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86830func (TLSVar TeradataLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
86831	return &TLSVar, true
86832}
86833
86834// AsDb2LinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86835func (TLSVar TeradataLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
86836	return nil, false
86837}
86838
86839// AsSybaseLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86840func (TLSVar TeradataLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
86841	return nil, false
86842}
86843
86844// AsPostgreSQLLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86845func (TLSVar TeradataLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
86846	return nil, false
86847}
86848
86849// AsMySQLLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86850func (TLSVar TeradataLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
86851	return nil, false
86852}
86853
86854// AsAzureMySQLLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86855func (TLSVar TeradataLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
86856	return nil, false
86857}
86858
86859// AsOracleLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86860func (TLSVar TeradataLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
86861	return nil, false
86862}
86863
86864// AsFileServerLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86865func (TLSVar TeradataLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
86866	return nil, false
86867}
86868
86869// AsHDInsightLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86870func (TLSVar TeradataLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
86871	return nil, false
86872}
86873
86874// AsDynamicsLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86875func (TLSVar TeradataLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
86876	return nil, false
86877}
86878
86879// AsCosmosDbLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86880func (TLSVar TeradataLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
86881	return nil, false
86882}
86883
86884// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86885func (TLSVar TeradataLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
86886	return nil, false
86887}
86888
86889// AsAzureBatchLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86890func (TLSVar TeradataLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
86891	return nil, false
86892}
86893
86894// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86895func (TLSVar TeradataLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
86896	return nil, false
86897}
86898
86899// AsSQLServerLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86900func (TLSVar TeradataLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
86901	return nil, false
86902}
86903
86904// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86905func (TLSVar TeradataLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
86906	return nil, false
86907}
86908
86909// AsAzureStorageLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86910func (TLSVar TeradataLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
86911	return nil, false
86912}
86913
86914// AsLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86915func (TLSVar TeradataLinkedService) AsLinkedService() (*LinkedService, bool) {
86916	return nil, false
86917}
86918
86919// AsBasicLinkedService is the BasicLinkedService implementation for TeradataLinkedService.
86920func (TLSVar TeradataLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
86921	return &TLSVar, true
86922}
86923
86924// UnmarshalJSON is the custom unmarshaler for TeradataLinkedService struct.
86925func (TLSVar *TeradataLinkedService) UnmarshalJSON(body []byte) error {
86926	var m map[string]*json.RawMessage
86927	err := json.Unmarshal(body, &m)
86928	if err != nil {
86929		return err
86930	}
86931	for k, v := range m {
86932		switch k {
86933		case "typeProperties":
86934			if v != nil {
86935				var teradataLinkedServiceTypeProperties TeradataLinkedServiceTypeProperties
86936				err = json.Unmarshal(*v, &teradataLinkedServiceTypeProperties)
86937				if err != nil {
86938					return err
86939				}
86940				TLSVar.TeradataLinkedServiceTypeProperties = &teradataLinkedServiceTypeProperties
86941			}
86942		default:
86943			if v != nil {
86944				var additionalProperties interface{}
86945				err = json.Unmarshal(*v, &additionalProperties)
86946				if err != nil {
86947					return err
86948				}
86949				if TLSVar.AdditionalProperties == nil {
86950					TLSVar.AdditionalProperties = make(map[string]interface{})
86951				}
86952				TLSVar.AdditionalProperties[k] = additionalProperties
86953			}
86954		case "connectVia":
86955			if v != nil {
86956				var connectVia IntegrationRuntimeReference
86957				err = json.Unmarshal(*v, &connectVia)
86958				if err != nil {
86959					return err
86960				}
86961				TLSVar.ConnectVia = &connectVia
86962			}
86963		case "description":
86964			if v != nil {
86965				var description string
86966				err = json.Unmarshal(*v, &description)
86967				if err != nil {
86968					return err
86969				}
86970				TLSVar.Description = &description
86971			}
86972		case "parameters":
86973			if v != nil {
86974				var parameters map[string]*ParameterSpecification
86975				err = json.Unmarshal(*v, &parameters)
86976				if err != nil {
86977					return err
86978				}
86979				TLSVar.Parameters = parameters
86980			}
86981		case "annotations":
86982			if v != nil {
86983				var annotations []interface{}
86984				err = json.Unmarshal(*v, &annotations)
86985				if err != nil {
86986					return err
86987				}
86988				TLSVar.Annotations = &annotations
86989			}
86990		case "type":
86991			if v != nil {
86992				var typeVar TypeBasicLinkedService
86993				err = json.Unmarshal(*v, &typeVar)
86994				if err != nil {
86995					return err
86996				}
86997				TLSVar.Type = typeVar
86998			}
86999		}
87000	}
87001
87002	return nil
87003}
87004
87005// TeradataLinkedServiceTypeProperties teradata linked service properties.
87006type TeradataLinkedServiceTypeProperties struct {
87007	// Server - Server name for connection. Type: string (or Expression with resultType string).
87008	Server interface{} `json:"server,omitempty"`
87009	// Schema - Schema name for connection. Type: string (or Expression with resultType string).
87010	Schema interface{} `json:"schema,omitempty"`
87011	// AuthenticationType - AuthenticationType to be used for connection. Possible values include: 'TeradataAuthenticationTypeBasic', 'TeradataAuthenticationTypeWindows'
87012	AuthenticationType TeradataAuthenticationType `json:"authenticationType,omitempty"`
87013	// Username - Username for authentication. Type: string (or Expression with resultType string).
87014	Username interface{} `json:"username,omitempty"`
87015	// Password - Password for authentication.
87016	Password BasicSecretBase `json:"password,omitempty"`
87017	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
87018	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
87019}
87020
87021// UnmarshalJSON is the custom unmarshaler for TeradataLinkedServiceTypeProperties struct.
87022func (tlstp *TeradataLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
87023	var m map[string]*json.RawMessage
87024	err := json.Unmarshal(body, &m)
87025	if err != nil {
87026		return err
87027	}
87028	for k, v := range m {
87029		switch k {
87030		case "server":
87031			if v != nil {
87032				var server interface{}
87033				err = json.Unmarshal(*v, &server)
87034				if err != nil {
87035					return err
87036				}
87037				tlstp.Server = server
87038			}
87039		case "schema":
87040			if v != nil {
87041				var schema interface{}
87042				err = json.Unmarshal(*v, &schema)
87043				if err != nil {
87044					return err
87045				}
87046				tlstp.Schema = schema
87047			}
87048		case "authenticationType":
87049			if v != nil {
87050				var authenticationType TeradataAuthenticationType
87051				err = json.Unmarshal(*v, &authenticationType)
87052				if err != nil {
87053					return err
87054				}
87055				tlstp.AuthenticationType = authenticationType
87056			}
87057		case "username":
87058			if v != nil {
87059				var username interface{}
87060				err = json.Unmarshal(*v, &username)
87061				if err != nil {
87062					return err
87063				}
87064				tlstp.Username = username
87065			}
87066		case "password":
87067			if v != nil {
87068				password, err := unmarshalBasicSecretBase(*v)
87069				if err != nil {
87070					return err
87071				}
87072				tlstp.Password = password
87073			}
87074		case "encryptedCredential":
87075			if v != nil {
87076				var encryptedCredential interface{}
87077				err = json.Unmarshal(*v, &encryptedCredential)
87078				if err != nil {
87079					return err
87080				}
87081				tlstp.EncryptedCredential = encryptedCredential
87082			}
87083		}
87084	}
87085
87086	return nil
87087}
87088
87089// TextFormat the data stored in text format.
87090type TextFormat struct {
87091	// ColumnDelimiter - The column delimiter. Type: string (or Expression with resultType string).
87092	ColumnDelimiter interface{} `json:"columnDelimiter,omitempty"`
87093	// RowDelimiter - The row delimiter. Type: string (or Expression with resultType string).
87094	RowDelimiter interface{} `json:"rowDelimiter,omitempty"`
87095	// EscapeChar - The escape character. Type: string (or Expression with resultType string).
87096	EscapeChar interface{} `json:"escapeChar,omitempty"`
87097	// QuoteChar - The quote character. Type: string (or Expression with resultType string).
87098	QuoteChar interface{} `json:"quoteChar,omitempty"`
87099	// NullValue - The null value string. Type: string (or Expression with resultType string).
87100	NullValue interface{} `json:"nullValue,omitempty"`
87101	// EncodingName - The code page name of the preferred encoding. If miss, the default value is ΓÇ£utf-8ΓÇ¥, unless BOM denotes another Unicode encoding. Refer to the ΓÇ£NameΓÇ¥ column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string).
87102	EncodingName interface{} `json:"encodingName,omitempty"`
87103	// TreatEmptyAsNull - Treat empty column values in the text file as null. The default value is true. Type: boolean (or Expression with resultType boolean).
87104	TreatEmptyAsNull interface{} `json:"treatEmptyAsNull,omitempty"`
87105	// SkipLineCount - The number of lines/rows to be skipped when parsing text files. The default value is 0. Type: integer (or Expression with resultType integer).
87106	SkipLineCount interface{} `json:"skipLineCount,omitempty"`
87107	// FirstRowAsHeader - When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean).
87108	FirstRowAsHeader interface{} `json:"firstRowAsHeader,omitempty"`
87109	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
87110	AdditionalProperties map[string]interface{} `json:""`
87111	// Serializer - Serializer. Type: string (or Expression with resultType string).
87112	Serializer interface{} `json:"serializer,omitempty"`
87113	// Deserializer - Deserializer. Type: string (or Expression with resultType string).
87114	Deserializer interface{} `json:"deserializer,omitempty"`
87115	// Type - Possible values include: 'TypeDatasetStorageFormat', 'TypeParquetFormat', 'TypeOrcFormat', 'TypeAvroFormat', 'TypeJSONFormat', 'TypeTextFormat'
87116	Type TypeBasicDatasetStorageFormat `json:"type,omitempty"`
87117}
87118
87119// MarshalJSON is the custom marshaler for TextFormat.
87120func (tf TextFormat) MarshalJSON() ([]byte, error) {
87121	tf.Type = TypeTextFormat
87122	objectMap := make(map[string]interface{})
87123	objectMap["columnDelimiter"] = tf.ColumnDelimiter
87124	objectMap["rowDelimiter"] = tf.RowDelimiter
87125	objectMap["escapeChar"] = tf.EscapeChar
87126	objectMap["quoteChar"] = tf.QuoteChar
87127	objectMap["nullValue"] = tf.NullValue
87128	objectMap["encodingName"] = tf.EncodingName
87129	objectMap["treatEmptyAsNull"] = tf.TreatEmptyAsNull
87130	objectMap["skipLineCount"] = tf.SkipLineCount
87131	objectMap["firstRowAsHeader"] = tf.FirstRowAsHeader
87132	objectMap["serializer"] = tf.Serializer
87133	objectMap["deserializer"] = tf.Deserializer
87134	if tf.Type != "" {
87135		objectMap["type"] = tf.Type
87136	}
87137	for k, v := range tf.AdditionalProperties {
87138		objectMap[k] = v
87139	}
87140	return json.Marshal(objectMap)
87141}
87142
87143// AsParquetFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87144func (tf TextFormat) AsParquetFormat() (*ParquetFormat, bool) {
87145	return nil, false
87146}
87147
87148// AsOrcFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87149func (tf TextFormat) AsOrcFormat() (*OrcFormat, bool) {
87150	return nil, false
87151}
87152
87153// AsAvroFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87154func (tf TextFormat) AsAvroFormat() (*AvroFormat, bool) {
87155	return nil, false
87156}
87157
87158// AsJSONFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87159func (tf TextFormat) AsJSONFormat() (*JSONFormat, bool) {
87160	return nil, false
87161}
87162
87163// AsTextFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87164func (tf TextFormat) AsTextFormat() (*TextFormat, bool) {
87165	return &tf, true
87166}
87167
87168// AsDatasetStorageFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87169func (tf TextFormat) AsDatasetStorageFormat() (*DatasetStorageFormat, bool) {
87170	return nil, false
87171}
87172
87173// AsBasicDatasetStorageFormat is the BasicDatasetStorageFormat implementation for TextFormat.
87174func (tf TextFormat) AsBasicDatasetStorageFormat() (BasicDatasetStorageFormat, bool) {
87175	return &tf, true
87176}
87177
87178// BasicTrigger azure data factory nested object which contains information about creating pipeline run
87179type BasicTrigger interface {
87180	AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool)
87181	AsBlobTrigger() (*BlobTrigger, bool)
87182	AsScheduleTrigger() (*ScheduleTrigger, bool)
87183	AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool)
87184	AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool)
87185	AsTrigger() (*Trigger, bool)
87186}
87187
87188// Trigger azure data factory nested object which contains information about creating pipeline run
87189type Trigger struct {
87190	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
87191	AdditionalProperties map[string]interface{} `json:""`
87192	// Description - Trigger description.
87193	Description *string `json:"description,omitempty"`
87194	// RuntimeState - Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger. Possible values include: 'TriggerRuntimeStateStarted', 'TriggerRuntimeStateStopped', 'TriggerRuntimeStateDisabled'
87195	RuntimeState TriggerRuntimeState `json:"runtimeState,omitempty"`
87196	// Type - Possible values include: 'TypeTrigger', 'TypeTumblingWindowTrigger', 'TypeBlobTrigger', 'TypeScheduleTrigger', 'TypeMultiplePipelineTrigger'
87197	Type TypeBasicTrigger `json:"type,omitempty"`
87198}
87199
87200func unmarshalBasicTrigger(body []byte) (BasicTrigger, error) {
87201	var m map[string]interface{}
87202	err := json.Unmarshal(body, &m)
87203	if err != nil {
87204		return nil, err
87205	}
87206
87207	switch m["type"] {
87208	case string(TypeTumblingWindowTrigger):
87209		var twt TumblingWindowTrigger
87210		err := json.Unmarshal(body, &twt)
87211		return twt, err
87212	case string(TypeBlobTrigger):
87213		var bt BlobTrigger
87214		err := json.Unmarshal(body, &bt)
87215		return bt, err
87216	case string(TypeScheduleTrigger):
87217		var st ScheduleTrigger
87218		err := json.Unmarshal(body, &st)
87219		return st, err
87220	case string(TypeMultiplePipelineTrigger):
87221		var mpt MultiplePipelineTrigger
87222		err := json.Unmarshal(body, &mpt)
87223		return mpt, err
87224	default:
87225		var t Trigger
87226		err := json.Unmarshal(body, &t)
87227		return t, err
87228	}
87229}
87230func unmarshalBasicTriggerArray(body []byte) ([]BasicTrigger, error) {
87231	var rawMessages []*json.RawMessage
87232	err := json.Unmarshal(body, &rawMessages)
87233	if err != nil {
87234		return nil, err
87235	}
87236
87237	tArray := make([]BasicTrigger, len(rawMessages))
87238
87239	for index, rawMessage := range rawMessages {
87240		t, err := unmarshalBasicTrigger(*rawMessage)
87241		if err != nil {
87242			return nil, err
87243		}
87244		tArray[index] = t
87245	}
87246	return tArray, nil
87247}
87248
87249// MarshalJSON is the custom marshaler for Trigger.
87250func (t Trigger) MarshalJSON() ([]byte, error) {
87251	t.Type = TypeTrigger
87252	objectMap := make(map[string]interface{})
87253	if t.Description != nil {
87254		objectMap["description"] = t.Description
87255	}
87256	if t.RuntimeState != "" {
87257		objectMap["runtimeState"] = t.RuntimeState
87258	}
87259	if t.Type != "" {
87260		objectMap["type"] = t.Type
87261	}
87262	for k, v := range t.AdditionalProperties {
87263		objectMap[k] = v
87264	}
87265	return json.Marshal(objectMap)
87266}
87267
87268// AsTumblingWindowTrigger is the BasicTrigger implementation for Trigger.
87269func (t Trigger) AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool) {
87270	return nil, false
87271}
87272
87273// AsBlobTrigger is the BasicTrigger implementation for Trigger.
87274func (t Trigger) AsBlobTrigger() (*BlobTrigger, bool) {
87275	return nil, false
87276}
87277
87278// AsScheduleTrigger is the BasicTrigger implementation for Trigger.
87279func (t Trigger) AsScheduleTrigger() (*ScheduleTrigger, bool) {
87280	return nil, false
87281}
87282
87283// AsMultiplePipelineTrigger is the BasicTrigger implementation for Trigger.
87284func (t Trigger) AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool) {
87285	return nil, false
87286}
87287
87288// AsBasicMultiplePipelineTrigger is the BasicTrigger implementation for Trigger.
87289func (t Trigger) AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool) {
87290	return nil, false
87291}
87292
87293// AsTrigger is the BasicTrigger implementation for Trigger.
87294func (t Trigger) AsTrigger() (*Trigger, bool) {
87295	return &t, true
87296}
87297
87298// AsBasicTrigger is the BasicTrigger implementation for Trigger.
87299func (t Trigger) AsBasicTrigger() (BasicTrigger, bool) {
87300	return &t, true
87301}
87302
87303// TriggerListResponse a list of trigger resources.
87304type TriggerListResponse struct {
87305	autorest.Response `json:"-"`
87306	// Value - List of triggers.
87307	Value *[]TriggerResource `json:"value,omitempty"`
87308	// NextLink - The link to the next page of results, if any remaining results exist.
87309	NextLink *string `json:"nextLink,omitempty"`
87310}
87311
87312// TriggerListResponseIterator provides access to a complete listing of TriggerResource values.
87313type TriggerListResponseIterator struct {
87314	i    int
87315	page TriggerListResponsePage
87316}
87317
87318// Next advances to the next value.  If there was an error making
87319// the request the iterator does not advance and the error is returned.
87320func (iter *TriggerListResponseIterator) Next() error {
87321	iter.i++
87322	if iter.i < len(iter.page.Values()) {
87323		return nil
87324	}
87325	err := iter.page.Next()
87326	if err != nil {
87327		iter.i--
87328		return err
87329	}
87330	iter.i = 0
87331	return nil
87332}
87333
87334// NotDone returns true if the enumeration should be started or is not yet complete.
87335func (iter TriggerListResponseIterator) NotDone() bool {
87336	return iter.page.NotDone() && iter.i < len(iter.page.Values())
87337}
87338
87339// Response returns the raw server response from the last page request.
87340func (iter TriggerListResponseIterator) Response() TriggerListResponse {
87341	return iter.page.Response()
87342}
87343
87344// Value returns the current value or a zero-initialized value if the
87345// iterator has advanced beyond the end of the collection.
87346func (iter TriggerListResponseIterator) Value() TriggerResource {
87347	if !iter.page.NotDone() {
87348		return TriggerResource{}
87349	}
87350	return iter.page.Values()[iter.i]
87351}
87352
87353// IsEmpty returns true if the ListResult contains no values.
87354func (tlr TriggerListResponse) IsEmpty() bool {
87355	return tlr.Value == nil || len(*tlr.Value) == 0
87356}
87357
87358// triggerListResponsePreparer prepares a request to retrieve the next set of results.
87359// It returns nil if no more results exist.
87360func (tlr TriggerListResponse) triggerListResponsePreparer() (*http.Request, error) {
87361	if tlr.NextLink == nil || len(to.String(tlr.NextLink)) < 1 {
87362		return nil, nil
87363	}
87364	return autorest.Prepare(&http.Request{},
87365		autorest.AsJSON(),
87366		autorest.AsGet(),
87367		autorest.WithBaseURL(to.String(tlr.NextLink)))
87368}
87369
87370// TriggerListResponsePage contains a page of TriggerResource values.
87371type TriggerListResponsePage struct {
87372	fn  func(TriggerListResponse) (TriggerListResponse, error)
87373	tlr TriggerListResponse
87374}
87375
87376// Next advances to the next page of values.  If there was an error making
87377// the request the page does not advance and the error is returned.
87378func (page *TriggerListResponsePage) Next() error {
87379	next, err := page.fn(page.tlr)
87380	if err != nil {
87381		return err
87382	}
87383	page.tlr = next
87384	return nil
87385}
87386
87387// NotDone returns true if the page enumeration should be started or is not yet complete.
87388func (page TriggerListResponsePage) NotDone() bool {
87389	return !page.tlr.IsEmpty()
87390}
87391
87392// Response returns the raw server response from the last page request.
87393func (page TriggerListResponsePage) Response() TriggerListResponse {
87394	return page.tlr
87395}
87396
87397// Values returns the slice of values for the current page or nil if there are no values.
87398func (page TriggerListResponsePage) Values() []TriggerResource {
87399	if page.tlr.IsEmpty() {
87400		return nil
87401	}
87402	return *page.tlr.Value
87403}
87404
87405// TriggerPipelineReference pipeline that needs to be triggered with the given parameters.
87406type TriggerPipelineReference struct {
87407	// PipelineReference - Pipeline reference.
87408	PipelineReference *PipelineReference `json:"pipelineReference,omitempty"`
87409	// Parameters - Pipeline parameters.
87410	Parameters map[string]interface{} `json:"parameters"`
87411}
87412
87413// MarshalJSON is the custom marshaler for TriggerPipelineReference.
87414func (tpr TriggerPipelineReference) MarshalJSON() ([]byte, error) {
87415	objectMap := make(map[string]interface{})
87416	if tpr.PipelineReference != nil {
87417		objectMap["pipelineReference"] = tpr.PipelineReference
87418	}
87419	if tpr.Parameters != nil {
87420		objectMap["parameters"] = tpr.Parameters
87421	}
87422	return json.Marshal(objectMap)
87423}
87424
87425// TriggerResource trigger resource type.
87426type TriggerResource struct {
87427	autorest.Response `json:"-"`
87428	// Properties - Properties of the trigger.
87429	Properties BasicTrigger `json:"properties,omitempty"`
87430	// ID - The resource identifier.
87431	ID *string `json:"id,omitempty"`
87432	// Name - The resource name.
87433	Name *string `json:"name,omitempty"`
87434	// Type - The resource type.
87435	Type *string `json:"type,omitempty"`
87436	// Etag - Etag identifies change in the resource.
87437	Etag *string `json:"etag,omitempty"`
87438}
87439
87440// UnmarshalJSON is the custom unmarshaler for TriggerResource struct.
87441func (tr *TriggerResource) UnmarshalJSON(body []byte) error {
87442	var m map[string]*json.RawMessage
87443	err := json.Unmarshal(body, &m)
87444	if err != nil {
87445		return err
87446	}
87447	for k, v := range m {
87448		switch k {
87449		case "properties":
87450			if v != nil {
87451				properties, err := unmarshalBasicTrigger(*v)
87452				if err != nil {
87453					return err
87454				}
87455				tr.Properties = properties
87456			}
87457		case "id":
87458			if v != nil {
87459				var ID string
87460				err = json.Unmarshal(*v, &ID)
87461				if err != nil {
87462					return err
87463				}
87464				tr.ID = &ID
87465			}
87466		case "name":
87467			if v != nil {
87468				var name string
87469				err = json.Unmarshal(*v, &name)
87470				if err != nil {
87471					return err
87472				}
87473				tr.Name = &name
87474			}
87475		case "type":
87476			if v != nil {
87477				var typeVar string
87478				err = json.Unmarshal(*v, &typeVar)
87479				if err != nil {
87480					return err
87481				}
87482				tr.Type = &typeVar
87483			}
87484		case "etag":
87485			if v != nil {
87486				var etag string
87487				err = json.Unmarshal(*v, &etag)
87488				if err != nil {
87489					return err
87490				}
87491				tr.Etag = &etag
87492			}
87493		}
87494	}
87495
87496	return nil
87497}
87498
87499// TriggerRun trigger runs.
87500type TriggerRun struct {
87501	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
87502	AdditionalProperties map[string]interface{} `json:""`
87503	// TriggerRunID - Trigger run id.
87504	TriggerRunID *string `json:"triggerRunId,omitempty"`
87505	// TriggerName - Trigger name.
87506	TriggerName *string `json:"triggerName,omitempty"`
87507	// TriggerType - Trigger type.
87508	TriggerType *string `json:"triggerType,omitempty"`
87509	// TriggerRunTimestamp - Trigger run start time.
87510	TriggerRunTimestamp *date.Time `json:"triggerRunTimestamp,omitempty"`
87511	// Status - Trigger run status. Possible values include: 'TriggerRunStatusSucceeded', 'TriggerRunStatusFailed', 'TriggerRunStatusInprogress'
87512	Status TriggerRunStatus `json:"status,omitempty"`
87513	// Message - Trigger error message.
87514	Message *string `json:"message,omitempty"`
87515	// Properties - List of property name and value related to trigger run. Name, value pair depends on type of trigger.
87516	Properties map[string]*string `json:"properties"`
87517	// TriggeredPipelines - List of pipeline name and run Id triggered by the trigger run.
87518	TriggeredPipelines map[string]*string `json:"triggeredPipelines"`
87519}
87520
87521// MarshalJSON is the custom marshaler for TriggerRun.
87522func (tr TriggerRun) MarshalJSON() ([]byte, error) {
87523	objectMap := make(map[string]interface{})
87524	if tr.TriggerRunID != nil {
87525		objectMap["triggerRunId"] = tr.TriggerRunID
87526	}
87527	if tr.TriggerName != nil {
87528		objectMap["triggerName"] = tr.TriggerName
87529	}
87530	if tr.TriggerType != nil {
87531		objectMap["triggerType"] = tr.TriggerType
87532	}
87533	if tr.TriggerRunTimestamp != nil {
87534		objectMap["triggerRunTimestamp"] = tr.TriggerRunTimestamp
87535	}
87536	if tr.Status != "" {
87537		objectMap["status"] = tr.Status
87538	}
87539	if tr.Message != nil {
87540		objectMap["message"] = tr.Message
87541	}
87542	if tr.Properties != nil {
87543		objectMap["properties"] = tr.Properties
87544	}
87545	if tr.TriggeredPipelines != nil {
87546		objectMap["triggeredPipelines"] = tr.TriggeredPipelines
87547	}
87548	for k, v := range tr.AdditionalProperties {
87549		objectMap[k] = v
87550	}
87551	return json.Marshal(objectMap)
87552}
87553
87554// TriggerRunListResponse a list of trigger runs.
87555type TriggerRunListResponse struct {
87556	autorest.Response `json:"-"`
87557	// Value - List of trigger runs.
87558	Value *[]TriggerRun `json:"value,omitempty"`
87559	// NextLink - The link to the next page of results, if any remaining results exist.
87560	NextLink *string `json:"nextLink,omitempty"`
87561}
87562
87563// TriggerRunListResponseIterator provides access to a complete listing of TriggerRun values.
87564type TriggerRunListResponseIterator struct {
87565	i    int
87566	page TriggerRunListResponsePage
87567}
87568
87569// Next advances to the next value.  If there was an error making
87570// the request the iterator does not advance and the error is returned.
87571func (iter *TriggerRunListResponseIterator) Next() error {
87572	iter.i++
87573	if iter.i < len(iter.page.Values()) {
87574		return nil
87575	}
87576	err := iter.page.Next()
87577	if err != nil {
87578		iter.i--
87579		return err
87580	}
87581	iter.i = 0
87582	return nil
87583}
87584
87585// NotDone returns true if the enumeration should be started or is not yet complete.
87586func (iter TriggerRunListResponseIterator) NotDone() bool {
87587	return iter.page.NotDone() && iter.i < len(iter.page.Values())
87588}
87589
87590// Response returns the raw server response from the last page request.
87591func (iter TriggerRunListResponseIterator) Response() TriggerRunListResponse {
87592	return iter.page.Response()
87593}
87594
87595// Value returns the current value or a zero-initialized value if the
87596// iterator has advanced beyond the end of the collection.
87597func (iter TriggerRunListResponseIterator) Value() TriggerRun {
87598	if !iter.page.NotDone() {
87599		return TriggerRun{}
87600	}
87601	return iter.page.Values()[iter.i]
87602}
87603
87604// IsEmpty returns true if the ListResult contains no values.
87605func (trlr TriggerRunListResponse) IsEmpty() bool {
87606	return trlr.Value == nil || len(*trlr.Value) == 0
87607}
87608
87609// triggerRunListResponsePreparer prepares a request to retrieve the next set of results.
87610// It returns nil if no more results exist.
87611func (trlr TriggerRunListResponse) triggerRunListResponsePreparer() (*http.Request, error) {
87612	if trlr.NextLink == nil || len(to.String(trlr.NextLink)) < 1 {
87613		return nil, nil
87614	}
87615	return autorest.Prepare(&http.Request{},
87616		autorest.AsJSON(),
87617		autorest.AsGet(),
87618		autorest.WithBaseURL(to.String(trlr.NextLink)))
87619}
87620
87621// TriggerRunListResponsePage contains a page of TriggerRun values.
87622type TriggerRunListResponsePage struct {
87623	fn   func(TriggerRunListResponse) (TriggerRunListResponse, error)
87624	trlr TriggerRunListResponse
87625}
87626
87627// Next advances to the next page of values.  If there was an error making
87628// the request the page does not advance and the error is returned.
87629func (page *TriggerRunListResponsePage) Next() error {
87630	next, err := page.fn(page.trlr)
87631	if err != nil {
87632		return err
87633	}
87634	page.trlr = next
87635	return nil
87636}
87637
87638// NotDone returns true if the page enumeration should be started or is not yet complete.
87639func (page TriggerRunListResponsePage) NotDone() bool {
87640	return !page.trlr.IsEmpty()
87641}
87642
87643// Response returns the raw server response from the last page request.
87644func (page TriggerRunListResponsePage) Response() TriggerRunListResponse {
87645	return page.trlr
87646}
87647
87648// Values returns the slice of values for the current page or nil if there are no values.
87649func (page TriggerRunListResponsePage) Values() []TriggerRun {
87650	if page.trlr.IsEmpty() {
87651		return nil
87652	}
87653	return *page.trlr.Value
87654}
87655
87656// TriggersStartFuture an abstraction for monitoring and retrieving the results of a long-running operation.
87657type TriggersStartFuture struct {
87658	azure.Future
87659	req *http.Request
87660}
87661
87662// Result returns the result of the asynchronous operation.
87663// If the operation has not completed it will return an error.
87664func (future TriggersStartFuture) Result(client TriggersClient) (ar autorest.Response, err error) {
87665	var done bool
87666	done, err = future.Done(client)
87667	if err != nil {
87668		err = autorest.NewErrorWithError(err, "datafactory.TriggersStartFuture", "Result", future.Response(), "Polling failure")
87669		return
87670	}
87671	if !done {
87672		return ar, azure.NewAsyncOpIncompleteError("datafactory.TriggersStartFuture")
87673	}
87674	if future.PollingMethod() == azure.PollingLocation {
87675		ar, err = client.StartResponder(future.Response())
87676		if err != nil {
87677			err = autorest.NewErrorWithError(err, "datafactory.TriggersStartFuture", "Result", future.Response(), "Failure responding to request")
87678		}
87679		return
87680	}
87681	var req *http.Request
87682	var resp *http.Response
87683	if future.PollingURL() != "" {
87684		req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil)
87685		if err != nil {
87686			return
87687		}
87688	} else {
87689		req = autorest.ChangeToGet(future.req)
87690	}
87691	resp, err = autorest.SendWithSender(client, req,
87692		autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
87693	if err != nil {
87694		err = autorest.NewErrorWithError(err, "datafactory.TriggersStartFuture", "Result", resp, "Failure sending request")
87695		return
87696	}
87697	ar, err = client.StartResponder(resp)
87698	if err != nil {
87699		err = autorest.NewErrorWithError(err, "datafactory.TriggersStartFuture", "Result", resp, "Failure responding to request")
87700	}
87701	return
87702}
87703
87704// TriggersStopFuture an abstraction for monitoring and retrieving the results of a long-running operation.
87705type TriggersStopFuture struct {
87706	azure.Future
87707	req *http.Request
87708}
87709
87710// Result returns the result of the asynchronous operation.
87711// If the operation has not completed it will return an error.
87712func (future TriggersStopFuture) Result(client TriggersClient) (ar autorest.Response, err error) {
87713	var done bool
87714	done, err = future.Done(client)
87715	if err != nil {
87716		err = autorest.NewErrorWithError(err, "datafactory.TriggersStopFuture", "Result", future.Response(), "Polling failure")
87717		return
87718	}
87719	if !done {
87720		return ar, azure.NewAsyncOpIncompleteError("datafactory.TriggersStopFuture")
87721	}
87722	if future.PollingMethod() == azure.PollingLocation {
87723		ar, err = client.StopResponder(future.Response())
87724		if err != nil {
87725			err = autorest.NewErrorWithError(err, "datafactory.TriggersStopFuture", "Result", future.Response(), "Failure responding to request")
87726		}
87727		return
87728	}
87729	var req *http.Request
87730	var resp *http.Response
87731	if future.PollingURL() != "" {
87732		req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil)
87733		if err != nil {
87734			return
87735		}
87736	} else {
87737		req = autorest.ChangeToGet(future.req)
87738	}
87739	resp, err = autorest.SendWithSender(client, req,
87740		autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
87741	if err != nil {
87742		err = autorest.NewErrorWithError(err, "datafactory.TriggersStopFuture", "Result", resp, "Failure sending request")
87743		return
87744	}
87745	ar, err = client.StopResponder(resp)
87746	if err != nil {
87747		err = autorest.NewErrorWithError(err, "datafactory.TriggersStopFuture", "Result", resp, "Failure responding to request")
87748	}
87749	return
87750}
87751
87752// TumblingWindowTrigger trigger that schedules pipeline runs for all fixed time interval windows from a start time
87753// without gaps and also supports backfill scenarios (when start time is in the past).
87754type TumblingWindowTrigger struct {
87755	// Pipeline - Pipeline for which runs are created when an event is fired for trigger window that is ready.
87756	Pipeline *TriggerPipelineReference `json:"pipeline,omitempty"`
87757	// TumblingWindowTriggerTypeProperties - Tumbling Window Trigger properties.
87758	*TumblingWindowTriggerTypeProperties `json:"typeProperties,omitempty"`
87759	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
87760	AdditionalProperties map[string]interface{} `json:""`
87761	// Description - Trigger description.
87762	Description *string `json:"description,omitempty"`
87763	// RuntimeState - Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger. Possible values include: 'TriggerRuntimeStateStarted', 'TriggerRuntimeStateStopped', 'TriggerRuntimeStateDisabled'
87764	RuntimeState TriggerRuntimeState `json:"runtimeState,omitempty"`
87765	// Type - Possible values include: 'TypeTrigger', 'TypeTumblingWindowTrigger', 'TypeBlobTrigger', 'TypeScheduleTrigger', 'TypeMultiplePipelineTrigger'
87766	Type TypeBasicTrigger `json:"type,omitempty"`
87767}
87768
87769// MarshalJSON is the custom marshaler for TumblingWindowTrigger.
87770func (twt TumblingWindowTrigger) MarshalJSON() ([]byte, error) {
87771	twt.Type = TypeTumblingWindowTrigger
87772	objectMap := make(map[string]interface{})
87773	if twt.Pipeline != nil {
87774		objectMap["pipeline"] = twt.Pipeline
87775	}
87776	if twt.TumblingWindowTriggerTypeProperties != nil {
87777		objectMap["typeProperties"] = twt.TumblingWindowTriggerTypeProperties
87778	}
87779	if twt.Description != nil {
87780		objectMap["description"] = twt.Description
87781	}
87782	if twt.RuntimeState != "" {
87783		objectMap["runtimeState"] = twt.RuntimeState
87784	}
87785	if twt.Type != "" {
87786		objectMap["type"] = twt.Type
87787	}
87788	for k, v := range twt.AdditionalProperties {
87789		objectMap[k] = v
87790	}
87791	return json.Marshal(objectMap)
87792}
87793
87794// AsTumblingWindowTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87795func (twt TumblingWindowTrigger) AsTumblingWindowTrigger() (*TumblingWindowTrigger, bool) {
87796	return &twt, true
87797}
87798
87799// AsBlobTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87800func (twt TumblingWindowTrigger) AsBlobTrigger() (*BlobTrigger, bool) {
87801	return nil, false
87802}
87803
87804// AsScheduleTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87805func (twt TumblingWindowTrigger) AsScheduleTrigger() (*ScheduleTrigger, bool) {
87806	return nil, false
87807}
87808
87809// AsMultiplePipelineTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87810func (twt TumblingWindowTrigger) AsMultiplePipelineTrigger() (*MultiplePipelineTrigger, bool) {
87811	return nil, false
87812}
87813
87814// AsBasicMultiplePipelineTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87815func (twt TumblingWindowTrigger) AsBasicMultiplePipelineTrigger() (BasicMultiplePipelineTrigger, bool) {
87816	return nil, false
87817}
87818
87819// AsTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87820func (twt TumblingWindowTrigger) AsTrigger() (*Trigger, bool) {
87821	return nil, false
87822}
87823
87824// AsBasicTrigger is the BasicTrigger implementation for TumblingWindowTrigger.
87825func (twt TumblingWindowTrigger) AsBasicTrigger() (BasicTrigger, bool) {
87826	return &twt, true
87827}
87828
87829// UnmarshalJSON is the custom unmarshaler for TumblingWindowTrigger struct.
87830func (twt *TumblingWindowTrigger) UnmarshalJSON(body []byte) error {
87831	var m map[string]*json.RawMessage
87832	err := json.Unmarshal(body, &m)
87833	if err != nil {
87834		return err
87835	}
87836	for k, v := range m {
87837		switch k {
87838		case "pipeline":
87839			if v != nil {
87840				var pipeline TriggerPipelineReference
87841				err = json.Unmarshal(*v, &pipeline)
87842				if err != nil {
87843					return err
87844				}
87845				twt.Pipeline = &pipeline
87846			}
87847		case "typeProperties":
87848			if v != nil {
87849				var tumblingWindowTriggerTypeProperties TumblingWindowTriggerTypeProperties
87850				err = json.Unmarshal(*v, &tumblingWindowTriggerTypeProperties)
87851				if err != nil {
87852					return err
87853				}
87854				twt.TumblingWindowTriggerTypeProperties = &tumblingWindowTriggerTypeProperties
87855			}
87856		default:
87857			if v != nil {
87858				var additionalProperties interface{}
87859				err = json.Unmarshal(*v, &additionalProperties)
87860				if err != nil {
87861					return err
87862				}
87863				if twt.AdditionalProperties == nil {
87864					twt.AdditionalProperties = make(map[string]interface{})
87865				}
87866				twt.AdditionalProperties[k] = additionalProperties
87867			}
87868		case "description":
87869			if v != nil {
87870				var description string
87871				err = json.Unmarshal(*v, &description)
87872				if err != nil {
87873					return err
87874				}
87875				twt.Description = &description
87876			}
87877		case "runtimeState":
87878			if v != nil {
87879				var runtimeState TriggerRuntimeState
87880				err = json.Unmarshal(*v, &runtimeState)
87881				if err != nil {
87882					return err
87883				}
87884				twt.RuntimeState = runtimeState
87885			}
87886		case "type":
87887			if v != nil {
87888				var typeVar TypeBasicTrigger
87889				err = json.Unmarshal(*v, &typeVar)
87890				if err != nil {
87891					return err
87892				}
87893				twt.Type = typeVar
87894			}
87895		}
87896	}
87897
87898	return nil
87899}
87900
87901// TumblingWindowTriggerTypeProperties tumbling Window Trigger properties.
87902type TumblingWindowTriggerTypeProperties struct {
87903	// Frequency - The frequency of the time windows. Possible values include: 'TumblingWindowFrequencyMinute', 'TumblingWindowFrequencyHour'
87904	Frequency TumblingWindowFrequency `json:"frequency,omitempty"`
87905	// Interval - The interval of the time windows. The minimum interval allowed is 15 Minutes.
87906	Interval *int32 `json:"interval,omitempty"`
87907	// StartTime - The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported.
87908	StartTime *date.Time `json:"startTime,omitempty"`
87909	// EndTime - The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported.
87910	EndTime *date.Time `json:"endTime,omitempty"`
87911	// Delay - Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
87912	Delay interface{} `json:"delay,omitempty"`
87913	// MaxConcurrency - The max number of parallel time windows (ready for execution) for which a new run is triggered.
87914	MaxConcurrency *int32 `json:"maxConcurrency,omitempty"`
87915	// RetryPolicy - Retry policy that will be applied for failed pipeline runs.
87916	RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"`
87917}
87918
87919// UntilActivity this activity executes inner activities until the specified boolean expression results to true or
87920// timeout is reached, whichever is earlier.
87921type UntilActivity struct {
87922	// UntilActivityTypeProperties - Until activity properties.
87923	*UntilActivityTypeProperties `json:"typeProperties,omitempty"`
87924	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
87925	AdditionalProperties map[string]interface{} `json:""`
87926	// Name - Activity name.
87927	Name *string `json:"name,omitempty"`
87928	// Description - Activity description.
87929	Description *string `json:"description,omitempty"`
87930	// DependsOn - Activity depends on condition.
87931	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
87932	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
87933	Type TypeBasicActivity `json:"type,omitempty"`
87934}
87935
87936// MarshalJSON is the custom marshaler for UntilActivity.
87937func (ua UntilActivity) MarshalJSON() ([]byte, error) {
87938	ua.Type = TypeUntil
87939	objectMap := make(map[string]interface{})
87940	if ua.UntilActivityTypeProperties != nil {
87941		objectMap["typeProperties"] = ua.UntilActivityTypeProperties
87942	}
87943	if ua.Name != nil {
87944		objectMap["name"] = ua.Name
87945	}
87946	if ua.Description != nil {
87947		objectMap["description"] = ua.Description
87948	}
87949	if ua.DependsOn != nil {
87950		objectMap["dependsOn"] = ua.DependsOn
87951	}
87952	if ua.Type != "" {
87953		objectMap["type"] = ua.Type
87954	}
87955	for k, v := range ua.AdditionalProperties {
87956		objectMap[k] = v
87957	}
87958	return json.Marshal(objectMap)
87959}
87960
87961// AsDatabricksNotebookActivity is the BasicActivity implementation for UntilActivity.
87962func (ua UntilActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
87963	return nil, false
87964}
87965
87966// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for UntilActivity.
87967func (ua UntilActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
87968	return nil, false
87969}
87970
87971// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for UntilActivity.
87972func (ua UntilActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
87973	return nil, false
87974}
87975
87976// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for UntilActivity.
87977func (ua UntilActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
87978	return nil, false
87979}
87980
87981// AsGetMetadataActivity is the BasicActivity implementation for UntilActivity.
87982func (ua UntilActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
87983	return nil, false
87984}
87985
87986// AsWebActivity is the BasicActivity implementation for UntilActivity.
87987func (ua UntilActivity) AsWebActivity() (*WebActivity, bool) {
87988	return nil, false
87989}
87990
87991// AsLookupActivity is the BasicActivity implementation for UntilActivity.
87992func (ua UntilActivity) AsLookupActivity() (*LookupActivity, bool) {
87993	return nil, false
87994}
87995
87996// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for UntilActivity.
87997func (ua UntilActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
87998	return nil, false
87999}
88000
88001// AsCustomActivity is the BasicActivity implementation for UntilActivity.
88002func (ua UntilActivity) AsCustomActivity() (*CustomActivity, bool) {
88003	return nil, false
88004}
88005
88006// AsExecuteSSISPackageActivity is the BasicActivity implementation for UntilActivity.
88007func (ua UntilActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
88008	return nil, false
88009}
88010
88011// AsHDInsightSparkActivity is the BasicActivity implementation for UntilActivity.
88012func (ua UntilActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
88013	return nil, false
88014}
88015
88016// AsHDInsightStreamingActivity is the BasicActivity implementation for UntilActivity.
88017func (ua UntilActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
88018	return nil, false
88019}
88020
88021// AsHDInsightMapReduceActivity is the BasicActivity implementation for UntilActivity.
88022func (ua UntilActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
88023	return nil, false
88024}
88025
88026// AsHDInsightPigActivity is the BasicActivity implementation for UntilActivity.
88027func (ua UntilActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
88028	return nil, false
88029}
88030
88031// AsHDInsightHiveActivity is the BasicActivity implementation for UntilActivity.
88032func (ua UntilActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
88033	return nil, false
88034}
88035
88036// AsCopyActivity is the BasicActivity implementation for UntilActivity.
88037func (ua UntilActivity) AsCopyActivity() (*CopyActivity, bool) {
88038	return nil, false
88039}
88040
88041// AsExecutionActivity is the BasicActivity implementation for UntilActivity.
88042func (ua UntilActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
88043	return nil, false
88044}
88045
88046// AsBasicExecutionActivity is the BasicActivity implementation for UntilActivity.
88047func (ua UntilActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
88048	return nil, false
88049}
88050
88051// AsFilterActivity is the BasicActivity implementation for UntilActivity.
88052func (ua UntilActivity) AsFilterActivity() (*FilterActivity, bool) {
88053	return nil, false
88054}
88055
88056// AsUntilActivity is the BasicActivity implementation for UntilActivity.
88057func (ua UntilActivity) AsUntilActivity() (*UntilActivity, bool) {
88058	return &ua, true
88059}
88060
88061// AsWaitActivity is the BasicActivity implementation for UntilActivity.
88062func (ua UntilActivity) AsWaitActivity() (*WaitActivity, bool) {
88063	return nil, false
88064}
88065
88066// AsForEachActivity is the BasicActivity implementation for UntilActivity.
88067func (ua UntilActivity) AsForEachActivity() (*ForEachActivity, bool) {
88068	return nil, false
88069}
88070
88071// AsIfConditionActivity is the BasicActivity implementation for UntilActivity.
88072func (ua UntilActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
88073	return nil, false
88074}
88075
88076// AsExecutePipelineActivity is the BasicActivity implementation for UntilActivity.
88077func (ua UntilActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
88078	return nil, false
88079}
88080
88081// AsControlActivity is the BasicActivity implementation for UntilActivity.
88082func (ua UntilActivity) AsControlActivity() (*ControlActivity, bool) {
88083	return nil, false
88084}
88085
88086// AsBasicControlActivity is the BasicActivity implementation for UntilActivity.
88087func (ua UntilActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
88088	return &ua, true
88089}
88090
88091// AsActivity is the BasicActivity implementation for UntilActivity.
88092func (ua UntilActivity) AsActivity() (*Activity, bool) {
88093	return nil, false
88094}
88095
88096// AsBasicActivity is the BasicActivity implementation for UntilActivity.
88097func (ua UntilActivity) AsBasicActivity() (BasicActivity, bool) {
88098	return &ua, true
88099}
88100
88101// UnmarshalJSON is the custom unmarshaler for UntilActivity struct.
88102func (ua *UntilActivity) UnmarshalJSON(body []byte) error {
88103	var m map[string]*json.RawMessage
88104	err := json.Unmarshal(body, &m)
88105	if err != nil {
88106		return err
88107	}
88108	for k, v := range m {
88109		switch k {
88110		case "typeProperties":
88111			if v != nil {
88112				var untilActivityTypeProperties UntilActivityTypeProperties
88113				err = json.Unmarshal(*v, &untilActivityTypeProperties)
88114				if err != nil {
88115					return err
88116				}
88117				ua.UntilActivityTypeProperties = &untilActivityTypeProperties
88118			}
88119		default:
88120			if v != nil {
88121				var additionalProperties interface{}
88122				err = json.Unmarshal(*v, &additionalProperties)
88123				if err != nil {
88124					return err
88125				}
88126				if ua.AdditionalProperties == nil {
88127					ua.AdditionalProperties = make(map[string]interface{})
88128				}
88129				ua.AdditionalProperties[k] = additionalProperties
88130			}
88131		case "name":
88132			if v != nil {
88133				var name string
88134				err = json.Unmarshal(*v, &name)
88135				if err != nil {
88136					return err
88137				}
88138				ua.Name = &name
88139			}
88140		case "description":
88141			if v != nil {
88142				var description string
88143				err = json.Unmarshal(*v, &description)
88144				if err != nil {
88145					return err
88146				}
88147				ua.Description = &description
88148			}
88149		case "dependsOn":
88150			if v != nil {
88151				var dependsOn []ActivityDependency
88152				err = json.Unmarshal(*v, &dependsOn)
88153				if err != nil {
88154					return err
88155				}
88156				ua.DependsOn = &dependsOn
88157			}
88158		case "type":
88159			if v != nil {
88160				var typeVar TypeBasicActivity
88161				err = json.Unmarshal(*v, &typeVar)
88162				if err != nil {
88163					return err
88164				}
88165				ua.Type = typeVar
88166			}
88167		}
88168	}
88169
88170	return nil
88171}
88172
88173// UntilActivityTypeProperties until activity properties.
88174type UntilActivityTypeProperties struct {
88175	// Expression - An expression that would evaluate to Boolean. The loop will continue until this expression evaluates to true
88176	Expression *Expression `json:"expression,omitempty"`
88177	// Timeout - Specifies the timeout for the activity to run. If there is no value specified, it takes the value of TimeSpan.FromDays(7) which is 1 week as default. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
88178	Timeout interface{} `json:"timeout,omitempty"`
88179	// Activities - List of activities to execute.
88180	Activities *[]BasicActivity `json:"activities,omitempty"`
88181}
88182
88183// UnmarshalJSON is the custom unmarshaler for UntilActivityTypeProperties struct.
88184func (uatp *UntilActivityTypeProperties) UnmarshalJSON(body []byte) error {
88185	var m map[string]*json.RawMessage
88186	err := json.Unmarshal(body, &m)
88187	if err != nil {
88188		return err
88189	}
88190	for k, v := range m {
88191		switch k {
88192		case "expression":
88193			if v != nil {
88194				var expression Expression
88195				err = json.Unmarshal(*v, &expression)
88196				if err != nil {
88197					return err
88198				}
88199				uatp.Expression = &expression
88200			}
88201		case "timeout":
88202			if v != nil {
88203				var timeout interface{}
88204				err = json.Unmarshal(*v, &timeout)
88205				if err != nil {
88206					return err
88207				}
88208				uatp.Timeout = timeout
88209			}
88210		case "activities":
88211			if v != nil {
88212				activities, err := unmarshalBasicActivityArray(*v)
88213				if err != nil {
88214					return err
88215				}
88216				uatp.Activities = &activities
88217			}
88218		}
88219	}
88220
88221	return nil
88222}
88223
88224// UpdateIntegrationRuntimeNodeRequest update integration runtime node request.
88225type UpdateIntegrationRuntimeNodeRequest struct {
88226	// ConcurrentJobsLimit - The number of concurrent jobs permitted to run on the integration runtime node. Values between 1 and maxConcurrentJobs(inclusive) are allowed.
88227	ConcurrentJobsLimit *int32 `json:"concurrentJobsLimit,omitempty"`
88228}
88229
88230// UpdateIntegrationRuntimeRequest update integration runtime request.
88231type UpdateIntegrationRuntimeRequest struct {
88232	// AutoUpdate - Enables or disables the auto-update feature of the self-hosted integration runtime. See https://go.microsoft.com/fwlink/?linkid=854189. Possible values include: 'On', 'Off'
88233	AutoUpdate IntegrationRuntimeAutoUpdate `json:"autoUpdate,omitempty"`
88234	// UpdateDelayOffset - The time offset (in hours) in the day, e.g., PT03H is 3 hours. The integration runtime auto update will happen on that time.
88235	UpdateDelayOffset *string `json:"updateDelayOffset,omitempty"`
88236}
88237
88238// VerticaLinkedService vertica linked service.
88239type VerticaLinkedService struct {
88240	// VerticaLinkedServiceTypeProperties - Vertica linked service properties.
88241	*VerticaLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
88242	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
88243	AdditionalProperties map[string]interface{} `json:""`
88244	// ConnectVia - The integration runtime reference.
88245	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
88246	// Description - Linked service description.
88247	Description *string `json:"description,omitempty"`
88248	// Parameters - Parameters for linked service.
88249	Parameters map[string]*ParameterSpecification `json:"parameters"`
88250	// Annotations - List of tags that can be used for describing the Dataset.
88251	Annotations *[]interface{} `json:"annotations,omitempty"`
88252	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
88253	Type TypeBasicLinkedService `json:"type,omitempty"`
88254}
88255
88256// MarshalJSON is the custom marshaler for VerticaLinkedService.
88257func (vls VerticaLinkedService) MarshalJSON() ([]byte, error) {
88258	vls.Type = TypeVertica
88259	objectMap := make(map[string]interface{})
88260	if vls.VerticaLinkedServiceTypeProperties != nil {
88261		objectMap["typeProperties"] = vls.VerticaLinkedServiceTypeProperties
88262	}
88263	if vls.ConnectVia != nil {
88264		objectMap["connectVia"] = vls.ConnectVia
88265	}
88266	if vls.Description != nil {
88267		objectMap["description"] = vls.Description
88268	}
88269	if vls.Parameters != nil {
88270		objectMap["parameters"] = vls.Parameters
88271	}
88272	if vls.Annotations != nil {
88273		objectMap["annotations"] = vls.Annotations
88274	}
88275	if vls.Type != "" {
88276		objectMap["type"] = vls.Type
88277	}
88278	for k, v := range vls.AdditionalProperties {
88279		objectMap[k] = v
88280	}
88281	return json.Marshal(objectMap)
88282}
88283
88284// AsResponsysLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88285func (vls VerticaLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
88286	return nil, false
88287}
88288
88289// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88290func (vls VerticaLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
88291	return nil, false
88292}
88293
88294// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88295func (vls VerticaLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
88296	return nil, false
88297}
88298
88299// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88300func (vls VerticaLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
88301	return nil, false
88302}
88303
88304// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88305func (vls VerticaLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
88306	return nil, false
88307}
88308
88309// AsNetezzaLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88310func (vls VerticaLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
88311	return nil, false
88312}
88313
88314// AsVerticaLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88315func (vls VerticaLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
88316	return &vls, true
88317}
88318
88319// AsZohoLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88320func (vls VerticaLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
88321	return nil, false
88322}
88323
88324// AsXeroLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88325func (vls VerticaLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
88326	return nil, false
88327}
88328
88329// AsSquareLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88330func (vls VerticaLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
88331	return nil, false
88332}
88333
88334// AsSparkLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88335func (vls VerticaLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
88336	return nil, false
88337}
88338
88339// AsShopifyLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88340func (vls VerticaLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
88341	return nil, false
88342}
88343
88344// AsServiceNowLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88345func (vls VerticaLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
88346	return nil, false
88347}
88348
88349// AsQuickBooksLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88350func (vls VerticaLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
88351	return nil, false
88352}
88353
88354// AsPrestoLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88355func (vls VerticaLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
88356	return nil, false
88357}
88358
88359// AsPhoenixLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88360func (vls VerticaLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
88361	return nil, false
88362}
88363
88364// AsPaypalLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88365func (vls VerticaLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
88366	return nil, false
88367}
88368
88369// AsMarketoLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88370func (vls VerticaLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
88371	return nil, false
88372}
88373
88374// AsMariaDBLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88375func (vls VerticaLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
88376	return nil, false
88377}
88378
88379// AsMagentoLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88380func (vls VerticaLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
88381	return nil, false
88382}
88383
88384// AsJiraLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88385func (vls VerticaLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
88386	return nil, false
88387}
88388
88389// AsImpalaLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88390func (vls VerticaLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
88391	return nil, false
88392}
88393
88394// AsHubspotLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88395func (vls VerticaLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
88396	return nil, false
88397}
88398
88399// AsHiveLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88400func (vls VerticaLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
88401	return nil, false
88402}
88403
88404// AsHBaseLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88405func (vls VerticaLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
88406	return nil, false
88407}
88408
88409// AsGreenplumLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88410func (vls VerticaLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
88411	return nil, false
88412}
88413
88414// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88415func (vls VerticaLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
88416	return nil, false
88417}
88418
88419// AsEloquaLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88420func (vls VerticaLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
88421	return nil, false
88422}
88423
88424// AsDrillLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88425func (vls VerticaLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
88426	return nil, false
88427}
88428
88429// AsCouchbaseLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88430func (vls VerticaLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
88431	return nil, false
88432}
88433
88434// AsConcurLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88435func (vls VerticaLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
88436	return nil, false
88437}
88438
88439// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88440func (vls VerticaLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
88441	return nil, false
88442}
88443
88444// AsAmazonMWSLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88445func (vls VerticaLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
88446	return nil, false
88447}
88448
88449// AsSapHanaLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88450func (vls VerticaLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
88451	return nil, false
88452}
88453
88454// AsSapBWLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88455func (vls VerticaLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
88456	return nil, false
88457}
88458
88459// AsSftpServerLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88460func (vls VerticaLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
88461	return nil, false
88462}
88463
88464// AsFtpServerLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88465func (vls VerticaLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
88466	return nil, false
88467}
88468
88469// AsHTTPLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88470func (vls VerticaLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
88471	return nil, false
88472}
88473
88474// AsAzureSearchLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88475func (vls VerticaLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
88476	return nil, false
88477}
88478
88479// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88480func (vls VerticaLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
88481	return nil, false
88482}
88483
88484// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88485func (vls VerticaLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
88486	return nil, false
88487}
88488
88489// AsAmazonS3LinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88490func (vls VerticaLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
88491	return nil, false
88492}
88493
88494// AsSapEccLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88495func (vls VerticaLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
88496	return nil, false
88497}
88498
88499// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88500func (vls VerticaLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
88501	return nil, false
88502}
88503
88504// AsSalesforceLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88505func (vls VerticaLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
88506	return nil, false
88507}
88508
88509// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88510func (vls VerticaLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
88511	return nil, false
88512}
88513
88514// AsMongoDbLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88515func (vls VerticaLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
88516	return nil, false
88517}
88518
88519// AsCassandraLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88520func (vls VerticaLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
88521	return nil, false
88522}
88523
88524// AsWebLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88525func (vls VerticaLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
88526	return nil, false
88527}
88528
88529// AsODataLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88530func (vls VerticaLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
88531	return nil, false
88532}
88533
88534// AsHdfsLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88535func (vls VerticaLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
88536	return nil, false
88537}
88538
88539// AsOdbcLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88540func (vls VerticaLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
88541	return nil, false
88542}
88543
88544// AsAzureMLLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88545func (vls VerticaLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
88546	return nil, false
88547}
88548
88549// AsTeradataLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88550func (vls VerticaLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
88551	return nil, false
88552}
88553
88554// AsDb2LinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88555func (vls VerticaLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
88556	return nil, false
88557}
88558
88559// AsSybaseLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88560func (vls VerticaLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
88561	return nil, false
88562}
88563
88564// AsPostgreSQLLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88565func (vls VerticaLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
88566	return nil, false
88567}
88568
88569// AsMySQLLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88570func (vls VerticaLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
88571	return nil, false
88572}
88573
88574// AsAzureMySQLLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88575func (vls VerticaLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
88576	return nil, false
88577}
88578
88579// AsOracleLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88580func (vls VerticaLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
88581	return nil, false
88582}
88583
88584// AsFileServerLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88585func (vls VerticaLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
88586	return nil, false
88587}
88588
88589// AsHDInsightLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88590func (vls VerticaLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
88591	return nil, false
88592}
88593
88594// AsDynamicsLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88595func (vls VerticaLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
88596	return nil, false
88597}
88598
88599// AsCosmosDbLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88600func (vls VerticaLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
88601	return nil, false
88602}
88603
88604// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88605func (vls VerticaLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
88606	return nil, false
88607}
88608
88609// AsAzureBatchLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88610func (vls VerticaLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
88611	return nil, false
88612}
88613
88614// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88615func (vls VerticaLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
88616	return nil, false
88617}
88618
88619// AsSQLServerLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88620func (vls VerticaLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
88621	return nil, false
88622}
88623
88624// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88625func (vls VerticaLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
88626	return nil, false
88627}
88628
88629// AsAzureStorageLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88630func (vls VerticaLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
88631	return nil, false
88632}
88633
88634// AsLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88635func (vls VerticaLinkedService) AsLinkedService() (*LinkedService, bool) {
88636	return nil, false
88637}
88638
88639// AsBasicLinkedService is the BasicLinkedService implementation for VerticaLinkedService.
88640func (vls VerticaLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
88641	return &vls, true
88642}
88643
88644// UnmarshalJSON is the custom unmarshaler for VerticaLinkedService struct.
88645func (vls *VerticaLinkedService) UnmarshalJSON(body []byte) error {
88646	var m map[string]*json.RawMessage
88647	err := json.Unmarshal(body, &m)
88648	if err != nil {
88649		return err
88650	}
88651	for k, v := range m {
88652		switch k {
88653		case "typeProperties":
88654			if v != nil {
88655				var verticaLinkedServiceTypeProperties VerticaLinkedServiceTypeProperties
88656				err = json.Unmarshal(*v, &verticaLinkedServiceTypeProperties)
88657				if err != nil {
88658					return err
88659				}
88660				vls.VerticaLinkedServiceTypeProperties = &verticaLinkedServiceTypeProperties
88661			}
88662		default:
88663			if v != nil {
88664				var additionalProperties interface{}
88665				err = json.Unmarshal(*v, &additionalProperties)
88666				if err != nil {
88667					return err
88668				}
88669				if vls.AdditionalProperties == nil {
88670					vls.AdditionalProperties = make(map[string]interface{})
88671				}
88672				vls.AdditionalProperties[k] = additionalProperties
88673			}
88674		case "connectVia":
88675			if v != nil {
88676				var connectVia IntegrationRuntimeReference
88677				err = json.Unmarshal(*v, &connectVia)
88678				if err != nil {
88679					return err
88680				}
88681				vls.ConnectVia = &connectVia
88682			}
88683		case "description":
88684			if v != nil {
88685				var description string
88686				err = json.Unmarshal(*v, &description)
88687				if err != nil {
88688					return err
88689				}
88690				vls.Description = &description
88691			}
88692		case "parameters":
88693			if v != nil {
88694				var parameters map[string]*ParameterSpecification
88695				err = json.Unmarshal(*v, &parameters)
88696				if err != nil {
88697					return err
88698				}
88699				vls.Parameters = parameters
88700			}
88701		case "annotations":
88702			if v != nil {
88703				var annotations []interface{}
88704				err = json.Unmarshal(*v, &annotations)
88705				if err != nil {
88706					return err
88707				}
88708				vls.Annotations = &annotations
88709			}
88710		case "type":
88711			if v != nil {
88712				var typeVar TypeBasicLinkedService
88713				err = json.Unmarshal(*v, &typeVar)
88714				if err != nil {
88715					return err
88716				}
88717				vls.Type = typeVar
88718			}
88719		}
88720	}
88721
88722	return nil
88723}
88724
88725// VerticaLinkedServiceTypeProperties vertica linked service properties.
88726type VerticaLinkedServiceTypeProperties struct {
88727	// ConnectionString - An ODBC connection string.
88728	ConnectionString BasicSecretBase `json:"connectionString,omitempty"`
88729	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
88730	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
88731}
88732
88733// UnmarshalJSON is the custom unmarshaler for VerticaLinkedServiceTypeProperties struct.
88734func (vlstp *VerticaLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
88735	var m map[string]*json.RawMessage
88736	err := json.Unmarshal(body, &m)
88737	if err != nil {
88738		return err
88739	}
88740	for k, v := range m {
88741		switch k {
88742		case "connectionString":
88743			if v != nil {
88744				connectionString, err := unmarshalBasicSecretBase(*v)
88745				if err != nil {
88746					return err
88747				}
88748				vlstp.ConnectionString = connectionString
88749			}
88750		case "encryptedCredential":
88751			if v != nil {
88752				var encryptedCredential interface{}
88753				err = json.Unmarshal(*v, &encryptedCredential)
88754				if err != nil {
88755					return err
88756				}
88757				vlstp.EncryptedCredential = encryptedCredential
88758			}
88759		}
88760	}
88761
88762	return nil
88763}
88764
88765// VerticaSource a copy activity Vertica source.
88766type VerticaSource struct {
88767	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
88768	Query interface{} `json:"query,omitempty"`
88769	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
88770	AdditionalProperties map[string]interface{} `json:""`
88771	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
88772	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
88773	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
88774	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
88775	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
88776	Type TypeBasicCopySource `json:"type,omitempty"`
88777}
88778
88779// MarshalJSON is the custom marshaler for VerticaSource.
88780func (vs VerticaSource) MarshalJSON() ([]byte, error) {
88781	vs.Type = TypeVerticaSource
88782	objectMap := make(map[string]interface{})
88783	objectMap["query"] = vs.Query
88784	objectMap["sourceRetryCount"] = vs.SourceRetryCount
88785	objectMap["sourceRetryWait"] = vs.SourceRetryWait
88786	if vs.Type != "" {
88787		objectMap["type"] = vs.Type
88788	}
88789	for k, v := range vs.AdditionalProperties {
88790		objectMap[k] = v
88791	}
88792	return json.Marshal(objectMap)
88793}
88794
88795// AsAmazonRedshiftSource is the BasicCopySource implementation for VerticaSource.
88796func (vs VerticaSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
88797	return nil, false
88798}
88799
88800// AsResponsysSource is the BasicCopySource implementation for VerticaSource.
88801func (vs VerticaSource) AsResponsysSource() (*ResponsysSource, bool) {
88802	return nil, false
88803}
88804
88805// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for VerticaSource.
88806func (vs VerticaSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
88807	return nil, false
88808}
88809
88810// AsVerticaSource is the BasicCopySource implementation for VerticaSource.
88811func (vs VerticaSource) AsVerticaSource() (*VerticaSource, bool) {
88812	return &vs, true
88813}
88814
88815// AsNetezzaSource is the BasicCopySource implementation for VerticaSource.
88816func (vs VerticaSource) AsNetezzaSource() (*NetezzaSource, bool) {
88817	return nil, false
88818}
88819
88820// AsZohoSource is the BasicCopySource implementation for VerticaSource.
88821func (vs VerticaSource) AsZohoSource() (*ZohoSource, bool) {
88822	return nil, false
88823}
88824
88825// AsXeroSource is the BasicCopySource implementation for VerticaSource.
88826func (vs VerticaSource) AsXeroSource() (*XeroSource, bool) {
88827	return nil, false
88828}
88829
88830// AsSquareSource is the BasicCopySource implementation for VerticaSource.
88831func (vs VerticaSource) AsSquareSource() (*SquareSource, bool) {
88832	return nil, false
88833}
88834
88835// AsSparkSource is the BasicCopySource implementation for VerticaSource.
88836func (vs VerticaSource) AsSparkSource() (*SparkSource, bool) {
88837	return nil, false
88838}
88839
88840// AsShopifySource is the BasicCopySource implementation for VerticaSource.
88841func (vs VerticaSource) AsShopifySource() (*ShopifySource, bool) {
88842	return nil, false
88843}
88844
88845// AsServiceNowSource is the BasicCopySource implementation for VerticaSource.
88846func (vs VerticaSource) AsServiceNowSource() (*ServiceNowSource, bool) {
88847	return nil, false
88848}
88849
88850// AsQuickBooksSource is the BasicCopySource implementation for VerticaSource.
88851func (vs VerticaSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
88852	return nil, false
88853}
88854
88855// AsPrestoSource is the BasicCopySource implementation for VerticaSource.
88856func (vs VerticaSource) AsPrestoSource() (*PrestoSource, bool) {
88857	return nil, false
88858}
88859
88860// AsPhoenixSource is the BasicCopySource implementation for VerticaSource.
88861func (vs VerticaSource) AsPhoenixSource() (*PhoenixSource, bool) {
88862	return nil, false
88863}
88864
88865// AsPaypalSource is the BasicCopySource implementation for VerticaSource.
88866func (vs VerticaSource) AsPaypalSource() (*PaypalSource, bool) {
88867	return nil, false
88868}
88869
88870// AsMarketoSource is the BasicCopySource implementation for VerticaSource.
88871func (vs VerticaSource) AsMarketoSource() (*MarketoSource, bool) {
88872	return nil, false
88873}
88874
88875// AsMariaDBSource is the BasicCopySource implementation for VerticaSource.
88876func (vs VerticaSource) AsMariaDBSource() (*MariaDBSource, bool) {
88877	return nil, false
88878}
88879
88880// AsMagentoSource is the BasicCopySource implementation for VerticaSource.
88881func (vs VerticaSource) AsMagentoSource() (*MagentoSource, bool) {
88882	return nil, false
88883}
88884
88885// AsJiraSource is the BasicCopySource implementation for VerticaSource.
88886func (vs VerticaSource) AsJiraSource() (*JiraSource, bool) {
88887	return nil, false
88888}
88889
88890// AsImpalaSource is the BasicCopySource implementation for VerticaSource.
88891func (vs VerticaSource) AsImpalaSource() (*ImpalaSource, bool) {
88892	return nil, false
88893}
88894
88895// AsHubspotSource is the BasicCopySource implementation for VerticaSource.
88896func (vs VerticaSource) AsHubspotSource() (*HubspotSource, bool) {
88897	return nil, false
88898}
88899
88900// AsHiveSource is the BasicCopySource implementation for VerticaSource.
88901func (vs VerticaSource) AsHiveSource() (*HiveSource, bool) {
88902	return nil, false
88903}
88904
88905// AsHBaseSource is the BasicCopySource implementation for VerticaSource.
88906func (vs VerticaSource) AsHBaseSource() (*HBaseSource, bool) {
88907	return nil, false
88908}
88909
88910// AsGreenplumSource is the BasicCopySource implementation for VerticaSource.
88911func (vs VerticaSource) AsGreenplumSource() (*GreenplumSource, bool) {
88912	return nil, false
88913}
88914
88915// AsGoogleBigQuerySource is the BasicCopySource implementation for VerticaSource.
88916func (vs VerticaSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
88917	return nil, false
88918}
88919
88920// AsEloquaSource is the BasicCopySource implementation for VerticaSource.
88921func (vs VerticaSource) AsEloquaSource() (*EloquaSource, bool) {
88922	return nil, false
88923}
88924
88925// AsDrillSource is the BasicCopySource implementation for VerticaSource.
88926func (vs VerticaSource) AsDrillSource() (*DrillSource, bool) {
88927	return nil, false
88928}
88929
88930// AsCouchbaseSource is the BasicCopySource implementation for VerticaSource.
88931func (vs VerticaSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
88932	return nil, false
88933}
88934
88935// AsConcurSource is the BasicCopySource implementation for VerticaSource.
88936func (vs VerticaSource) AsConcurSource() (*ConcurSource, bool) {
88937	return nil, false
88938}
88939
88940// AsAzurePostgreSQLSource is the BasicCopySource implementation for VerticaSource.
88941func (vs VerticaSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
88942	return nil, false
88943}
88944
88945// AsAmazonMWSSource is the BasicCopySource implementation for VerticaSource.
88946func (vs VerticaSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
88947	return nil, false
88948}
88949
88950// AsHTTPSource is the BasicCopySource implementation for VerticaSource.
88951func (vs VerticaSource) AsHTTPSource() (*HTTPSource, bool) {
88952	return nil, false
88953}
88954
88955// AsAzureDataLakeStoreSource is the BasicCopySource implementation for VerticaSource.
88956func (vs VerticaSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
88957	return nil, false
88958}
88959
88960// AsMongoDbSource is the BasicCopySource implementation for VerticaSource.
88961func (vs VerticaSource) AsMongoDbSource() (*MongoDbSource, bool) {
88962	return nil, false
88963}
88964
88965// AsCassandraSource is the BasicCopySource implementation for VerticaSource.
88966func (vs VerticaSource) AsCassandraSource() (*CassandraSource, bool) {
88967	return nil, false
88968}
88969
88970// AsWebSource is the BasicCopySource implementation for VerticaSource.
88971func (vs VerticaSource) AsWebSource() (*WebSource, bool) {
88972	return nil, false
88973}
88974
88975// AsOracleSource is the BasicCopySource implementation for VerticaSource.
88976func (vs VerticaSource) AsOracleSource() (*OracleSource, bool) {
88977	return nil, false
88978}
88979
88980// AsAzureMySQLSource is the BasicCopySource implementation for VerticaSource.
88981func (vs VerticaSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
88982	return nil, false
88983}
88984
88985// AsHdfsSource is the BasicCopySource implementation for VerticaSource.
88986func (vs VerticaSource) AsHdfsSource() (*HdfsSource, bool) {
88987	return nil, false
88988}
88989
88990// AsFileSystemSource is the BasicCopySource implementation for VerticaSource.
88991func (vs VerticaSource) AsFileSystemSource() (*FileSystemSource, bool) {
88992	return nil, false
88993}
88994
88995// AsSQLDWSource is the BasicCopySource implementation for VerticaSource.
88996func (vs VerticaSource) AsSQLDWSource() (*SQLDWSource, bool) {
88997	return nil, false
88998}
88999
89000// AsSQLSource is the BasicCopySource implementation for VerticaSource.
89001func (vs VerticaSource) AsSQLSource() (*SQLSource, bool) {
89002	return nil, false
89003}
89004
89005// AsSapEccSource is the BasicCopySource implementation for VerticaSource.
89006func (vs VerticaSource) AsSapEccSource() (*SapEccSource, bool) {
89007	return nil, false
89008}
89009
89010// AsSapCloudForCustomerSource is the BasicCopySource implementation for VerticaSource.
89011func (vs VerticaSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
89012	return nil, false
89013}
89014
89015// AsSalesforceSource is the BasicCopySource implementation for VerticaSource.
89016func (vs VerticaSource) AsSalesforceSource() (*SalesforceSource, bool) {
89017	return nil, false
89018}
89019
89020// AsRelationalSource is the BasicCopySource implementation for VerticaSource.
89021func (vs VerticaSource) AsRelationalSource() (*RelationalSource, bool) {
89022	return nil, false
89023}
89024
89025// AsDynamicsSource is the BasicCopySource implementation for VerticaSource.
89026func (vs VerticaSource) AsDynamicsSource() (*DynamicsSource, bool) {
89027	return nil, false
89028}
89029
89030// AsDocumentDbCollectionSource is the BasicCopySource implementation for VerticaSource.
89031func (vs VerticaSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
89032	return nil, false
89033}
89034
89035// AsBlobSource is the BasicCopySource implementation for VerticaSource.
89036func (vs VerticaSource) AsBlobSource() (*BlobSource, bool) {
89037	return nil, false
89038}
89039
89040// AsAzureTableSource is the BasicCopySource implementation for VerticaSource.
89041func (vs VerticaSource) AsAzureTableSource() (*AzureTableSource, bool) {
89042	return nil, false
89043}
89044
89045// AsCopySource is the BasicCopySource implementation for VerticaSource.
89046func (vs VerticaSource) AsCopySource() (*CopySource, bool) {
89047	return nil, false
89048}
89049
89050// AsBasicCopySource is the BasicCopySource implementation for VerticaSource.
89051func (vs VerticaSource) AsBasicCopySource() (BasicCopySource, bool) {
89052	return &vs, true
89053}
89054
89055// VerticaTableDataset vertica dataset.
89056type VerticaTableDataset struct {
89057	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
89058	AdditionalProperties map[string]interface{} `json:""`
89059	// Description - Dataset description.
89060	Description *string `json:"description,omitempty"`
89061	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
89062	Structure interface{} `json:"structure,omitempty"`
89063	// LinkedServiceName - Linked service reference.
89064	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
89065	// Parameters - Parameters for dataset.
89066	Parameters map[string]*ParameterSpecification `json:"parameters"`
89067	// Annotations - List of tags that can be used for describing the Dataset.
89068	Annotations *[]interface{} `json:"annotations,omitempty"`
89069	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
89070	Type TypeBasicDataset `json:"type,omitempty"`
89071}
89072
89073// MarshalJSON is the custom marshaler for VerticaTableDataset.
89074func (vtd VerticaTableDataset) MarshalJSON() ([]byte, error) {
89075	vtd.Type = TypeVerticaTable
89076	objectMap := make(map[string]interface{})
89077	if vtd.Description != nil {
89078		objectMap["description"] = vtd.Description
89079	}
89080	objectMap["structure"] = vtd.Structure
89081	if vtd.LinkedServiceName != nil {
89082		objectMap["linkedServiceName"] = vtd.LinkedServiceName
89083	}
89084	if vtd.Parameters != nil {
89085		objectMap["parameters"] = vtd.Parameters
89086	}
89087	if vtd.Annotations != nil {
89088		objectMap["annotations"] = vtd.Annotations
89089	}
89090	if vtd.Type != "" {
89091		objectMap["type"] = vtd.Type
89092	}
89093	for k, v := range vtd.AdditionalProperties {
89094		objectMap[k] = v
89095	}
89096	return json.Marshal(objectMap)
89097}
89098
89099// AsResponsysObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89100func (vtd VerticaTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
89101	return nil, false
89102}
89103
89104// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89105func (vtd VerticaTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
89106	return nil, false
89107}
89108
89109// AsVerticaTableDataset is the BasicDataset implementation for VerticaTableDataset.
89110func (vtd VerticaTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
89111	return &vtd, true
89112}
89113
89114// AsNetezzaTableDataset is the BasicDataset implementation for VerticaTableDataset.
89115func (vtd VerticaTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
89116	return nil, false
89117}
89118
89119// AsZohoObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89120func (vtd VerticaTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
89121	return nil, false
89122}
89123
89124// AsXeroObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89125func (vtd VerticaTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
89126	return nil, false
89127}
89128
89129// AsSquareObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89130func (vtd VerticaTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
89131	return nil, false
89132}
89133
89134// AsSparkObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89135func (vtd VerticaTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
89136	return nil, false
89137}
89138
89139// AsShopifyObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89140func (vtd VerticaTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
89141	return nil, false
89142}
89143
89144// AsServiceNowObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89145func (vtd VerticaTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
89146	return nil, false
89147}
89148
89149// AsQuickBooksObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89150func (vtd VerticaTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
89151	return nil, false
89152}
89153
89154// AsPrestoObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89155func (vtd VerticaTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
89156	return nil, false
89157}
89158
89159// AsPhoenixObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89160func (vtd VerticaTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
89161	return nil, false
89162}
89163
89164// AsPaypalObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89165func (vtd VerticaTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
89166	return nil, false
89167}
89168
89169// AsMarketoObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89170func (vtd VerticaTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
89171	return nil, false
89172}
89173
89174// AsMariaDBTableDataset is the BasicDataset implementation for VerticaTableDataset.
89175func (vtd VerticaTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
89176	return nil, false
89177}
89178
89179// AsMagentoObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89180func (vtd VerticaTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
89181	return nil, false
89182}
89183
89184// AsJiraObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89185func (vtd VerticaTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
89186	return nil, false
89187}
89188
89189// AsImpalaObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89190func (vtd VerticaTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
89191	return nil, false
89192}
89193
89194// AsHubspotObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89195func (vtd VerticaTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
89196	return nil, false
89197}
89198
89199// AsHiveObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89200func (vtd VerticaTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
89201	return nil, false
89202}
89203
89204// AsHBaseObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89205func (vtd VerticaTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
89206	return nil, false
89207}
89208
89209// AsGreenplumTableDataset is the BasicDataset implementation for VerticaTableDataset.
89210func (vtd VerticaTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
89211	return nil, false
89212}
89213
89214// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89215func (vtd VerticaTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
89216	return nil, false
89217}
89218
89219// AsEloquaObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89220func (vtd VerticaTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
89221	return nil, false
89222}
89223
89224// AsDrillTableDataset is the BasicDataset implementation for VerticaTableDataset.
89225func (vtd VerticaTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
89226	return nil, false
89227}
89228
89229// AsCouchbaseTableDataset is the BasicDataset implementation for VerticaTableDataset.
89230func (vtd VerticaTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
89231	return nil, false
89232}
89233
89234// AsConcurObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89235func (vtd VerticaTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
89236	return nil, false
89237}
89238
89239// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for VerticaTableDataset.
89240func (vtd VerticaTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
89241	return nil, false
89242}
89243
89244// AsAmazonMWSObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89245func (vtd VerticaTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
89246	return nil, false
89247}
89248
89249// AsHTTPDataset is the BasicDataset implementation for VerticaTableDataset.
89250func (vtd VerticaTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
89251	return nil, false
89252}
89253
89254// AsAzureSearchIndexDataset is the BasicDataset implementation for VerticaTableDataset.
89255func (vtd VerticaTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
89256	return nil, false
89257}
89258
89259// AsWebTableDataset is the BasicDataset implementation for VerticaTableDataset.
89260func (vtd VerticaTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
89261	return nil, false
89262}
89263
89264// AsSQLServerTableDataset is the BasicDataset implementation for VerticaTableDataset.
89265func (vtd VerticaTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
89266	return nil, false
89267}
89268
89269// AsSapEccResourceDataset is the BasicDataset implementation for VerticaTableDataset.
89270func (vtd VerticaTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
89271	return nil, false
89272}
89273
89274// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for VerticaTableDataset.
89275func (vtd VerticaTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
89276	return nil, false
89277}
89278
89279// AsSalesforceObjectDataset is the BasicDataset implementation for VerticaTableDataset.
89280func (vtd VerticaTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
89281	return nil, false
89282}
89283
89284// AsRelationalTableDataset is the BasicDataset implementation for VerticaTableDataset.
89285func (vtd VerticaTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
89286	return nil, false
89287}
89288
89289// AsAzureMySQLTableDataset is the BasicDataset implementation for VerticaTableDataset.
89290func (vtd VerticaTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
89291	return nil, false
89292}
89293
89294// AsOracleTableDataset is the BasicDataset implementation for VerticaTableDataset.
89295func (vtd VerticaTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
89296	return nil, false
89297}
89298
89299// AsODataResourceDataset is the BasicDataset implementation for VerticaTableDataset.
89300func (vtd VerticaTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
89301	return nil, false
89302}
89303
89304// AsMongoDbCollectionDataset is the BasicDataset implementation for VerticaTableDataset.
89305func (vtd VerticaTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
89306	return nil, false
89307}
89308
89309// AsFileShareDataset is the BasicDataset implementation for VerticaTableDataset.
89310func (vtd VerticaTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
89311	return nil, false
89312}
89313
89314// AsAzureDataLakeStoreDataset is the BasicDataset implementation for VerticaTableDataset.
89315func (vtd VerticaTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
89316	return nil, false
89317}
89318
89319// AsDynamicsEntityDataset is the BasicDataset implementation for VerticaTableDataset.
89320func (vtd VerticaTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
89321	return nil, false
89322}
89323
89324// AsDocumentDbCollectionDataset is the BasicDataset implementation for VerticaTableDataset.
89325func (vtd VerticaTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
89326	return nil, false
89327}
89328
89329// AsCustomDataset is the BasicDataset implementation for VerticaTableDataset.
89330func (vtd VerticaTableDataset) AsCustomDataset() (*CustomDataset, bool) {
89331	return nil, false
89332}
89333
89334// AsCassandraTableDataset is the BasicDataset implementation for VerticaTableDataset.
89335func (vtd VerticaTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
89336	return nil, false
89337}
89338
89339// AsAzureSQLDWTableDataset is the BasicDataset implementation for VerticaTableDataset.
89340func (vtd VerticaTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
89341	return nil, false
89342}
89343
89344// AsAzureSQLTableDataset is the BasicDataset implementation for VerticaTableDataset.
89345func (vtd VerticaTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
89346	return nil, false
89347}
89348
89349// AsAzureTableDataset is the BasicDataset implementation for VerticaTableDataset.
89350func (vtd VerticaTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
89351	return nil, false
89352}
89353
89354// AsAzureBlobDataset is the BasicDataset implementation for VerticaTableDataset.
89355func (vtd VerticaTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
89356	return nil, false
89357}
89358
89359// AsAmazonS3Dataset is the BasicDataset implementation for VerticaTableDataset.
89360func (vtd VerticaTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
89361	return nil, false
89362}
89363
89364// AsDataset is the BasicDataset implementation for VerticaTableDataset.
89365func (vtd VerticaTableDataset) AsDataset() (*Dataset, bool) {
89366	return nil, false
89367}
89368
89369// AsBasicDataset is the BasicDataset implementation for VerticaTableDataset.
89370func (vtd VerticaTableDataset) AsBasicDataset() (BasicDataset, bool) {
89371	return &vtd, true
89372}
89373
89374// WaitActivity this activity suspends pipeline execution for the specified interval.
89375type WaitActivity struct {
89376	// WaitActivityTypeProperties - Wait activity properties.
89377	*WaitActivityTypeProperties `json:"typeProperties,omitempty"`
89378	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
89379	AdditionalProperties map[string]interface{} `json:""`
89380	// Name - Activity name.
89381	Name *string `json:"name,omitempty"`
89382	// Description - Activity description.
89383	Description *string `json:"description,omitempty"`
89384	// DependsOn - Activity depends on condition.
89385	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
89386	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
89387	Type TypeBasicActivity `json:"type,omitempty"`
89388}
89389
89390// MarshalJSON is the custom marshaler for WaitActivity.
89391func (wa WaitActivity) MarshalJSON() ([]byte, error) {
89392	wa.Type = TypeWait
89393	objectMap := make(map[string]interface{})
89394	if wa.WaitActivityTypeProperties != nil {
89395		objectMap["typeProperties"] = wa.WaitActivityTypeProperties
89396	}
89397	if wa.Name != nil {
89398		objectMap["name"] = wa.Name
89399	}
89400	if wa.Description != nil {
89401		objectMap["description"] = wa.Description
89402	}
89403	if wa.DependsOn != nil {
89404		objectMap["dependsOn"] = wa.DependsOn
89405	}
89406	if wa.Type != "" {
89407		objectMap["type"] = wa.Type
89408	}
89409	for k, v := range wa.AdditionalProperties {
89410		objectMap[k] = v
89411	}
89412	return json.Marshal(objectMap)
89413}
89414
89415// AsDatabricksNotebookActivity is the BasicActivity implementation for WaitActivity.
89416func (wa WaitActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
89417	return nil, false
89418}
89419
89420// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for WaitActivity.
89421func (wa WaitActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
89422	return nil, false
89423}
89424
89425// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for WaitActivity.
89426func (wa WaitActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
89427	return nil, false
89428}
89429
89430// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for WaitActivity.
89431func (wa WaitActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
89432	return nil, false
89433}
89434
89435// AsGetMetadataActivity is the BasicActivity implementation for WaitActivity.
89436func (wa WaitActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
89437	return nil, false
89438}
89439
89440// AsWebActivity is the BasicActivity implementation for WaitActivity.
89441func (wa WaitActivity) AsWebActivity() (*WebActivity, bool) {
89442	return nil, false
89443}
89444
89445// AsLookupActivity is the BasicActivity implementation for WaitActivity.
89446func (wa WaitActivity) AsLookupActivity() (*LookupActivity, bool) {
89447	return nil, false
89448}
89449
89450// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for WaitActivity.
89451func (wa WaitActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
89452	return nil, false
89453}
89454
89455// AsCustomActivity is the BasicActivity implementation for WaitActivity.
89456func (wa WaitActivity) AsCustomActivity() (*CustomActivity, bool) {
89457	return nil, false
89458}
89459
89460// AsExecuteSSISPackageActivity is the BasicActivity implementation for WaitActivity.
89461func (wa WaitActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
89462	return nil, false
89463}
89464
89465// AsHDInsightSparkActivity is the BasicActivity implementation for WaitActivity.
89466func (wa WaitActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
89467	return nil, false
89468}
89469
89470// AsHDInsightStreamingActivity is the BasicActivity implementation for WaitActivity.
89471func (wa WaitActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
89472	return nil, false
89473}
89474
89475// AsHDInsightMapReduceActivity is the BasicActivity implementation for WaitActivity.
89476func (wa WaitActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
89477	return nil, false
89478}
89479
89480// AsHDInsightPigActivity is the BasicActivity implementation for WaitActivity.
89481func (wa WaitActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
89482	return nil, false
89483}
89484
89485// AsHDInsightHiveActivity is the BasicActivity implementation for WaitActivity.
89486func (wa WaitActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
89487	return nil, false
89488}
89489
89490// AsCopyActivity is the BasicActivity implementation for WaitActivity.
89491func (wa WaitActivity) AsCopyActivity() (*CopyActivity, bool) {
89492	return nil, false
89493}
89494
89495// AsExecutionActivity is the BasicActivity implementation for WaitActivity.
89496func (wa WaitActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
89497	return nil, false
89498}
89499
89500// AsBasicExecutionActivity is the BasicActivity implementation for WaitActivity.
89501func (wa WaitActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
89502	return nil, false
89503}
89504
89505// AsFilterActivity is the BasicActivity implementation for WaitActivity.
89506func (wa WaitActivity) AsFilterActivity() (*FilterActivity, bool) {
89507	return nil, false
89508}
89509
89510// AsUntilActivity is the BasicActivity implementation for WaitActivity.
89511func (wa WaitActivity) AsUntilActivity() (*UntilActivity, bool) {
89512	return nil, false
89513}
89514
89515// AsWaitActivity is the BasicActivity implementation for WaitActivity.
89516func (wa WaitActivity) AsWaitActivity() (*WaitActivity, bool) {
89517	return &wa, true
89518}
89519
89520// AsForEachActivity is the BasicActivity implementation for WaitActivity.
89521func (wa WaitActivity) AsForEachActivity() (*ForEachActivity, bool) {
89522	return nil, false
89523}
89524
89525// AsIfConditionActivity is the BasicActivity implementation for WaitActivity.
89526func (wa WaitActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
89527	return nil, false
89528}
89529
89530// AsExecutePipelineActivity is the BasicActivity implementation for WaitActivity.
89531func (wa WaitActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
89532	return nil, false
89533}
89534
89535// AsControlActivity is the BasicActivity implementation for WaitActivity.
89536func (wa WaitActivity) AsControlActivity() (*ControlActivity, bool) {
89537	return nil, false
89538}
89539
89540// AsBasicControlActivity is the BasicActivity implementation for WaitActivity.
89541func (wa WaitActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
89542	return &wa, true
89543}
89544
89545// AsActivity is the BasicActivity implementation for WaitActivity.
89546func (wa WaitActivity) AsActivity() (*Activity, bool) {
89547	return nil, false
89548}
89549
89550// AsBasicActivity is the BasicActivity implementation for WaitActivity.
89551func (wa WaitActivity) AsBasicActivity() (BasicActivity, bool) {
89552	return &wa, true
89553}
89554
89555// UnmarshalJSON is the custom unmarshaler for WaitActivity struct.
89556func (wa *WaitActivity) UnmarshalJSON(body []byte) error {
89557	var m map[string]*json.RawMessage
89558	err := json.Unmarshal(body, &m)
89559	if err != nil {
89560		return err
89561	}
89562	for k, v := range m {
89563		switch k {
89564		case "typeProperties":
89565			if v != nil {
89566				var waitActivityTypeProperties WaitActivityTypeProperties
89567				err = json.Unmarshal(*v, &waitActivityTypeProperties)
89568				if err != nil {
89569					return err
89570				}
89571				wa.WaitActivityTypeProperties = &waitActivityTypeProperties
89572			}
89573		default:
89574			if v != nil {
89575				var additionalProperties interface{}
89576				err = json.Unmarshal(*v, &additionalProperties)
89577				if err != nil {
89578					return err
89579				}
89580				if wa.AdditionalProperties == nil {
89581					wa.AdditionalProperties = make(map[string]interface{})
89582				}
89583				wa.AdditionalProperties[k] = additionalProperties
89584			}
89585		case "name":
89586			if v != nil {
89587				var name string
89588				err = json.Unmarshal(*v, &name)
89589				if err != nil {
89590					return err
89591				}
89592				wa.Name = &name
89593			}
89594		case "description":
89595			if v != nil {
89596				var description string
89597				err = json.Unmarshal(*v, &description)
89598				if err != nil {
89599					return err
89600				}
89601				wa.Description = &description
89602			}
89603		case "dependsOn":
89604			if v != nil {
89605				var dependsOn []ActivityDependency
89606				err = json.Unmarshal(*v, &dependsOn)
89607				if err != nil {
89608					return err
89609				}
89610				wa.DependsOn = &dependsOn
89611			}
89612		case "type":
89613			if v != nil {
89614				var typeVar TypeBasicActivity
89615				err = json.Unmarshal(*v, &typeVar)
89616				if err != nil {
89617					return err
89618				}
89619				wa.Type = typeVar
89620			}
89621		}
89622	}
89623
89624	return nil
89625}
89626
89627// WaitActivityTypeProperties wait activity properties.
89628type WaitActivityTypeProperties struct {
89629	// WaitTimeInSeconds - Duration in seconds.
89630	WaitTimeInSeconds *int32 `json:"waitTimeInSeconds,omitempty"`
89631}
89632
89633// WebActivity web activity.
89634type WebActivity struct {
89635	// WebActivityTypeProperties - Web activity properties.
89636	*WebActivityTypeProperties `json:"typeProperties,omitempty"`
89637	// LinkedServiceName - Linked service reference.
89638	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
89639	// Policy - Activity policy.
89640	Policy *ActivityPolicy `json:"policy,omitempty"`
89641	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
89642	AdditionalProperties map[string]interface{} `json:""`
89643	// Name - Activity name.
89644	Name *string `json:"name,omitempty"`
89645	// Description - Activity description.
89646	Description *string `json:"description,omitempty"`
89647	// DependsOn - Activity depends on condition.
89648	DependsOn *[]ActivityDependency `json:"dependsOn,omitempty"`
89649	// Type - Possible values include: 'TypeActivity', 'TypeDatabricksNotebook', 'TypeDataLakeAnalyticsUSQL', 'TypeAzureMLUpdateResource', 'TypeAzureMLBatchExecution', 'TypeGetMetadata', 'TypeWebActivity', 'TypeLookup', 'TypeSQLServerStoredProcedure', 'TypeCustom', 'TypeExecuteSSISPackage', 'TypeHDInsightSpark', 'TypeHDInsightStreaming', 'TypeHDInsightMapReduce', 'TypeHDInsightPig', 'TypeHDInsightHive', 'TypeCopy', 'TypeExecution', 'TypeFilter', 'TypeUntil', 'TypeWait', 'TypeForEach', 'TypeIfCondition', 'TypeExecutePipeline', 'TypeContainer'
89650	Type TypeBasicActivity `json:"type,omitempty"`
89651}
89652
89653// MarshalJSON is the custom marshaler for WebActivity.
89654func (wa WebActivity) MarshalJSON() ([]byte, error) {
89655	wa.Type = TypeWebActivity
89656	objectMap := make(map[string]interface{})
89657	if wa.WebActivityTypeProperties != nil {
89658		objectMap["typeProperties"] = wa.WebActivityTypeProperties
89659	}
89660	if wa.LinkedServiceName != nil {
89661		objectMap["linkedServiceName"] = wa.LinkedServiceName
89662	}
89663	if wa.Policy != nil {
89664		objectMap["policy"] = wa.Policy
89665	}
89666	if wa.Name != nil {
89667		objectMap["name"] = wa.Name
89668	}
89669	if wa.Description != nil {
89670		objectMap["description"] = wa.Description
89671	}
89672	if wa.DependsOn != nil {
89673		objectMap["dependsOn"] = wa.DependsOn
89674	}
89675	if wa.Type != "" {
89676		objectMap["type"] = wa.Type
89677	}
89678	for k, v := range wa.AdditionalProperties {
89679		objectMap[k] = v
89680	}
89681	return json.Marshal(objectMap)
89682}
89683
89684// AsDatabricksNotebookActivity is the BasicActivity implementation for WebActivity.
89685func (wa WebActivity) AsDatabricksNotebookActivity() (*DatabricksNotebookActivity, bool) {
89686	return nil, false
89687}
89688
89689// AsDataLakeAnalyticsUSQLActivity is the BasicActivity implementation for WebActivity.
89690func (wa WebActivity) AsDataLakeAnalyticsUSQLActivity() (*DataLakeAnalyticsUSQLActivity, bool) {
89691	return nil, false
89692}
89693
89694// AsAzureMLUpdateResourceActivity is the BasicActivity implementation for WebActivity.
89695func (wa WebActivity) AsAzureMLUpdateResourceActivity() (*AzureMLUpdateResourceActivity, bool) {
89696	return nil, false
89697}
89698
89699// AsAzureMLBatchExecutionActivity is the BasicActivity implementation for WebActivity.
89700func (wa WebActivity) AsAzureMLBatchExecutionActivity() (*AzureMLBatchExecutionActivity, bool) {
89701	return nil, false
89702}
89703
89704// AsGetMetadataActivity is the BasicActivity implementation for WebActivity.
89705func (wa WebActivity) AsGetMetadataActivity() (*GetMetadataActivity, bool) {
89706	return nil, false
89707}
89708
89709// AsWebActivity is the BasicActivity implementation for WebActivity.
89710func (wa WebActivity) AsWebActivity() (*WebActivity, bool) {
89711	return &wa, true
89712}
89713
89714// AsLookupActivity is the BasicActivity implementation for WebActivity.
89715func (wa WebActivity) AsLookupActivity() (*LookupActivity, bool) {
89716	return nil, false
89717}
89718
89719// AsSQLServerStoredProcedureActivity is the BasicActivity implementation for WebActivity.
89720func (wa WebActivity) AsSQLServerStoredProcedureActivity() (*SQLServerStoredProcedureActivity, bool) {
89721	return nil, false
89722}
89723
89724// AsCustomActivity is the BasicActivity implementation for WebActivity.
89725func (wa WebActivity) AsCustomActivity() (*CustomActivity, bool) {
89726	return nil, false
89727}
89728
89729// AsExecuteSSISPackageActivity is the BasicActivity implementation for WebActivity.
89730func (wa WebActivity) AsExecuteSSISPackageActivity() (*ExecuteSSISPackageActivity, bool) {
89731	return nil, false
89732}
89733
89734// AsHDInsightSparkActivity is the BasicActivity implementation for WebActivity.
89735func (wa WebActivity) AsHDInsightSparkActivity() (*HDInsightSparkActivity, bool) {
89736	return nil, false
89737}
89738
89739// AsHDInsightStreamingActivity is the BasicActivity implementation for WebActivity.
89740func (wa WebActivity) AsHDInsightStreamingActivity() (*HDInsightStreamingActivity, bool) {
89741	return nil, false
89742}
89743
89744// AsHDInsightMapReduceActivity is the BasicActivity implementation for WebActivity.
89745func (wa WebActivity) AsHDInsightMapReduceActivity() (*HDInsightMapReduceActivity, bool) {
89746	return nil, false
89747}
89748
89749// AsHDInsightPigActivity is the BasicActivity implementation for WebActivity.
89750func (wa WebActivity) AsHDInsightPigActivity() (*HDInsightPigActivity, bool) {
89751	return nil, false
89752}
89753
89754// AsHDInsightHiveActivity is the BasicActivity implementation for WebActivity.
89755func (wa WebActivity) AsHDInsightHiveActivity() (*HDInsightHiveActivity, bool) {
89756	return nil, false
89757}
89758
89759// AsCopyActivity is the BasicActivity implementation for WebActivity.
89760func (wa WebActivity) AsCopyActivity() (*CopyActivity, bool) {
89761	return nil, false
89762}
89763
89764// AsExecutionActivity is the BasicActivity implementation for WebActivity.
89765func (wa WebActivity) AsExecutionActivity() (*ExecutionActivity, bool) {
89766	return nil, false
89767}
89768
89769// AsBasicExecutionActivity is the BasicActivity implementation for WebActivity.
89770func (wa WebActivity) AsBasicExecutionActivity() (BasicExecutionActivity, bool) {
89771	return &wa, true
89772}
89773
89774// AsFilterActivity is the BasicActivity implementation for WebActivity.
89775func (wa WebActivity) AsFilterActivity() (*FilterActivity, bool) {
89776	return nil, false
89777}
89778
89779// AsUntilActivity is the BasicActivity implementation for WebActivity.
89780func (wa WebActivity) AsUntilActivity() (*UntilActivity, bool) {
89781	return nil, false
89782}
89783
89784// AsWaitActivity is the BasicActivity implementation for WebActivity.
89785func (wa WebActivity) AsWaitActivity() (*WaitActivity, bool) {
89786	return nil, false
89787}
89788
89789// AsForEachActivity is the BasicActivity implementation for WebActivity.
89790func (wa WebActivity) AsForEachActivity() (*ForEachActivity, bool) {
89791	return nil, false
89792}
89793
89794// AsIfConditionActivity is the BasicActivity implementation for WebActivity.
89795func (wa WebActivity) AsIfConditionActivity() (*IfConditionActivity, bool) {
89796	return nil, false
89797}
89798
89799// AsExecutePipelineActivity is the BasicActivity implementation for WebActivity.
89800func (wa WebActivity) AsExecutePipelineActivity() (*ExecutePipelineActivity, bool) {
89801	return nil, false
89802}
89803
89804// AsControlActivity is the BasicActivity implementation for WebActivity.
89805func (wa WebActivity) AsControlActivity() (*ControlActivity, bool) {
89806	return nil, false
89807}
89808
89809// AsBasicControlActivity is the BasicActivity implementation for WebActivity.
89810func (wa WebActivity) AsBasicControlActivity() (BasicControlActivity, bool) {
89811	return nil, false
89812}
89813
89814// AsActivity is the BasicActivity implementation for WebActivity.
89815func (wa WebActivity) AsActivity() (*Activity, bool) {
89816	return nil, false
89817}
89818
89819// AsBasicActivity is the BasicActivity implementation for WebActivity.
89820func (wa WebActivity) AsBasicActivity() (BasicActivity, bool) {
89821	return &wa, true
89822}
89823
89824// UnmarshalJSON is the custom unmarshaler for WebActivity struct.
89825func (wa *WebActivity) UnmarshalJSON(body []byte) error {
89826	var m map[string]*json.RawMessage
89827	err := json.Unmarshal(body, &m)
89828	if err != nil {
89829		return err
89830	}
89831	for k, v := range m {
89832		switch k {
89833		case "typeProperties":
89834			if v != nil {
89835				var webActivityTypeProperties WebActivityTypeProperties
89836				err = json.Unmarshal(*v, &webActivityTypeProperties)
89837				if err != nil {
89838					return err
89839				}
89840				wa.WebActivityTypeProperties = &webActivityTypeProperties
89841			}
89842		case "linkedServiceName":
89843			if v != nil {
89844				var linkedServiceName LinkedServiceReference
89845				err = json.Unmarshal(*v, &linkedServiceName)
89846				if err != nil {
89847					return err
89848				}
89849				wa.LinkedServiceName = &linkedServiceName
89850			}
89851		case "policy":
89852			if v != nil {
89853				var policy ActivityPolicy
89854				err = json.Unmarshal(*v, &policy)
89855				if err != nil {
89856					return err
89857				}
89858				wa.Policy = &policy
89859			}
89860		default:
89861			if v != nil {
89862				var additionalProperties interface{}
89863				err = json.Unmarshal(*v, &additionalProperties)
89864				if err != nil {
89865					return err
89866				}
89867				if wa.AdditionalProperties == nil {
89868					wa.AdditionalProperties = make(map[string]interface{})
89869				}
89870				wa.AdditionalProperties[k] = additionalProperties
89871			}
89872		case "name":
89873			if v != nil {
89874				var name string
89875				err = json.Unmarshal(*v, &name)
89876				if err != nil {
89877					return err
89878				}
89879				wa.Name = &name
89880			}
89881		case "description":
89882			if v != nil {
89883				var description string
89884				err = json.Unmarshal(*v, &description)
89885				if err != nil {
89886					return err
89887				}
89888				wa.Description = &description
89889			}
89890		case "dependsOn":
89891			if v != nil {
89892				var dependsOn []ActivityDependency
89893				err = json.Unmarshal(*v, &dependsOn)
89894				if err != nil {
89895					return err
89896				}
89897				wa.DependsOn = &dependsOn
89898			}
89899		case "type":
89900			if v != nil {
89901				var typeVar TypeBasicActivity
89902				err = json.Unmarshal(*v, &typeVar)
89903				if err != nil {
89904					return err
89905				}
89906				wa.Type = typeVar
89907			}
89908		}
89909	}
89910
89911	return nil
89912}
89913
89914// WebActivityAuthentication web activity authentication properties.
89915type WebActivityAuthentication struct {
89916	// Type - Web activity authentication (Basic/ClientCertificate/MSI)
89917	Type *string `json:"type,omitempty"`
89918	// Pfx - Base64-encoded contents of a PFX file.
89919	Pfx *SecureString `json:"pfx,omitempty"`
89920	// Username - Web activity authentication user name for basic authentication.
89921	Username *string `json:"username,omitempty"`
89922	// Password - Password for the PFX file or basic authentication.
89923	Password *SecureString `json:"password,omitempty"`
89924	// Resource - Resource for which Azure Auth token will be requested when using MSI Authentication.
89925	Resource *string `json:"resource,omitempty"`
89926}
89927
89928// WebActivityTypeProperties web activity type properties.
89929type WebActivityTypeProperties struct {
89930	// Method - Rest API method for target endpoint. Possible values include: 'GET', 'POST', 'PUT', 'DELETE'
89931	Method WebActivityMethod `json:"method,omitempty"`
89932	// URL - Web activity target endpoint and path. Type: string (or Expression with resultType string).
89933	URL interface{} `json:"url,omitempty"`
89934	// Headers - Represents the headers that will be sent to the request. For example, to set the language and type on a request: "headers" : { "Accept-Language": "en-us", "Content-Type": "application/json" }. Type: string (or Expression with resultType string).
89935	Headers interface{} `json:"headers,omitempty"`
89936	// Body - Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string).
89937	Body interface{} `json:"body,omitempty"`
89938	// Authentication - Authentication method used for calling the endpoint.
89939	Authentication *WebActivityAuthentication `json:"authentication,omitempty"`
89940	// Datasets - List of datasets passed to web endpoint.
89941	Datasets *[]DatasetReference `json:"datasets,omitempty"`
89942	// LinkedServices - List of linked services passed to web endpoint.
89943	LinkedServices *[]LinkedServiceReference `json:"linkedServices,omitempty"`
89944}
89945
89946// WebAnonymousAuthentication a WebLinkedService that uses anonymous authentication to communicate with an HTTP
89947// endpoint.
89948type WebAnonymousAuthentication struct {
89949	// URL - The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string).
89950	URL interface{} `json:"url,omitempty"`
89951	// AuthenticationType - Possible values include: 'AuthenticationTypeWebLinkedServiceTypeProperties', 'AuthenticationTypeClientCertificate', 'AuthenticationTypeBasic', 'AuthenticationTypeAnonymous'
89952	AuthenticationType AuthenticationType `json:"authenticationType,omitempty"`
89953}
89954
89955// MarshalJSON is the custom marshaler for WebAnonymousAuthentication.
89956func (waa WebAnonymousAuthentication) MarshalJSON() ([]byte, error) {
89957	waa.AuthenticationType = AuthenticationTypeAnonymous
89958	objectMap := make(map[string]interface{})
89959	objectMap["url"] = waa.URL
89960	if waa.AuthenticationType != "" {
89961		objectMap["authenticationType"] = waa.AuthenticationType
89962	}
89963	return json.Marshal(objectMap)
89964}
89965
89966// AsWebClientCertificateAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebAnonymousAuthentication.
89967func (waa WebAnonymousAuthentication) AsWebClientCertificateAuthentication() (*WebClientCertificateAuthentication, bool) {
89968	return nil, false
89969}
89970
89971// AsWebBasicAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebAnonymousAuthentication.
89972func (waa WebAnonymousAuthentication) AsWebBasicAuthentication() (*WebBasicAuthentication, bool) {
89973	return nil, false
89974}
89975
89976// AsWebAnonymousAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebAnonymousAuthentication.
89977func (waa WebAnonymousAuthentication) AsWebAnonymousAuthentication() (*WebAnonymousAuthentication, bool) {
89978	return &waa, true
89979}
89980
89981// AsWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebAnonymousAuthentication.
89982func (waa WebAnonymousAuthentication) AsWebLinkedServiceTypeProperties() (*WebLinkedServiceTypeProperties, bool) {
89983	return nil, false
89984}
89985
89986// AsBasicWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebAnonymousAuthentication.
89987func (waa WebAnonymousAuthentication) AsBasicWebLinkedServiceTypeProperties() (BasicWebLinkedServiceTypeProperties, bool) {
89988	return &waa, true
89989}
89990
89991// WebBasicAuthentication a WebLinkedService that uses basic authentication to communicate with an HTTP endpoint.
89992type WebBasicAuthentication struct {
89993	// Username - User name for Basic authentication. Type: string (or Expression with resultType string).
89994	Username interface{} `json:"username,omitempty"`
89995	// Password - The password for Basic authentication.
89996	Password BasicSecretBase `json:"password,omitempty"`
89997	// URL - The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string).
89998	URL interface{} `json:"url,omitempty"`
89999	// AuthenticationType - Possible values include: 'AuthenticationTypeWebLinkedServiceTypeProperties', 'AuthenticationTypeClientCertificate', 'AuthenticationTypeBasic', 'AuthenticationTypeAnonymous'
90000	AuthenticationType AuthenticationType `json:"authenticationType,omitempty"`
90001}
90002
90003// MarshalJSON is the custom marshaler for WebBasicAuthentication.
90004func (wba WebBasicAuthentication) MarshalJSON() ([]byte, error) {
90005	wba.AuthenticationType = AuthenticationTypeBasic
90006	objectMap := make(map[string]interface{})
90007	objectMap["username"] = wba.Username
90008	objectMap["password"] = wba.Password
90009	objectMap["url"] = wba.URL
90010	if wba.AuthenticationType != "" {
90011		objectMap["authenticationType"] = wba.AuthenticationType
90012	}
90013	return json.Marshal(objectMap)
90014}
90015
90016// AsWebClientCertificateAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebBasicAuthentication.
90017func (wba WebBasicAuthentication) AsWebClientCertificateAuthentication() (*WebClientCertificateAuthentication, bool) {
90018	return nil, false
90019}
90020
90021// AsWebBasicAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebBasicAuthentication.
90022func (wba WebBasicAuthentication) AsWebBasicAuthentication() (*WebBasicAuthentication, bool) {
90023	return &wba, true
90024}
90025
90026// AsWebAnonymousAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebBasicAuthentication.
90027func (wba WebBasicAuthentication) AsWebAnonymousAuthentication() (*WebAnonymousAuthentication, bool) {
90028	return nil, false
90029}
90030
90031// AsWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebBasicAuthentication.
90032func (wba WebBasicAuthentication) AsWebLinkedServiceTypeProperties() (*WebLinkedServiceTypeProperties, bool) {
90033	return nil, false
90034}
90035
90036// AsBasicWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebBasicAuthentication.
90037func (wba WebBasicAuthentication) AsBasicWebLinkedServiceTypeProperties() (BasicWebLinkedServiceTypeProperties, bool) {
90038	return &wba, true
90039}
90040
90041// UnmarshalJSON is the custom unmarshaler for WebBasicAuthentication struct.
90042func (wba *WebBasicAuthentication) UnmarshalJSON(body []byte) error {
90043	var m map[string]*json.RawMessage
90044	err := json.Unmarshal(body, &m)
90045	if err != nil {
90046		return err
90047	}
90048	for k, v := range m {
90049		switch k {
90050		case "username":
90051			if v != nil {
90052				var username interface{}
90053				err = json.Unmarshal(*v, &username)
90054				if err != nil {
90055					return err
90056				}
90057				wba.Username = username
90058			}
90059		case "password":
90060			if v != nil {
90061				password, err := unmarshalBasicSecretBase(*v)
90062				if err != nil {
90063					return err
90064				}
90065				wba.Password = password
90066			}
90067		case "url":
90068			if v != nil {
90069				var URL interface{}
90070				err = json.Unmarshal(*v, &URL)
90071				if err != nil {
90072					return err
90073				}
90074				wba.URL = URL
90075			}
90076		case "authenticationType":
90077			if v != nil {
90078				var authenticationType AuthenticationType
90079				err = json.Unmarshal(*v, &authenticationType)
90080				if err != nil {
90081					return err
90082				}
90083				wba.AuthenticationType = authenticationType
90084			}
90085		}
90086	}
90087
90088	return nil
90089}
90090
90091// WebClientCertificateAuthentication a WebLinkedService that uses client certificate based authentication to
90092// communicate with an HTTP endpoint. This scheme follows mutual authentication; the server must also provide valid
90093// credentials to the client.
90094type WebClientCertificateAuthentication struct {
90095	// Pfx - Base64-encoded contents of a PFX file.
90096	Pfx BasicSecretBase `json:"pfx,omitempty"`
90097	// Password - Password for the PFX file.
90098	Password BasicSecretBase `json:"password,omitempty"`
90099	// URL - The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string).
90100	URL interface{} `json:"url,omitempty"`
90101	// AuthenticationType - Possible values include: 'AuthenticationTypeWebLinkedServiceTypeProperties', 'AuthenticationTypeClientCertificate', 'AuthenticationTypeBasic', 'AuthenticationTypeAnonymous'
90102	AuthenticationType AuthenticationType `json:"authenticationType,omitempty"`
90103}
90104
90105// MarshalJSON is the custom marshaler for WebClientCertificateAuthentication.
90106func (wcca WebClientCertificateAuthentication) MarshalJSON() ([]byte, error) {
90107	wcca.AuthenticationType = AuthenticationTypeClientCertificate
90108	objectMap := make(map[string]interface{})
90109	objectMap["pfx"] = wcca.Pfx
90110	objectMap["password"] = wcca.Password
90111	objectMap["url"] = wcca.URL
90112	if wcca.AuthenticationType != "" {
90113		objectMap["authenticationType"] = wcca.AuthenticationType
90114	}
90115	return json.Marshal(objectMap)
90116}
90117
90118// AsWebClientCertificateAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebClientCertificateAuthentication.
90119func (wcca WebClientCertificateAuthentication) AsWebClientCertificateAuthentication() (*WebClientCertificateAuthentication, bool) {
90120	return &wcca, true
90121}
90122
90123// AsWebBasicAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebClientCertificateAuthentication.
90124func (wcca WebClientCertificateAuthentication) AsWebBasicAuthentication() (*WebBasicAuthentication, bool) {
90125	return nil, false
90126}
90127
90128// AsWebAnonymousAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebClientCertificateAuthentication.
90129func (wcca WebClientCertificateAuthentication) AsWebAnonymousAuthentication() (*WebAnonymousAuthentication, bool) {
90130	return nil, false
90131}
90132
90133// AsWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebClientCertificateAuthentication.
90134func (wcca WebClientCertificateAuthentication) AsWebLinkedServiceTypeProperties() (*WebLinkedServiceTypeProperties, bool) {
90135	return nil, false
90136}
90137
90138// AsBasicWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebClientCertificateAuthentication.
90139func (wcca WebClientCertificateAuthentication) AsBasicWebLinkedServiceTypeProperties() (BasicWebLinkedServiceTypeProperties, bool) {
90140	return &wcca, true
90141}
90142
90143// UnmarshalJSON is the custom unmarshaler for WebClientCertificateAuthentication struct.
90144func (wcca *WebClientCertificateAuthentication) UnmarshalJSON(body []byte) error {
90145	var m map[string]*json.RawMessage
90146	err := json.Unmarshal(body, &m)
90147	if err != nil {
90148		return err
90149	}
90150	for k, v := range m {
90151		switch k {
90152		case "pfx":
90153			if v != nil {
90154				pfx, err := unmarshalBasicSecretBase(*v)
90155				if err != nil {
90156					return err
90157				}
90158				wcca.Pfx = pfx
90159			}
90160		case "password":
90161			if v != nil {
90162				password, err := unmarshalBasicSecretBase(*v)
90163				if err != nil {
90164					return err
90165				}
90166				wcca.Password = password
90167			}
90168		case "url":
90169			if v != nil {
90170				var URL interface{}
90171				err = json.Unmarshal(*v, &URL)
90172				if err != nil {
90173					return err
90174				}
90175				wcca.URL = URL
90176			}
90177		case "authenticationType":
90178			if v != nil {
90179				var authenticationType AuthenticationType
90180				err = json.Unmarshal(*v, &authenticationType)
90181				if err != nil {
90182					return err
90183				}
90184				wcca.AuthenticationType = authenticationType
90185			}
90186		}
90187	}
90188
90189	return nil
90190}
90191
90192// WebLinkedService web linked service.
90193type WebLinkedService struct {
90194	// TypeProperties - Web linked service properties.
90195	TypeProperties BasicWebLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
90196	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
90197	AdditionalProperties map[string]interface{} `json:""`
90198	// ConnectVia - The integration runtime reference.
90199	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
90200	// Description - Linked service description.
90201	Description *string `json:"description,omitempty"`
90202	// Parameters - Parameters for linked service.
90203	Parameters map[string]*ParameterSpecification `json:"parameters"`
90204	// Annotations - List of tags that can be used for describing the Dataset.
90205	Annotations *[]interface{} `json:"annotations,omitempty"`
90206	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
90207	Type TypeBasicLinkedService `json:"type,omitempty"`
90208}
90209
90210// MarshalJSON is the custom marshaler for WebLinkedService.
90211func (wls WebLinkedService) MarshalJSON() ([]byte, error) {
90212	wls.Type = TypeWeb
90213	objectMap := make(map[string]interface{})
90214	objectMap["typeProperties"] = wls.TypeProperties
90215	if wls.ConnectVia != nil {
90216		objectMap["connectVia"] = wls.ConnectVia
90217	}
90218	if wls.Description != nil {
90219		objectMap["description"] = wls.Description
90220	}
90221	if wls.Parameters != nil {
90222		objectMap["parameters"] = wls.Parameters
90223	}
90224	if wls.Annotations != nil {
90225		objectMap["annotations"] = wls.Annotations
90226	}
90227	if wls.Type != "" {
90228		objectMap["type"] = wls.Type
90229	}
90230	for k, v := range wls.AdditionalProperties {
90231		objectMap[k] = v
90232	}
90233	return json.Marshal(objectMap)
90234}
90235
90236// AsResponsysLinkedService is the BasicLinkedService implementation for WebLinkedService.
90237func (wls WebLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
90238	return nil, false
90239}
90240
90241// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for WebLinkedService.
90242func (wls WebLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
90243	return nil, false
90244}
90245
90246// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for WebLinkedService.
90247func (wls WebLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
90248	return nil, false
90249}
90250
90251// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for WebLinkedService.
90252func (wls WebLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
90253	return nil, false
90254}
90255
90256// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for WebLinkedService.
90257func (wls WebLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
90258	return nil, false
90259}
90260
90261// AsNetezzaLinkedService is the BasicLinkedService implementation for WebLinkedService.
90262func (wls WebLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
90263	return nil, false
90264}
90265
90266// AsVerticaLinkedService is the BasicLinkedService implementation for WebLinkedService.
90267func (wls WebLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
90268	return nil, false
90269}
90270
90271// AsZohoLinkedService is the BasicLinkedService implementation for WebLinkedService.
90272func (wls WebLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
90273	return nil, false
90274}
90275
90276// AsXeroLinkedService is the BasicLinkedService implementation for WebLinkedService.
90277func (wls WebLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
90278	return nil, false
90279}
90280
90281// AsSquareLinkedService is the BasicLinkedService implementation for WebLinkedService.
90282func (wls WebLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
90283	return nil, false
90284}
90285
90286// AsSparkLinkedService is the BasicLinkedService implementation for WebLinkedService.
90287func (wls WebLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
90288	return nil, false
90289}
90290
90291// AsShopifyLinkedService is the BasicLinkedService implementation for WebLinkedService.
90292func (wls WebLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
90293	return nil, false
90294}
90295
90296// AsServiceNowLinkedService is the BasicLinkedService implementation for WebLinkedService.
90297func (wls WebLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
90298	return nil, false
90299}
90300
90301// AsQuickBooksLinkedService is the BasicLinkedService implementation for WebLinkedService.
90302func (wls WebLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
90303	return nil, false
90304}
90305
90306// AsPrestoLinkedService is the BasicLinkedService implementation for WebLinkedService.
90307func (wls WebLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
90308	return nil, false
90309}
90310
90311// AsPhoenixLinkedService is the BasicLinkedService implementation for WebLinkedService.
90312func (wls WebLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
90313	return nil, false
90314}
90315
90316// AsPaypalLinkedService is the BasicLinkedService implementation for WebLinkedService.
90317func (wls WebLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
90318	return nil, false
90319}
90320
90321// AsMarketoLinkedService is the BasicLinkedService implementation for WebLinkedService.
90322func (wls WebLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
90323	return nil, false
90324}
90325
90326// AsMariaDBLinkedService is the BasicLinkedService implementation for WebLinkedService.
90327func (wls WebLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
90328	return nil, false
90329}
90330
90331// AsMagentoLinkedService is the BasicLinkedService implementation for WebLinkedService.
90332func (wls WebLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
90333	return nil, false
90334}
90335
90336// AsJiraLinkedService is the BasicLinkedService implementation for WebLinkedService.
90337func (wls WebLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
90338	return nil, false
90339}
90340
90341// AsImpalaLinkedService is the BasicLinkedService implementation for WebLinkedService.
90342func (wls WebLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
90343	return nil, false
90344}
90345
90346// AsHubspotLinkedService is the BasicLinkedService implementation for WebLinkedService.
90347func (wls WebLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
90348	return nil, false
90349}
90350
90351// AsHiveLinkedService is the BasicLinkedService implementation for WebLinkedService.
90352func (wls WebLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
90353	return nil, false
90354}
90355
90356// AsHBaseLinkedService is the BasicLinkedService implementation for WebLinkedService.
90357func (wls WebLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
90358	return nil, false
90359}
90360
90361// AsGreenplumLinkedService is the BasicLinkedService implementation for WebLinkedService.
90362func (wls WebLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
90363	return nil, false
90364}
90365
90366// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for WebLinkedService.
90367func (wls WebLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
90368	return nil, false
90369}
90370
90371// AsEloquaLinkedService is the BasicLinkedService implementation for WebLinkedService.
90372func (wls WebLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
90373	return nil, false
90374}
90375
90376// AsDrillLinkedService is the BasicLinkedService implementation for WebLinkedService.
90377func (wls WebLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
90378	return nil, false
90379}
90380
90381// AsCouchbaseLinkedService is the BasicLinkedService implementation for WebLinkedService.
90382func (wls WebLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
90383	return nil, false
90384}
90385
90386// AsConcurLinkedService is the BasicLinkedService implementation for WebLinkedService.
90387func (wls WebLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
90388	return nil, false
90389}
90390
90391// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for WebLinkedService.
90392func (wls WebLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
90393	return nil, false
90394}
90395
90396// AsAmazonMWSLinkedService is the BasicLinkedService implementation for WebLinkedService.
90397func (wls WebLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
90398	return nil, false
90399}
90400
90401// AsSapHanaLinkedService is the BasicLinkedService implementation for WebLinkedService.
90402func (wls WebLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
90403	return nil, false
90404}
90405
90406// AsSapBWLinkedService is the BasicLinkedService implementation for WebLinkedService.
90407func (wls WebLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
90408	return nil, false
90409}
90410
90411// AsSftpServerLinkedService is the BasicLinkedService implementation for WebLinkedService.
90412func (wls WebLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
90413	return nil, false
90414}
90415
90416// AsFtpServerLinkedService is the BasicLinkedService implementation for WebLinkedService.
90417func (wls WebLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
90418	return nil, false
90419}
90420
90421// AsHTTPLinkedService is the BasicLinkedService implementation for WebLinkedService.
90422func (wls WebLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
90423	return nil, false
90424}
90425
90426// AsAzureSearchLinkedService is the BasicLinkedService implementation for WebLinkedService.
90427func (wls WebLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
90428	return nil, false
90429}
90430
90431// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for WebLinkedService.
90432func (wls WebLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
90433	return nil, false
90434}
90435
90436// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for WebLinkedService.
90437func (wls WebLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
90438	return nil, false
90439}
90440
90441// AsAmazonS3LinkedService is the BasicLinkedService implementation for WebLinkedService.
90442func (wls WebLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
90443	return nil, false
90444}
90445
90446// AsSapEccLinkedService is the BasicLinkedService implementation for WebLinkedService.
90447func (wls WebLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
90448	return nil, false
90449}
90450
90451// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for WebLinkedService.
90452func (wls WebLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
90453	return nil, false
90454}
90455
90456// AsSalesforceLinkedService is the BasicLinkedService implementation for WebLinkedService.
90457func (wls WebLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
90458	return nil, false
90459}
90460
90461// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for WebLinkedService.
90462func (wls WebLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
90463	return nil, false
90464}
90465
90466// AsMongoDbLinkedService is the BasicLinkedService implementation for WebLinkedService.
90467func (wls WebLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
90468	return nil, false
90469}
90470
90471// AsCassandraLinkedService is the BasicLinkedService implementation for WebLinkedService.
90472func (wls WebLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
90473	return nil, false
90474}
90475
90476// AsWebLinkedService is the BasicLinkedService implementation for WebLinkedService.
90477func (wls WebLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
90478	return &wls, true
90479}
90480
90481// AsODataLinkedService is the BasicLinkedService implementation for WebLinkedService.
90482func (wls WebLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
90483	return nil, false
90484}
90485
90486// AsHdfsLinkedService is the BasicLinkedService implementation for WebLinkedService.
90487func (wls WebLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
90488	return nil, false
90489}
90490
90491// AsOdbcLinkedService is the BasicLinkedService implementation for WebLinkedService.
90492func (wls WebLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
90493	return nil, false
90494}
90495
90496// AsAzureMLLinkedService is the BasicLinkedService implementation for WebLinkedService.
90497func (wls WebLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
90498	return nil, false
90499}
90500
90501// AsTeradataLinkedService is the BasicLinkedService implementation for WebLinkedService.
90502func (wls WebLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
90503	return nil, false
90504}
90505
90506// AsDb2LinkedService is the BasicLinkedService implementation for WebLinkedService.
90507func (wls WebLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
90508	return nil, false
90509}
90510
90511// AsSybaseLinkedService is the BasicLinkedService implementation for WebLinkedService.
90512func (wls WebLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
90513	return nil, false
90514}
90515
90516// AsPostgreSQLLinkedService is the BasicLinkedService implementation for WebLinkedService.
90517func (wls WebLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
90518	return nil, false
90519}
90520
90521// AsMySQLLinkedService is the BasicLinkedService implementation for WebLinkedService.
90522func (wls WebLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
90523	return nil, false
90524}
90525
90526// AsAzureMySQLLinkedService is the BasicLinkedService implementation for WebLinkedService.
90527func (wls WebLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
90528	return nil, false
90529}
90530
90531// AsOracleLinkedService is the BasicLinkedService implementation for WebLinkedService.
90532func (wls WebLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
90533	return nil, false
90534}
90535
90536// AsFileServerLinkedService is the BasicLinkedService implementation for WebLinkedService.
90537func (wls WebLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
90538	return nil, false
90539}
90540
90541// AsHDInsightLinkedService is the BasicLinkedService implementation for WebLinkedService.
90542func (wls WebLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
90543	return nil, false
90544}
90545
90546// AsDynamicsLinkedService is the BasicLinkedService implementation for WebLinkedService.
90547func (wls WebLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
90548	return nil, false
90549}
90550
90551// AsCosmosDbLinkedService is the BasicLinkedService implementation for WebLinkedService.
90552func (wls WebLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
90553	return nil, false
90554}
90555
90556// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for WebLinkedService.
90557func (wls WebLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
90558	return nil, false
90559}
90560
90561// AsAzureBatchLinkedService is the BasicLinkedService implementation for WebLinkedService.
90562func (wls WebLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
90563	return nil, false
90564}
90565
90566// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for WebLinkedService.
90567func (wls WebLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
90568	return nil, false
90569}
90570
90571// AsSQLServerLinkedService is the BasicLinkedService implementation for WebLinkedService.
90572func (wls WebLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
90573	return nil, false
90574}
90575
90576// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for WebLinkedService.
90577func (wls WebLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
90578	return nil, false
90579}
90580
90581// AsAzureStorageLinkedService is the BasicLinkedService implementation for WebLinkedService.
90582func (wls WebLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
90583	return nil, false
90584}
90585
90586// AsLinkedService is the BasicLinkedService implementation for WebLinkedService.
90587func (wls WebLinkedService) AsLinkedService() (*LinkedService, bool) {
90588	return nil, false
90589}
90590
90591// AsBasicLinkedService is the BasicLinkedService implementation for WebLinkedService.
90592func (wls WebLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
90593	return &wls, true
90594}
90595
90596// UnmarshalJSON is the custom unmarshaler for WebLinkedService struct.
90597func (wls *WebLinkedService) UnmarshalJSON(body []byte) error {
90598	var m map[string]*json.RawMessage
90599	err := json.Unmarshal(body, &m)
90600	if err != nil {
90601		return err
90602	}
90603	for k, v := range m {
90604		switch k {
90605		case "typeProperties":
90606			if v != nil {
90607				typeProperties, err := unmarshalBasicWebLinkedServiceTypeProperties(*v)
90608				if err != nil {
90609					return err
90610				}
90611				wls.TypeProperties = typeProperties
90612			}
90613		default:
90614			if v != nil {
90615				var additionalProperties interface{}
90616				err = json.Unmarshal(*v, &additionalProperties)
90617				if err != nil {
90618					return err
90619				}
90620				if wls.AdditionalProperties == nil {
90621					wls.AdditionalProperties = make(map[string]interface{})
90622				}
90623				wls.AdditionalProperties[k] = additionalProperties
90624			}
90625		case "connectVia":
90626			if v != nil {
90627				var connectVia IntegrationRuntimeReference
90628				err = json.Unmarshal(*v, &connectVia)
90629				if err != nil {
90630					return err
90631				}
90632				wls.ConnectVia = &connectVia
90633			}
90634		case "description":
90635			if v != nil {
90636				var description string
90637				err = json.Unmarshal(*v, &description)
90638				if err != nil {
90639					return err
90640				}
90641				wls.Description = &description
90642			}
90643		case "parameters":
90644			if v != nil {
90645				var parameters map[string]*ParameterSpecification
90646				err = json.Unmarshal(*v, &parameters)
90647				if err != nil {
90648					return err
90649				}
90650				wls.Parameters = parameters
90651			}
90652		case "annotations":
90653			if v != nil {
90654				var annotations []interface{}
90655				err = json.Unmarshal(*v, &annotations)
90656				if err != nil {
90657					return err
90658				}
90659				wls.Annotations = &annotations
90660			}
90661		case "type":
90662			if v != nil {
90663				var typeVar TypeBasicLinkedService
90664				err = json.Unmarshal(*v, &typeVar)
90665				if err != nil {
90666					return err
90667				}
90668				wls.Type = typeVar
90669			}
90670		}
90671	}
90672
90673	return nil
90674}
90675
90676// BasicWebLinkedServiceTypeProperties base definition of WebLinkedServiceTypeProperties, this typeProperties is
90677// polymorphic based on authenticationType, so not flattened in SDK models.
90678type BasicWebLinkedServiceTypeProperties interface {
90679	AsWebClientCertificateAuthentication() (*WebClientCertificateAuthentication, bool)
90680	AsWebBasicAuthentication() (*WebBasicAuthentication, bool)
90681	AsWebAnonymousAuthentication() (*WebAnonymousAuthentication, bool)
90682	AsWebLinkedServiceTypeProperties() (*WebLinkedServiceTypeProperties, bool)
90683}
90684
90685// WebLinkedServiceTypeProperties base definition of WebLinkedServiceTypeProperties, this typeProperties is
90686// polymorphic based on authenticationType, so not flattened in SDK models.
90687type WebLinkedServiceTypeProperties struct {
90688	// URL - The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string).
90689	URL interface{} `json:"url,omitempty"`
90690	// AuthenticationType - Possible values include: 'AuthenticationTypeWebLinkedServiceTypeProperties', 'AuthenticationTypeClientCertificate', 'AuthenticationTypeBasic', 'AuthenticationTypeAnonymous'
90691	AuthenticationType AuthenticationType `json:"authenticationType,omitempty"`
90692}
90693
90694func unmarshalBasicWebLinkedServiceTypeProperties(body []byte) (BasicWebLinkedServiceTypeProperties, error) {
90695	var m map[string]interface{}
90696	err := json.Unmarshal(body, &m)
90697	if err != nil {
90698		return nil, err
90699	}
90700
90701	switch m["authenticationType"] {
90702	case string(AuthenticationTypeClientCertificate):
90703		var wcca WebClientCertificateAuthentication
90704		err := json.Unmarshal(body, &wcca)
90705		return wcca, err
90706	case string(AuthenticationTypeBasic):
90707		var wba WebBasicAuthentication
90708		err := json.Unmarshal(body, &wba)
90709		return wba, err
90710	case string(AuthenticationTypeAnonymous):
90711		var waa WebAnonymousAuthentication
90712		err := json.Unmarshal(body, &waa)
90713		return waa, err
90714	default:
90715		var wlstp WebLinkedServiceTypeProperties
90716		err := json.Unmarshal(body, &wlstp)
90717		return wlstp, err
90718	}
90719}
90720func unmarshalBasicWebLinkedServiceTypePropertiesArray(body []byte) ([]BasicWebLinkedServiceTypeProperties, error) {
90721	var rawMessages []*json.RawMessage
90722	err := json.Unmarshal(body, &rawMessages)
90723	if err != nil {
90724		return nil, err
90725	}
90726
90727	wlstpArray := make([]BasicWebLinkedServiceTypeProperties, len(rawMessages))
90728
90729	for index, rawMessage := range rawMessages {
90730		wlstp, err := unmarshalBasicWebLinkedServiceTypeProperties(*rawMessage)
90731		if err != nil {
90732			return nil, err
90733		}
90734		wlstpArray[index] = wlstp
90735	}
90736	return wlstpArray, nil
90737}
90738
90739// MarshalJSON is the custom marshaler for WebLinkedServiceTypeProperties.
90740func (wlstp WebLinkedServiceTypeProperties) MarshalJSON() ([]byte, error) {
90741	wlstp.AuthenticationType = AuthenticationTypeWebLinkedServiceTypeProperties
90742	objectMap := make(map[string]interface{})
90743	objectMap["url"] = wlstp.URL
90744	if wlstp.AuthenticationType != "" {
90745		objectMap["authenticationType"] = wlstp.AuthenticationType
90746	}
90747	return json.Marshal(objectMap)
90748}
90749
90750// AsWebClientCertificateAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebLinkedServiceTypeProperties.
90751func (wlstp WebLinkedServiceTypeProperties) AsWebClientCertificateAuthentication() (*WebClientCertificateAuthentication, bool) {
90752	return nil, false
90753}
90754
90755// AsWebBasicAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebLinkedServiceTypeProperties.
90756func (wlstp WebLinkedServiceTypeProperties) AsWebBasicAuthentication() (*WebBasicAuthentication, bool) {
90757	return nil, false
90758}
90759
90760// AsWebAnonymousAuthentication is the BasicWebLinkedServiceTypeProperties implementation for WebLinkedServiceTypeProperties.
90761func (wlstp WebLinkedServiceTypeProperties) AsWebAnonymousAuthentication() (*WebAnonymousAuthentication, bool) {
90762	return nil, false
90763}
90764
90765// AsWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebLinkedServiceTypeProperties.
90766func (wlstp WebLinkedServiceTypeProperties) AsWebLinkedServiceTypeProperties() (*WebLinkedServiceTypeProperties, bool) {
90767	return &wlstp, true
90768}
90769
90770// AsBasicWebLinkedServiceTypeProperties is the BasicWebLinkedServiceTypeProperties implementation for WebLinkedServiceTypeProperties.
90771func (wlstp WebLinkedServiceTypeProperties) AsBasicWebLinkedServiceTypeProperties() (BasicWebLinkedServiceTypeProperties, bool) {
90772	return &wlstp, true
90773}
90774
90775// WebSource a copy activity source for web page table.
90776type WebSource struct {
90777	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
90778	AdditionalProperties map[string]interface{} `json:""`
90779	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
90780	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
90781	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
90782	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
90783	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
90784	Type TypeBasicCopySource `json:"type,omitempty"`
90785}
90786
90787// MarshalJSON is the custom marshaler for WebSource.
90788func (ws WebSource) MarshalJSON() ([]byte, error) {
90789	ws.Type = TypeWebSource
90790	objectMap := make(map[string]interface{})
90791	objectMap["sourceRetryCount"] = ws.SourceRetryCount
90792	objectMap["sourceRetryWait"] = ws.SourceRetryWait
90793	if ws.Type != "" {
90794		objectMap["type"] = ws.Type
90795	}
90796	for k, v := range ws.AdditionalProperties {
90797		objectMap[k] = v
90798	}
90799	return json.Marshal(objectMap)
90800}
90801
90802// AsAmazonRedshiftSource is the BasicCopySource implementation for WebSource.
90803func (ws WebSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
90804	return nil, false
90805}
90806
90807// AsResponsysSource is the BasicCopySource implementation for WebSource.
90808func (ws WebSource) AsResponsysSource() (*ResponsysSource, bool) {
90809	return nil, false
90810}
90811
90812// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for WebSource.
90813func (ws WebSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
90814	return nil, false
90815}
90816
90817// AsVerticaSource is the BasicCopySource implementation for WebSource.
90818func (ws WebSource) AsVerticaSource() (*VerticaSource, bool) {
90819	return nil, false
90820}
90821
90822// AsNetezzaSource is the BasicCopySource implementation for WebSource.
90823func (ws WebSource) AsNetezzaSource() (*NetezzaSource, bool) {
90824	return nil, false
90825}
90826
90827// AsZohoSource is the BasicCopySource implementation for WebSource.
90828func (ws WebSource) AsZohoSource() (*ZohoSource, bool) {
90829	return nil, false
90830}
90831
90832// AsXeroSource is the BasicCopySource implementation for WebSource.
90833func (ws WebSource) AsXeroSource() (*XeroSource, bool) {
90834	return nil, false
90835}
90836
90837// AsSquareSource is the BasicCopySource implementation for WebSource.
90838func (ws WebSource) AsSquareSource() (*SquareSource, bool) {
90839	return nil, false
90840}
90841
90842// AsSparkSource is the BasicCopySource implementation for WebSource.
90843func (ws WebSource) AsSparkSource() (*SparkSource, bool) {
90844	return nil, false
90845}
90846
90847// AsShopifySource is the BasicCopySource implementation for WebSource.
90848func (ws WebSource) AsShopifySource() (*ShopifySource, bool) {
90849	return nil, false
90850}
90851
90852// AsServiceNowSource is the BasicCopySource implementation for WebSource.
90853func (ws WebSource) AsServiceNowSource() (*ServiceNowSource, bool) {
90854	return nil, false
90855}
90856
90857// AsQuickBooksSource is the BasicCopySource implementation for WebSource.
90858func (ws WebSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
90859	return nil, false
90860}
90861
90862// AsPrestoSource is the BasicCopySource implementation for WebSource.
90863func (ws WebSource) AsPrestoSource() (*PrestoSource, bool) {
90864	return nil, false
90865}
90866
90867// AsPhoenixSource is the BasicCopySource implementation for WebSource.
90868func (ws WebSource) AsPhoenixSource() (*PhoenixSource, bool) {
90869	return nil, false
90870}
90871
90872// AsPaypalSource is the BasicCopySource implementation for WebSource.
90873func (ws WebSource) AsPaypalSource() (*PaypalSource, bool) {
90874	return nil, false
90875}
90876
90877// AsMarketoSource is the BasicCopySource implementation for WebSource.
90878func (ws WebSource) AsMarketoSource() (*MarketoSource, bool) {
90879	return nil, false
90880}
90881
90882// AsMariaDBSource is the BasicCopySource implementation for WebSource.
90883func (ws WebSource) AsMariaDBSource() (*MariaDBSource, bool) {
90884	return nil, false
90885}
90886
90887// AsMagentoSource is the BasicCopySource implementation for WebSource.
90888func (ws WebSource) AsMagentoSource() (*MagentoSource, bool) {
90889	return nil, false
90890}
90891
90892// AsJiraSource is the BasicCopySource implementation for WebSource.
90893func (ws WebSource) AsJiraSource() (*JiraSource, bool) {
90894	return nil, false
90895}
90896
90897// AsImpalaSource is the BasicCopySource implementation for WebSource.
90898func (ws WebSource) AsImpalaSource() (*ImpalaSource, bool) {
90899	return nil, false
90900}
90901
90902// AsHubspotSource is the BasicCopySource implementation for WebSource.
90903func (ws WebSource) AsHubspotSource() (*HubspotSource, bool) {
90904	return nil, false
90905}
90906
90907// AsHiveSource is the BasicCopySource implementation for WebSource.
90908func (ws WebSource) AsHiveSource() (*HiveSource, bool) {
90909	return nil, false
90910}
90911
90912// AsHBaseSource is the BasicCopySource implementation for WebSource.
90913func (ws WebSource) AsHBaseSource() (*HBaseSource, bool) {
90914	return nil, false
90915}
90916
90917// AsGreenplumSource is the BasicCopySource implementation for WebSource.
90918func (ws WebSource) AsGreenplumSource() (*GreenplumSource, bool) {
90919	return nil, false
90920}
90921
90922// AsGoogleBigQuerySource is the BasicCopySource implementation for WebSource.
90923func (ws WebSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
90924	return nil, false
90925}
90926
90927// AsEloquaSource is the BasicCopySource implementation for WebSource.
90928func (ws WebSource) AsEloquaSource() (*EloquaSource, bool) {
90929	return nil, false
90930}
90931
90932// AsDrillSource is the BasicCopySource implementation for WebSource.
90933func (ws WebSource) AsDrillSource() (*DrillSource, bool) {
90934	return nil, false
90935}
90936
90937// AsCouchbaseSource is the BasicCopySource implementation for WebSource.
90938func (ws WebSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
90939	return nil, false
90940}
90941
90942// AsConcurSource is the BasicCopySource implementation for WebSource.
90943func (ws WebSource) AsConcurSource() (*ConcurSource, bool) {
90944	return nil, false
90945}
90946
90947// AsAzurePostgreSQLSource is the BasicCopySource implementation for WebSource.
90948func (ws WebSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
90949	return nil, false
90950}
90951
90952// AsAmazonMWSSource is the BasicCopySource implementation for WebSource.
90953func (ws WebSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
90954	return nil, false
90955}
90956
90957// AsHTTPSource is the BasicCopySource implementation for WebSource.
90958func (ws WebSource) AsHTTPSource() (*HTTPSource, bool) {
90959	return nil, false
90960}
90961
90962// AsAzureDataLakeStoreSource is the BasicCopySource implementation for WebSource.
90963func (ws WebSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
90964	return nil, false
90965}
90966
90967// AsMongoDbSource is the BasicCopySource implementation for WebSource.
90968func (ws WebSource) AsMongoDbSource() (*MongoDbSource, bool) {
90969	return nil, false
90970}
90971
90972// AsCassandraSource is the BasicCopySource implementation for WebSource.
90973func (ws WebSource) AsCassandraSource() (*CassandraSource, bool) {
90974	return nil, false
90975}
90976
90977// AsWebSource is the BasicCopySource implementation for WebSource.
90978func (ws WebSource) AsWebSource() (*WebSource, bool) {
90979	return &ws, true
90980}
90981
90982// AsOracleSource is the BasicCopySource implementation for WebSource.
90983func (ws WebSource) AsOracleSource() (*OracleSource, bool) {
90984	return nil, false
90985}
90986
90987// AsAzureMySQLSource is the BasicCopySource implementation for WebSource.
90988func (ws WebSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
90989	return nil, false
90990}
90991
90992// AsHdfsSource is the BasicCopySource implementation for WebSource.
90993func (ws WebSource) AsHdfsSource() (*HdfsSource, bool) {
90994	return nil, false
90995}
90996
90997// AsFileSystemSource is the BasicCopySource implementation for WebSource.
90998func (ws WebSource) AsFileSystemSource() (*FileSystemSource, bool) {
90999	return nil, false
91000}
91001
91002// AsSQLDWSource is the BasicCopySource implementation for WebSource.
91003func (ws WebSource) AsSQLDWSource() (*SQLDWSource, bool) {
91004	return nil, false
91005}
91006
91007// AsSQLSource is the BasicCopySource implementation for WebSource.
91008func (ws WebSource) AsSQLSource() (*SQLSource, bool) {
91009	return nil, false
91010}
91011
91012// AsSapEccSource is the BasicCopySource implementation for WebSource.
91013func (ws WebSource) AsSapEccSource() (*SapEccSource, bool) {
91014	return nil, false
91015}
91016
91017// AsSapCloudForCustomerSource is the BasicCopySource implementation for WebSource.
91018func (ws WebSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
91019	return nil, false
91020}
91021
91022// AsSalesforceSource is the BasicCopySource implementation for WebSource.
91023func (ws WebSource) AsSalesforceSource() (*SalesforceSource, bool) {
91024	return nil, false
91025}
91026
91027// AsRelationalSource is the BasicCopySource implementation for WebSource.
91028func (ws WebSource) AsRelationalSource() (*RelationalSource, bool) {
91029	return nil, false
91030}
91031
91032// AsDynamicsSource is the BasicCopySource implementation for WebSource.
91033func (ws WebSource) AsDynamicsSource() (*DynamicsSource, bool) {
91034	return nil, false
91035}
91036
91037// AsDocumentDbCollectionSource is the BasicCopySource implementation for WebSource.
91038func (ws WebSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
91039	return nil, false
91040}
91041
91042// AsBlobSource is the BasicCopySource implementation for WebSource.
91043func (ws WebSource) AsBlobSource() (*BlobSource, bool) {
91044	return nil, false
91045}
91046
91047// AsAzureTableSource is the BasicCopySource implementation for WebSource.
91048func (ws WebSource) AsAzureTableSource() (*AzureTableSource, bool) {
91049	return nil, false
91050}
91051
91052// AsCopySource is the BasicCopySource implementation for WebSource.
91053func (ws WebSource) AsCopySource() (*CopySource, bool) {
91054	return nil, false
91055}
91056
91057// AsBasicCopySource is the BasicCopySource implementation for WebSource.
91058func (ws WebSource) AsBasicCopySource() (BasicCopySource, bool) {
91059	return &ws, true
91060}
91061
91062// WebTableDataset the dataset points to a HTML table in the web page.
91063type WebTableDataset struct {
91064	// WebTableDatasetTypeProperties - Web table dataset properties.
91065	*WebTableDatasetTypeProperties `json:"typeProperties,omitempty"`
91066	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
91067	AdditionalProperties map[string]interface{} `json:""`
91068	// Description - Dataset description.
91069	Description *string `json:"description,omitempty"`
91070	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
91071	Structure interface{} `json:"structure,omitempty"`
91072	// LinkedServiceName - Linked service reference.
91073	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
91074	// Parameters - Parameters for dataset.
91075	Parameters map[string]*ParameterSpecification `json:"parameters"`
91076	// Annotations - List of tags that can be used for describing the Dataset.
91077	Annotations *[]interface{} `json:"annotations,omitempty"`
91078	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
91079	Type TypeBasicDataset `json:"type,omitempty"`
91080}
91081
91082// MarshalJSON is the custom marshaler for WebTableDataset.
91083func (wtd WebTableDataset) MarshalJSON() ([]byte, error) {
91084	wtd.Type = TypeWebTable
91085	objectMap := make(map[string]interface{})
91086	if wtd.WebTableDatasetTypeProperties != nil {
91087		objectMap["typeProperties"] = wtd.WebTableDatasetTypeProperties
91088	}
91089	if wtd.Description != nil {
91090		objectMap["description"] = wtd.Description
91091	}
91092	objectMap["structure"] = wtd.Structure
91093	if wtd.LinkedServiceName != nil {
91094		objectMap["linkedServiceName"] = wtd.LinkedServiceName
91095	}
91096	if wtd.Parameters != nil {
91097		objectMap["parameters"] = wtd.Parameters
91098	}
91099	if wtd.Annotations != nil {
91100		objectMap["annotations"] = wtd.Annotations
91101	}
91102	if wtd.Type != "" {
91103		objectMap["type"] = wtd.Type
91104	}
91105	for k, v := range wtd.AdditionalProperties {
91106		objectMap[k] = v
91107	}
91108	return json.Marshal(objectMap)
91109}
91110
91111// AsResponsysObjectDataset is the BasicDataset implementation for WebTableDataset.
91112func (wtd WebTableDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
91113	return nil, false
91114}
91115
91116// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for WebTableDataset.
91117func (wtd WebTableDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
91118	return nil, false
91119}
91120
91121// AsVerticaTableDataset is the BasicDataset implementation for WebTableDataset.
91122func (wtd WebTableDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
91123	return nil, false
91124}
91125
91126// AsNetezzaTableDataset is the BasicDataset implementation for WebTableDataset.
91127func (wtd WebTableDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
91128	return nil, false
91129}
91130
91131// AsZohoObjectDataset is the BasicDataset implementation for WebTableDataset.
91132func (wtd WebTableDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
91133	return nil, false
91134}
91135
91136// AsXeroObjectDataset is the BasicDataset implementation for WebTableDataset.
91137func (wtd WebTableDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
91138	return nil, false
91139}
91140
91141// AsSquareObjectDataset is the BasicDataset implementation for WebTableDataset.
91142func (wtd WebTableDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
91143	return nil, false
91144}
91145
91146// AsSparkObjectDataset is the BasicDataset implementation for WebTableDataset.
91147func (wtd WebTableDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
91148	return nil, false
91149}
91150
91151// AsShopifyObjectDataset is the BasicDataset implementation for WebTableDataset.
91152func (wtd WebTableDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
91153	return nil, false
91154}
91155
91156// AsServiceNowObjectDataset is the BasicDataset implementation for WebTableDataset.
91157func (wtd WebTableDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
91158	return nil, false
91159}
91160
91161// AsQuickBooksObjectDataset is the BasicDataset implementation for WebTableDataset.
91162func (wtd WebTableDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
91163	return nil, false
91164}
91165
91166// AsPrestoObjectDataset is the BasicDataset implementation for WebTableDataset.
91167func (wtd WebTableDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
91168	return nil, false
91169}
91170
91171// AsPhoenixObjectDataset is the BasicDataset implementation for WebTableDataset.
91172func (wtd WebTableDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
91173	return nil, false
91174}
91175
91176// AsPaypalObjectDataset is the BasicDataset implementation for WebTableDataset.
91177func (wtd WebTableDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
91178	return nil, false
91179}
91180
91181// AsMarketoObjectDataset is the BasicDataset implementation for WebTableDataset.
91182func (wtd WebTableDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
91183	return nil, false
91184}
91185
91186// AsMariaDBTableDataset is the BasicDataset implementation for WebTableDataset.
91187func (wtd WebTableDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
91188	return nil, false
91189}
91190
91191// AsMagentoObjectDataset is the BasicDataset implementation for WebTableDataset.
91192func (wtd WebTableDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
91193	return nil, false
91194}
91195
91196// AsJiraObjectDataset is the BasicDataset implementation for WebTableDataset.
91197func (wtd WebTableDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
91198	return nil, false
91199}
91200
91201// AsImpalaObjectDataset is the BasicDataset implementation for WebTableDataset.
91202func (wtd WebTableDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
91203	return nil, false
91204}
91205
91206// AsHubspotObjectDataset is the BasicDataset implementation for WebTableDataset.
91207func (wtd WebTableDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
91208	return nil, false
91209}
91210
91211// AsHiveObjectDataset is the BasicDataset implementation for WebTableDataset.
91212func (wtd WebTableDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
91213	return nil, false
91214}
91215
91216// AsHBaseObjectDataset is the BasicDataset implementation for WebTableDataset.
91217func (wtd WebTableDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
91218	return nil, false
91219}
91220
91221// AsGreenplumTableDataset is the BasicDataset implementation for WebTableDataset.
91222func (wtd WebTableDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
91223	return nil, false
91224}
91225
91226// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for WebTableDataset.
91227func (wtd WebTableDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
91228	return nil, false
91229}
91230
91231// AsEloquaObjectDataset is the BasicDataset implementation for WebTableDataset.
91232func (wtd WebTableDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
91233	return nil, false
91234}
91235
91236// AsDrillTableDataset is the BasicDataset implementation for WebTableDataset.
91237func (wtd WebTableDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
91238	return nil, false
91239}
91240
91241// AsCouchbaseTableDataset is the BasicDataset implementation for WebTableDataset.
91242func (wtd WebTableDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
91243	return nil, false
91244}
91245
91246// AsConcurObjectDataset is the BasicDataset implementation for WebTableDataset.
91247func (wtd WebTableDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
91248	return nil, false
91249}
91250
91251// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for WebTableDataset.
91252func (wtd WebTableDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
91253	return nil, false
91254}
91255
91256// AsAmazonMWSObjectDataset is the BasicDataset implementation for WebTableDataset.
91257func (wtd WebTableDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
91258	return nil, false
91259}
91260
91261// AsHTTPDataset is the BasicDataset implementation for WebTableDataset.
91262func (wtd WebTableDataset) AsHTTPDataset() (*HTTPDataset, bool) {
91263	return nil, false
91264}
91265
91266// AsAzureSearchIndexDataset is the BasicDataset implementation for WebTableDataset.
91267func (wtd WebTableDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
91268	return nil, false
91269}
91270
91271// AsWebTableDataset is the BasicDataset implementation for WebTableDataset.
91272func (wtd WebTableDataset) AsWebTableDataset() (*WebTableDataset, bool) {
91273	return &wtd, true
91274}
91275
91276// AsSQLServerTableDataset is the BasicDataset implementation for WebTableDataset.
91277func (wtd WebTableDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
91278	return nil, false
91279}
91280
91281// AsSapEccResourceDataset is the BasicDataset implementation for WebTableDataset.
91282func (wtd WebTableDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
91283	return nil, false
91284}
91285
91286// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for WebTableDataset.
91287func (wtd WebTableDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
91288	return nil, false
91289}
91290
91291// AsSalesforceObjectDataset is the BasicDataset implementation for WebTableDataset.
91292func (wtd WebTableDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
91293	return nil, false
91294}
91295
91296// AsRelationalTableDataset is the BasicDataset implementation for WebTableDataset.
91297func (wtd WebTableDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
91298	return nil, false
91299}
91300
91301// AsAzureMySQLTableDataset is the BasicDataset implementation for WebTableDataset.
91302func (wtd WebTableDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
91303	return nil, false
91304}
91305
91306// AsOracleTableDataset is the BasicDataset implementation for WebTableDataset.
91307func (wtd WebTableDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
91308	return nil, false
91309}
91310
91311// AsODataResourceDataset is the BasicDataset implementation for WebTableDataset.
91312func (wtd WebTableDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
91313	return nil, false
91314}
91315
91316// AsMongoDbCollectionDataset is the BasicDataset implementation for WebTableDataset.
91317func (wtd WebTableDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
91318	return nil, false
91319}
91320
91321// AsFileShareDataset is the BasicDataset implementation for WebTableDataset.
91322func (wtd WebTableDataset) AsFileShareDataset() (*FileShareDataset, bool) {
91323	return nil, false
91324}
91325
91326// AsAzureDataLakeStoreDataset is the BasicDataset implementation for WebTableDataset.
91327func (wtd WebTableDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
91328	return nil, false
91329}
91330
91331// AsDynamicsEntityDataset is the BasicDataset implementation for WebTableDataset.
91332func (wtd WebTableDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
91333	return nil, false
91334}
91335
91336// AsDocumentDbCollectionDataset is the BasicDataset implementation for WebTableDataset.
91337func (wtd WebTableDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
91338	return nil, false
91339}
91340
91341// AsCustomDataset is the BasicDataset implementation for WebTableDataset.
91342func (wtd WebTableDataset) AsCustomDataset() (*CustomDataset, bool) {
91343	return nil, false
91344}
91345
91346// AsCassandraTableDataset is the BasicDataset implementation for WebTableDataset.
91347func (wtd WebTableDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
91348	return nil, false
91349}
91350
91351// AsAzureSQLDWTableDataset is the BasicDataset implementation for WebTableDataset.
91352func (wtd WebTableDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
91353	return nil, false
91354}
91355
91356// AsAzureSQLTableDataset is the BasicDataset implementation for WebTableDataset.
91357func (wtd WebTableDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
91358	return nil, false
91359}
91360
91361// AsAzureTableDataset is the BasicDataset implementation for WebTableDataset.
91362func (wtd WebTableDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
91363	return nil, false
91364}
91365
91366// AsAzureBlobDataset is the BasicDataset implementation for WebTableDataset.
91367func (wtd WebTableDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
91368	return nil, false
91369}
91370
91371// AsAmazonS3Dataset is the BasicDataset implementation for WebTableDataset.
91372func (wtd WebTableDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
91373	return nil, false
91374}
91375
91376// AsDataset is the BasicDataset implementation for WebTableDataset.
91377func (wtd WebTableDataset) AsDataset() (*Dataset, bool) {
91378	return nil, false
91379}
91380
91381// AsBasicDataset is the BasicDataset implementation for WebTableDataset.
91382func (wtd WebTableDataset) AsBasicDataset() (BasicDataset, bool) {
91383	return &wtd, true
91384}
91385
91386// UnmarshalJSON is the custom unmarshaler for WebTableDataset struct.
91387func (wtd *WebTableDataset) UnmarshalJSON(body []byte) error {
91388	var m map[string]*json.RawMessage
91389	err := json.Unmarshal(body, &m)
91390	if err != nil {
91391		return err
91392	}
91393	for k, v := range m {
91394		switch k {
91395		case "typeProperties":
91396			if v != nil {
91397				var webTableDatasetTypeProperties WebTableDatasetTypeProperties
91398				err = json.Unmarshal(*v, &webTableDatasetTypeProperties)
91399				if err != nil {
91400					return err
91401				}
91402				wtd.WebTableDatasetTypeProperties = &webTableDatasetTypeProperties
91403			}
91404		default:
91405			if v != nil {
91406				var additionalProperties interface{}
91407				err = json.Unmarshal(*v, &additionalProperties)
91408				if err != nil {
91409					return err
91410				}
91411				if wtd.AdditionalProperties == nil {
91412					wtd.AdditionalProperties = make(map[string]interface{})
91413				}
91414				wtd.AdditionalProperties[k] = additionalProperties
91415			}
91416		case "description":
91417			if v != nil {
91418				var description string
91419				err = json.Unmarshal(*v, &description)
91420				if err != nil {
91421					return err
91422				}
91423				wtd.Description = &description
91424			}
91425		case "structure":
91426			if v != nil {
91427				var structure interface{}
91428				err = json.Unmarshal(*v, &structure)
91429				if err != nil {
91430					return err
91431				}
91432				wtd.Structure = structure
91433			}
91434		case "linkedServiceName":
91435			if v != nil {
91436				var linkedServiceName LinkedServiceReference
91437				err = json.Unmarshal(*v, &linkedServiceName)
91438				if err != nil {
91439					return err
91440				}
91441				wtd.LinkedServiceName = &linkedServiceName
91442			}
91443		case "parameters":
91444			if v != nil {
91445				var parameters map[string]*ParameterSpecification
91446				err = json.Unmarshal(*v, &parameters)
91447				if err != nil {
91448					return err
91449				}
91450				wtd.Parameters = parameters
91451			}
91452		case "annotations":
91453			if v != nil {
91454				var annotations []interface{}
91455				err = json.Unmarshal(*v, &annotations)
91456				if err != nil {
91457					return err
91458				}
91459				wtd.Annotations = &annotations
91460			}
91461		case "type":
91462			if v != nil {
91463				var typeVar TypeBasicDataset
91464				err = json.Unmarshal(*v, &typeVar)
91465				if err != nil {
91466					return err
91467				}
91468				wtd.Type = typeVar
91469			}
91470		}
91471	}
91472
91473	return nil
91474}
91475
91476// WebTableDatasetTypeProperties web table dataset properties.
91477type WebTableDatasetTypeProperties struct {
91478	// Index - The zero-based index of the table in the web page. Type: integer (or Expression with resultType integer), minimum: 0.
91479	Index interface{} `json:"index,omitempty"`
91480	// Path - The relative URL to the web page from the linked service URL. Type: string (or Expression with resultType string).
91481	Path interface{} `json:"path,omitempty"`
91482}
91483
91484// XeroLinkedService xero Serivce linked service.
91485type XeroLinkedService struct {
91486	// XeroLinkedServiceTypeProperties - Xero Serivce linked service properties.
91487	*XeroLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
91488	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
91489	AdditionalProperties map[string]interface{} `json:""`
91490	// ConnectVia - The integration runtime reference.
91491	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
91492	// Description - Linked service description.
91493	Description *string `json:"description,omitempty"`
91494	// Parameters - Parameters for linked service.
91495	Parameters map[string]*ParameterSpecification `json:"parameters"`
91496	// Annotations - List of tags that can be used for describing the Dataset.
91497	Annotations *[]interface{} `json:"annotations,omitempty"`
91498	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
91499	Type TypeBasicLinkedService `json:"type,omitempty"`
91500}
91501
91502// MarshalJSON is the custom marshaler for XeroLinkedService.
91503func (xls XeroLinkedService) MarshalJSON() ([]byte, error) {
91504	xls.Type = TypeXero
91505	objectMap := make(map[string]interface{})
91506	if xls.XeroLinkedServiceTypeProperties != nil {
91507		objectMap["typeProperties"] = xls.XeroLinkedServiceTypeProperties
91508	}
91509	if xls.ConnectVia != nil {
91510		objectMap["connectVia"] = xls.ConnectVia
91511	}
91512	if xls.Description != nil {
91513		objectMap["description"] = xls.Description
91514	}
91515	if xls.Parameters != nil {
91516		objectMap["parameters"] = xls.Parameters
91517	}
91518	if xls.Annotations != nil {
91519		objectMap["annotations"] = xls.Annotations
91520	}
91521	if xls.Type != "" {
91522		objectMap["type"] = xls.Type
91523	}
91524	for k, v := range xls.AdditionalProperties {
91525		objectMap[k] = v
91526	}
91527	return json.Marshal(objectMap)
91528}
91529
91530// AsResponsysLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91531func (xls XeroLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
91532	return nil, false
91533}
91534
91535// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91536func (xls XeroLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
91537	return nil, false
91538}
91539
91540// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91541func (xls XeroLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
91542	return nil, false
91543}
91544
91545// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91546func (xls XeroLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
91547	return nil, false
91548}
91549
91550// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91551func (xls XeroLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
91552	return nil, false
91553}
91554
91555// AsNetezzaLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91556func (xls XeroLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
91557	return nil, false
91558}
91559
91560// AsVerticaLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91561func (xls XeroLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
91562	return nil, false
91563}
91564
91565// AsZohoLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91566func (xls XeroLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
91567	return nil, false
91568}
91569
91570// AsXeroLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91571func (xls XeroLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
91572	return &xls, true
91573}
91574
91575// AsSquareLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91576func (xls XeroLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
91577	return nil, false
91578}
91579
91580// AsSparkLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91581func (xls XeroLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
91582	return nil, false
91583}
91584
91585// AsShopifyLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91586func (xls XeroLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
91587	return nil, false
91588}
91589
91590// AsServiceNowLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91591func (xls XeroLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
91592	return nil, false
91593}
91594
91595// AsQuickBooksLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91596func (xls XeroLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
91597	return nil, false
91598}
91599
91600// AsPrestoLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91601func (xls XeroLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
91602	return nil, false
91603}
91604
91605// AsPhoenixLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91606func (xls XeroLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
91607	return nil, false
91608}
91609
91610// AsPaypalLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91611func (xls XeroLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
91612	return nil, false
91613}
91614
91615// AsMarketoLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91616func (xls XeroLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
91617	return nil, false
91618}
91619
91620// AsMariaDBLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91621func (xls XeroLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
91622	return nil, false
91623}
91624
91625// AsMagentoLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91626func (xls XeroLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
91627	return nil, false
91628}
91629
91630// AsJiraLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91631func (xls XeroLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
91632	return nil, false
91633}
91634
91635// AsImpalaLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91636func (xls XeroLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
91637	return nil, false
91638}
91639
91640// AsHubspotLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91641func (xls XeroLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
91642	return nil, false
91643}
91644
91645// AsHiveLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91646func (xls XeroLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
91647	return nil, false
91648}
91649
91650// AsHBaseLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91651func (xls XeroLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
91652	return nil, false
91653}
91654
91655// AsGreenplumLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91656func (xls XeroLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
91657	return nil, false
91658}
91659
91660// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91661func (xls XeroLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
91662	return nil, false
91663}
91664
91665// AsEloquaLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91666func (xls XeroLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
91667	return nil, false
91668}
91669
91670// AsDrillLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91671func (xls XeroLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
91672	return nil, false
91673}
91674
91675// AsCouchbaseLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91676func (xls XeroLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
91677	return nil, false
91678}
91679
91680// AsConcurLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91681func (xls XeroLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
91682	return nil, false
91683}
91684
91685// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91686func (xls XeroLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
91687	return nil, false
91688}
91689
91690// AsAmazonMWSLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91691func (xls XeroLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
91692	return nil, false
91693}
91694
91695// AsSapHanaLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91696func (xls XeroLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
91697	return nil, false
91698}
91699
91700// AsSapBWLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91701func (xls XeroLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
91702	return nil, false
91703}
91704
91705// AsSftpServerLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91706func (xls XeroLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
91707	return nil, false
91708}
91709
91710// AsFtpServerLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91711func (xls XeroLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
91712	return nil, false
91713}
91714
91715// AsHTTPLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91716func (xls XeroLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
91717	return nil, false
91718}
91719
91720// AsAzureSearchLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91721func (xls XeroLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
91722	return nil, false
91723}
91724
91725// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91726func (xls XeroLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
91727	return nil, false
91728}
91729
91730// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91731func (xls XeroLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
91732	return nil, false
91733}
91734
91735// AsAmazonS3LinkedService is the BasicLinkedService implementation for XeroLinkedService.
91736func (xls XeroLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
91737	return nil, false
91738}
91739
91740// AsSapEccLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91741func (xls XeroLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
91742	return nil, false
91743}
91744
91745// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91746func (xls XeroLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
91747	return nil, false
91748}
91749
91750// AsSalesforceLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91751func (xls XeroLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
91752	return nil, false
91753}
91754
91755// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91756func (xls XeroLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
91757	return nil, false
91758}
91759
91760// AsMongoDbLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91761func (xls XeroLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
91762	return nil, false
91763}
91764
91765// AsCassandraLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91766func (xls XeroLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
91767	return nil, false
91768}
91769
91770// AsWebLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91771func (xls XeroLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
91772	return nil, false
91773}
91774
91775// AsODataLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91776func (xls XeroLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
91777	return nil, false
91778}
91779
91780// AsHdfsLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91781func (xls XeroLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
91782	return nil, false
91783}
91784
91785// AsOdbcLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91786func (xls XeroLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
91787	return nil, false
91788}
91789
91790// AsAzureMLLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91791func (xls XeroLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
91792	return nil, false
91793}
91794
91795// AsTeradataLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91796func (xls XeroLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
91797	return nil, false
91798}
91799
91800// AsDb2LinkedService is the BasicLinkedService implementation for XeroLinkedService.
91801func (xls XeroLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
91802	return nil, false
91803}
91804
91805// AsSybaseLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91806func (xls XeroLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
91807	return nil, false
91808}
91809
91810// AsPostgreSQLLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91811func (xls XeroLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
91812	return nil, false
91813}
91814
91815// AsMySQLLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91816func (xls XeroLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
91817	return nil, false
91818}
91819
91820// AsAzureMySQLLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91821func (xls XeroLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
91822	return nil, false
91823}
91824
91825// AsOracleLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91826func (xls XeroLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
91827	return nil, false
91828}
91829
91830// AsFileServerLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91831func (xls XeroLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
91832	return nil, false
91833}
91834
91835// AsHDInsightLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91836func (xls XeroLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
91837	return nil, false
91838}
91839
91840// AsDynamicsLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91841func (xls XeroLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
91842	return nil, false
91843}
91844
91845// AsCosmosDbLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91846func (xls XeroLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
91847	return nil, false
91848}
91849
91850// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91851func (xls XeroLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
91852	return nil, false
91853}
91854
91855// AsAzureBatchLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91856func (xls XeroLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
91857	return nil, false
91858}
91859
91860// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91861func (xls XeroLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
91862	return nil, false
91863}
91864
91865// AsSQLServerLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91866func (xls XeroLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
91867	return nil, false
91868}
91869
91870// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91871func (xls XeroLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
91872	return nil, false
91873}
91874
91875// AsAzureStorageLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91876func (xls XeroLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
91877	return nil, false
91878}
91879
91880// AsLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91881func (xls XeroLinkedService) AsLinkedService() (*LinkedService, bool) {
91882	return nil, false
91883}
91884
91885// AsBasicLinkedService is the BasicLinkedService implementation for XeroLinkedService.
91886func (xls XeroLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
91887	return &xls, true
91888}
91889
91890// UnmarshalJSON is the custom unmarshaler for XeroLinkedService struct.
91891func (xls *XeroLinkedService) UnmarshalJSON(body []byte) error {
91892	var m map[string]*json.RawMessage
91893	err := json.Unmarshal(body, &m)
91894	if err != nil {
91895		return err
91896	}
91897	for k, v := range m {
91898		switch k {
91899		case "typeProperties":
91900			if v != nil {
91901				var xeroLinkedServiceTypeProperties XeroLinkedServiceTypeProperties
91902				err = json.Unmarshal(*v, &xeroLinkedServiceTypeProperties)
91903				if err != nil {
91904					return err
91905				}
91906				xls.XeroLinkedServiceTypeProperties = &xeroLinkedServiceTypeProperties
91907			}
91908		default:
91909			if v != nil {
91910				var additionalProperties interface{}
91911				err = json.Unmarshal(*v, &additionalProperties)
91912				if err != nil {
91913					return err
91914				}
91915				if xls.AdditionalProperties == nil {
91916					xls.AdditionalProperties = make(map[string]interface{})
91917				}
91918				xls.AdditionalProperties[k] = additionalProperties
91919			}
91920		case "connectVia":
91921			if v != nil {
91922				var connectVia IntegrationRuntimeReference
91923				err = json.Unmarshal(*v, &connectVia)
91924				if err != nil {
91925					return err
91926				}
91927				xls.ConnectVia = &connectVia
91928			}
91929		case "description":
91930			if v != nil {
91931				var description string
91932				err = json.Unmarshal(*v, &description)
91933				if err != nil {
91934					return err
91935				}
91936				xls.Description = &description
91937			}
91938		case "parameters":
91939			if v != nil {
91940				var parameters map[string]*ParameterSpecification
91941				err = json.Unmarshal(*v, &parameters)
91942				if err != nil {
91943					return err
91944				}
91945				xls.Parameters = parameters
91946			}
91947		case "annotations":
91948			if v != nil {
91949				var annotations []interface{}
91950				err = json.Unmarshal(*v, &annotations)
91951				if err != nil {
91952					return err
91953				}
91954				xls.Annotations = &annotations
91955			}
91956		case "type":
91957			if v != nil {
91958				var typeVar TypeBasicLinkedService
91959				err = json.Unmarshal(*v, &typeVar)
91960				if err != nil {
91961					return err
91962				}
91963				xls.Type = typeVar
91964			}
91965		}
91966	}
91967
91968	return nil
91969}
91970
91971// XeroLinkedServiceTypeProperties xero Serivce linked service properties.
91972type XeroLinkedServiceTypeProperties struct {
91973	// Host - The endpoint of the Xero server. (i.e. api.xero.com)
91974	Host interface{} `json:"host,omitempty"`
91975	// ConsumerKey - The consumer key associated with the Xero application.
91976	ConsumerKey BasicSecretBase `json:"consumerKey,omitempty"`
91977	// PrivateKey - The private key from the .pem file that was generated for your Xero private application. You must include all the text from the .pem file, including the Unix line endings(
91978	// ).
91979	PrivateKey BasicSecretBase `json:"privateKey,omitempty"`
91980	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
91981	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
91982	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
91983	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
91984	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
91985	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
91986	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
91987	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
91988}
91989
91990// UnmarshalJSON is the custom unmarshaler for XeroLinkedServiceTypeProperties struct.
91991func (xlstp *XeroLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
91992	var m map[string]*json.RawMessage
91993	err := json.Unmarshal(body, &m)
91994	if err != nil {
91995		return err
91996	}
91997	for k, v := range m {
91998		switch k {
91999		case "host":
92000			if v != nil {
92001				var host interface{}
92002				err = json.Unmarshal(*v, &host)
92003				if err != nil {
92004					return err
92005				}
92006				xlstp.Host = host
92007			}
92008		case "consumerKey":
92009			if v != nil {
92010				consumerKey, err := unmarshalBasicSecretBase(*v)
92011				if err != nil {
92012					return err
92013				}
92014				xlstp.ConsumerKey = consumerKey
92015			}
92016		case "privateKey":
92017			if v != nil {
92018				privateKey, err := unmarshalBasicSecretBase(*v)
92019				if err != nil {
92020					return err
92021				}
92022				xlstp.PrivateKey = privateKey
92023			}
92024		case "useEncryptedEndpoints":
92025			if v != nil {
92026				var useEncryptedEndpoints interface{}
92027				err = json.Unmarshal(*v, &useEncryptedEndpoints)
92028				if err != nil {
92029					return err
92030				}
92031				xlstp.UseEncryptedEndpoints = useEncryptedEndpoints
92032			}
92033		case "useHostVerification":
92034			if v != nil {
92035				var useHostVerification interface{}
92036				err = json.Unmarshal(*v, &useHostVerification)
92037				if err != nil {
92038					return err
92039				}
92040				xlstp.UseHostVerification = useHostVerification
92041			}
92042		case "usePeerVerification":
92043			if v != nil {
92044				var usePeerVerification interface{}
92045				err = json.Unmarshal(*v, &usePeerVerification)
92046				if err != nil {
92047					return err
92048				}
92049				xlstp.UsePeerVerification = usePeerVerification
92050			}
92051		case "encryptedCredential":
92052			if v != nil {
92053				var encryptedCredential interface{}
92054				err = json.Unmarshal(*v, &encryptedCredential)
92055				if err != nil {
92056					return err
92057				}
92058				xlstp.EncryptedCredential = encryptedCredential
92059			}
92060		}
92061	}
92062
92063	return nil
92064}
92065
92066// XeroObjectDataset xero Serivce dataset.
92067type XeroObjectDataset struct {
92068	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
92069	AdditionalProperties map[string]interface{} `json:""`
92070	// Description - Dataset description.
92071	Description *string `json:"description,omitempty"`
92072	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
92073	Structure interface{} `json:"structure,omitempty"`
92074	// LinkedServiceName - Linked service reference.
92075	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
92076	// Parameters - Parameters for dataset.
92077	Parameters map[string]*ParameterSpecification `json:"parameters"`
92078	// Annotations - List of tags that can be used for describing the Dataset.
92079	Annotations *[]interface{} `json:"annotations,omitempty"`
92080	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
92081	Type TypeBasicDataset `json:"type,omitempty"`
92082}
92083
92084// MarshalJSON is the custom marshaler for XeroObjectDataset.
92085func (xod XeroObjectDataset) MarshalJSON() ([]byte, error) {
92086	xod.Type = TypeXeroObject
92087	objectMap := make(map[string]interface{})
92088	if xod.Description != nil {
92089		objectMap["description"] = xod.Description
92090	}
92091	objectMap["structure"] = xod.Structure
92092	if xod.LinkedServiceName != nil {
92093		objectMap["linkedServiceName"] = xod.LinkedServiceName
92094	}
92095	if xod.Parameters != nil {
92096		objectMap["parameters"] = xod.Parameters
92097	}
92098	if xod.Annotations != nil {
92099		objectMap["annotations"] = xod.Annotations
92100	}
92101	if xod.Type != "" {
92102		objectMap["type"] = xod.Type
92103	}
92104	for k, v := range xod.AdditionalProperties {
92105		objectMap[k] = v
92106	}
92107	return json.Marshal(objectMap)
92108}
92109
92110// AsResponsysObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92111func (xod XeroObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
92112	return nil, false
92113}
92114
92115// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92116func (xod XeroObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
92117	return nil, false
92118}
92119
92120// AsVerticaTableDataset is the BasicDataset implementation for XeroObjectDataset.
92121func (xod XeroObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
92122	return nil, false
92123}
92124
92125// AsNetezzaTableDataset is the BasicDataset implementation for XeroObjectDataset.
92126func (xod XeroObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
92127	return nil, false
92128}
92129
92130// AsZohoObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92131func (xod XeroObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
92132	return nil, false
92133}
92134
92135// AsXeroObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92136func (xod XeroObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
92137	return &xod, true
92138}
92139
92140// AsSquareObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92141func (xod XeroObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
92142	return nil, false
92143}
92144
92145// AsSparkObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92146func (xod XeroObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
92147	return nil, false
92148}
92149
92150// AsShopifyObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92151func (xod XeroObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
92152	return nil, false
92153}
92154
92155// AsServiceNowObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92156func (xod XeroObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
92157	return nil, false
92158}
92159
92160// AsQuickBooksObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92161func (xod XeroObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
92162	return nil, false
92163}
92164
92165// AsPrestoObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92166func (xod XeroObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
92167	return nil, false
92168}
92169
92170// AsPhoenixObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92171func (xod XeroObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
92172	return nil, false
92173}
92174
92175// AsPaypalObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92176func (xod XeroObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
92177	return nil, false
92178}
92179
92180// AsMarketoObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92181func (xod XeroObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
92182	return nil, false
92183}
92184
92185// AsMariaDBTableDataset is the BasicDataset implementation for XeroObjectDataset.
92186func (xod XeroObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
92187	return nil, false
92188}
92189
92190// AsMagentoObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92191func (xod XeroObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
92192	return nil, false
92193}
92194
92195// AsJiraObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92196func (xod XeroObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
92197	return nil, false
92198}
92199
92200// AsImpalaObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92201func (xod XeroObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
92202	return nil, false
92203}
92204
92205// AsHubspotObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92206func (xod XeroObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
92207	return nil, false
92208}
92209
92210// AsHiveObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92211func (xod XeroObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
92212	return nil, false
92213}
92214
92215// AsHBaseObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92216func (xod XeroObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
92217	return nil, false
92218}
92219
92220// AsGreenplumTableDataset is the BasicDataset implementation for XeroObjectDataset.
92221func (xod XeroObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
92222	return nil, false
92223}
92224
92225// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92226func (xod XeroObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
92227	return nil, false
92228}
92229
92230// AsEloquaObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92231func (xod XeroObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
92232	return nil, false
92233}
92234
92235// AsDrillTableDataset is the BasicDataset implementation for XeroObjectDataset.
92236func (xod XeroObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
92237	return nil, false
92238}
92239
92240// AsCouchbaseTableDataset is the BasicDataset implementation for XeroObjectDataset.
92241func (xod XeroObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
92242	return nil, false
92243}
92244
92245// AsConcurObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92246func (xod XeroObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
92247	return nil, false
92248}
92249
92250// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for XeroObjectDataset.
92251func (xod XeroObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
92252	return nil, false
92253}
92254
92255// AsAmazonMWSObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92256func (xod XeroObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
92257	return nil, false
92258}
92259
92260// AsHTTPDataset is the BasicDataset implementation for XeroObjectDataset.
92261func (xod XeroObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
92262	return nil, false
92263}
92264
92265// AsAzureSearchIndexDataset is the BasicDataset implementation for XeroObjectDataset.
92266func (xod XeroObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
92267	return nil, false
92268}
92269
92270// AsWebTableDataset is the BasicDataset implementation for XeroObjectDataset.
92271func (xod XeroObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
92272	return nil, false
92273}
92274
92275// AsSQLServerTableDataset is the BasicDataset implementation for XeroObjectDataset.
92276func (xod XeroObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
92277	return nil, false
92278}
92279
92280// AsSapEccResourceDataset is the BasicDataset implementation for XeroObjectDataset.
92281func (xod XeroObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
92282	return nil, false
92283}
92284
92285// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for XeroObjectDataset.
92286func (xod XeroObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
92287	return nil, false
92288}
92289
92290// AsSalesforceObjectDataset is the BasicDataset implementation for XeroObjectDataset.
92291func (xod XeroObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
92292	return nil, false
92293}
92294
92295// AsRelationalTableDataset is the BasicDataset implementation for XeroObjectDataset.
92296func (xod XeroObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
92297	return nil, false
92298}
92299
92300// AsAzureMySQLTableDataset is the BasicDataset implementation for XeroObjectDataset.
92301func (xod XeroObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
92302	return nil, false
92303}
92304
92305// AsOracleTableDataset is the BasicDataset implementation for XeroObjectDataset.
92306func (xod XeroObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
92307	return nil, false
92308}
92309
92310// AsODataResourceDataset is the BasicDataset implementation for XeroObjectDataset.
92311func (xod XeroObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
92312	return nil, false
92313}
92314
92315// AsMongoDbCollectionDataset is the BasicDataset implementation for XeroObjectDataset.
92316func (xod XeroObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
92317	return nil, false
92318}
92319
92320// AsFileShareDataset is the BasicDataset implementation for XeroObjectDataset.
92321func (xod XeroObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
92322	return nil, false
92323}
92324
92325// AsAzureDataLakeStoreDataset is the BasicDataset implementation for XeroObjectDataset.
92326func (xod XeroObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
92327	return nil, false
92328}
92329
92330// AsDynamicsEntityDataset is the BasicDataset implementation for XeroObjectDataset.
92331func (xod XeroObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
92332	return nil, false
92333}
92334
92335// AsDocumentDbCollectionDataset is the BasicDataset implementation for XeroObjectDataset.
92336func (xod XeroObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
92337	return nil, false
92338}
92339
92340// AsCustomDataset is the BasicDataset implementation for XeroObjectDataset.
92341func (xod XeroObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
92342	return nil, false
92343}
92344
92345// AsCassandraTableDataset is the BasicDataset implementation for XeroObjectDataset.
92346func (xod XeroObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
92347	return nil, false
92348}
92349
92350// AsAzureSQLDWTableDataset is the BasicDataset implementation for XeroObjectDataset.
92351func (xod XeroObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
92352	return nil, false
92353}
92354
92355// AsAzureSQLTableDataset is the BasicDataset implementation for XeroObjectDataset.
92356func (xod XeroObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
92357	return nil, false
92358}
92359
92360// AsAzureTableDataset is the BasicDataset implementation for XeroObjectDataset.
92361func (xod XeroObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
92362	return nil, false
92363}
92364
92365// AsAzureBlobDataset is the BasicDataset implementation for XeroObjectDataset.
92366func (xod XeroObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
92367	return nil, false
92368}
92369
92370// AsAmazonS3Dataset is the BasicDataset implementation for XeroObjectDataset.
92371func (xod XeroObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
92372	return nil, false
92373}
92374
92375// AsDataset is the BasicDataset implementation for XeroObjectDataset.
92376func (xod XeroObjectDataset) AsDataset() (*Dataset, bool) {
92377	return nil, false
92378}
92379
92380// AsBasicDataset is the BasicDataset implementation for XeroObjectDataset.
92381func (xod XeroObjectDataset) AsBasicDataset() (BasicDataset, bool) {
92382	return &xod, true
92383}
92384
92385// XeroSource a copy activity Xero Serivce source.
92386type XeroSource struct {
92387	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
92388	Query interface{} `json:"query,omitempty"`
92389	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
92390	AdditionalProperties map[string]interface{} `json:""`
92391	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
92392	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
92393	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
92394	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
92395	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
92396	Type TypeBasicCopySource `json:"type,omitempty"`
92397}
92398
92399// MarshalJSON is the custom marshaler for XeroSource.
92400func (xs XeroSource) MarshalJSON() ([]byte, error) {
92401	xs.Type = TypeXeroSource
92402	objectMap := make(map[string]interface{})
92403	objectMap["query"] = xs.Query
92404	objectMap["sourceRetryCount"] = xs.SourceRetryCount
92405	objectMap["sourceRetryWait"] = xs.SourceRetryWait
92406	if xs.Type != "" {
92407		objectMap["type"] = xs.Type
92408	}
92409	for k, v := range xs.AdditionalProperties {
92410		objectMap[k] = v
92411	}
92412	return json.Marshal(objectMap)
92413}
92414
92415// AsAmazonRedshiftSource is the BasicCopySource implementation for XeroSource.
92416func (xs XeroSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
92417	return nil, false
92418}
92419
92420// AsResponsysSource is the BasicCopySource implementation for XeroSource.
92421func (xs XeroSource) AsResponsysSource() (*ResponsysSource, bool) {
92422	return nil, false
92423}
92424
92425// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for XeroSource.
92426func (xs XeroSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
92427	return nil, false
92428}
92429
92430// AsVerticaSource is the BasicCopySource implementation for XeroSource.
92431func (xs XeroSource) AsVerticaSource() (*VerticaSource, bool) {
92432	return nil, false
92433}
92434
92435// AsNetezzaSource is the BasicCopySource implementation for XeroSource.
92436func (xs XeroSource) AsNetezzaSource() (*NetezzaSource, bool) {
92437	return nil, false
92438}
92439
92440// AsZohoSource is the BasicCopySource implementation for XeroSource.
92441func (xs XeroSource) AsZohoSource() (*ZohoSource, bool) {
92442	return nil, false
92443}
92444
92445// AsXeroSource is the BasicCopySource implementation for XeroSource.
92446func (xs XeroSource) AsXeroSource() (*XeroSource, bool) {
92447	return &xs, true
92448}
92449
92450// AsSquareSource is the BasicCopySource implementation for XeroSource.
92451func (xs XeroSource) AsSquareSource() (*SquareSource, bool) {
92452	return nil, false
92453}
92454
92455// AsSparkSource is the BasicCopySource implementation for XeroSource.
92456func (xs XeroSource) AsSparkSource() (*SparkSource, bool) {
92457	return nil, false
92458}
92459
92460// AsShopifySource is the BasicCopySource implementation for XeroSource.
92461func (xs XeroSource) AsShopifySource() (*ShopifySource, bool) {
92462	return nil, false
92463}
92464
92465// AsServiceNowSource is the BasicCopySource implementation for XeroSource.
92466func (xs XeroSource) AsServiceNowSource() (*ServiceNowSource, bool) {
92467	return nil, false
92468}
92469
92470// AsQuickBooksSource is the BasicCopySource implementation for XeroSource.
92471func (xs XeroSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
92472	return nil, false
92473}
92474
92475// AsPrestoSource is the BasicCopySource implementation for XeroSource.
92476func (xs XeroSource) AsPrestoSource() (*PrestoSource, bool) {
92477	return nil, false
92478}
92479
92480// AsPhoenixSource is the BasicCopySource implementation for XeroSource.
92481func (xs XeroSource) AsPhoenixSource() (*PhoenixSource, bool) {
92482	return nil, false
92483}
92484
92485// AsPaypalSource is the BasicCopySource implementation for XeroSource.
92486func (xs XeroSource) AsPaypalSource() (*PaypalSource, bool) {
92487	return nil, false
92488}
92489
92490// AsMarketoSource is the BasicCopySource implementation for XeroSource.
92491func (xs XeroSource) AsMarketoSource() (*MarketoSource, bool) {
92492	return nil, false
92493}
92494
92495// AsMariaDBSource is the BasicCopySource implementation for XeroSource.
92496func (xs XeroSource) AsMariaDBSource() (*MariaDBSource, bool) {
92497	return nil, false
92498}
92499
92500// AsMagentoSource is the BasicCopySource implementation for XeroSource.
92501func (xs XeroSource) AsMagentoSource() (*MagentoSource, bool) {
92502	return nil, false
92503}
92504
92505// AsJiraSource is the BasicCopySource implementation for XeroSource.
92506func (xs XeroSource) AsJiraSource() (*JiraSource, bool) {
92507	return nil, false
92508}
92509
92510// AsImpalaSource is the BasicCopySource implementation for XeroSource.
92511func (xs XeroSource) AsImpalaSource() (*ImpalaSource, bool) {
92512	return nil, false
92513}
92514
92515// AsHubspotSource is the BasicCopySource implementation for XeroSource.
92516func (xs XeroSource) AsHubspotSource() (*HubspotSource, bool) {
92517	return nil, false
92518}
92519
92520// AsHiveSource is the BasicCopySource implementation for XeroSource.
92521func (xs XeroSource) AsHiveSource() (*HiveSource, bool) {
92522	return nil, false
92523}
92524
92525// AsHBaseSource is the BasicCopySource implementation for XeroSource.
92526func (xs XeroSource) AsHBaseSource() (*HBaseSource, bool) {
92527	return nil, false
92528}
92529
92530// AsGreenplumSource is the BasicCopySource implementation for XeroSource.
92531func (xs XeroSource) AsGreenplumSource() (*GreenplumSource, bool) {
92532	return nil, false
92533}
92534
92535// AsGoogleBigQuerySource is the BasicCopySource implementation for XeroSource.
92536func (xs XeroSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
92537	return nil, false
92538}
92539
92540// AsEloquaSource is the BasicCopySource implementation for XeroSource.
92541func (xs XeroSource) AsEloquaSource() (*EloquaSource, bool) {
92542	return nil, false
92543}
92544
92545// AsDrillSource is the BasicCopySource implementation for XeroSource.
92546func (xs XeroSource) AsDrillSource() (*DrillSource, bool) {
92547	return nil, false
92548}
92549
92550// AsCouchbaseSource is the BasicCopySource implementation for XeroSource.
92551func (xs XeroSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
92552	return nil, false
92553}
92554
92555// AsConcurSource is the BasicCopySource implementation for XeroSource.
92556func (xs XeroSource) AsConcurSource() (*ConcurSource, bool) {
92557	return nil, false
92558}
92559
92560// AsAzurePostgreSQLSource is the BasicCopySource implementation for XeroSource.
92561func (xs XeroSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
92562	return nil, false
92563}
92564
92565// AsAmazonMWSSource is the BasicCopySource implementation for XeroSource.
92566func (xs XeroSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
92567	return nil, false
92568}
92569
92570// AsHTTPSource is the BasicCopySource implementation for XeroSource.
92571func (xs XeroSource) AsHTTPSource() (*HTTPSource, bool) {
92572	return nil, false
92573}
92574
92575// AsAzureDataLakeStoreSource is the BasicCopySource implementation for XeroSource.
92576func (xs XeroSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
92577	return nil, false
92578}
92579
92580// AsMongoDbSource is the BasicCopySource implementation for XeroSource.
92581func (xs XeroSource) AsMongoDbSource() (*MongoDbSource, bool) {
92582	return nil, false
92583}
92584
92585// AsCassandraSource is the BasicCopySource implementation for XeroSource.
92586func (xs XeroSource) AsCassandraSource() (*CassandraSource, bool) {
92587	return nil, false
92588}
92589
92590// AsWebSource is the BasicCopySource implementation for XeroSource.
92591func (xs XeroSource) AsWebSource() (*WebSource, bool) {
92592	return nil, false
92593}
92594
92595// AsOracleSource is the BasicCopySource implementation for XeroSource.
92596func (xs XeroSource) AsOracleSource() (*OracleSource, bool) {
92597	return nil, false
92598}
92599
92600// AsAzureMySQLSource is the BasicCopySource implementation for XeroSource.
92601func (xs XeroSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
92602	return nil, false
92603}
92604
92605// AsHdfsSource is the BasicCopySource implementation for XeroSource.
92606func (xs XeroSource) AsHdfsSource() (*HdfsSource, bool) {
92607	return nil, false
92608}
92609
92610// AsFileSystemSource is the BasicCopySource implementation for XeroSource.
92611func (xs XeroSource) AsFileSystemSource() (*FileSystemSource, bool) {
92612	return nil, false
92613}
92614
92615// AsSQLDWSource is the BasicCopySource implementation for XeroSource.
92616func (xs XeroSource) AsSQLDWSource() (*SQLDWSource, bool) {
92617	return nil, false
92618}
92619
92620// AsSQLSource is the BasicCopySource implementation for XeroSource.
92621func (xs XeroSource) AsSQLSource() (*SQLSource, bool) {
92622	return nil, false
92623}
92624
92625// AsSapEccSource is the BasicCopySource implementation for XeroSource.
92626func (xs XeroSource) AsSapEccSource() (*SapEccSource, bool) {
92627	return nil, false
92628}
92629
92630// AsSapCloudForCustomerSource is the BasicCopySource implementation for XeroSource.
92631func (xs XeroSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
92632	return nil, false
92633}
92634
92635// AsSalesforceSource is the BasicCopySource implementation for XeroSource.
92636func (xs XeroSource) AsSalesforceSource() (*SalesforceSource, bool) {
92637	return nil, false
92638}
92639
92640// AsRelationalSource is the BasicCopySource implementation for XeroSource.
92641func (xs XeroSource) AsRelationalSource() (*RelationalSource, bool) {
92642	return nil, false
92643}
92644
92645// AsDynamicsSource is the BasicCopySource implementation for XeroSource.
92646func (xs XeroSource) AsDynamicsSource() (*DynamicsSource, bool) {
92647	return nil, false
92648}
92649
92650// AsDocumentDbCollectionSource is the BasicCopySource implementation for XeroSource.
92651func (xs XeroSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
92652	return nil, false
92653}
92654
92655// AsBlobSource is the BasicCopySource implementation for XeroSource.
92656func (xs XeroSource) AsBlobSource() (*BlobSource, bool) {
92657	return nil, false
92658}
92659
92660// AsAzureTableSource is the BasicCopySource implementation for XeroSource.
92661func (xs XeroSource) AsAzureTableSource() (*AzureTableSource, bool) {
92662	return nil, false
92663}
92664
92665// AsCopySource is the BasicCopySource implementation for XeroSource.
92666func (xs XeroSource) AsCopySource() (*CopySource, bool) {
92667	return nil, false
92668}
92669
92670// AsBasicCopySource is the BasicCopySource implementation for XeroSource.
92671func (xs XeroSource) AsBasicCopySource() (BasicCopySource, bool) {
92672	return &xs, true
92673}
92674
92675// ZohoLinkedService zoho server linked service.
92676type ZohoLinkedService struct {
92677	// ZohoLinkedServiceTypeProperties - Zoho server linked service properties.
92678	*ZohoLinkedServiceTypeProperties `json:"typeProperties,omitempty"`
92679	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
92680	AdditionalProperties map[string]interface{} `json:""`
92681	// ConnectVia - The integration runtime reference.
92682	ConnectVia *IntegrationRuntimeReference `json:"connectVia,omitempty"`
92683	// Description - Linked service description.
92684	Description *string `json:"description,omitempty"`
92685	// Parameters - Parameters for linked service.
92686	Parameters map[string]*ParameterSpecification `json:"parameters"`
92687	// Annotations - List of tags that can be used for describing the Dataset.
92688	Annotations *[]interface{} `json:"annotations,omitempty"`
92689	// Type - Possible values include: 'TypeLinkedService', 'TypeResponsys', 'TypeAzureDatabricks', 'TypeAzureDataLakeAnalytics', 'TypeHDInsightOnDemand', 'TypeSalesforceMarketingCloud', 'TypeNetezza', 'TypeVertica', 'TypeZoho', 'TypeXero', 'TypeSquare', 'TypeSpark', 'TypeShopify', 'TypeServiceNow', 'TypeQuickBooks', 'TypePresto', 'TypePhoenix', 'TypePaypal', 'TypeMarketo', 'TypeMariaDB', 'TypeMagento', 'TypeJira', 'TypeImpala', 'TypeHubspot', 'TypeHive', 'TypeHBase', 'TypeGreenplum', 'TypeGoogleBigQuery', 'TypeEloqua', 'TypeDrill', 'TypeCouchbase', 'TypeConcur', 'TypeAzurePostgreSQL', 'TypeAmazonMWS', 'TypeSapHana', 'TypeSapBW', 'TypeSftp', 'TypeFtpServer', 'TypeHTTPServer', 'TypeAzureSearch', 'TypeCustomDataSource', 'TypeAmazonRedshift', 'TypeAmazonS3', 'TypeSapEcc', 'TypeSapCloudForCustomer', 'TypeSalesforce', 'TypeAzureDataLakeStore', 'TypeMongoDb', 'TypeCassandra', 'TypeWeb', 'TypeOData', 'TypeHdfs', 'TypeOdbc', 'TypeAzureML', 'TypeTeradata', 'TypeDb2', 'TypeSybase', 'TypePostgreSQL', 'TypeMySQL', 'TypeAzureMySQL', 'TypeOracle', 'TypeFileServer', 'TypeHDInsight', 'TypeDynamics', 'TypeCosmosDb', 'TypeAzureKeyVault', 'TypeAzureBatch', 'TypeAzureSQLDatabase', 'TypeSQLServer', 'TypeAzureSQLDW', 'TypeAzureStorage'
92690	Type TypeBasicLinkedService `json:"type,omitempty"`
92691}
92692
92693// MarshalJSON is the custom marshaler for ZohoLinkedService.
92694func (zls ZohoLinkedService) MarshalJSON() ([]byte, error) {
92695	zls.Type = TypeZoho
92696	objectMap := make(map[string]interface{})
92697	if zls.ZohoLinkedServiceTypeProperties != nil {
92698		objectMap["typeProperties"] = zls.ZohoLinkedServiceTypeProperties
92699	}
92700	if zls.ConnectVia != nil {
92701		objectMap["connectVia"] = zls.ConnectVia
92702	}
92703	if zls.Description != nil {
92704		objectMap["description"] = zls.Description
92705	}
92706	if zls.Parameters != nil {
92707		objectMap["parameters"] = zls.Parameters
92708	}
92709	if zls.Annotations != nil {
92710		objectMap["annotations"] = zls.Annotations
92711	}
92712	if zls.Type != "" {
92713		objectMap["type"] = zls.Type
92714	}
92715	for k, v := range zls.AdditionalProperties {
92716		objectMap[k] = v
92717	}
92718	return json.Marshal(objectMap)
92719}
92720
92721// AsResponsysLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92722func (zls ZohoLinkedService) AsResponsysLinkedService() (*ResponsysLinkedService, bool) {
92723	return nil, false
92724}
92725
92726// AsAzureDatabricksLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92727func (zls ZohoLinkedService) AsAzureDatabricksLinkedService() (*AzureDatabricksLinkedService, bool) {
92728	return nil, false
92729}
92730
92731// AsAzureDataLakeAnalyticsLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92732func (zls ZohoLinkedService) AsAzureDataLakeAnalyticsLinkedService() (*AzureDataLakeAnalyticsLinkedService, bool) {
92733	return nil, false
92734}
92735
92736// AsHDInsightOnDemandLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92737func (zls ZohoLinkedService) AsHDInsightOnDemandLinkedService() (*HDInsightOnDemandLinkedService, bool) {
92738	return nil, false
92739}
92740
92741// AsSalesforceMarketingCloudLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92742func (zls ZohoLinkedService) AsSalesforceMarketingCloudLinkedService() (*SalesforceMarketingCloudLinkedService, bool) {
92743	return nil, false
92744}
92745
92746// AsNetezzaLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92747func (zls ZohoLinkedService) AsNetezzaLinkedService() (*NetezzaLinkedService, bool) {
92748	return nil, false
92749}
92750
92751// AsVerticaLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92752func (zls ZohoLinkedService) AsVerticaLinkedService() (*VerticaLinkedService, bool) {
92753	return nil, false
92754}
92755
92756// AsZohoLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92757func (zls ZohoLinkedService) AsZohoLinkedService() (*ZohoLinkedService, bool) {
92758	return &zls, true
92759}
92760
92761// AsXeroLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92762func (zls ZohoLinkedService) AsXeroLinkedService() (*XeroLinkedService, bool) {
92763	return nil, false
92764}
92765
92766// AsSquareLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92767func (zls ZohoLinkedService) AsSquareLinkedService() (*SquareLinkedService, bool) {
92768	return nil, false
92769}
92770
92771// AsSparkLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92772func (zls ZohoLinkedService) AsSparkLinkedService() (*SparkLinkedService, bool) {
92773	return nil, false
92774}
92775
92776// AsShopifyLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92777func (zls ZohoLinkedService) AsShopifyLinkedService() (*ShopifyLinkedService, bool) {
92778	return nil, false
92779}
92780
92781// AsServiceNowLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92782func (zls ZohoLinkedService) AsServiceNowLinkedService() (*ServiceNowLinkedService, bool) {
92783	return nil, false
92784}
92785
92786// AsQuickBooksLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92787func (zls ZohoLinkedService) AsQuickBooksLinkedService() (*QuickBooksLinkedService, bool) {
92788	return nil, false
92789}
92790
92791// AsPrestoLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92792func (zls ZohoLinkedService) AsPrestoLinkedService() (*PrestoLinkedService, bool) {
92793	return nil, false
92794}
92795
92796// AsPhoenixLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92797func (zls ZohoLinkedService) AsPhoenixLinkedService() (*PhoenixLinkedService, bool) {
92798	return nil, false
92799}
92800
92801// AsPaypalLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92802func (zls ZohoLinkedService) AsPaypalLinkedService() (*PaypalLinkedService, bool) {
92803	return nil, false
92804}
92805
92806// AsMarketoLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92807func (zls ZohoLinkedService) AsMarketoLinkedService() (*MarketoLinkedService, bool) {
92808	return nil, false
92809}
92810
92811// AsMariaDBLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92812func (zls ZohoLinkedService) AsMariaDBLinkedService() (*MariaDBLinkedService, bool) {
92813	return nil, false
92814}
92815
92816// AsMagentoLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92817func (zls ZohoLinkedService) AsMagentoLinkedService() (*MagentoLinkedService, bool) {
92818	return nil, false
92819}
92820
92821// AsJiraLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92822func (zls ZohoLinkedService) AsJiraLinkedService() (*JiraLinkedService, bool) {
92823	return nil, false
92824}
92825
92826// AsImpalaLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92827func (zls ZohoLinkedService) AsImpalaLinkedService() (*ImpalaLinkedService, bool) {
92828	return nil, false
92829}
92830
92831// AsHubspotLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92832func (zls ZohoLinkedService) AsHubspotLinkedService() (*HubspotLinkedService, bool) {
92833	return nil, false
92834}
92835
92836// AsHiveLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92837func (zls ZohoLinkedService) AsHiveLinkedService() (*HiveLinkedService, bool) {
92838	return nil, false
92839}
92840
92841// AsHBaseLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92842func (zls ZohoLinkedService) AsHBaseLinkedService() (*HBaseLinkedService, bool) {
92843	return nil, false
92844}
92845
92846// AsGreenplumLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92847func (zls ZohoLinkedService) AsGreenplumLinkedService() (*GreenplumLinkedService, bool) {
92848	return nil, false
92849}
92850
92851// AsGoogleBigQueryLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92852func (zls ZohoLinkedService) AsGoogleBigQueryLinkedService() (*GoogleBigQueryLinkedService, bool) {
92853	return nil, false
92854}
92855
92856// AsEloquaLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92857func (zls ZohoLinkedService) AsEloquaLinkedService() (*EloquaLinkedService, bool) {
92858	return nil, false
92859}
92860
92861// AsDrillLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92862func (zls ZohoLinkedService) AsDrillLinkedService() (*DrillLinkedService, bool) {
92863	return nil, false
92864}
92865
92866// AsCouchbaseLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92867func (zls ZohoLinkedService) AsCouchbaseLinkedService() (*CouchbaseLinkedService, bool) {
92868	return nil, false
92869}
92870
92871// AsConcurLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92872func (zls ZohoLinkedService) AsConcurLinkedService() (*ConcurLinkedService, bool) {
92873	return nil, false
92874}
92875
92876// AsAzurePostgreSQLLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92877func (zls ZohoLinkedService) AsAzurePostgreSQLLinkedService() (*AzurePostgreSQLLinkedService, bool) {
92878	return nil, false
92879}
92880
92881// AsAmazonMWSLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92882func (zls ZohoLinkedService) AsAmazonMWSLinkedService() (*AmazonMWSLinkedService, bool) {
92883	return nil, false
92884}
92885
92886// AsSapHanaLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92887func (zls ZohoLinkedService) AsSapHanaLinkedService() (*SapHanaLinkedService, bool) {
92888	return nil, false
92889}
92890
92891// AsSapBWLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92892func (zls ZohoLinkedService) AsSapBWLinkedService() (*SapBWLinkedService, bool) {
92893	return nil, false
92894}
92895
92896// AsSftpServerLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92897func (zls ZohoLinkedService) AsSftpServerLinkedService() (*SftpServerLinkedService, bool) {
92898	return nil, false
92899}
92900
92901// AsFtpServerLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92902func (zls ZohoLinkedService) AsFtpServerLinkedService() (*FtpServerLinkedService, bool) {
92903	return nil, false
92904}
92905
92906// AsHTTPLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92907func (zls ZohoLinkedService) AsHTTPLinkedService() (*HTTPLinkedService, bool) {
92908	return nil, false
92909}
92910
92911// AsAzureSearchLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92912func (zls ZohoLinkedService) AsAzureSearchLinkedService() (*AzureSearchLinkedService, bool) {
92913	return nil, false
92914}
92915
92916// AsCustomDataSourceLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92917func (zls ZohoLinkedService) AsCustomDataSourceLinkedService() (*CustomDataSourceLinkedService, bool) {
92918	return nil, false
92919}
92920
92921// AsAmazonRedshiftLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92922func (zls ZohoLinkedService) AsAmazonRedshiftLinkedService() (*AmazonRedshiftLinkedService, bool) {
92923	return nil, false
92924}
92925
92926// AsAmazonS3LinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92927func (zls ZohoLinkedService) AsAmazonS3LinkedService() (*AmazonS3LinkedService, bool) {
92928	return nil, false
92929}
92930
92931// AsSapEccLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92932func (zls ZohoLinkedService) AsSapEccLinkedService() (*SapEccLinkedService, bool) {
92933	return nil, false
92934}
92935
92936// AsSapCloudForCustomerLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92937func (zls ZohoLinkedService) AsSapCloudForCustomerLinkedService() (*SapCloudForCustomerLinkedService, bool) {
92938	return nil, false
92939}
92940
92941// AsSalesforceLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92942func (zls ZohoLinkedService) AsSalesforceLinkedService() (*SalesforceLinkedService, bool) {
92943	return nil, false
92944}
92945
92946// AsAzureDataLakeStoreLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92947func (zls ZohoLinkedService) AsAzureDataLakeStoreLinkedService() (*AzureDataLakeStoreLinkedService, bool) {
92948	return nil, false
92949}
92950
92951// AsMongoDbLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92952func (zls ZohoLinkedService) AsMongoDbLinkedService() (*MongoDbLinkedService, bool) {
92953	return nil, false
92954}
92955
92956// AsCassandraLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92957func (zls ZohoLinkedService) AsCassandraLinkedService() (*CassandraLinkedService, bool) {
92958	return nil, false
92959}
92960
92961// AsWebLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92962func (zls ZohoLinkedService) AsWebLinkedService() (*WebLinkedService, bool) {
92963	return nil, false
92964}
92965
92966// AsODataLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92967func (zls ZohoLinkedService) AsODataLinkedService() (*ODataLinkedService, bool) {
92968	return nil, false
92969}
92970
92971// AsHdfsLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92972func (zls ZohoLinkedService) AsHdfsLinkedService() (*HdfsLinkedService, bool) {
92973	return nil, false
92974}
92975
92976// AsOdbcLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92977func (zls ZohoLinkedService) AsOdbcLinkedService() (*OdbcLinkedService, bool) {
92978	return nil, false
92979}
92980
92981// AsAzureMLLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92982func (zls ZohoLinkedService) AsAzureMLLinkedService() (*AzureMLLinkedService, bool) {
92983	return nil, false
92984}
92985
92986// AsTeradataLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92987func (zls ZohoLinkedService) AsTeradataLinkedService() (*TeradataLinkedService, bool) {
92988	return nil, false
92989}
92990
92991// AsDb2LinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92992func (zls ZohoLinkedService) AsDb2LinkedService() (*Db2LinkedService, bool) {
92993	return nil, false
92994}
92995
92996// AsSybaseLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
92997func (zls ZohoLinkedService) AsSybaseLinkedService() (*SybaseLinkedService, bool) {
92998	return nil, false
92999}
93000
93001// AsPostgreSQLLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93002func (zls ZohoLinkedService) AsPostgreSQLLinkedService() (*PostgreSQLLinkedService, bool) {
93003	return nil, false
93004}
93005
93006// AsMySQLLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93007func (zls ZohoLinkedService) AsMySQLLinkedService() (*MySQLLinkedService, bool) {
93008	return nil, false
93009}
93010
93011// AsAzureMySQLLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93012func (zls ZohoLinkedService) AsAzureMySQLLinkedService() (*AzureMySQLLinkedService, bool) {
93013	return nil, false
93014}
93015
93016// AsOracleLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93017func (zls ZohoLinkedService) AsOracleLinkedService() (*OracleLinkedService, bool) {
93018	return nil, false
93019}
93020
93021// AsFileServerLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93022func (zls ZohoLinkedService) AsFileServerLinkedService() (*FileServerLinkedService, bool) {
93023	return nil, false
93024}
93025
93026// AsHDInsightLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93027func (zls ZohoLinkedService) AsHDInsightLinkedService() (*HDInsightLinkedService, bool) {
93028	return nil, false
93029}
93030
93031// AsDynamicsLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93032func (zls ZohoLinkedService) AsDynamicsLinkedService() (*DynamicsLinkedService, bool) {
93033	return nil, false
93034}
93035
93036// AsCosmosDbLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93037func (zls ZohoLinkedService) AsCosmosDbLinkedService() (*CosmosDbLinkedService, bool) {
93038	return nil, false
93039}
93040
93041// AsAzureKeyVaultLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93042func (zls ZohoLinkedService) AsAzureKeyVaultLinkedService() (*AzureKeyVaultLinkedService, bool) {
93043	return nil, false
93044}
93045
93046// AsAzureBatchLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93047func (zls ZohoLinkedService) AsAzureBatchLinkedService() (*AzureBatchLinkedService, bool) {
93048	return nil, false
93049}
93050
93051// AsAzureSQLDatabaseLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93052func (zls ZohoLinkedService) AsAzureSQLDatabaseLinkedService() (*AzureSQLDatabaseLinkedService, bool) {
93053	return nil, false
93054}
93055
93056// AsSQLServerLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93057func (zls ZohoLinkedService) AsSQLServerLinkedService() (*SQLServerLinkedService, bool) {
93058	return nil, false
93059}
93060
93061// AsAzureSQLDWLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93062func (zls ZohoLinkedService) AsAzureSQLDWLinkedService() (*AzureSQLDWLinkedService, bool) {
93063	return nil, false
93064}
93065
93066// AsAzureStorageLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93067func (zls ZohoLinkedService) AsAzureStorageLinkedService() (*AzureStorageLinkedService, bool) {
93068	return nil, false
93069}
93070
93071// AsLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93072func (zls ZohoLinkedService) AsLinkedService() (*LinkedService, bool) {
93073	return nil, false
93074}
93075
93076// AsBasicLinkedService is the BasicLinkedService implementation for ZohoLinkedService.
93077func (zls ZohoLinkedService) AsBasicLinkedService() (BasicLinkedService, bool) {
93078	return &zls, true
93079}
93080
93081// UnmarshalJSON is the custom unmarshaler for ZohoLinkedService struct.
93082func (zls *ZohoLinkedService) UnmarshalJSON(body []byte) error {
93083	var m map[string]*json.RawMessage
93084	err := json.Unmarshal(body, &m)
93085	if err != nil {
93086		return err
93087	}
93088	for k, v := range m {
93089		switch k {
93090		case "typeProperties":
93091			if v != nil {
93092				var zohoLinkedServiceTypeProperties ZohoLinkedServiceTypeProperties
93093				err = json.Unmarshal(*v, &zohoLinkedServiceTypeProperties)
93094				if err != nil {
93095					return err
93096				}
93097				zls.ZohoLinkedServiceTypeProperties = &zohoLinkedServiceTypeProperties
93098			}
93099		default:
93100			if v != nil {
93101				var additionalProperties interface{}
93102				err = json.Unmarshal(*v, &additionalProperties)
93103				if err != nil {
93104					return err
93105				}
93106				if zls.AdditionalProperties == nil {
93107					zls.AdditionalProperties = make(map[string]interface{})
93108				}
93109				zls.AdditionalProperties[k] = additionalProperties
93110			}
93111		case "connectVia":
93112			if v != nil {
93113				var connectVia IntegrationRuntimeReference
93114				err = json.Unmarshal(*v, &connectVia)
93115				if err != nil {
93116					return err
93117				}
93118				zls.ConnectVia = &connectVia
93119			}
93120		case "description":
93121			if v != nil {
93122				var description string
93123				err = json.Unmarshal(*v, &description)
93124				if err != nil {
93125					return err
93126				}
93127				zls.Description = &description
93128			}
93129		case "parameters":
93130			if v != nil {
93131				var parameters map[string]*ParameterSpecification
93132				err = json.Unmarshal(*v, &parameters)
93133				if err != nil {
93134					return err
93135				}
93136				zls.Parameters = parameters
93137			}
93138		case "annotations":
93139			if v != nil {
93140				var annotations []interface{}
93141				err = json.Unmarshal(*v, &annotations)
93142				if err != nil {
93143					return err
93144				}
93145				zls.Annotations = &annotations
93146			}
93147		case "type":
93148			if v != nil {
93149				var typeVar TypeBasicLinkedService
93150				err = json.Unmarshal(*v, &typeVar)
93151				if err != nil {
93152					return err
93153				}
93154				zls.Type = typeVar
93155			}
93156		}
93157	}
93158
93159	return nil
93160}
93161
93162// ZohoLinkedServiceTypeProperties zoho server linked service properties.
93163type ZohoLinkedServiceTypeProperties struct {
93164	// Endpoint - The endpoint of the Zoho server. (i.e. crm.zoho.com/crm/private)
93165	Endpoint interface{} `json:"endpoint,omitempty"`
93166	// AccessToken - The access token for Zoho authentication.
93167	AccessToken BasicSecretBase `json:"accessToken,omitempty"`
93168	// UseEncryptedEndpoints - Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.
93169	UseEncryptedEndpoints interface{} `json:"useEncryptedEndpoints,omitempty"`
93170	// UseHostVerification - Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.
93171	UseHostVerification interface{} `json:"useHostVerification,omitempty"`
93172	// UsePeerVerification - Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.
93173	UsePeerVerification interface{} `json:"usePeerVerification,omitempty"`
93174	// EncryptedCredential - The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).
93175	EncryptedCredential interface{} `json:"encryptedCredential,omitempty"`
93176}
93177
93178// UnmarshalJSON is the custom unmarshaler for ZohoLinkedServiceTypeProperties struct.
93179func (zlstp *ZohoLinkedServiceTypeProperties) UnmarshalJSON(body []byte) error {
93180	var m map[string]*json.RawMessage
93181	err := json.Unmarshal(body, &m)
93182	if err != nil {
93183		return err
93184	}
93185	for k, v := range m {
93186		switch k {
93187		case "endpoint":
93188			if v != nil {
93189				var endpoint interface{}
93190				err = json.Unmarshal(*v, &endpoint)
93191				if err != nil {
93192					return err
93193				}
93194				zlstp.Endpoint = endpoint
93195			}
93196		case "accessToken":
93197			if v != nil {
93198				accessToken, err := unmarshalBasicSecretBase(*v)
93199				if err != nil {
93200					return err
93201				}
93202				zlstp.AccessToken = accessToken
93203			}
93204		case "useEncryptedEndpoints":
93205			if v != nil {
93206				var useEncryptedEndpoints interface{}
93207				err = json.Unmarshal(*v, &useEncryptedEndpoints)
93208				if err != nil {
93209					return err
93210				}
93211				zlstp.UseEncryptedEndpoints = useEncryptedEndpoints
93212			}
93213		case "useHostVerification":
93214			if v != nil {
93215				var useHostVerification interface{}
93216				err = json.Unmarshal(*v, &useHostVerification)
93217				if err != nil {
93218					return err
93219				}
93220				zlstp.UseHostVerification = useHostVerification
93221			}
93222		case "usePeerVerification":
93223			if v != nil {
93224				var usePeerVerification interface{}
93225				err = json.Unmarshal(*v, &usePeerVerification)
93226				if err != nil {
93227					return err
93228				}
93229				zlstp.UsePeerVerification = usePeerVerification
93230			}
93231		case "encryptedCredential":
93232			if v != nil {
93233				var encryptedCredential interface{}
93234				err = json.Unmarshal(*v, &encryptedCredential)
93235				if err != nil {
93236					return err
93237				}
93238				zlstp.EncryptedCredential = encryptedCredential
93239			}
93240		}
93241	}
93242
93243	return nil
93244}
93245
93246// ZohoObjectDataset zoho server dataset.
93247type ZohoObjectDataset struct {
93248	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
93249	AdditionalProperties map[string]interface{} `json:""`
93250	// Description - Dataset description.
93251	Description *string `json:"description,omitempty"`
93252	// Structure - Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
93253	Structure interface{} `json:"structure,omitempty"`
93254	// LinkedServiceName - Linked service reference.
93255	LinkedServiceName *LinkedServiceReference `json:"linkedServiceName,omitempty"`
93256	// Parameters - Parameters for dataset.
93257	Parameters map[string]*ParameterSpecification `json:"parameters"`
93258	// Annotations - List of tags that can be used for describing the Dataset.
93259	Annotations *[]interface{} `json:"annotations,omitempty"`
93260	// Type - Possible values include: 'TypeDataset', 'TypeResponsysObject', 'TypeSalesforceMarketingCloudObject', 'TypeVerticaTable', 'TypeNetezzaTable', 'TypeZohoObject', 'TypeXeroObject', 'TypeSquareObject', 'TypeSparkObject', 'TypeShopifyObject', 'TypeServiceNowObject', 'TypeQuickBooksObject', 'TypePrestoObject', 'TypePhoenixObject', 'TypePaypalObject', 'TypeMarketoObject', 'TypeMariaDBTable', 'TypeMagentoObject', 'TypeJiraObject', 'TypeImpalaObject', 'TypeHubspotObject', 'TypeHiveObject', 'TypeHBaseObject', 'TypeGreenplumTable', 'TypeGoogleBigQueryObject', 'TypeEloquaObject', 'TypeDrillTable', 'TypeCouchbaseTable', 'TypeConcurObject', 'TypeAzurePostgreSQLTable', 'TypeAmazonMWSObject', 'TypeHTTPFile', 'TypeAzureSearchIndex', 'TypeWebTable', 'TypeSQLServerTable', 'TypeSapEccResource', 'TypeSapCloudForCustomerResource', 'TypeSalesforceObject', 'TypeRelationalTable', 'TypeAzureMySQLTable', 'TypeOracleTable', 'TypeODataResource', 'TypeMongoDbCollection', 'TypeFileShare', 'TypeAzureDataLakeStoreFile', 'TypeDynamicsEntity', 'TypeDocumentDbCollection', 'TypeCustomDataset', 'TypeCassandraTable', 'TypeAzureSQLDWTable', 'TypeAzureSQLTable', 'TypeAzureTable', 'TypeAzureBlob', 'TypeAmazonS3Object'
93261	Type TypeBasicDataset `json:"type,omitempty"`
93262}
93263
93264// MarshalJSON is the custom marshaler for ZohoObjectDataset.
93265func (zod ZohoObjectDataset) MarshalJSON() ([]byte, error) {
93266	zod.Type = TypeZohoObject
93267	objectMap := make(map[string]interface{})
93268	if zod.Description != nil {
93269		objectMap["description"] = zod.Description
93270	}
93271	objectMap["structure"] = zod.Structure
93272	if zod.LinkedServiceName != nil {
93273		objectMap["linkedServiceName"] = zod.LinkedServiceName
93274	}
93275	if zod.Parameters != nil {
93276		objectMap["parameters"] = zod.Parameters
93277	}
93278	if zod.Annotations != nil {
93279		objectMap["annotations"] = zod.Annotations
93280	}
93281	if zod.Type != "" {
93282		objectMap["type"] = zod.Type
93283	}
93284	for k, v := range zod.AdditionalProperties {
93285		objectMap[k] = v
93286	}
93287	return json.Marshal(objectMap)
93288}
93289
93290// AsResponsysObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93291func (zod ZohoObjectDataset) AsResponsysObjectDataset() (*ResponsysObjectDataset, bool) {
93292	return nil, false
93293}
93294
93295// AsSalesforceMarketingCloudObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93296func (zod ZohoObjectDataset) AsSalesforceMarketingCloudObjectDataset() (*SalesforceMarketingCloudObjectDataset, bool) {
93297	return nil, false
93298}
93299
93300// AsVerticaTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93301func (zod ZohoObjectDataset) AsVerticaTableDataset() (*VerticaTableDataset, bool) {
93302	return nil, false
93303}
93304
93305// AsNetezzaTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93306func (zod ZohoObjectDataset) AsNetezzaTableDataset() (*NetezzaTableDataset, bool) {
93307	return nil, false
93308}
93309
93310// AsZohoObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93311func (zod ZohoObjectDataset) AsZohoObjectDataset() (*ZohoObjectDataset, bool) {
93312	return &zod, true
93313}
93314
93315// AsXeroObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93316func (zod ZohoObjectDataset) AsXeroObjectDataset() (*XeroObjectDataset, bool) {
93317	return nil, false
93318}
93319
93320// AsSquareObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93321func (zod ZohoObjectDataset) AsSquareObjectDataset() (*SquareObjectDataset, bool) {
93322	return nil, false
93323}
93324
93325// AsSparkObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93326func (zod ZohoObjectDataset) AsSparkObjectDataset() (*SparkObjectDataset, bool) {
93327	return nil, false
93328}
93329
93330// AsShopifyObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93331func (zod ZohoObjectDataset) AsShopifyObjectDataset() (*ShopifyObjectDataset, bool) {
93332	return nil, false
93333}
93334
93335// AsServiceNowObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93336func (zod ZohoObjectDataset) AsServiceNowObjectDataset() (*ServiceNowObjectDataset, bool) {
93337	return nil, false
93338}
93339
93340// AsQuickBooksObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93341func (zod ZohoObjectDataset) AsQuickBooksObjectDataset() (*QuickBooksObjectDataset, bool) {
93342	return nil, false
93343}
93344
93345// AsPrestoObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93346func (zod ZohoObjectDataset) AsPrestoObjectDataset() (*PrestoObjectDataset, bool) {
93347	return nil, false
93348}
93349
93350// AsPhoenixObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93351func (zod ZohoObjectDataset) AsPhoenixObjectDataset() (*PhoenixObjectDataset, bool) {
93352	return nil, false
93353}
93354
93355// AsPaypalObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93356func (zod ZohoObjectDataset) AsPaypalObjectDataset() (*PaypalObjectDataset, bool) {
93357	return nil, false
93358}
93359
93360// AsMarketoObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93361func (zod ZohoObjectDataset) AsMarketoObjectDataset() (*MarketoObjectDataset, bool) {
93362	return nil, false
93363}
93364
93365// AsMariaDBTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93366func (zod ZohoObjectDataset) AsMariaDBTableDataset() (*MariaDBTableDataset, bool) {
93367	return nil, false
93368}
93369
93370// AsMagentoObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93371func (zod ZohoObjectDataset) AsMagentoObjectDataset() (*MagentoObjectDataset, bool) {
93372	return nil, false
93373}
93374
93375// AsJiraObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93376func (zod ZohoObjectDataset) AsJiraObjectDataset() (*JiraObjectDataset, bool) {
93377	return nil, false
93378}
93379
93380// AsImpalaObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93381func (zod ZohoObjectDataset) AsImpalaObjectDataset() (*ImpalaObjectDataset, bool) {
93382	return nil, false
93383}
93384
93385// AsHubspotObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93386func (zod ZohoObjectDataset) AsHubspotObjectDataset() (*HubspotObjectDataset, bool) {
93387	return nil, false
93388}
93389
93390// AsHiveObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93391func (zod ZohoObjectDataset) AsHiveObjectDataset() (*HiveObjectDataset, bool) {
93392	return nil, false
93393}
93394
93395// AsHBaseObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93396func (zod ZohoObjectDataset) AsHBaseObjectDataset() (*HBaseObjectDataset, bool) {
93397	return nil, false
93398}
93399
93400// AsGreenplumTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93401func (zod ZohoObjectDataset) AsGreenplumTableDataset() (*GreenplumTableDataset, bool) {
93402	return nil, false
93403}
93404
93405// AsGoogleBigQueryObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93406func (zod ZohoObjectDataset) AsGoogleBigQueryObjectDataset() (*GoogleBigQueryObjectDataset, bool) {
93407	return nil, false
93408}
93409
93410// AsEloquaObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93411func (zod ZohoObjectDataset) AsEloquaObjectDataset() (*EloquaObjectDataset, bool) {
93412	return nil, false
93413}
93414
93415// AsDrillTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93416func (zod ZohoObjectDataset) AsDrillTableDataset() (*DrillTableDataset, bool) {
93417	return nil, false
93418}
93419
93420// AsCouchbaseTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93421func (zod ZohoObjectDataset) AsCouchbaseTableDataset() (*CouchbaseTableDataset, bool) {
93422	return nil, false
93423}
93424
93425// AsConcurObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93426func (zod ZohoObjectDataset) AsConcurObjectDataset() (*ConcurObjectDataset, bool) {
93427	return nil, false
93428}
93429
93430// AsAzurePostgreSQLTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93431func (zod ZohoObjectDataset) AsAzurePostgreSQLTableDataset() (*AzurePostgreSQLTableDataset, bool) {
93432	return nil, false
93433}
93434
93435// AsAmazonMWSObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93436func (zod ZohoObjectDataset) AsAmazonMWSObjectDataset() (*AmazonMWSObjectDataset, bool) {
93437	return nil, false
93438}
93439
93440// AsHTTPDataset is the BasicDataset implementation for ZohoObjectDataset.
93441func (zod ZohoObjectDataset) AsHTTPDataset() (*HTTPDataset, bool) {
93442	return nil, false
93443}
93444
93445// AsAzureSearchIndexDataset is the BasicDataset implementation for ZohoObjectDataset.
93446func (zod ZohoObjectDataset) AsAzureSearchIndexDataset() (*AzureSearchIndexDataset, bool) {
93447	return nil, false
93448}
93449
93450// AsWebTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93451func (zod ZohoObjectDataset) AsWebTableDataset() (*WebTableDataset, bool) {
93452	return nil, false
93453}
93454
93455// AsSQLServerTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93456func (zod ZohoObjectDataset) AsSQLServerTableDataset() (*SQLServerTableDataset, bool) {
93457	return nil, false
93458}
93459
93460// AsSapEccResourceDataset is the BasicDataset implementation for ZohoObjectDataset.
93461func (zod ZohoObjectDataset) AsSapEccResourceDataset() (*SapEccResourceDataset, bool) {
93462	return nil, false
93463}
93464
93465// AsSapCloudForCustomerResourceDataset is the BasicDataset implementation for ZohoObjectDataset.
93466func (zod ZohoObjectDataset) AsSapCloudForCustomerResourceDataset() (*SapCloudForCustomerResourceDataset, bool) {
93467	return nil, false
93468}
93469
93470// AsSalesforceObjectDataset is the BasicDataset implementation for ZohoObjectDataset.
93471func (zod ZohoObjectDataset) AsSalesforceObjectDataset() (*SalesforceObjectDataset, bool) {
93472	return nil, false
93473}
93474
93475// AsRelationalTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93476func (zod ZohoObjectDataset) AsRelationalTableDataset() (*RelationalTableDataset, bool) {
93477	return nil, false
93478}
93479
93480// AsAzureMySQLTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93481func (zod ZohoObjectDataset) AsAzureMySQLTableDataset() (*AzureMySQLTableDataset, bool) {
93482	return nil, false
93483}
93484
93485// AsOracleTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93486func (zod ZohoObjectDataset) AsOracleTableDataset() (*OracleTableDataset, bool) {
93487	return nil, false
93488}
93489
93490// AsODataResourceDataset is the BasicDataset implementation for ZohoObjectDataset.
93491func (zod ZohoObjectDataset) AsODataResourceDataset() (*ODataResourceDataset, bool) {
93492	return nil, false
93493}
93494
93495// AsMongoDbCollectionDataset is the BasicDataset implementation for ZohoObjectDataset.
93496func (zod ZohoObjectDataset) AsMongoDbCollectionDataset() (*MongoDbCollectionDataset, bool) {
93497	return nil, false
93498}
93499
93500// AsFileShareDataset is the BasicDataset implementation for ZohoObjectDataset.
93501func (zod ZohoObjectDataset) AsFileShareDataset() (*FileShareDataset, bool) {
93502	return nil, false
93503}
93504
93505// AsAzureDataLakeStoreDataset is the BasicDataset implementation for ZohoObjectDataset.
93506func (zod ZohoObjectDataset) AsAzureDataLakeStoreDataset() (*AzureDataLakeStoreDataset, bool) {
93507	return nil, false
93508}
93509
93510// AsDynamicsEntityDataset is the BasicDataset implementation for ZohoObjectDataset.
93511func (zod ZohoObjectDataset) AsDynamicsEntityDataset() (*DynamicsEntityDataset, bool) {
93512	return nil, false
93513}
93514
93515// AsDocumentDbCollectionDataset is the BasicDataset implementation for ZohoObjectDataset.
93516func (zod ZohoObjectDataset) AsDocumentDbCollectionDataset() (*DocumentDbCollectionDataset, bool) {
93517	return nil, false
93518}
93519
93520// AsCustomDataset is the BasicDataset implementation for ZohoObjectDataset.
93521func (zod ZohoObjectDataset) AsCustomDataset() (*CustomDataset, bool) {
93522	return nil, false
93523}
93524
93525// AsCassandraTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93526func (zod ZohoObjectDataset) AsCassandraTableDataset() (*CassandraTableDataset, bool) {
93527	return nil, false
93528}
93529
93530// AsAzureSQLDWTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93531func (zod ZohoObjectDataset) AsAzureSQLDWTableDataset() (*AzureSQLDWTableDataset, bool) {
93532	return nil, false
93533}
93534
93535// AsAzureSQLTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93536func (zod ZohoObjectDataset) AsAzureSQLTableDataset() (*AzureSQLTableDataset, bool) {
93537	return nil, false
93538}
93539
93540// AsAzureTableDataset is the BasicDataset implementation for ZohoObjectDataset.
93541func (zod ZohoObjectDataset) AsAzureTableDataset() (*AzureTableDataset, bool) {
93542	return nil, false
93543}
93544
93545// AsAzureBlobDataset is the BasicDataset implementation for ZohoObjectDataset.
93546func (zod ZohoObjectDataset) AsAzureBlobDataset() (*AzureBlobDataset, bool) {
93547	return nil, false
93548}
93549
93550// AsAmazonS3Dataset is the BasicDataset implementation for ZohoObjectDataset.
93551func (zod ZohoObjectDataset) AsAmazonS3Dataset() (*AmazonS3Dataset, bool) {
93552	return nil, false
93553}
93554
93555// AsDataset is the BasicDataset implementation for ZohoObjectDataset.
93556func (zod ZohoObjectDataset) AsDataset() (*Dataset, bool) {
93557	return nil, false
93558}
93559
93560// AsBasicDataset is the BasicDataset implementation for ZohoObjectDataset.
93561func (zod ZohoObjectDataset) AsBasicDataset() (BasicDataset, bool) {
93562	return &zod, true
93563}
93564
93565// ZohoSource a copy activity Zoho server source.
93566type ZohoSource struct {
93567	// Query - A query to retrieve data from source. Type: string (or Expression with resultType string).
93568	Query interface{} `json:"query,omitempty"`
93569	// AdditionalProperties - Unmatched properties from the message are deserialized this collection
93570	AdditionalProperties map[string]interface{} `json:""`
93571	// SourceRetryCount - Source retry count. Type: integer (or Expression with resultType integer).
93572	SourceRetryCount interface{} `json:"sourceRetryCount,omitempty"`
93573	// SourceRetryWait - Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
93574	SourceRetryWait interface{} `json:"sourceRetryWait,omitempty"`
93575	// Type - Possible values include: 'TypeCopySource', 'TypeAmazonRedshiftSource', 'TypeResponsysSource', 'TypeSalesforceMarketingCloudSource', 'TypeVerticaSource', 'TypeNetezzaSource', 'TypeZohoSource', 'TypeXeroSource', 'TypeSquareSource', 'TypeSparkSource', 'TypeShopifySource', 'TypeServiceNowSource', 'TypeQuickBooksSource', 'TypePrestoSource', 'TypePhoenixSource', 'TypePaypalSource', 'TypeMarketoSource', 'TypeMariaDBSource', 'TypeMagentoSource', 'TypeJiraSource', 'TypeImpalaSource', 'TypeHubspotSource', 'TypeHiveSource', 'TypeHBaseSource', 'TypeGreenplumSource', 'TypeGoogleBigQuerySource', 'TypeEloquaSource', 'TypeDrillSource', 'TypeCouchbaseSource', 'TypeConcurSource', 'TypeAzurePostgreSQLSource', 'TypeAmazonMWSSource', 'TypeHTTPSource', 'TypeAzureDataLakeStoreSource', 'TypeMongoDbSource', 'TypeCassandraSource', 'TypeWebSource', 'TypeOracleSource', 'TypeAzureMySQLSource', 'TypeHdfsSource', 'TypeFileSystemSource', 'TypeSQLDWSource', 'TypeSQLSource', 'TypeSapEccSource', 'TypeSapCloudForCustomerSource', 'TypeSalesforceSource', 'TypeRelationalSource', 'TypeDynamicsSource', 'TypeDocumentDbCollectionSource', 'TypeBlobSource', 'TypeAzureTableSource'
93576	Type TypeBasicCopySource `json:"type,omitempty"`
93577}
93578
93579// MarshalJSON is the custom marshaler for ZohoSource.
93580func (zs ZohoSource) MarshalJSON() ([]byte, error) {
93581	zs.Type = TypeZohoSource
93582	objectMap := make(map[string]interface{})
93583	objectMap["query"] = zs.Query
93584	objectMap["sourceRetryCount"] = zs.SourceRetryCount
93585	objectMap["sourceRetryWait"] = zs.SourceRetryWait
93586	if zs.Type != "" {
93587		objectMap["type"] = zs.Type
93588	}
93589	for k, v := range zs.AdditionalProperties {
93590		objectMap[k] = v
93591	}
93592	return json.Marshal(objectMap)
93593}
93594
93595// AsAmazonRedshiftSource is the BasicCopySource implementation for ZohoSource.
93596func (zs ZohoSource) AsAmazonRedshiftSource() (*AmazonRedshiftSource, bool) {
93597	return nil, false
93598}
93599
93600// AsResponsysSource is the BasicCopySource implementation for ZohoSource.
93601func (zs ZohoSource) AsResponsysSource() (*ResponsysSource, bool) {
93602	return nil, false
93603}
93604
93605// AsSalesforceMarketingCloudSource is the BasicCopySource implementation for ZohoSource.
93606func (zs ZohoSource) AsSalesforceMarketingCloudSource() (*SalesforceMarketingCloudSource, bool) {
93607	return nil, false
93608}
93609
93610// AsVerticaSource is the BasicCopySource implementation for ZohoSource.
93611func (zs ZohoSource) AsVerticaSource() (*VerticaSource, bool) {
93612	return nil, false
93613}
93614
93615// AsNetezzaSource is the BasicCopySource implementation for ZohoSource.
93616func (zs ZohoSource) AsNetezzaSource() (*NetezzaSource, bool) {
93617	return nil, false
93618}
93619
93620// AsZohoSource is the BasicCopySource implementation for ZohoSource.
93621func (zs ZohoSource) AsZohoSource() (*ZohoSource, bool) {
93622	return &zs, true
93623}
93624
93625// AsXeroSource is the BasicCopySource implementation for ZohoSource.
93626func (zs ZohoSource) AsXeroSource() (*XeroSource, bool) {
93627	return nil, false
93628}
93629
93630// AsSquareSource is the BasicCopySource implementation for ZohoSource.
93631func (zs ZohoSource) AsSquareSource() (*SquareSource, bool) {
93632	return nil, false
93633}
93634
93635// AsSparkSource is the BasicCopySource implementation for ZohoSource.
93636func (zs ZohoSource) AsSparkSource() (*SparkSource, bool) {
93637	return nil, false
93638}
93639
93640// AsShopifySource is the BasicCopySource implementation for ZohoSource.
93641func (zs ZohoSource) AsShopifySource() (*ShopifySource, bool) {
93642	return nil, false
93643}
93644
93645// AsServiceNowSource is the BasicCopySource implementation for ZohoSource.
93646func (zs ZohoSource) AsServiceNowSource() (*ServiceNowSource, bool) {
93647	return nil, false
93648}
93649
93650// AsQuickBooksSource is the BasicCopySource implementation for ZohoSource.
93651func (zs ZohoSource) AsQuickBooksSource() (*QuickBooksSource, bool) {
93652	return nil, false
93653}
93654
93655// AsPrestoSource is the BasicCopySource implementation for ZohoSource.
93656func (zs ZohoSource) AsPrestoSource() (*PrestoSource, bool) {
93657	return nil, false
93658}
93659
93660// AsPhoenixSource is the BasicCopySource implementation for ZohoSource.
93661func (zs ZohoSource) AsPhoenixSource() (*PhoenixSource, bool) {
93662	return nil, false
93663}
93664
93665// AsPaypalSource is the BasicCopySource implementation for ZohoSource.
93666func (zs ZohoSource) AsPaypalSource() (*PaypalSource, bool) {
93667	return nil, false
93668}
93669
93670// AsMarketoSource is the BasicCopySource implementation for ZohoSource.
93671func (zs ZohoSource) AsMarketoSource() (*MarketoSource, bool) {
93672	return nil, false
93673}
93674
93675// AsMariaDBSource is the BasicCopySource implementation for ZohoSource.
93676func (zs ZohoSource) AsMariaDBSource() (*MariaDBSource, bool) {
93677	return nil, false
93678}
93679
93680// AsMagentoSource is the BasicCopySource implementation for ZohoSource.
93681func (zs ZohoSource) AsMagentoSource() (*MagentoSource, bool) {
93682	return nil, false
93683}
93684
93685// AsJiraSource is the BasicCopySource implementation for ZohoSource.
93686func (zs ZohoSource) AsJiraSource() (*JiraSource, bool) {
93687	return nil, false
93688}
93689
93690// AsImpalaSource is the BasicCopySource implementation for ZohoSource.
93691func (zs ZohoSource) AsImpalaSource() (*ImpalaSource, bool) {
93692	return nil, false
93693}
93694
93695// AsHubspotSource is the BasicCopySource implementation for ZohoSource.
93696func (zs ZohoSource) AsHubspotSource() (*HubspotSource, bool) {
93697	return nil, false
93698}
93699
93700// AsHiveSource is the BasicCopySource implementation for ZohoSource.
93701func (zs ZohoSource) AsHiveSource() (*HiveSource, bool) {
93702	return nil, false
93703}
93704
93705// AsHBaseSource is the BasicCopySource implementation for ZohoSource.
93706func (zs ZohoSource) AsHBaseSource() (*HBaseSource, bool) {
93707	return nil, false
93708}
93709
93710// AsGreenplumSource is the BasicCopySource implementation for ZohoSource.
93711func (zs ZohoSource) AsGreenplumSource() (*GreenplumSource, bool) {
93712	return nil, false
93713}
93714
93715// AsGoogleBigQuerySource is the BasicCopySource implementation for ZohoSource.
93716func (zs ZohoSource) AsGoogleBigQuerySource() (*GoogleBigQuerySource, bool) {
93717	return nil, false
93718}
93719
93720// AsEloquaSource is the BasicCopySource implementation for ZohoSource.
93721func (zs ZohoSource) AsEloquaSource() (*EloquaSource, bool) {
93722	return nil, false
93723}
93724
93725// AsDrillSource is the BasicCopySource implementation for ZohoSource.
93726func (zs ZohoSource) AsDrillSource() (*DrillSource, bool) {
93727	return nil, false
93728}
93729
93730// AsCouchbaseSource is the BasicCopySource implementation for ZohoSource.
93731func (zs ZohoSource) AsCouchbaseSource() (*CouchbaseSource, bool) {
93732	return nil, false
93733}
93734
93735// AsConcurSource is the BasicCopySource implementation for ZohoSource.
93736func (zs ZohoSource) AsConcurSource() (*ConcurSource, bool) {
93737	return nil, false
93738}
93739
93740// AsAzurePostgreSQLSource is the BasicCopySource implementation for ZohoSource.
93741func (zs ZohoSource) AsAzurePostgreSQLSource() (*AzurePostgreSQLSource, bool) {
93742	return nil, false
93743}
93744
93745// AsAmazonMWSSource is the BasicCopySource implementation for ZohoSource.
93746func (zs ZohoSource) AsAmazonMWSSource() (*AmazonMWSSource, bool) {
93747	return nil, false
93748}
93749
93750// AsHTTPSource is the BasicCopySource implementation for ZohoSource.
93751func (zs ZohoSource) AsHTTPSource() (*HTTPSource, bool) {
93752	return nil, false
93753}
93754
93755// AsAzureDataLakeStoreSource is the BasicCopySource implementation for ZohoSource.
93756func (zs ZohoSource) AsAzureDataLakeStoreSource() (*AzureDataLakeStoreSource, bool) {
93757	return nil, false
93758}
93759
93760// AsMongoDbSource is the BasicCopySource implementation for ZohoSource.
93761func (zs ZohoSource) AsMongoDbSource() (*MongoDbSource, bool) {
93762	return nil, false
93763}
93764
93765// AsCassandraSource is the BasicCopySource implementation for ZohoSource.
93766func (zs ZohoSource) AsCassandraSource() (*CassandraSource, bool) {
93767	return nil, false
93768}
93769
93770// AsWebSource is the BasicCopySource implementation for ZohoSource.
93771func (zs ZohoSource) AsWebSource() (*WebSource, bool) {
93772	return nil, false
93773}
93774
93775// AsOracleSource is the BasicCopySource implementation for ZohoSource.
93776func (zs ZohoSource) AsOracleSource() (*OracleSource, bool) {
93777	return nil, false
93778}
93779
93780// AsAzureMySQLSource is the BasicCopySource implementation for ZohoSource.
93781func (zs ZohoSource) AsAzureMySQLSource() (*AzureMySQLSource, bool) {
93782	return nil, false
93783}
93784
93785// AsHdfsSource is the BasicCopySource implementation for ZohoSource.
93786func (zs ZohoSource) AsHdfsSource() (*HdfsSource, bool) {
93787	return nil, false
93788}
93789
93790// AsFileSystemSource is the BasicCopySource implementation for ZohoSource.
93791func (zs ZohoSource) AsFileSystemSource() (*FileSystemSource, bool) {
93792	return nil, false
93793}
93794
93795// AsSQLDWSource is the BasicCopySource implementation for ZohoSource.
93796func (zs ZohoSource) AsSQLDWSource() (*SQLDWSource, bool) {
93797	return nil, false
93798}
93799
93800// AsSQLSource is the BasicCopySource implementation for ZohoSource.
93801func (zs ZohoSource) AsSQLSource() (*SQLSource, bool) {
93802	return nil, false
93803}
93804
93805// AsSapEccSource is the BasicCopySource implementation for ZohoSource.
93806func (zs ZohoSource) AsSapEccSource() (*SapEccSource, bool) {
93807	return nil, false
93808}
93809
93810// AsSapCloudForCustomerSource is the BasicCopySource implementation for ZohoSource.
93811func (zs ZohoSource) AsSapCloudForCustomerSource() (*SapCloudForCustomerSource, bool) {
93812	return nil, false
93813}
93814
93815// AsSalesforceSource is the BasicCopySource implementation for ZohoSource.
93816func (zs ZohoSource) AsSalesforceSource() (*SalesforceSource, bool) {
93817	return nil, false
93818}
93819
93820// AsRelationalSource is the BasicCopySource implementation for ZohoSource.
93821func (zs ZohoSource) AsRelationalSource() (*RelationalSource, bool) {
93822	return nil, false
93823}
93824
93825// AsDynamicsSource is the BasicCopySource implementation for ZohoSource.
93826func (zs ZohoSource) AsDynamicsSource() (*DynamicsSource, bool) {
93827	return nil, false
93828}
93829
93830// AsDocumentDbCollectionSource is the BasicCopySource implementation for ZohoSource.
93831func (zs ZohoSource) AsDocumentDbCollectionSource() (*DocumentDbCollectionSource, bool) {
93832	return nil, false
93833}
93834
93835// AsBlobSource is the BasicCopySource implementation for ZohoSource.
93836func (zs ZohoSource) AsBlobSource() (*BlobSource, bool) {
93837	return nil, false
93838}
93839
93840// AsAzureTableSource is the BasicCopySource implementation for ZohoSource.
93841func (zs ZohoSource) AsAzureTableSource() (*AzureTableSource, bool) {
93842	return nil, false
93843}
93844
93845// AsCopySource is the BasicCopySource implementation for ZohoSource.
93846func (zs ZohoSource) AsCopySource() (*CopySource, bool) {
93847	return nil, false
93848}
93849
93850// AsBasicCopySource is the BasicCopySource implementation for ZohoSource.
93851func (zs ZohoSource) AsBasicCopySource() (BasicCopySource, bool) {
93852	return &zs, true
93853}
93854